◆ TCP 헤더 구조
TCP 통신을 이해하기 위해서는 TCP 헤더에 무슨 내용이 들어 있는지 이해해야합니다. TCP는 통신에 앞서 연결 설정을하거나 승인 및 흐름 제어를하기 위해 TCP 헤더 구조는 UDP 패킷의 구조와 비교하면 매우 복잡하게되어 있습니다. 일반적으로 TCP 헤더는 20 바이트의 크기입니다.
0 | 15 | 16 | 31 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
← - | 32 비트 | - → |
간단하게 각 필드를 설명하고갑니다.
필드 | 설명 |
소스 포트 번호 (16 비트) |
원본 응용 프로그램을 식별하는 번호 TCP는 UDP의 경우와 달리 소스 포트 번호를 0으로 할 수 없다. 1 ~ 65535까지 유효하다. |
목적지 포트 번호 (16 비트) |
대상 응용 프로그램을 식별하는 번호 1 ~ 65535까지 유효하다. ※ 0은 예약되어 |
시퀀스 번호 (32 비트) |
보내는 데이터에 순서를 붙이기를위한 번호입니다. 보낼 데이터 1 바이트마다 시퀀스 번호를 1 씩 증가. 2 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 헤더에만 패킷을 보낼 수있다. |
비트 오프셋 | 0 - 3 | 4 - 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 - 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 |