Pierderea datagramelor multicast pentru a se alătura și a pleca

Am întâmpinat o problemă cu software-ul serverului meu, în cazul în care, dacă un fir se unește cu un multicast, este posibil ca un alt fir să nu primească o datagramă pe un alt difuzor multicast în aceiași instant. Nu sunt sigur dacă acest lucru poate fi respins ca o pierdere așteptată din cauza naturii "nesigure" a multicastului UDP sau dacă acesta este un defect serios driver/nic. De asemenea, captarea pachetelor arată un decalaj în acel moment.

Am observat această problemă pe mai multe modele și producători, inclusiv Intel și HP. Motivul pentru care simt că este vorba de o problemă cu un driver sau cu un driver este faptul că problema nu apare deloc dacă rulez un sniffer de pachete care pune interfața în modul promiscuos.

Este posibil ca, în timp ce IGMP să se alăture sau să plece, să actualizeze tabelele de redirecționare în nic, pur și simplu oprește transmiterea tuturor traficului multicast în acel moment? Este acceptabil acest lucru?

1
Poate că ar fi mai bine să întrebați la serverfault?
adăugat autor Marcin, sursa
@ Nicolai Puteți captura fără modul promiscuos. De exemplu, folosind tshark cu flag -p. wireshark.org/docs/man-pages/tshark.html
adăugat autor Marcin, sursa
Modul promiscuos pe = pachetele apar în captare și sunt recepționate de server. Modul promiscuos în afara = pachetele care lipsesc în capturarea în jurul IGMP se alăture și pleacă de la cererile, precum și lacunele de secvență raportate de server.
adăugat autor Marcin, sursa
Am reușit să reproduc acest lucru doar cu 2 grupuri multicast. Desigur, cu cât mai multe grupuri implicate, cu atât mai des se întâmplă problema.
adăugat autor Marcin, sursa
Din păcate, acest lucru nu este posibil, deoarece este o cantitate foarte mare de lățime de bandă. Legăturile se presupune că se fac pe o bază necesară. Voi continua să investighez acest lucru și să trimit un răspuns dacă găsesc ceva.
adăugat autor Marcin, sursa
Cum obțină acel "captură de pachete" fără a pune NIC în modul promiscuos?
adăugat autor Nikolai Fetissov, sursa
Și spui că toate lucrurile sunt egale, nu pierzi pachetele cu NIC în modul promiscuos?
adăugat autor Nikolai Fetissov, sursa
Ei bine, șoferul trebuie să re-programeze hardware-ul NIC cu o nouă adresă MAC. Câte grupuri vă înscrieți în total? Îmi amintesc că e100 avea numai filtre de multicast 64 de hp, cădea înapoi pentru a asculta pentru toate pachetele de multicast și apoi pentru filtrarea în software.
adăugat autor Nikolai Fetissov, sursa
Acest lucru se simte ca o cursă în șofer undeva, deși ar fi greu de dovedit. Cred că soluția ar fi încercarea de a se alătura în prealabil tuturor grupurilor necesare.
adăugat autor Nikolai Fetissov, sursa