728x90
IP
- 비신뢰성(Unreliable)
- IP는 목적지까지 데이터를 전달하기 위한 행위만 함
- 전달만 하는 최선의 서비스(Best Effort Service)
- TCP 계층에서 데이터를 판단하는 기능 수행
- 비접속성(Connectionless)
- 접속형 서비스(Connection) : 송/수신 과정에서 송신자와 수신자 이외의 제 3자가 참여할 수 없음
- 데이터(패킷 단위) 송신 과정에서만 접속을 허용함 (회선의 낭비를 방지할 수 있다.)
- 패킷 단위로 데이터를 최소한으로 잘라서 보내므로 데이터 송신 순서와 데이터 수신 순서가 다를 수 있다.
- 주소 지정
- IP에서 주소를 지정하는 수단을 제공
- 경로 결정
- 결정된 정보에 따라 데이터 송신
IP 패킷의 구성
- 헤더, 확장 헤더, 데이터의 세 부분으로 구성
- 32비트씩 분할 후 필드 할당
Big Endian Byte Ordering(= Network Byte Order)
: 최상위 비트에서 최하위 비트 순으로 전송되는 데이터 전송 방법
버전(Version)
버전을 통해 앞으로의 패킷 구성을 읽는 방법을 결정할 수 있음
Ex. 0100 (v4) 이면 버전 4로 알고 버전 4의 패킷 구성 방법에 따라 데이터를 읽는다.
헤더 길이(Header Length)
옵션 필드를 포함한 헤더의 총 길이
- 4바이트 단위로 값을 산정 하므로 최대 60바이트까지 가능최대 : $2^4 * 4 = 60$
- Ex. 20바이트일 경우 → 0101 (5) 삽입
서비스 타입(Type-Of-Service)
- 우선권(Precedence) 필드 3 bit
- 전송되는 중간에 전송의 우선 순위에 따라 지정
- 패킷 생성 시, 우선 순위 지정
- TOS(Type-Of-Service) 필드 4 bit
- 최소 지연 : 딜레이의 최소 값
- 최대 처리량 : 최대한의 크기로 전송
- 최대 신뢰성 : 자료의 손실을 최소화
- 최소 비용 : 가장 짧은 경로
- 예약 필드 1 bit
- 미리 약속된 데이터가 있을 경우 해당 공간 차지
전체 길이(Total Length)
- 전체 길이 필드의 길이는 16 bit 이므로 최대 크기는 $2^{16} -1$ 까지 가능
- 길이가 길 경우 잘라서 보냄
식별자(Identification)
- 긴 패킷의 경우 잘라서 보낼 때 기존에 하나의 데이터라는 것을 식별자를 통해 구분 가능
플래그
- 세 필드로 구성
- 1st bit : 예약된 필드
- 2nd bit : 단편화 금지(Don't fragment)
- 해당 비트가 1 일 경우, 분할 불가
- 만약 패킷을 분할해야 하는 경우 1 이라면 패킷을 폐기시키고 송신측으로 ICMP(Internet Control Management Protocol)오류 메시지를 보냄
- 3rd bit : 추가 단편화(More Fragment)
- 해당 비트가 0 일 경우, 분할된 패킷 중 마지막 패킷임을 나타냄
단편화 옵셋(Fragment Offset)
- 식별자 필드와 플래그 필드를 이용하여 패킷을 재조립하기 위해 분할된 패킷간의 순서에 대한 정보를 포함
- 패킷 분할 시, 원래 패킷의 헤더를 복사하여 붙이고 단편화 옵셋의 부분만 변경하여 순서를 표시
TTL(Time-To-Live)
- 패킷이 경유할 수 있는 최대 홉 수 (= 최대 도달 거리)
- 패킷이 라우터를 통과할 때마다 TTL은 1씩 감소
- TTL 값이 0이 되면 패킷은 폐기되고 송신측으로 ICMP 메시지가 전달
- 통신 선 상에 패킷이 계속 존재할 경우 다른 패킷들간의 잡음이 발생할 수 있으므로 이를 방지하기 위해 이미 역할을 다한 패킷은 제거해주는 역할 수행
프로토콜
- IP 패킷이 어떤 상위 프로토콜과 관련되는지를 나타냄
- Ex. 0000.0110 TCP(6) 0001.0001 UDP(17) 을 많이 사용
헤더 체크섬(Header Checksum)
- IP 패킷 헤더의 오류 발생을 검사하기 위한 필드
728x90
'🖥️ Computer Science > Network' 카테고리의 다른 글
[TCP/IP] 멀티캐스팅 (0) | 2022.01.14 |
---|---|
[TCP/IP] IP 주소 관련 프로토콜 ICMP (0) | 2022.01.14 |
[TCP/IP] IP 주소 관리 (0) | 2021.10.08 |
[TCP/IP] IP 패킷 헤더 옵션 (0) | 2021.10.08 |
[TCP/IP] OSI와 TCP/IP의 구조 (0) | 2021.09.17 |