UDP --- O Protocolo de Datagrama do Usuário é um protocolo de camada de transporte orientado a datagrama simples. O UDP não fornece confiabilidade. Ele apenas envia datagramas enviados por aplicativos para a camada IP, mas não garante que eles possam chegar ao destino, nem garante a ordem em que os pacotes de dados chegam. Como o UDP não precisa estabelecer uma conexão entre o cliente e o servidor antes de transmitir o datagrama e não há mecanismo como retransmissão de tempo limite, a velocidade de transmissão é muito rápida.
Implementação do UDP em Java:
* UDP:
* Cliente:
* 1. Crie objeto de soquete para comunicação UDP-DataGramsocket (para enviar e receber dados UDP) --- DataGrama Socket
* 2. Prepare dados, pacote de encapsulamento --- DataGRampacket (pacote de dados)
* 3. Envie dados, através do método de envio
* 4. Feche o objeto de soquete do soquete
* Lado do servidor: receba dados
* 1. Crie um objeto de soquete e vincule o número da porta
* 2. Crie objeto de pacote, crie uma matriz vazia e prepare -se para receber dados
* 3. Receba dados
* 4. Feche o recurso
* Método de transmissão UDP:
* Todos os hosts no mesmo segmento de rede podem recebê -lo, desde que a porta deve ouvir
* O cliente envia uma transmissão e o servidor que permite que o monitoramento da porta receba e imprima mensagens
* Implementação da transmissão: a transmissão é enviada pelo cliente e recebida pelo servidor
* String host = "255.255.255.255"; // Endereço de transmissão-precisão todos os hosts
* 10.0.122.255 ---- representa que todos os hosts cujos três primeiros segmentos de rede são 10.0.122
Implementação de código:
Cliente (envia):
importar java.io.ioException; importar java.net.datagRampacket; importar java.net.datagramsocket; importar java.net.inetaddress; importar java.net.sockeTexception; import java.net.unkNownHosTexception; Public Class Udp_client {public public public.Net.unkNownHosception; // 1. Crie um objeto // Construa um soquete de datagrama e vincule -o a qualquer porta disponível no host local. Datagramsocket soquete = new Datagramsocket (); // 2. Byte de embalagem [] arr = "Client: haha ...". GetBytes (); // quatro parâmetros: comprimento do pacote de pacote Número da porta do objeto de host pacote datagroppacket = novo datagroffacket (arr, arr.length, inetaddress.getbyname ("10.0.122.255"), 4000); // 3. Enviar soquete.send (pacote); // 4. Feche o soquete de recursos.close (); }}Lado do servidor (lado do receptor):
importar java.io.ioException; importar java.net.datagRampacket; importe java.net.datagramsocket; importar java.net.socketexception; importar java.util.arilsers; Datagramsocket (4000); // 2 byte [] arr = novo byte [1024]; Pacote de dados de datagrofacket = new DatagRampacket (arr, arr.length); // 3 Quando o programa estiver em execução, o método de recebimento estará no estado de escuta Serversocket.receive (pacote); // busca os dados do pacote byte [] arr1 = packet.getData (); System.out.println (new String (ARR1)); // 4 serversocket.close (); }}
resultado:
Os três primeiros segmentos de rede são servidores com a porta 4000 em todos os hosts com a porta número 10.0.122. Contanto que estejam abertos, eles podem ser recebidos-
Cliente: haha. . . .
O formulário de transmissão acima com base no UDP em Java (Exemplo de Explicação) é todo o conteúdo que compartilho com você. Espero que você possa lhe dar uma referência e espero que você possa apoiar mais o wulin.com.