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

Widok: 11976|Odpowiedź: 0

[Protokół sieciowy] Proces trójstronnego uścisku ręki protokołu TCP

[Skopiuj link]
Opublikowano 05.01.2015 12:07:30 | | |
1. Protokół uścisku TCP

W protokole TCP/IP protokół TCP zapewnia niezawodne usługi połączenia, wykorzystując trzykierunkowy handshake do nawiązania połączenia.

Pierwszy handshake: Podczas nawiązywania połączenia klient wysyła pakiet syn (syn=j) do serwera i wchodzi w stan SYN_SEND, czekając na potwierdzenie przez serwer.

Drugi handshake: Gdy serwer otrzymuje pakiet SYN, musi potwierdzić SYN klienta (ack=j+1) oraz wysłać pakiet SYN (syn=k), czyli pakiet SYN+ACK, po czym serwer wchodzi w stan SYN_RECV.

Trzeci handshake: Klient otrzymuje pakiet SYN+ACK od serwera i wysyła pakiet potwierdzający ACK (ack=k+1) do serwera.

Po trzech uściskach dłoni klient i serwer zaczynają przesyłać dane, a w powyższym procesie pojawia się kilka ważnych koncepcji:

Niepołączona kolejka: W protokole trzystronnego handshake serwer utrzymuje niepołączoną kolejkę, która otwiera wpis dla każdego pakietu SYN klienta (syn=j), wskazujący, że serwer otrzymał pakiet SYN i wysyła potwierdzenie klientowi, oczekując na pakiet potwierdzenia od klienta. Połączenie zidentyfikowane przez te wpisy znajduje się w stanie Syn_RECV na serwerze, a gdy serwer otrzyma pakiet potwierdzenia od klienta, wpis jest usuwany, a serwer wchodzi w stan USTANOWIONY.
Parametr backlogu: Wskazuje maksymalną liczbę niepołączonych kolejek.

Czasy retransmisji SYN-ACK Jeśli serwer wyśle pakiet SYN-ACK i nie otrzyma pakietu potwierdzenia klienta, serwer wykonuje pierwszą ponowną transmisję, czeka przez pewien czas bez otrzymania pakietu potwierdzenia klienta i wykonuje drugą ponowną transmisję. Należy zauważyć, że czas oczekiwania na każde ponowne przepuszczenie nie musi być taki sam.

Czas przetrwania półpołączenia: odnosi się do maksymalnego czasu, jaki wpis w kolejce półpołączenia przeżywa, czyli maksymalnego czasu od momentu otrzymania pakietu SYN przez usługę do momentu potwierdzenia jego nieprawidłowości, a wartość ta jest sumą maksymalnego czasu oczekiwania wszystkich pakietów żądania ponownej transmisji. Czasem nazywamy też półpołączony czas przetrwania SYN_RECV czasem przetrwania.





Poprzedni:Oprogramowanie łamie typowe instrukcje asemblera
Następny:Podstawy trójkierunkowego procesu uścisku ręki TCP
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