Soquetes UDP

Assim como para o protocolo TCP, UDP (User Datagram Protocol) estabelece uma conexão entre o processo da aplicação e a rede através de um soquete.

Em Java, soquetes UDP são manipulados através de objetos da classe DatagramSocket. O construtor sem argumentos dessa classe cria um soquete local na primeira porta disponível. Alternativamente, um construtor com um argumento inteiro permite especificar o número da porta desejado.

Ao contrário da classe Socket, um DatagramSocket não estabelece uma conexão com uma máquina remota, mas simplesmente uma conexão local com a rede que pode ser utilizada para enviar e receber pacotes, através dos métodos send() e receive(), respectivamente.

Há um método connect() associado a objetos da classe DatagramSocket; no entanto, esse método atua como um filtro, só permitindo enviar/receber pacotes para/de o endereço IP ao qual o soquete foi conectado. O método disconnect() permite desconectar um soquete de um destino pré-especificado.