네트워크 기초
TCP에서 연결을 설정하는 3-way 핸드셰이크에서 주고받는 패킷의 순서로 올바른 것은?
- ASYN → ACK → FIN
- BACK → SYN → SYN+ACK
- CSYN → SYN+ACK → ACK
정답과 해설 보기
정답: C. SYN → SYN+ACK → ACK
3-way 핸드셰이크에서는 먼저 클라이언트가 SYN으로 연결을 요청하면서 자신이 보낼 데이터의 첫 번호(초기 시퀀스 번호)를 알립니다. 서버는 SYN+ACK로 그것을 받았음을 확인(ACK)하는 동시에 자신의 초기 시퀀스 번호를 알립니다. 마지막으로 클라이언트가 ACK를 돌려보내면 양방향 통신의 준비가 갖추어집니다. 세 번의 교환으로 양쪽 방향의 번호를 서로 확인함으로써, 늦게 도착한 오래된 패킷으로 인한 잘못된 연결 등을 막습니다. 이 때문에 TCP에서는 데이터를 보내기 시작할 때까지 적어도 1왕복 시간(RTT)이 걸립니다. FIN은 연결을 종료할 때 사용합니다.