문제
TCP 연결을 시작할 때 수행하는 3-way handshake의 패킷 교환 순서로 올바른 것은?
① SYN → SYN/ACK → ACK ② ACK → SYN → SYN/ACK ③ SYN → ACK → SYN/ACK ④ FIN → ACK → SYN
정답
1번
해설
정답: 1. TCP 연결 설정은 클라이언트가 SYN을 보내고, 서버가 SYN/ACK로 응답하며, 클라이언트가 ACK로 확정하는 SYN → SYN/ACK → ACK 순서로 이루어진다.
오답 풀이
- 2번: 연결 시작은 ACK가 아니라 SYN으로 시작해야 하므로 순서가 틀렸다.
- 3번: 서버 응답은 SYN과 ACK가 결합된 SYN/ACK 단일 세그먼트이며, 두 단계로 분리되지 않는다.
- 4번: FIN은 연결 설정이 아니라 연결 종료에 사용하는 플래그이다.
보충 개념 연결 종료는 4-way handshake(FIN → ACK → FIN → ACK)로 이루어진다. SYN은 순서번호 동기화(Synchronize)를 의미한다.