반응형
TCP 3-way handshake : 연결 성립
1) 클라이언트가 서버에 접속을 요청하는 SYN(client_isn) 패킷을 보냄.
2) 서버는 클라이언트의 요청인 SYN(client_isn)을 받고 클라이언트에게 그 요청을 수락한다는 ACK(client_isn + 1)와 SYN(server_isn) 패킷을 보냄.
3) 클라이언트는 서버의 수락 응답인 ACK(client_isn + 1)과 SYN(server_isn) 패킷을 받고 ACK(server_isn + 1)을 서버로 보냄.
이렇게 3개의 단계를 거치면 연결이 성립하게 됨.
TCP 4-way handshake : 연결 해제
1) 클라이언트는 서버에 연결을 종료한다는 FIN flag를 보냄.
2) 서버는 FIN을 받고, 확인했다는 ACK를 클라이언트에게 보냄. 이때 모든 데이터를 보내기 위해 CLOSE_WAIT 상태.
3) 데이터를 모두 보냈다면, 서버는 연결이 종료되었다는 FIN flag를 클라이언트에 보냄.
4) 클라이언트는 FIN을 받고 확인했다는 ACK를 서버에게 보냄. 이때 서버에게 아직 다받지 못한 데이터가 있을 수 있으므로 TIME_WAIT 상태로 기다림.
5) 클라이언트의 ACK를 받은 서버는 소켓 연결을 close.
728x90
반응형
'Computer Science > 네트워크' 카테고리의 다른 글
[네트워크] HTTP와 HTTPS (0) | 2021.05.18 |
---|---|
[네트워크] UDP (0) | 2021.05.18 |
[네트워크] TCP (흐름 제어 / 혼잡 제어) (0) | 2021.05.17 |
[네크워크] HTTP의 GET과 POST 비교 (0) | 2021.05.17 |
[네트워크] OSI 7계층 (0) | 2021.05.17 |