Ostatnio prędkość Internetu w naszej uczelnianej sieci LAN drastycznie spadła. Średnia prędkość pobierania pliku wynosi teraz 13 Kb / s. Czat wideo w Google Talk pozostaje niewiarygodnie szybki, gdy odbywa się z kimś w sieci LAN uczelni. Jest praktycznie bezużyteczny dla każdego, kto nie jest w sieci uczelni. Moja uczelnia ma serwer proxy, przez który wszystkie komputery w sieci LAN uczelni łączą się z Internetem. Podejrzewam, że problem wynika z serwera proxy.
W jaki sposób g-talk otwiera czat wideo? Czy jest to coś w mechanizmie, który przyspiesza czat wideo między dwoma klientami w tej samej sieci? Ponieważ wszystkie komputery w sieci LAN uczelni używają tego samego serwera proxy, ich adres IP wydaje się być taki sam dla serwera Google.
proxy
lan
google-talk
bashrc
źródło
źródło
Odpowiedzi:
Wygląda na to, że wideo na czacie Google spróbuje najpierw połączyć się bezpośrednio (przez sieć LAN); jeśli nie jest to możliwe, spróbuje połączyć się za pośrednictwem infrastruktury Google. Są więc dwa powody, dla których będzie szybciej, gdy rozmawiasz z kimś w sieci twojej uczelni.
Po pierwsze: UDP vs TCP Podczas łączenia się z kimś bezpośrednio w sieci prawdopodobnie nie przejdziesz przez zaporę, a jedynie routery. Istnieje również duże prawdopodobieństwo, że nie będziesz mieć NAT. Oznacza to, że Czat Google będzie używać UDP do wysyłania wideo tam iz powrotem. UDP to protokół „bezpołączeniowy”, co oznacza, że wysyła dane bez potwierdzenia. Nie będzie próby kontrolowania ruchu na podstawie wykrywania kolizji. Jednak, gdy udasz się do kogoś spoza sieci uniwersytetu, prawdopodobnie zostanie on zaporą ogniową i NATem, co na ogół blokuje UDP (czyli zaporę ogniową). Czat Google wykryje to i użyje protokołu TCP, który nie będzie tak wydajny w przypadku wideo.
Drugi: problemy z bramą. Ponieważ teraz cały ruch przechodzi przez jeden adres IP, zostanie spowolniony. Pojawi się również problem z opóźnieniem, ponieważ jest on dalej.
Źródło: https://developers.google.com/talk/libjingle/important_concepts#connections
źródło