TCP Packet(Segment)
1) Sourse/Destination Port Number (각 16 비트)
- 데이터를 생성한 애플리케이션에서 사용하는 포트번호
- 목적지 애플리케이션에서 사용하는 포트번호
2) Sequence number (32 비트)
- 전송되는 데이터의 가상 회선을 통해 데이터의 모든 바이트에는 고유한 일련번호가 부여된다.
- 네트워크가 불안하여 패킷을 분실, 지연 등으로 세그먼트가 순서가 어긋나게 도착 할 수 있기 때문에 sequence number를 이용하여 데이터를 올바른 순서로 재배열 할 수 있다.
3) acknowledgement number (32 비트)
- 수신하기를 기다리는 다음 바이트 번호
- 마지막 수신성공 번호 +1 .. 순서로 할당
4) HLEN = Header Length (4 비트)
- 헤드의 길이를 32비트 단위로 나타낸다. 최소 필드 값은 5 (5 * 32 = 160bit or 20Byte ) 최대 값 15 (15 * 32 = 480bit or 60byte)
5) 예약 (6 비트)
- 추후 사용을 위한 예약된 필드
6) Flag Bits
- 6개의 플래그 비트
- TCP 세그먼트 전달과 관련되어 TCP 회선 및 데이터 관리 제어 기능을 하는 플래그
- CWR :(Congestion Window Reduced) – 혼잡 윈도우 크기 감소
- ECN :(Explicit Congestion Notification) – 혼잡을 알림
- URG(Urgent) : Urgent Pointer 필드가 가리키는 세그먼트 번호까지 긴급 데이터를 포함되어 있다는 것을 뜻한다.
이 플래그가 설정되지 않았다면 Uregent Pointer 필드는 무시되어야 한다.
- ACK(Acknowledgment) : 확인 응답 메시지
- PSH(Push) : 데이터를 포함한다는 것을 뜻한다.
- RST(Reset) : 수신 거부를 하고자 할때 사용
- SYN(Synchronize) : 가상 회선이 처음 개설될 때 두 시스템의 TCP 소프트웨어는 의미 있는 확인 메시지를 전송하기 위해 일련 번호를서로 동기화해야 한다.
- FIN(Finish) : 작업이 끝나고 가상 회선을 종결하고자 할 때 사용
7) Windows Size(16 비트)
- 흐름제어를 위해 사용하는 필드
8) CheckSum (16 비트)
- TCP 세그먼트의 내용이 유효한지 검증하고 손상 여부를 검사 할 수 있다.
9) Urgent Pointer (16 비트)
- TCP 세그먼트에 포함된 긴급 데이터에 대한 마지막 바이트에 대한 일련번호
현재 일련번호(sequence number)로부터 긴급 데이터까지의 바이트 오프셋(offset) . 해당 세그먼트의 일련번호에 urgent point 값을 더해 긴급 데이터의 끝을 알수있음
참고자료: http://www.ktword.co.kr/abbr_view.php?m_temp1=1889
'System > Network ' 카테고리의 다른 글
네트워크 바이트 순서와 호스트 바이트 순서 (Network Byte Order, Host Byte Order) (0) | 2018.06.26 |
---|---|
TCP 3-way Handshake vs 4-way Handshake (0) | 2018.05.19 |
TCP/IP , OSI 7 Layer (0) | 2018.04.01 |
방화벽 (Firewall) (0) | 2018.04.01 |
Proxy 서버 (0) | 2018.03.04 |