일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- network
- frontend
- Graph
- git
- 백준
- react
- BFS
- LeetCode
- Database
- 자바
- vscode
- DP
- CS
- db
- 안드로이드
- 프로그래머스
- VIM
- 리트코드
- TypeScript
- DFS
- Data Structure
- Redux
- 그레이들
- java
- Javascript
- Python
- Algorithm
- 알고리즘
- 동적 계획법
- 다이나믹 프로그래밍
Archives
- Today
- Total
늘 겸손하게
Network : 4-way handshake 본문
4 - way handshake
4-way handshake는 TCP(Transmission Control Protocol) 연결을 종료하기 위해 사용되는 과정입니다.
4-way handshake는 네 가지 단계를 거쳐 이루어집니다.
1 단계
클라이언트가 서버에게 FIN 패킷 전송
- 클라이언트는 서버에게 연결 종료를 알리기 위해 FIN 플래그를 설정한 패킷을 보냅니다.
- FIN 플래그는 클라이언트가 더 이상 데이터를 보내지 않을 것임을 나타냅니다.
2 단계
서버가 클라이언트에게 응답 ( ACK )
- 서버는 클라이언트로부터 받은 FIN 패킷에 대한 응답으로 ACK와 함께 일련번호를 하나 증가시킨 ACK 패킷을 보냅니다.
- 이로서 서버는 클라이언트에게 FIN 요청을 받았음을 알립니다.
- 클라이언트로부터 여전히 데이터가 올 수 있기 때문에 바로 연결을 종료하진 않습니다.
3 단계
서버가 클라이언트에게 응답 ( FIN )
- 클라이언트에서 더 이상 데이터가 오지 않을 경우 서버 또한 자신이 더 이상 데이터를 보내지 않을 것임을 나타내기 위해 FIN 플래그를 설정한 패킷을 클라이언트에게 전송합니다.
4 단계
클라이언트가 ACK를 서버에 전송
- 클라이언트는 서버로부터 받은 FIN 요청에 대한 응답으로, ACK와 함께 일련번호를 하나 증가시킨 ACK 패킷을 전송합니다.
- 이제 클라이언트와 서버 모두 데이터 전송을 완료하고 연결을 종료할 준비가 되었습니다.
마무리
이렇게 4-way handshake 과정을 통해 양쪽 모두가 연결을 종료하고 나서야 TCP 연결이 완전히 종료됩니다.
'Computer Science > Network' 카테고리의 다른 글
Network 질문 리스트 (0) | 2023.10.23 |
---|---|
Network : 3-way handshake (0) | 2023.07.29 |
Network : TCP / IP (0) | 2023.07.28 |
CS - Network - 네트워크 분류 (0) | 2022.12.13 |
CS - Network - 네트워크 토폴로지 (Network Topology) (0) | 2022.12.13 |