UDP --- Le protocole de datagramme utilisateur est un protocole de couche de transport orienté Datagramme simple. L'UDP ne fournit pas de fiabilité. Il envoie simplement des datagrammes envoyés par applications à la couche IP, mais il ne garantit pas qu'ils peuvent atteindre la destination, ni ne garantissent l'ordre dans lequel les paquets de données arrivent. Étant donné que UDP n'a pas besoin d'établir de connexion entre le client et le serveur avant de transmettre le datagramme, et il n'y a pas de mécanisme tel que la retransmission du délai d'expiration, la vitesse de transmission est très rapide.
Implémentation de UDP en Java:
* UDP:
* Client:
* 1. Créer un objet Socket pour la communication UDP - DatagramSocket (pour envoyer et recevoir des données UDP) --- Datagram Socket
* 2. Préparer les données, le package d'encapsulation --- datagrampacket (package de données)
* 3. Envoyer des données, via la méthode d'envoi
* 4. Fermez l'objet d'objet de socket
* Côté serveur: recevoir des données
* 1. Créez un objet à douille à douille et liez le numéro de port
* 2. Créez un objet de package, créez un tableau vide et préparez-vous à recevoir des données
* 3. Recevoir des données
* 4. Fermez la ressource
* Méthode de diffusion UDP:
* Tous les hôtes du même segment de réseau peuvent le recevoir, à condition que le port doit écouter
* Le client envoie une diffusion et le serveur qui permet à la surveillance du port de recevoir et d'imprimer des messages
* Implémentation de la diffusion: la diffusion est envoyée par le client et reçue par le serveur
* String host = "255.255.255.255"; // diffuser des représentants de tous les hôtes
* 10.0.122.255 ---- représente que tous les hôtes dont les trois premiers segments de réseau sont 10.0.122
Implémentation du code:
Client (Send):
Importer java.io.ioException; Importer java.net.datagrampacket; import java.net.datagramsocket; import java.net.inetaddress; import java.net.socketexception; import java.net.unknownhostexception en public udp_client {public static vide main (string [] args) lance ioexception {1. Créez un objet // Construisez une prise Datagram et liez-la à tout port disponible sur le LocalHost. DatagramSocket socket = new DatagramSocket (); // 2. Byte d'emballage [] arr = "Client: haha ...". GetBytes (); // quatre paramètres: longueur du paquet de paquet d'objets hôte numéro de port datagrampacket paquet = new datagrampacket (arr, arr.length, inetaddress.getByName ("10.0.122.255"), 4000); // 3. Envoyer socket.send (paquet); // 4. Fermer le socket de ressources.close (); }}Côté serveur (côté récepteur):
Importer java.io.ioException; Importer java.net.datagrampacket; import java.net.datagramsocket; import java.net.socketxception; import java.util.arrays; classe publique udp_server {public static void main (string [] args) throws ioexception {// 1 datagragsocket serverscket = newsocket = ioexception); // 2 octet [] arr = nouveau octet [1024]; Datagrampacket Packet = new Datagrampacket (arr, arr.Length); // 3 Lorsque le programme est en cours d'exécution, la méthode de réception sera dans l'état d'écoute sertSocket.receive (paquet); // Récupérez les données de l'octet du package [] arr1 = paquet.getData (); System.out.println (nouvelle chaîne (Arr1)); // 4 serversocket.close (); }}résultat:
Les trois premiers segments de réseau sont des serveurs avec le numéro de port 4000 sur tous les hôtes avec le numéro de port 10.0.122. Tant qu'ils sont ouverts, ils peuvent être reçus -
Client: haha. . . .
Le formulaire de diffusion ci-dessus basé sur UDP dans Java (exemple explication) est tout le contenu que je partage avec vous. J'espère que vous pourrez vous faire référence et j'espère que vous pourrez soutenir Wulin.com plus.