2007년 6월 27일 수요일

TCP Segment Format

SRC PORT [16] 전송자 포트 번호
DEST PORT [16] 목적지 포트 번호
SEQ [32] 보내려 하는 데이터 스트림의 단위를 나타내는 순서 번호
ACK [32] 수신자가 보내는 응답 번호
HLEN (Header Length) [4] TCP 헤더의 길이
RESERVED [6] 예약된 필드
CODE BIT [6] 제어 비트라고 하며 6가지의 제어값을 가지며, 다음과 같은 것들이 있다.

URG (Urgent Flag) 긴급하게 처리해야 하는 데이터
ACK 응답확인 번호
PSH (Push Flag) TCP 가 받은 데이터를 바로 윗층 어플리케이션에게 보낸다.
RST (Reset Flag) TCP의 가상회선을 끊는 것을 의미
SYN (SynchronizeFlag) 시퀀스 번호를 동기화
FIN (Fin Flag) 송신쪽이 보낸 데이터가 종료 되었다는 것을 표시. 수신은 가능한 상태.
정상종료인 경우 끊기를 요청하는 쪽이 먼저 FIN을 지정한 TCP로 종료 요청을 통지한다. 받은 쪽에서는 종료 처리를 하고 FIN을 지정한 TCP헤더를 되돌려주어서 모든 처리를 종료 시킨다.

WINDOW [16] ACK에 나타난 SEQ번호에서부터 어는 정도의 데이터를 수신할 수 있는지를 알려준다
CHECKSUM [16] 송신쪽은 TCP허위 헤드를 만들어 첵섬을 계산해서 이 필드에 넣어 전송하며, 수신측에서는 다시 같은 형태의 허위헤드를 만들어 책셈을 계산한뒤 제대로 데이터가 수신되었는 확인한다.
URGENT POINTER [16] 김급 처리해야 하는 데이터가 들어 있는 데이터를 가리키는 포인로 취급된다. TCP헤드 뒤에 추가된 데이터의 앞부분(송신용 순서 번호를 나나태는 장고)으로부터 이 긴급포인터에 나타나 수치 만큼의 바이트가 데이테로 처리된다.
OPTION [유동] 통신의 세부 사항을 조정하기 위해 사용된다. 일반적으로 거의 사용하지 않으며 전체길이가 32비트의 배수가 되도록 지정해야 한다.
DATA [유동] 실제 데이터

댓글 없음: