오뚝이개발자

[네트워크] CH12 인터넷 프로토콜 IP 본문

CS 기초/네트워크

[네트워크] CH12 인터넷 프로토콜 IP

땅어 2020. 11. 13. 10:53
728x90
300x250

 

학습 목차

  • IP 패킷의 형태
    • 헤더에 포함된 다양한 필드에 대한 설명
  • 단편화와 옵션
    • MTU의 의미와 단편화의 필요성
    • 단편화의 구체적 방법
    • IP 패킷의 옵션 종류와 의미

IP(Internet Protocol)

  • 인터넷 프로토콜인 IP는 비신뢰성(unreliable), 비연결형(connectionless) 데이터그램 프로토콜이다
    • best-effort 전달 서비스를 제공(최선을 다해 패킷을 보내지만 못갈 수도 있다)
    • 에러제어나 흐름제어가 없다
    • 에러검출만 하고 만약 발견되면 폐기한다
  • 신뢰성이 중요한 전송에서는 TCP를 함께 사용해야 한다(이를 TCP/IP라고 부름)
  • IP에서 패킷을 데이터그램이라고도 한다
  • 헤더의 크기는 20~60바이트로 가변적

IP 패킷의 형태

IP 패킷의 필드

  • 버전(Version:VER)
    • IP프로토콜의 버전을 나타내는 것으로 4 혹은 6이 될 수 있다
  • 헤더의 크기(Header length:HLEN)
    • 헤더의 크기를 나타내는 것으로, 4바이트 단위로 나타낸 크기다(HLEN이 5라면 20바이트라는 뜻)
    • 헤더의 크기는 20~60바이트로 가변
  • 서비스
    • IP패킷이 가져야 하는 서비스의 형태를 의미(즉, 응용서비스들이 요구하는 서비스의 형태)
    • 서비스의 형태는 응용서비스별로 주요하게 다루어야 할 특성으로 지연시간, 신뢰성, 처리량 등 어떤 특성을 고려해야 할지 명시한다.
  • 전체길이(Total length)
    • IP 데이터그램을 바이트 단위로 나타낸 전체 길이
  • 생존시간(Time to live : TTL)
    • IP 데이터그램이 지나가는 최대 홉(hop) 수
    • 각 라우터는 데이터그램이 지나갈 때마다 1씩 감소시킴
    • 0이 되면 라우터는 해당 데이터그램을 폐기
    • TTL 필드의 필요성 : 복잡한 네트워크 탓에 라우팅이 제대로 이루어지지 않는 경우 패킷은 목적지에 도달 못하고 계속해서 네트워크를 돌게 됨. 이 경우, 해당 패킷이 사라지지 않고 계속 쌓인다면 대역폭 잡아먹고 네트워크 장비들이 쓸데없이 바빠져 나중엔 느려진다
  • 프로토콜
    • IP계층 위에서 존재하는 상위 프로토콜이 무엇인지를 나타냄(아래 사진에서처럼 ICMP, IGMP, SCTP, TCP, UDP, OSPF 중 누구에게 보낼지를 나타냄)
    • IP가 해당 데이터를 맞게 보낼 수 있도록 정보를 제공

프로토콜 필드

  • 체크섬(Checksum)
    • IP패킷의 헤더에 대한 오류검사를 위해 사용되며, 헤더에 에러가 나면 폐기시킴
    • 계산법
      • 처음에 체크섬의 값을 0으로 한다
      • 전체 헤더를 16비트 단위로 구분해 1의 보수 연산 수행
      • 결과값을 보수로 만들어 체크섬 필드에 저장
  • 송신지 주소, 목적지 주소(Source IP add., Destination IP add.)
    • 송신자와 수신자의 IP 주소
  • 플래그(Flag)
    • 3비트로 구성되며 첫 번째 비트는 사용하지 않는다
    • 두번째 비트(d-bit)는 단편화 금지(do not fragment bit)를 의미 - MTU를 초과해 잘라야 하는 상황이 오면 폐기
    • 세번째 비트(m-bit)는 단편이 더 있다(more fragment bit)는 것을 의미
  • 단편화 위치값(Fragmentation offset)
    • 13비트로 구성되어 있으며, 전체 패킷에서 해당 단편이 차지하는 위치값을 의미
    • 위치값은 첫번째부터 시작하여 8바이트 단위로 표시

단편화

  • 프레임의 크기와 형태는 네트워크에 따라 다를 수 있다.
    • IP패킷은 여러 네트워크를 경유하기 때문에 다양한 데이터링크 프로토콜을 거쳐갈 수 있다
    • IP패킷은 네트워크가 수용할 수 있는 크기로 분할되어야 하는데, 이를 단편화(fragmentation)이라 한다.
  • IP패킷이 프레임으로 만들어질 때, 전체 크기는 데이터링크 프로토콜에서 수용하는 최대 크기보다 작아야 한다
    • 이를 MTU(Maximum Transfer Unit)이라 함

 

 

 

728x90
300x250
Comments