Ten artykuł jest lustrzanym artykułem tłumaczenia maszynowego, kliknij tutaj, aby przejść do oryginalnego artykułu.

Widok: 10988|Odpowiedź: 0

Pomyślnie wykonano dziurę UDP [Wznowienie]

[Skopiuj link]
Opublikowano 08.03.2017 14:36:44 | | | |
Parametry tego testu:
Serwer jest stałym adresem IP w sieci publicznej. Dwóch klientów, A i B, znajduje się za różnymi komputerami, różnymi szerokopasmowymi i różnymi modelami routingu (jedna trasa domowa, jedna korporacyjna), a trasy te nie są specjalnie skonfigurowane.
Test nie jest niczym szczególnym, według danych online jest tylko eksperyment. Jak pokazano poniżej:
Ilustrują:
Gdy strona A wysyła pakiet do serwera za pomocą UDP, strona serwera otrzymuje IP i port końca A: xxx.xxx.xxx.101:5841
Gdy strona B wysyła pakiet do serwera za pomocą UDP, strona serwera otrzymuje adres IP i port od strony B: xxx.xxx.xxx.105:12584
W tym czasie trasowanie na obu końcach A i B odpowiada otwarciu kanału do komunikacji z A i B na zewnątrz. Serwer może komunikować się nie tylko z A i B, ale ponieważ kanał jest otwarty, to:
A może wysłać wiadomość bezpośrednio do kanału, który B otworzył (B=xxx.xxx.xxx.105:12584).
To samo:
B może także wysłać wiadomość bezpośrednio na kanał otwarty przez A (A=xxx.xxx.xxx.101:5841).
Uwaga: Wygląda na to, że jest sekwencja komunikacji między A a B, zapomniałem~, po prostu wyślij ją mimo wszystko
Na koniec: komunikacja UDP jest w niektórych przypadkach trochę bardziej "wrażliwa" niż TCP (może trochę nietypowa, i nie wiem, jak to opisać).
Na przykład czasem łączność szerokopasmowa została pomyślnie wybrana, ale TCP nie może połączyć się z serwerem, a przeglądarka otwiera stronę internetową i komunikacja TCP trwa długo.
Podczas gdy w okresie połączenia TCP jest normalne.
Ale korzystanie z UDP zdecydowanie nie jest bezproblemowym zadaniem:
--Trzeba zaprojektować rozsądny protokół pakietowy
--Jeśli wymagana jest integralność informacji, należy ją ponownie przesłać
--Wysokie wymagania dotyczące adaptacji muszą być stosowane z TCP
Obecne środowisko sieciowe jest stosunkowo dobre, a skuteczność wysyłania przez UDP może sięgać 98, 99%, a nawet więcej (nie przeprowadziłem wystarczających testów, po prostu to czuję).
W złożonym i niestabilnym środowisku sieciowym tamtego czasu QQ faktycznie wybrało UDP jako główny protokół komunikacyjny, podczas gdy ICQ i MSN były jednocześnie głównie TCP.
Naśladowanie nie oznacza podążania za nim i zostawania w tyle, ale jest ważne, by móc wprowadzać nowe myślenie w ramach starych ram. To również powinien być jeden z nieuniknionych czynników sukcesu konia.





Poprzedni:.net/c# gadżet komunikacyjny UDP [kod źródłowy]
Następny:[Rzeczywista walka] UDP System.Net.Sockets.SocketException
Zrzeczenie się:
Całe oprogramowanie, materiały programistyczne lub artykuły publikowane przez Code Farmer Network służą wyłącznie celom edukacyjnym i badawczym; Powyższe treści nie mogą być wykorzystywane do celów komercyjnych ani nielegalnych, w przeciwnym razie użytkownicy ponoszą wszelkie konsekwencje. Informacje na tej stronie pochodzą z Internetu, a spory dotyczące praw autorskich nie mają z nią nic wspólnego. Musisz całkowicie usunąć powyższą zawartość z komputera w ciągu 24 godzin od pobrania. Jeśli spodoba Ci się program, wspieraj oryginalne oprogramowanie, kup rejestrację i korzystaj z lepszych, autentycznych usług. W przypadku naruszenia praw prosimy o kontakt mailowy.

Mail To:help@itsvse.com