2011. 5. 19. 01:29
◆ TCP 헤더 구조

 TCP 통신을 이해하기 위해서는 TCP 헤더에 무슨 내용이 들어 있는지 이해해야합니다. TCP는 통신에 앞서 연결 설정을하거나 승인 및 흐름 제어를하기 위해 TCP 헤더 구조는 UDP 패킷의 구조와 비교하면 매우 복잡하게되어 있습니다. 일반적으로 TCP 헤더는 20 바이트의 크기입니다.

0 15 16 31
소스 포트 번호
(16 비트)
목적지 포트 번호
(16 비트)
시퀀스 번호
(32 비트)
승인 번호
(32 비트)
헤더 길이
(4 비트)
예약
(6 비트)
코드 비트
(각 1 비트)
윈도우
(16 비트)
U
R
G
A
C
K
P
S
H
R
S
T
S
Y
N
F
I
N
체크섬
(16 비트)
긴급 포인터
(16 비트)
(옵션)


데이터


← - 32 비트 - →

간단하게 각 필드를 설명하고갑니다.

필드 설명
소스 포트 번호
(16 비트)
원본 응용 프로그램을 식별하는 번호
TCP는 UDP의 경우와 달리 소스 포트 번호를 0으로 할 수 없다.
1 ~ 65535까지 유효하다.
목적지 포트 번호
(16 비트)
대상 응용 프로그램을 식별하는 번호
1 ~ 65535까지 유효하다.
※ 0은 예약되어
시퀀스 번호
(32 비트)
보내는 데이터에 순서를 붙이기를위한 번호입니다.
보낼 데이터 1 바이트마다 시퀀스 번호를 1 씩 증가.
32 을 넘으면 또 같은 번호를 반복한다.
승인 번호
(32 비트)
받은 데이터에 대해 어디까지받을 수 있었는지 바이트 위치를 나타내는 필드.
수신 완료 데이터 위치의 순서 번호 +1을 반환한다.
ACK 플래그가 ON 인 경우에만 ACK 번호 필드를 사용한다.
헤더 길이
(4 비트)
TCP 데이터가 시작되는 위치를 나타내는 필드. TCP 헤더의 바로 뒤에 데이터 부분이 따르기 위하여, TCP 헤더의 크기라고 생각해도 좋다.
URG
(1 비트)
URG ... urgent : 긴급
긴급 데이터가 들어있는 것을 나타내는 플래그.
기본값은 0,1에 ON된다.
거의 사용되지 않는다.
ACK
(1 비트)
ACK * * * acknowledge
유효한 ACK 번호가 TCP 헤더에있는 것을 나타내는 플래그.
TCP 3 웨이항도세이쿠시 최초를 제외한 다른 모든 TCP 패킷은 ACK 플래그가 ON으로되어있다.
PSH
(1 비트)
PSH * * * push
받은 데이터를 즉시 응용 프로그램에 전달할 것을 요구하는 플래그.
버퍼링을 사용하면 응답성이 손상 가능성이 있으므로, Telnet에서는이 플래그를 ON으로하고있다.
RST
(1 비트)
RST ... reset
TCP 연결을 중단, 거부하고 싶은 경우에 설정되는 플래그입니다.
RST 플래그를 ON으로 한 TCP 패킷을 전송함으로써, 현재의 TCP 접속을 강제 종료 할 수있다.
SYN
(1 비트)
SYN ... synchronize
TCP 3 웨이항도세이쿠시 오픈 처리를 시작하는 쌍방의 각 SYN 플래그가 ON으로하여 ACK 번호를 동기화한다. 이상 패킷에 설정되지 않습니다.
FIN
(1 비트)
FIN ... finis
TCP 연결을 종료하기 위해 설정되는 플래그입니다.
양쪽에서 FIN이 전송되면 TCP 연결이 종료됩니다.
윈도우
(16 비트)
수신 창 크기를 상대에게 전달하기 위하여 사용되는 필드.
단위는 바이트로, 최대 65535 바이트된다.
0은 데이터를받을 수 없다는 것을 나타낸다.
체크섬
(16 비트)
TCP 패킷의 무결성을 검사하기위한 검사를위한 데이터가 들어가는 필드.
긴급 포인터
(16 비트)
URG 플래그가 1 인 경우에만 적용.
긴급 데이터의 위치를​​ 나타낸다.
옵션 TCP 연결 특성을 설정하는 데 사용되는 가변 길이 필드.
MSS 교환 등에 이용된다.
32 비트의 배수가되도록 필요한 끝에 패딩 (0) 매장된다.
데이터 TCP의 데이터 부분.
TCP 연결 시간이 초과하여 절단되지 않도록 데이터를 포함하지 않는 TCP 헤더에만 패킷을 보낼 수있다.



TCP 헤더
비트 오프셋0 - 34 - 910111213141516 - 31
0 원본 포트 대상 포트
32 시퀀스 번호
64 승인 번호
96 헤더 길이 예약 URG ACK PSH RST SYN FIN 윈도우 크기
128 체크섬 긴급 포인터
160 (옵션)
데이터
URG
긴급 전송 데이터
ACK
승인
PSH
푸시
RST
연결 재설정
SYN
동기화
FIN
송신 종료

상태 전환 편집 ]

'ETC' 카테고리의 다른 글

자유 연애 결혼이 확산된건 불과 100~200여년에 불과하고 중매결혼  (0) 2011.05.28
AppleTalk  (0) 2011.05.21
subnetting 서브넷마스크 정리  (0) 2011.05.19
정보처리 기사 실기 시험.2011년 1회.  (0) 2011.05.01
SSID  (0) 2011.04.29
Posted by 위키백