CS/네트워크 Ⅰ

IP 헤더 설명

hyehh 2023. 2. 21. 18:17
728x90
반응형
SMALL

OSI 참조 모델의 3 계층인 네트워크 계층에서 사용되며, 패킷을 출발지에서 목적지까지 전달하는 데 사용함

즉, IP라고 하는것은 S에서 출발해서 D에 도착하는 것, D에서 출발해서 S에 도착하는 것까지만 관여한다.

 

IP는 비신뢰성을 가지고 있으므로, 데이터 흐름에 관여하지 않는다. 

어떠한 서비스를 받는지는 정의되어있지않다. 그 서비스는  TCP, UDP에서 정한다.

 

 

TCP/IP라고 하는 것은?

IP를 통해서 출발지와 목적지가 데이터를 주고받고 

출발지에서 출발하는 데이터가 목적지에 어떠한 서비스를 사용할 것이냐는 TCP Well-Know 포트와 연관 있다는 말이다.

 

IP는 최선형 (Best Effort) 서비스를 이용하여 패킷을 전달

근데, 목적까지 확실히 패킷이 도착하는 것은 보증하지 않는다.

그렇기 때문에 IP를 사용해서 데이터를 주고받을 경우 중간에 손실이 발생할 수도 있다.

 

IP 프로토콜이 가지는 최선형 서비스의 단점을 보완하기 위하여

상위 계층의 TCP와 같은 신뢰성 있는 프로토콜의 도움을 받아 이러한 단점을 보완할 수 있다.

 

IP는 네트워크 사정상 목적지 장치에 도착한 패킷들이 순서대로 도착하지 않을 수 있다.

순서대로 도착하지 않으면 재조합할 때 순서 번호 (Sequence Number)를 보고 재조합한다. 

 

현재 인터넷에서 주로 사용되는 표준 프로토콜은 IPv4이다.

v4 32bit 구성되고 10진수로 표현되어 있다.

 

v4가 사용되었다가 주소 부족 문제로 인해 v6가 대안으로 제시되었다.

v6 128bit로 구성되고 16진수로 표현된다.

 

  주소 부족 이유

 1. 예전에는 집에 한 대씩만 있던 컴퓨터가 요즘에는 방마다 있다.

 2. TV도 IP가 필요하다. 

 3. 핸드폰에서 사용하는 WIFE도 IP가 필요하다.

 4. 인터넷 전화도 IP가 필요하다.

: 집안에서 사용하는 IP 개수가 늘어났다. 그래서 IP 주소가 부족하게 되었다.

 

IPv4와 IPv6는 네트워크장치에 할당할 수 있는 주소를 의미하며, 주소가 없으면 다른장치와 통신을 할 수 없다.


IPv4 헤더

버전
(Versionn)
4bit
헤더길이
(Header
Length)
4bit
TOS
(Type Of Service)
ECN
2bit
전체 길이 (Total Length) 16bit
식별자 (Identification) 16bit 플래그 (Flags)
3bit
분할 위치 (Fragment offset)
13bit
TTL(Time-to-Live) 8bit 프로토콜(Protocol) 8bit 헤더 검사합 (Header Checksum) 16bit
출발지 주소 (Source IP Address) 32bit
목적지 주소 (Destination IP Address)
옵션 (Optionn)
데이터 (Data)

 

버전

IP가 어떤 버전을 사용하는지 나타냄 (v4 or v6)

 

헤더 길이

옵션을 포함할 경우, 최대 60byte까지 사용할 수 있으며, 최소 단위는 20byte

 

TOS

우선순위를 나타내는 필드이며, 3비트의 Precedence 값

4비트의 서비스 유형 지정 비트, 그리고 사용되지 않는 1비트가 합쳐 8로 구성되어 있다.


전체 길이

헤더와 데이터를 포함한 패킷의 전체 길이를 나타낸다.


식별자 

생성되는 패킷마다 부여되는 고유 번호를 말한다.

패킷은 2 계층 프로토콜의 최대 전송 단위(MTU) 값에 따라 여러 개의 Fragment로 분할하고, 원래의 패킷으로 재조립하고자 할 경우, 이 식별자 값을 기준으로 사용

 

최대 전송 단위 

1500byte

예) 하나의 PC가 라우터한테 1500byte 이하로 데이터를 전송해야 하는데

만약에 데이터가 1500byte를 넘어 1700byte이면 그 데이터는 그냥 폐기시켜 버린다.

 


플래그

IP 패킷의 분할 가능 여부와 마지막 프래그먼트인지 아닌지를 알리기 위해 사용

 

분할 위치

하나의 패킷이 여러 개의 프래그먼트로 분할될 때 원래 패킷 어디에 있었는지 명시하는 필드이다.

이 값을 이용해서 원래의 패킷으로 재조립될 수 있다.

 


TTL (Time-to-Live)

패킷의 루핑 현상을 막기 위하여 사용하며, 패킷의 수명을 나타낸다.

라우터를 지날 때마다 1씩 감소되며, TTL 값이 0이 되면 패킷을 폐기한다.

 

프로토콜 (Protocol)

패킷에 캡슐화되어 있는 상위 계층 PDU가 어떤 프로토콜을 사용하는지 명시하는 필드

TCP 세그먼트이면 6을, UDP 세그먼트이면 17의 값을 가짐

 

헤더 체크섬 

IP 헤더의 오류 여부를 검사하기 위한 필드

 


출발지 IP 주소

v4인 경우, 32비트 길이의 출발지 장치의 IP 주소를 의미한다.

 

목적지 IP 주소

v4인 경우, 32비트 길이의 목적지 장치의 IP주소를 의미한다.

 

옵션

패킷의 전송 경로를 포함한 IP 프로토콜의 동작 옵션을 정의하는 필드임


참고사이트 - 메가존아이티평생교육원 | 네트워크Ⅰ | 김정윤

728x90
반응형
LIST