Question

Je viens de me rendre compte qu'il existe une distinction entre la multidiffusion IP (qui ne fonctionne apparemment pas très bien sur Internet) et la multidiffusion d'applications (qui est apparemment utilisée dans IRC et PSYC, par http://fr.wikipedia.org/wiki/Multicast ).

Existe-t-il un bon tutoriel sur la mise en œuvre de la multidiffusion au niveau de l'application?

Je pensais que le but de la multidiffusion était de réduire la bande passante pour les segments de réseau courants. Il m'est donc difficile de comprendre ce que fait la multidiffusion au niveau de l'application.

Était-ce utile?

La solution

La multidiffusion de niveau IP a pour objectif de réduire la bande passante des segments de réseau courants pour lesquels de nombreux utilisateurs souhaitent recevoir le même trafic. Il est généralement limité à un sous-réseau particulier et un routeur IP ne propage pas la multidiffusion au-delà du sous-réseau. Ceci est fait pour des raisons d'évolutivité - ce ne serait pas une bonne idée de permettre à un hôte de créer des paquets de multidiffusion qui sont propagés à chaque adresse IP sur Internet.

Il existe différentes façons de penser au "niveau d'application". multidiffusion. Une approche consiste à créer un arbre de multidiffusion à l'aide des ordinateurs hôtes participant à la multidiffusion. L'algorithme de Dijkstra pourrait être utilisé pour cela (Wikipedia en a une description raisonnable). Cependant, le maintien de la liste des ordinateurs participants - et le maintien de l’arborescence à jour - peut s’avérer une tâche fastidieuse si des hôtes rejoignent et quittent le réseau à un rythme élevé. Et vous ne disposez probablement pas d'une bonne estimation du coût du houblon au niveau de l'application.

Une autre approche à examiner est l’algorithme de saturation utilisé dans le protocole de routage des requêtes du réseau Gnutella. (Wikipedia en a également une bonne description.) Cette approche évite de créer un arbre de multidiffusion, mais présente l'inconvénient de générer plus de trafic réseau. En fait, BEAUCOUP plus de trafic réseau, car le trafic croît avec le carré du nombre de nœuds, c’est-à-dire O (n ** 2).

Autres conseils

Un autre exemple de multidiffusion d'applications consiste à utiliser JGroups dans Amazon EC2 ou Google App Engine , car ils ne prennent pas en charge la multidiffusion IP, mais les développeurs souhaitent utiliser la fonctionnalité de multidiffusion.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top