ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 4.3 IP: Internet Protocol
    Computer Networking 2018. 12. 15. 00:52

    1. Internet network layer


    1) routing protocols (<-> forwarding table) - path selection, RIP, OSPF, BGP

    2) IP protocol - addressing conventions, datagram format, packet handling conventions

    3) ICMP protocol - error reporting, router signaling



    2. IP datagram format


    - ver : 4bit로 IP 프로토콜의 버전을 명시

    - head len : 실제 데이터 시작하는 곳

    - type of service

    - length : 헤더 + 데이터 길이

    - 인식자, 플래그, fragment offset : fragmentation / reassembly

    - TTL(time-to-live) : 네트워크에서 무한히 순환하지 않음을 보장한다.

    - upper layer protocol : 트랜스포트 계츠의 프로토콜을 명시 ex) TCP, UDP

    - 헤더 체크섬 : 2byte의 1의 보수를 합산

    - source, destination IP address

    - option



    3. IP fragmentation, reassemble


    - MTU : 링크 계층 패킷이 전달할 수 있는 최대 양

    - MTU 보다 큰 IP 데이터 그램의 경우 여러 개의 작은 데이터그램으로 나누어 전송 후 목적지 Transport layer에 도달하기 전에 재결합

    - 헤더의 인식자를 이용해서 동일 데이터그램인지 확인, fragflag의 경우 마지막 데이터그램만 0이고 나머지는 모두 1, offset 이용해 분실 확인 및 재결합



    4. IPv4 addressing


    - IP address: 32-bit의 host 구분 위한 identifier, router interface(연결 및 physical link)

    1) subnet part - IP 주소의 앞부분

    2) host part - IP 주소의 뒷부분


    ex) 223.1.3.0/24 --> /24(subnet mask) = 앞의 24 bit 가 subnet을 의미함


    * Classful Addressing

    Class A 0******* ******** ******** ********   |  Unicast App (현재 사용)

    Class B 10****** ******** ******** ********   |  Unicast

    Class C 110***** ******** ******** ********  |   Unicast

    Class D 1110**** ******** ******** ********  |  Multicast

    Class E 1111**** ******** ******** ********  | Reserved (미래를 위해 남겨둠)


    - CIDR : Classless InterDomain Routing

    ▶ a.b.c.d/x --> IP 주소를 두 부분으로 나누고, 이는 다시 십진수 형태의 a,b,c,d 값을 가짐


    - IP 주소 획득

    ▶ 기본적으로는 ISP에 접촉하여 큰 블록을 받아옴

    ▶ ISP와 다른 조직은 ICANN으로부터 주소 블록을 할당받음


    - DHCP: Dynamic Host Configuration Protocol

    ▶ plug-and-play

    ▶ DHCP client-server scenario

    1) DHCP server discovery

    새로 도착한 host가 상호 동작될 DHCP 를 발견. client가 67번 포트로 UDP 패킷(0.0.0.0->255.255.255.255)을 전송하면 모든 노드로 브로드캐스팅됨.

    2) DHCP server offer

    메시지 받은 DHCP 서버가 DHCP 제공 메시지를 클라이언트에 응답. 이때도 모든 노드로 브로드캐스트. 클라이언트는 여러 DHCP중 최적의 DHCP를 선택. 각 서버의 제공 메시지는 제공 IP주소, IP주소 임대 기간 등을 포함.

    3) DHCP request

    4) DHCP ACK


    - Hierarchical addressing

    ▶ ISP 는 주기적으로 상위 계층에 자신이 갖는 IP 주소로 향하는 패킷들을 보내달라고 요청


    - NAT (Network Address Translation)

    ▶ 보안, IP 변경, ISP 변경 등의 이유로 local network의 장치의 IP 주소가 외부와 맞지 않을 수 있음 / IP 주소의 부족

    ▶ NAT 가능 라우터는 NAT translation table을 가지고 해당 table에 IP 주소와 포트 번호를 포함시켜 저장. 해당 라우터는 외부로부터 보기에는 하나의 장치로 동작.

    ▶ NAT 반대 근거 : 라우터가 3계층 까지만 처리한다는 가정. IPv6로 주소 부족을 해결. 종단간 논의를 해침(중간 노드 주소 없이 통신 가능해야 함). P2P와의 충돌 - 해당 host가 NAT 뒤에 있는 경우 서버로서의 연결이 불가능. 


    - IPv6

    ▶ priority : 해당 data flow의 우선순위

    ▶ flow label : 실시간 서비스 같은 특저 흐름에 속하는 패킷의 라벨링

    ▶ next header : 트랜스포트 계층의 프로토콜 종류

    ▶ 주소 크기 128 bits로 증가


    ○ IPv4 에서 IPv6 로의 번역

    tunneling: IPv6 데이터그램은 IPv4의 내부 요소로 IPv4 라우터를 지나게 됨

    'Computer Networking' 카테고리의 다른 글

    5.3 intra-AS protocol  (0) 2018.12.17
    5.2 Routing protocols  (0) 2018.12.17
    4.2 What's inside a router  (0) 2018.12.14
    4.1 Network Layer 개요  (0) 2018.12.14
    3.7 TCP congestion control  (0) 2018.12.14

    댓글

Designed by Tistory.