3-way handshake로 양쪽 도달 가능성과 초기 순서 번호를 확인한 뒤 데이터를 주고받습니다.
TCP 연결 식별
TCP는 연결 지향, 신뢰성, 순서 보장, 바이트 스트림을 연결 상태로 관리합니다. 개발자는 포트와 소켓을 통해 이 추상화를 애플리케이션에서 사용합니다.
Sequence, ACK, 재전송, 윈도우를 통해 손실과 순서 뒤바뀜을 애플리케이션에서 덜 보이게 합니다.
IP가 호스트를 찾는다면 포트는 호스트 안의 프로세스나 서비스 진입점을 구분합니다.
TCP 연결은 출발지 IP와 포트, 목적지 IP와 포트의 4-tuple로 구분됩니다.
LISTEN
서버가 포트에서 연결을 기다리는 정상 상태입니다.
ESTAB
연결이 수립되어 양방향 데이터 전송이 가능한 상태입니다.
CLOSE WAIT
상대 FIN을 받은 뒤 애플리케이션이 close를 호출하지 않으면 누적될 수 있습니다.