HomeAboutMeBlogGuest
© 2025 Sejin Cha. All rights reserved.
Built with Next.js, deployed on Vercel
📖
공부한 책
/
1%의 네트워크 원리
1%의 네트워크 원리
/2장 TCP/IP의 데이터를 전기 신호로 만들어 보낸다/
TCP 프로토콜 데이터 송.수신 동작 전체 정리

TCP 프로토콜 데이터 송.수신 동작 전체 정리

notion image
  • 데이터 송.수신의 최초 동작은 소켓을 작성하는 단계
    • 서버측에서 애플리케이션이 동작하기 시작했을 때 소켓을 만들고 이것을 접속 대기 상태로 만듬
  1. 클라이언트에서 소켓을 만들고 서버를 향해 접속 동작 실행
      • 클라이언트가 SYN을 1로 만든 TCP 헤더를 만들어 서버에 보냄 ( 시퀀스 번호 초기값, 서버에서 클라이언트로 보낼 때 이용하는 윈도우의 값도 기록)
  1. 서버에서 SYN을 1로 만든 TCP 헤더가 돌아옴 (마찬가지로 시퀀스 번호 초기값, 윈도우가 기록) & 클라이언트에서 보낸 SYN TCP 헤더를 받은 것을 나타내는 ACK 번호도 반송
  1. 클라이언트에서 서버의 SYN 1 TCP 헤더 잘 받았다고 ACK 번호 반송
  1. 웹의 기준으로 클라이언트가 서버에 리퀘스트 메시지를 먼저 보냄. TCP는 이것을 적당한 크기의 조각으로 분할 후 TCP 헤더를 맨 앞에 부가하여 서버에 보냄 (시퀀스 번호 기록)
  1. 서버는 데이터 받으면 ACK 번호 반송 & 그 데이터를 애플리케이션에 가져가면서 버퍼가 비워지면 윈도우 사이즈도 반송
  1. 4의 서버 기준. 반대 방향
  1. 5.의 서버 기준. 반대 방향
  1. 웹의 경우 서버에서 먼저 끊기 동작에 들어감 FIN 1로 표기한 TCP 헤더 전송함
  1. 클라이언트에서 잘 받았다고 ACK 번호 반송
  1. 클라이언트에서 FIN 1로 표기하여 전송
  1. 서버에서 잘 받았다고 ACK 번호 반송
  • 잠시 후 소켓 말소