전송 제어 프로토콜: 두 판 사이의 차이

내용 삭제됨 내용 추가됨
Osloom (토론 | 기여)
편집 요약 없음
69번째 줄:
;Flags (9 bits) (혹은 Control bits):9개의 1-비트 플래그를 포함
:* <tt>NS</tt> (1 비트) – ECN-nonce 은폐 보호(RFC 3540에 의해 헤더에 추가).
:* <tt>CWR</tt> (1 비트) – 혼잡 윈도우윈도 축소(Congestion Window Reduced) 플래그는 송신측 호스트에 의해 설정되는 것으로, 호스트가 <tt>ECE</tt> 플래그가 포함된 TCP 세그먼트를 수신했으며 혼잡 제어 메커니즘에 의해 응답했음을 알리는 역할을 한다(RFC 3168에 의해 헤더에 추가).
:* <tt>ECE</tt> (1 비트) – ECN-Echo는 다음을 나타낸다.
::* <tt>SYN</tt> 플래그가 (1)로 설정된 경우, TCP 상대가 명시적 혼잡 통지(Explicit Congestion Notification, ECN)가 가능함을 의미한다.
79번째 줄:
:* <tt>SYN</tt> (1 비트) – 동기화 시퀀스 번호. 양쪽이 보낸 최초의 패킷에만 이 플래그가 설정되어 있어야 한다. 다른 일부 플래그들의 의미가 이 플래그의 값에 따라 바뀌며, 일부 플래그들은 이 플래그가 설정되어 있을 때만 유효하고, 또 다른 일부 플래그들은 이 플래그가 해제되어 있을 때에만 유효하다.
:* <tt>FIN</tt> (1 비트) – 남은 송신측 데이터 없음
;Window size (16 비트):''수신 윈도우윈도''의 크기. 해당 세그먼트의 송신측이 현재 수신하고자 하는 윈도우윈도 크기(기본 단위는 바이트). acknowledgment 필드의 시퀀스 번호보다 큰 값이어야 한다.
;Checksum (16 비트):헤더 및 데이터의 에러 확인을 위해 사용되는 16 비트 [[체크섬]] 필드
;Urgent pointer (16 비트):<tt>URG</tt> 플래그가 설정된 경우, 이 16 비트 필드는 시퀀스 번호로부터의 오프셋을 나타낸다. 이 오프셋이 마지막 긴급 데이터 바이트를 가리킨다.
87번째 줄:
:*1 (8 비트) – No operation (NOP, Padding) 이것은 속도 향상을 위해 옵션 필드를 32 비트 길이에 맞추기 위해 사용될 수 있다.
:*2,4,''SS'' (32 비트) – Maximum segment size (''[[#최대 세그먼트 크기|최대 세그먼트 크기]] 참조'') <sup><tt style="color:#000; background:#ccc;">[SYN]</tt></sup>
:*3,3,''S'' (24 비트) – Window scale (''[[#윈도우윈도 조정|윈도우윈도 조정]] 참조'') <sup><tt style="color:#000; background:#ccc;">[SYN]</tt></sup><ref>[http://tools.ietf.org/html/rfc1323#page-9 RFC 1323, TCP Extensions for High Performance, Section 2.2]</ref>
:*4,2 (16 비트) – Selective Acknowledgement permitted. <sup><tt style="color:#000; background:#ccc;">[SYN]</tt></sup> (''[[#선택적 확인응답|선택적 확인응답]] 참조'')<ref>[http://tools.ietf.org/html/rfc2018#section-2 RFC 2018, TCP Selective Acknowledgement Options, Section 2]</ref>
:*5,''N,BBBB,EEEE,...'' (variable bits, ''N'' is either 10, 18, 26, or 34)- Selective ACKnowledgement (SACK)<ref>[http://tools.ietf.org/html/rfc2018#section-3 RFC 2018, TCP Selective Acknowledgement Options, Section 3]</ref> 이 첫 2 바이트 뒤에는 선택적 확인응답을 받는 1-4개 블럭의 리스트가 따라오게 되며, 이들은 32 비트 시작/종료 포인터로 구분된다.
95번째 줄:
:(이외의 옵션들은 더이상 사용되지 않거나, 시험용이거나, 아직 표준화되지 않았거나, 또는 할당되지 않은 것들임)
;Padding:TCP 헤더 패딩은 TCP 헤더의 종료 지점과 데이터의 시작 지점을 32 비트 단위 길이에 맞추기 위해 사용된다. 패딩의 값은 0이다.<ref>RFC 793 section 3.1</ref>
 
== 주석 ==
<references/>
 
== 바깥 링크 ==
줄 108 ⟶ 111:
* RFC 6298 – TCP 재전송 타이머 계산
* RFC 6824 - 다중주소 환경의 다중경로 동작을 위한 TCP 확장
 
== 주석 ==
<references/>
 
{{IP스택}}