
🌟중요한 상태 : LISTEN, ESTABLISHED
LISTEN(서버) : 포트번호를 열어놓은 상태, 서버쪽에서 포트번호를 프로그램이 사용하고 있는 상태, 클라이언트의 요청을 듣고 있는 상태
서버가
LISTEN상태인지 확인하는 방법 :cmd에netstat -ano명령어 입력
ESTABLISHED: 연결이 서로 수립된 상태,3WayHandshake과정이 끝나면 이 상태가 됨.
LISTEN➡️3Way Handshake➡️ESTABLISHED

서버는 항상 LISTENING상태
클라이언트에서 패킷을 보냄과 동시에 SYN_SENT상태가 되고
서버는 패킷을 받고 SYN_RECEIVED상태가 됨

클라이언트는 서버의 패킷을 받고 ESTABLISHED 상태가 되고
서버는 클라이언트의 응답을 받고 ESTABLISHED 상태가 됨
LISTENING 상태에서 ESTABLISHED 상태가 돼야 서로 데이터를 주고받을 수 있는 상태가 된다.

와이어샤크를 키고 웹 브라우저를 실생시킨 뒤 tcp를 검색하면 맨 위에 3Way-Handshake가 있는 것을 볼 수 있다.

와이어샤크로 본 TCP 플로우