처음부터 차근차근

IPv4, TCP, UDP의 헤더 구성 본문

정보처리산업기사

IPv4, TCP, UDP의 헤더 구성

_soyoung 2021. 10. 30. 18:18
반응형
IPv4 헤더

 

IPv4 헤더 구성

IPv4의 헤더는 Version, Header Length, Type of Service, Total Packet Length, identification, Flags, Fragmentation  Offset, Time-to-live, Protocol, Header Checksum, Source IP Address, Destination IP Address, Options으로 구성되어 있다.

 

Version은 4bit로 이루어져 있고, IP 프로토콜의 version을 의미한다.

 

Header Length은 4bit로 이루어져 있고, 헤더의 길이를 의미한다.

IPv4의 헤더 길이는 20 ~ 60바이트의 크기를 가지기 때문에 여기의 값에 4를 곱해주어야 한다.

 

Type of Service는 8bit로 이루어져 있고, IP 데이터그램의 서비스를 의미한다.

FTP나 DNS, SMTP 같은 서비스의 유형을 알려준다.

 

Total Packet Length는 헤더와 데이터를 합친 전체 길이를 의미하고, 16bit로 이루어져 있다.

 

identification는 16bit로 이루어져 있고, 패킷이 전송될 때 구분을 하기 위해서 붙은 식별 번호를 뜻한다.

식별 번호 때문에 IP 데이터그램이 단편화되었을 때 단편화된 데이터그램이 원래 어떤 데이터그램에 속해 있는 지를 알 수 있다.

 

Flags는 3bit로 이루어져 있고, 프래그먼트 패킷의 상태나 생성 여부를 결정하는 플래그이다.

IP 데이터그램이 단편화됬는지 안됬는지를 나타낸다.

 

Fragmentation Offset은 조각나기 전 원래의 데이터그램의 바이트 범위를 나타내고, 13bit로 이루어져 있다.

 

Time-to-live데이터을 전달할 수 없어서 소멸되기 이전에 데이터가 이동할 수 있는 단계의 수 즉, IP패킷의 수명을 나타낸다.

총 8bit로 이루어져 있고, TTL이라고도 부른다.

 

Protocol은 어느 상위계층 프로토콜이 데이터 내에 포함되었는가를 보여주고, 8bit로 이루어져 있다.

 

Header ChecksumHeader 필드의 오류를 검출하고, 16bit로 이루어져 있다.  

 

Source IP Address는 송신 측의 IP 주소를 나타내고, 32bit로 이루어져 있다.

 

Destination IP Address는 목적지 IP 주소를 나타내고, 32bit로 이루어져 있다.

 

Options선택사항 옵션이다. 선택사항에 따라 헤더의 크기가 달라진다.

 

 

 

 

TCP 헤더

 

TCP 헤더 구성

TCP의 헤더는 Source Port, Destination Port, Sequence Number, Acknowledge Number, Header Length(HLEN), Not Used(Reserve), Flag Bits, Window Size, Checksum, Urgent Pointer, Option으로 이루어져 있다.

 

Source Port는 전송 포트로, 16 bit로 이루어져 있다.

세그먼트의 출발지를 나타내는 포트번호가 담긴다.

 

Destination Port는 수신 포트로, 16bit로 이루어져 있다.

세그먼트의 목적지를 나타내는 포트번호가 담긴다.

 

Sequence Number은 순서 번호로, 32bit로 이루어져 있다.

전송하는 데이터의 순서를 의미하며 수신 측에서 Sequence Number로 순서를 파악해서 다시 올바른 순서로 재조립할 수 있다.

 

Acknowledge NumberACK 번호라고도 부르며 32bit로 이루어져 있다.

다음에 수신될 것으로 예상되는 세그먼트의 번호를 의미한다.

 

Header LengthHLEN라고도 불리며 4bit로 이루어져 있다.

데이터가 시작되는 위치가 어디인지를 나타내서 이 값을 통해 데이터의 시작 위치를 알 수 있다.

 

Reserve미래를 위해 남겨놓는 필드이다.

 

Flag Bits6bit로 이루어져 있고, 데이터를 관리하거나 제어하는 역할이다.

Flag Bits는 총 6개가 있는데 URG, ACK, PSH, RST, SYN, FIN이다.

 

URG 플래그Urgent(긴급한)이라는 뜻을 가지고 있다.

포인터가 가리키는 긴급한 데이터는 제일 먼저 처리된다.

 

ACK 플래그Acknowledgment number , 승인 번호이다.

필드에 값이 채워져 있음을 알린다.

 

PSH 플래그push(밀다)라는 뜻을 가지고 있다.

TCP 버퍼가 일정한 크기만큼 쌓여야 전송을 하는데 버퍼를 채우지 않고 바로 전송을 수행(push) 하는 플래그이다.

 

RST 플래그Reset(초기화)이라는 뜻을 가지고 있다.

이미 TCP 연결이 되어 있을 때 이 연결을 강제로 해제하기 위해 사용한다.

 

SYN 플래그Synchronize(동기화)라는 뜻을 가지고 있다.

상대방과 연결을 생성할 , 시퀀스 번호의 동기화를 맞추기 위하여 사용된다.

 

FIN 플래그Finish()라는 뜻이다.

연결 종료(전송할 데이터가 없음)를 의미한다.

 

Window Size는 윈도우 크기를 뜻하며 16bit로 이루어져 있다.

자신의 수신 버퍼 여유용량 크기를 통보해 얼만큼의 데이터를 받을 수 있는지 상대방에게 알려주어 흐름제어를 한다.

 

Checksum16bit로 이루어져 있고, 이터를 송신하는 중에 발생할 있는 오류를 검출한다.

 

Urgent Pointer긴급 포인터 의미한다.

포인터가 가리키는 데이터는 긴급한 데이터로 처리되어 제일 먼저 처리된다.

 

OptionTCP 기능을 확장할 사용하는 영역이다.

영역은 크기가 가변적이다.

 

 

 

 

UDP 헤더

 

UDP 헤더 구성

UDP의 헤더는 Source Port, Destination Port, Total Length, Checksum, Data로 이루어져 있다.

 

Source Port는 전송 포트로, 16bit로 이루어져 있다.

세그먼트의 출발지를 나타내는 포트번호가 담기고, 운영체제에 의해 할당된다.

 

Destination Port는 목적지(수신) 포트를 뜻하고, 16bit로 이루어져 있다.

세그먼트의 목적지를 나타내는 포트번호가 담기고, 서버 구동 시 할당된다.

 

Total Length는 전체 길이를 뜻하고, 16bit로 이루어져 있다.

UDP 헤더와 데이터 영역을 모두 포함한 전체 세그먼트의 길이를 의미한다.

 

Checksum은 데이터를 송신하는 중에 발생할 있는 오류를 검출하고, 16bit 이루어져 있다.

 

 

 

 

 

 

 

 

 

 

출처 : 시스템분석설계(21-2학기)김병국교수 강의 내용 변형 및 요약

반응형

'정보처리산업기사' 카테고리의 다른 글

에러 검증 시스템  (0) 2021.11.22
코드의 종류  (0) 2021.11.13
정보처리산업기사 용어 정리2  (0) 2021.10.24
정보처리산업기사 용어 정리  (0) 2021.10.23
UNIX의 명령어와 함수 정리  (0) 2021.10.05
Comments