컴퓨터 사이언스(CS) - 네트워크 부분 - TCP의 세그먼트와 헤더
TCP ( Transmission Control Protocol )
인터넷 프로토콜 스위트(IP)의 핵심 프로토콜 중 하나. IP와 함께 TCP / IP라는 명칭으로 널리 불린다. 근거리 통신망, 인트라넷, 인터넷 ( Unreliable )에 연결된 컴퓨터에서 실행되는 프로그램 간에 일련의 패킷을 안정적, 순서대로, 에러없이 교환( Reliable )할 수 있게 해준다. 즉, 네트워크 통신에서 신뢰성있는 연결을 보장한다. TCP는 네트워크 혼잡 방지 알고리즘(network congestion avoidance algorithm)을 사용한다. |
TCP 세그먼트 구조
TCP는 데이터 스트림으로부터 데이터를 받아 들여 이것을 청크 단위로 분할한 뒤 TCP 헤더를 덧붙여 TCP 세그먼트를 생성한다. TCP 세그먼트는 IP 데이터그램에 캡슐화 되어 상대방과 주고 받게 된다. ![]() TCP 세그먼트는 세그먼트 헤더와 데이터의 두 섹션으로 구성된다. TCP 헤더는 10개의 필수 필드 및 옵션 확장 필드 ( 주황색 부분 )를 포함한다. ![]() Source Port ( 16비트 ) - 송신 포트 [TCP위키] - TCP 헤더 패딩은 TCP 헤더의 종료 지점과 데이터의 시작 지점을 32비트 단위 길이에 맞추기 위해 사용. 패딩 값은 0 헤더 뒤에는 데이터 섹션이 따라온다. 그 내용은 애플리케이션의 페이로드 데이터이다. 데이터 섹션의 길이는 TCP 세그먼트 헤더에서 결정되지 않으며, 전체 IP 데이터그램의 길이에서 TCP 헤더와 캡슐화된 IP 헤더의 길이를 뺀 값으로 계산하게 된다. 즉, 데이터 섹션의 길이는 IP 헤더에 의해 결정된다고 볼 수 있다.
|
프로토콜의 작동
TCP 프로토콜의 작동은 크게 세가지 흐름으로 구분한다. 1. 연결 생성 ( Connection establishment ) 2. 자료 전송 ( Data transfer ) 3. 연결 종료 ( Connection termination ) 신뢰성 있는 연결이 생성되어야 하며, 그 후 자료를 전송하고, 마지막으로 연결을 종료하면서 할당된 자원을 반납한다! 연결 생성을 위해 3방향 핸드셰이크를 사용한다. 연결 종료를 위해 4방향 핸드셰이크를 사용한다. |
- 연결 생성과 연결 종료에 사용되는 핸드셰이킹의 자세한 내용은 아래 포스트로 확인하자!
so-cute-danu-dev.tistory.com/72
[ Computer Science ] Network - TCP 3 way Handshake / 4 way Handshake
컴퓨터 사이언스(CS) - 네트워크 부분 - TCP의 3 방향 핸드 셰이크 / 4 방향 핸드 셰이크 TCP란? OSI 7계층 중에 4계층인 전송계층(Transport Layer)에서 사용하는 프로토콜 사용자들이 신뢰성 있는 데이터
so-cute-danu-dev.tistory.com
'Computer Science > Network' 카테고리의 다른 글
[ Computer Science ] Network - UDP (0) | 2021.04.08 |
---|---|
[ Computer Science ] Network - TCP/IP (흐름제어/혼잡제어)(2) (0) | 2021.04.07 |
[ Computer Science ] Network - TCP/IP (흐름제어/혼잡제어) (1) (0) | 2021.04.07 |
[ Computer Science ] Network - TCP 3 way Handshake / 4 way Handshake (0) | 2021.04.02 |
[ Computer Science ] Network - OSI 7계층 (0) | 2021.03.31 |