IP 데이터그램
데이터그램 구조
IP 데이터그램은 헤더와 데이터로 구성된다.
- 헤더: 패킷 전송에 필요한 제어 정보를 담고 있으며, 길이는 20바이트에서 60바이트이다.
- 데이터: 실제 전송되는 데이터이다.
데이터그램 헤더 필드
- 버전(Version): IP 프로토콜의 버전을 나타낸다. (IPv4의 경우 4)
- 헤더 길이(HLEN): 헤더의 길이를 나타내며, 4바이트 단위로 계산된다.
- 서비스 유형(TOS): 데이터그램의 우선순위와 서비스 성격을 나타낸다.
- 전체 길이(Total Length): 데이터그램 전체의 길이를 나타낸다.
- 식별자(Identification): 단편화된 패킷을 식별하는 필드로, 모든 단편이 동일한 식별자를 가진다.
- 플래그(Flags): 데이터그램이 단편화 여부를 제어한다.
- 단편화 옵셋(Fragment Offset): 단편화된 데이터그램의 원래 위치를 나타낸다.
- TTL(Time to Live): 데이터그램이 네트워크 상에서 살아남을 수 있는 시간이다. 라우터를 통과할 때마다 1씩 감소하며, 0이 되면 패킷은 폐기된다.
- 프로토콜(Protocol): 데이터그램에 포함된 상위 계층 프로토콜을 식별한다. ex) TCP는 6, UDP는 17
- 헤더 체크섬(Header Checksum): 헤더 오류를 검출하기 위한 필드이다.
- 발신지 주소(Source Address): 데이터그램을 발신한 장치의 IP 주소이다.
- 목적지 주소(Destination Address): 데이터그램을 수신할 장치의 IP 주소이다.
단편화와 재조립
단편화(Fragmentation)
IP 데이터그램의 크기가 MTU(Maximum Transmission Unit)를 초과하면, 이를 더 작은 조각으로 나누어 전송한다. 각 단편은 고유의 식별자(Identification)와 단편화 옵셋(Fragment Offset)을 포함해 수신지에서 재조립될 수 있다.
재조립(Reassembly)
수신 측에서 단편화된 데이터그램을 원래 크기로 다시 조립하는 과정이다. 재조립은 데이터그램의 최종 목적지에서 이루어진다.
오류 검출 및 검사합
검사합(Checksum)은 송신 측에서 생성된 데이터가 전송 중 변경되었는지 확인하는 필드이다. 수신 측에서도 같은 방식으로 검사합을 계산하여 무결성을 검증한다. 오류 검출은 수신자가 패킷을 수신할 때 오류가 발생한 경우, 패킷을 폐기하고 재전송 요청을 보낼 수 있다.
-> checksum 으로 두고, 다 더해서 보수가 checksum과 같은지 확인.
'통신 > 네트워크 프로토콜' 카테고리의 다른 글
TransportLayer (0) | 2024.09.29 |
---|---|
Routing Algorithms (0) | 2024.09.29 |
IP(1) - 주소지정과 클래스 (1) | 2024.09.28 |
Network Layer(3) - 서브넷, CIDR (0) | 2024.09.27 |
Network Layer(2) - 주소할당 (1) | 2024.09.27 |