💻
Web 101
  • Introdução
  • Breve história dos computadores modernos
  • Comunicação entre processos
    • File descriptors
    • UNIX Pipes
    • UNIX Sockets
      • Datagram sockets
      • Stream sockets
  • Internet
    • TCP Sockets
    • UDP Sockets
    • Pseudo devices
  • Breve história da Web
  • Construindo um simples echo Web server
    • Entendendo o HTTP
    • Primeira versão do server
    • Adicionando HTML
  • Construindo um Web server com Login & Logout
Powered by GitBook
On this page
  1. Internet

UDP Sockets

Assim como TCP socket, UDP, ou User Datagram Protocol, também precisa estar associado a uma porta de rede. E igualmente TCP, UDP também é full-duplex.

Por outro lado, UDP não estabelece uma conexão, ou seja, não utiliza stream sockets, mas datagram sockets, e portanto não tem as garantias de entrega do TCP.

Vamos criar um server UDP, lembrando que precisamos indicar a opção -u para que seja um socket datagram.

## Server
$ nc -ulv 8080
Bound on 0.0.0.0 8080

E do lado do cliente, indicando o endereço do server (localhost) e porta de rede:

## Client
$ nc -uv localhost 8080
Connection to localhost (127.0.0.1) 8080 port [udp/*] succeeded!

Confirmando com lsof as portas utilizadas:

$ lsof -i udp:8080
COMMAND  PID USER   FD   TYPE  DEVICE SIZE/OFF NODE NAME
nc      1325 root    3u  IPv4 7313683      0t0  UDP localhost:8080->localhost:59986
nc      1328 root    3u  IPv4 7313715      0t0  UDP localhost:59986->localhost:8080
  • um processo para representar as mensagens escritas do server para o client

  • outro processo para representar as mensagens escritas do client para o server

Resumo

É isto. Esta seção teve por objetivo explicar e explorar utilização de UDP sockets.

Nas próximas seções, vamos continuar com o objetivo inicial deste guia, e começar a construir um Web server aplicando estes conceitos, com o intuito de demonstrar os fundamentos da Web.

PreviousTCP SocketsNextPseudo devices

Last updated 2 years ago