TCP Options, TCP Parameters   TCP 옵션, TCP 헤더 옵션, TCP 파라미터

(2022-06-18)

1. TCP 옵션TCP 연결 관리 기능을 확장시키는데 주로 사용되는 옵션 필드

  ㅇ TCP 헤더 내에 포함됨 
     - 그 크키는 가변 (0~40 바이트 즉, 최대 40 바이트까지 옵션을 넣을 수 있음)
     - 여러 옵션이 함께 있을 수 있음
     - 이 옵션들은 4 바이트 경계를 갖음


2. TCP 옵션 구조

    

  ㅇ 옵션 시작이 옵션 종류를 나타냄 (1 바이트)
  ㅇ 0,1 종류는 1 바이트, 그 외 종류들은 크기(length) 필드 있음


3. 주요 옵션의 종류

  ㅇ type 0  (EOL, End of Option) : 1 바이트
     - 옵션 필드의 끝
        . 더이상의 옵션 처리 목록이 없음 (옵션 리스트의 끝) 

  ㅇ type 1  (NOP, No Operatin) : 1 바이트
     - 동작 없음
        . 4 바이트 배수로 패딩 (채우기) 위함 (옵션 사이를 채움)

  ㅇ type 2  (MSS, Maximum Segment Size) : 4 바이트TCP MSS 옵션 참조
     - TCP 최대 세그먼트 크기 옵션
        . 송신측 네트워크에 대한 TCP 데이터 세그먼트의 최대 길이
           .. 例) 이더넷은 약 1500 바이트
        . MSS 값은, 16 비트로 그 크기를 지정함
           .. 미 지정시 기본값 536 바이트가 사용됨

  ※ 위 3개 옵션은 원래의 TCP 스펙에 포함되었고,
     - 이후 개정본에서 아래의 옵션들이 포함됨

  ㅇ type 3  (WSCALE,Window Scale factor 또는 WSOPT) : 3 바이트
     - 윈도우 스케일 옵션 (윈도우 스케일링 인자)
        . 윈도우 크기의 표현범위 확장 (16 비트 => 32 비트)
           .. 즉, (16 비트, 216, 64 KB) => (32 비트, 232, 1 GB)
        . TCP 헤더윈도우 크기 필드 값을 윈도우 스케일 옵션 값(비트) 만큼,
           .. 왼쪽으로 시프트하여 크기 스케일을 변환시킴 

  ㅇ type 4  (SACK Permitted,Selective Acknowledgment Permitted) : 2 바이트
     - 선택 확인응답(SACK) 옵션 허용
        . 여러 패킷손실패킷 만 선택적으로 재전송하기 위한
          TCP 연결 설정 시의 협상 옵션

  ㅇ type 5  (Selective Acknowledgment, SACK) : 가변
     - 선택 확인응답 (SACK) 옵션 데이터
        . 수신측에서 손실되어 재전송을 원하는, 
           . 불연속적인(순서 어긋난) 세그먼트 블록을 명시하기 위함

  ㅇ type 8  (Timestamp) : 10 바이트
     - 타임스탬프 옵션

  ㅇ type 28 (UTO, User Timeout) : 4 바이트
     - 사용자 타임아웃

  ㅇ type 29 (TCP-AO) : 가변
     - 인증 옵션

  ※ [참고] ☞ IANA (TCP Parameters)

TCP 패킷(세그먼트)
   1. TCP 헤더   2. TCP 제어 비트   3. TCP 옵션   4. TCP MSS 옵션   5. TCP 세그먼트  
TCP 연결관리
   1. TCP 연결   2. TCP 연결설정(3단계)   3. TCP 연결종료   4. TCP 상태   5. TCP 헤더 옵션   6. TCP MSS 옵션   7. path MTU  


Copyrightⓒ written by 차재복 (Cha Jae Bok)               기술용어해설 후원
"본 웹사이트 내 모든 저작물은 원출처를 밝히는 한 자유롭게 사용(상업화포함) 가능합니다"