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)

  • 긴 패킷의 경우 잘라서 보낼 때 기존에 하나의 데이터라는 것을 식별자를 통해 구분 가능

플래그

  • 세 필드로 구성
  1. 1st bit : 예약된 필드
  2. 2nd bit : 단편화 금지(Don't fragment)
    1. 해당 비트가 1 일 경우, 분할 불가
    2. 만약 패킷을 분할해야 하는 경우 1 이라면 패킷을 폐기시키고 송신측으로 ICMP(Internet Control Management Protocol)오류 메시지를 보냄
  3. 3rd bit : 추가 단편화(More Fragment)
    1. 해당 비트가 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