Laden...

UdpClient, Videokonferenz, Multicast

Erstellt von syn87 vor 13 Jahren Letzter Beitrag vor 11 Jahren 2.896 Views
S
syn87 Themenstarter:in
87 Beiträge seit 2008
vor 13 Jahren
UdpClient, Videokonferenz, Multicast

Hallo zusammen,

ich bin aktuell dabei, ein Videokonferenz Programm zu schreiben. Dabei gibt es verschiedene Clients, die sich, sobald sie sich am Server angemeldet haben, diesem ein Bild schicken. Die Übertragungsrate liegt zu Beginn bei 25 Fps. Die Bilder kommen beim Server auch sauber und ruckelfrei an.

Nun das Problem: Damit sich die Clients untereinander sehen, wollte ich MulticastGroups verwenden. Kommt ein Client also in eine Gruppe, dann sendet er nicht mehr an die ServerIP sondern an die gruppenIP. Der Server empfaengt sie jedoch trotzdem noch, da er auch in allen Gruppen mit drin steckt. Sobald zu viele Clients nicht mehr an die ServerIP senden, sondern an die Gruppen IP, kommt es zu aussetzern. Wenn ich die Empfangsroutine genauer unter die Lupe nehme, dann kann ich auch feststellen, dass von manchen Clients schon seit Sekunden ncihts mehr empfangen wird. Daher schließe ich ein GUI Problem aus.

Also nun die Frage: Kommt es bei der Nutzung von Multicast Gruppen irgendwann zwangslaeufig zu Problemen? Sollte ich vllt an jeden einzelnen Client in der selben Gruppe senden? Und sollte ich vllt auch mehrere Ports verwenden, statt nur einen?

Lg

T
381 Beiträge seit 2009
vor 13 Jahren

nutzt du das nur lokal? Denn im Internet könnte das Probleme geben mit dem Multicast.

Mehrere Ports sollten keinen Einfluß haben, ich denke eher das das Netz evtl ausgelastet ist. Hast du den Traffic mal berechnen / Gemessen?

S
syn87 Themenstarter:in
87 Beiträge seit 2008
vor 13 Jahren

hehe:) ne also ich habs nur lokal getestet. nur da funktionieten ja die multicast ips. jetz weiss ich nich genau wie das mit den multicast funktioniert. wird nur ein paket geschickt und jeder der in der gruppe ist, fuehlt sich angesprochen? oder werden eigntl doch so viel pakete versendet, wie nutzer in der gruppe sind?

ich will nochmal betonen: jeder client schickt sein bild zum anfang nur an der server. sobald die serverip gegen eine multicast ip ausgetauscht wird, kommt es zu paketverlusten...

gruss

T
381 Beiträge seit 2009
vor 13 Jahren

Zum Gateway dürfte auch bei Multicast nur ein Paket gehen, der Gateway teilt das dann auf. Wie weiß ich leider nicht. Aber mindestens eins Pro Client der es bekommen soll.

Hier steht noch was über MAC Adressen: http://de.wikipedia.org/wiki/Multicast

S
syn87 Themenstarter:in
87 Beiträge seit 2008
vor 13 Jahren

Hallo zusammen 😃

ich schätze ein paar Fehler habe ich nun schon eliminiert. Zumindest läuft es auf einigen Rechnen nun trotz Multicast flüssig. Hier scheint auch das Problem gewesen zu sein, dass ich eine falsche Multicast Adresse verwendet hab. Meine Annahme war, dass es egal ist, welche ich nehme, aber anscheinend gibt es da doch ein paar gravierende Unterschiede (Multicast Address Assignment). Weiterhin übergebe ich nun auch die TTL an die JoinMulticastMethode (aktuell 0).

Wie gesagt, es funktioniert mit einigen Rechnern. Manche Rechner bekommen nur fuer 2 Sekunden die Signale von den anderen Rechnern, und danach nie wieder. Ne Idee woran das liegen kann?

Gruß

syn

T
381 Beiträge seit 2009
vor 13 Jahren

TTL sollte > 0 sein, nicht?

S
syn87 Themenstarter:in
87 Beiträge seit 2008
vor 13 Jahren

ttl bestimmt doch die anzahl der hops. also die anzahl, wie oft ein paket das netzwerk wechseln kann. damit ist 0 gleichbedeutend mit einem lan?! ich glaub das war so 😃

T
381 Beiträge seit 2009
vor 13 Jahren

Kommt drauf an über wie viele Router das Paket muss, ich weiß grad nicht ob es bei 0 ider -1 gedropt wird.

S
syn87 Themenstarter:in
87 Beiträge seit 2008
vor 13 Jahren

Ja wie gesagt: 0 wenns nur im LAN versendet werden soll.

B
19 Beiträge seit 2007
vor 13 Jahren

Ich habe gerade ähnliches Problem. Beschäftige mich auch gerade mit Multicast und komme nicht so richtig weiter.

Du benutzt bestimmt die IP 224.0.0.1 , die ist halt für das lokale netzwerk und funktioniert bei mir ganz gut. Im Intranet selber ist sowas kein Problem. Die Switche können sowas und die Router müssen es unterstützen.

Was du vor hast ... könnte man super mit Silverlight 4 umsetzen.

Nur wie setzt man sowas im internet dann um?

mfg.

S
1 Beiträge seit 2012
vor 11 Jahren

Hallo zusammen,

ich bin aktuell dabei, ein
>
Programm zu schreiben. Dabei gibt es verschiedene Clients, die sich, sobald sie sich am Server angemeldet haben, diesem ein Bild schicken. Die Übertragungsrate liegt zu Beginn bei 25 Fps. Die Bilder kommen beim Server auch sauber und ruckelfrei an.

Nun das Problem: Damit sich die Clients untereinander sehen, wollte ich MulticastGroups verwenden. Kommt ein Client also in eine Gruppe, dann sendet er nicht mehr an die ServerIP sondern an die gruppenIP. Der Server empfaengt sie jedoch trotzdem noch, da er auch in allen Gruppen mit drin steckt. Sobald zu viele Clients nicht mehr an die ServerIP senden, sondern an die Gruppen IP, kommt es zu aussetzern. Wenn ich die Empfangsroutine genauer unter die Lupe nehme, dann kann ich auch feststellen, dass von manchen Clients schon seit Sekunden ncihts mehr empfangen wird. Daher schließe ich ein GUI Problem aus.

Also nun die Frage: Kommt es bei der Nutzung von Multicast Gruppen irgendwann zwangslaeufig zu Problemen? Sollte ich vllt an jeden einzelnen Client in der selben Gruppe senden? Und sollte ich vllt auch mehrere Ports verwenden, statt nur einen?

Lg

Ich würde dir raten an jeden Client selbst zu senden.

gruß

M
1 Beiträge seit 2012
vor 11 Jahren

Das ist doch total unlogisch bzw. kann nicht funktionieren.. sorry

C
439 Beiträge seit 2008
vor 11 Jahren

TTL entspricht nicht immer einem hop:

TTL - Wikipedia

A programmer is just a tool, which converts coffeine into code! 🙂