Outils pour utilisateurs

Outils du site


departement_info:personnels:pb:cli

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
departement_info:personnels:pb:cli [2023/03/11 14:28] Brutus Philippedepartement_info:personnels:pb:cli [2023/03/13 15:11] (Version actuelle) – [Découverte de services] Brutus Philippe
Ligne 16: Ligne 16:
  
 {{:departement_info:personnels:pb:cli:introspection.pdf|introspection en java}} {{:departement_info:personnels:pb:cli:introspection.pdf|introspection en java}}
 +
 +----
  
 ==== Proxy ==== ==== Proxy ====
Ligne 42: Ligne 44:
 {{:departement_info:personnels:pb:cli:tcp-en-java.pdf|programmation client-serveur en Java}}\\ {{:departement_info:personnels:pb:cli:tcp-en-java.pdf|programmation client-serveur en Java}}\\
  
-{{:departement_info:personnels:pb:cli:tcp_java.zip|TCP objets java}}\\ +{{:departement_info:personnels:pb:cli:tcp_java.zip|exemple TCP échange d'objets java}}\\ 
-{{:departement_info:personnels:pb:cli:tcp_maison.zip|TCP protocole "maison"}}\\ +{{:departement_info:personnels:pb:cli:tcp_maison.zip|exemple TCP protocole "maison"}}\\ 
-{{:departement_info:personnels:pb:cli:tcp_http.zip|TCP HTTP (GET seulement)}}\\+{{:departement_info:personnels:pb:cli:tcp_http.zip|exemple TCP HTTP (GET seulement)}}\\
  
 {{:departement_info:personnels:pb:cli:calculette réseau.zip|calculette en réseau}}\\ {{:departement_info:personnels:pb:cli:calculette réseau.zip|calculette en réseau}}\\
 {{:departement_info:personnels:pb:cli:ClientEtServeurEcho.zip|écho en réseau}}\\ {{:departement_info:personnels:pb:cli:ClientEtServeurEcho.zip|écho en réseau}}\\
  
-Travail à faire :\\ +Travail à faire : 
-Modifier le serveur pour qu'il envoie le texte reçu d'un client à tous les clients connectés (et pas seulement au client émetteur).\\ +  - Modifier le client pour qu'il soit capable de recevoir des textes même s'il n'a pas soumis de texte au serveur. 
-Modifier le client pour qu'il soit capable de recevoir des textes même s'il n'a pas soumis de texte au serveur.+  - Modifier le serveur pour qu'il envoie le texte reçu d'un client à tous les clients connectés (et pas seulement au client émetteur). 
 + 
 +{{:departement_info:personnels:pb:cli:discussion.zip|un corrigé}}\\ 
 + 
 +Travail à faire : 
 +  - Comprendre l'architecture logicielle et le fonctionnement du serveur 
 +  - Modifier le serveur pour implanter le patron publish-subscribe (variante de observer)
  
-{{:departement_info:personnels:pb:cli:discussionPB.zip|un corrigé}}\\ 
  
 ---- ----
  
-=== UDP ===+==== UDP ===
 + 
 +Le protocole de datagramme utilisateur (UDP) permet la transmission de données (sous forme de datagrammes) de manière très simple entre deux entités, chacune étant définie par une adresse IP et un numéro de port. 
 +Aucune communication préalable n'est requise pour établir la connexion, au contraire de TCP (qui utilise une négociation préalable (//handshaking//). UDP utilise un mode de transmission sans connexion. 
 +UDP ne garantit pas la bonne livraison des datagrammes, ni leur ordre d’arrivée. Il peut même arriver qu’un datagramme soit reçu en plusieurs exemplaires. 
 + 
 +UDP est utile pour transmettre rapidement de petites quantités de données, depuis un serveur vers de nombreux clients ou bien dans des cas où la perte éventuelle d'un datagramme est préférée à l'attente de sa retransmission. 
 + 
 +---- 
 + 
 +==== Multicast IP ==== 
 + 
 +Le multicast est une forme de diffusion d'un émetteur (source unique) vers un groupe de récepteurs (on parle aussi de « diffusion multipoint » ou « diffusion de groupe »). 
 +Les récepteurs intéressés par les messages adressés à ce groupe doivent s'inscrire à ce groupe. 
 +Les messages ne sont pas envoyés autant de fois qu’il y a de connexions (unicast), ni à toutes les machines du réseau (broadcast), mais une seule fois, au groupe. 
 +Le multicast IP ne permet pas de savoir qui participe, qui peut participer ou non au groupe. 
 + 
 +{{:departement_info:personnels:pb:cli:multicast.pdf|diaporama}} 
 + 
 +{{:departement_info:personnels:pb:cli:exempleMulticastUDP.zip|exemple de récepteur et d'émetteur multicast en Java}} 
 + 
 +---- 
 + 
 +==== Découverte de services ==== 
 + 
 +Les protocoles de découverte de services (SDP) sont des protocoles réseau qui permettent la détection automatique d’équipements et de services offerts par ces équipements dans un réseau d’ordinateurs. 
 +La découverte de services nécessite un langage commun pour permettre aux agents logiciels d'utiliser les services les uns des autres sans avoir besoin d'une intervention continue de l'utilisateur. 
 + 
 +mDNS-SD (multicast DNS Service Discovery) permet l'utilisation de services en réseau sans configuration. Il utilise des paquets dont la structure ([[https://courses.cs.duke.edu//fall16/compsci356/DNS/DNS-primer.pdf|courses.cs.duke.edu]] et [[https://linuxembedded.fr/2020/08/bonjour-mon-nom-est-dns-sd|linuxembedded.fr]]) permet d’ajouter des informations sur les services disponibles sur chacune des machines présentes sur un réseau local. 
 + 
 +{{:departement_info:personnels:pb:cli:DNS-SD-presentation-cas-utilisations.pdf|diaporama de Antoine Bernard}} 
 + 
 +Des services type sont prédéfinis ([[http://www.dns-sd.org/ServiceTypes.html|dns-sd.org]]). JmDNS implante ce protocole en Java, définit des [[http://jmdns.sourceforge.net/clover/javax/jmdns/impl/constants/DNSConstants.html|constantes]] et propose une [[http://jmdns.sourceforge.net/apidocs/index.html|API]] pour exploiter la structure des paquets mDNS. 
 + 
 +{{:departement_info:personnels:pb:cli:decouverte_services.pdf|diaporama}}
  
-{{:departement_info:personnels:pb:cli:udpJMD.pdf|diaporama de Jean-Michel Douin}}\\+{{:departement_info:personnels:pb:cli:udp_decouverte.zip|exemples en Java de découverte de services}}
  
-{{:departement_info:personnels:pb:cli:udp_multicast.zip|exemple de multicast}}\\ +Exercice :\\ 
-{{:departement_info:personnels:pb:cli:udp_decouverte.zip|exemples de découverte de services}}\\+  - modifier le client de discussion pour qu'il découvre le service chat et ses coordonnées 
 +  - modifier le serveur de discussion pour qu'il publie son service et ses coordonnées
  
departement_info/personnels/pb/cli.1678544893.txt.gz · Dernière modification : 2023/03/11 14:28 de Brutus Philippe

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki