네트워크 계층 1

BinaryHyeok·2023년 11월 3일
0

네트워크 계층 개요

Forwarding and Routing

네트워크 계층의 근본적인 역할은 송신 호스트에서 수신 호스트로 패킷을 전달하는 것이다. 이를 위한 네트워크 계층의 중요한 기능 두가지는 다음과 같다.

  • forwarding

    • 패킷이 라우터에 도달했을 때 라우터는 그 패킷을 목적지로 향하는 다음 라우터로 전달하는 것
    • 하드웨어에서 실행
  • routing

    • 송신자가 수신자에게 패킷을 전송할 때 네트워크 계층은 패킷 경로를 결정해야 한다. 이러한 경로 계산 알고리즘을 routing algorithm(forwarding table을 만드는 방법)이라 한다.
    • 출발지에서 목적지로 가는 경로를 결정하는 것
    • 소프트웨어에서 실행

네트워크 라우터에서 필수 불가결한 요소는 forwarding table이다. 라우터는 도착하는 패킷 헤더의 필드값을 조사하여 패킷을 전달하고, 이 값을 라우터의 forwarding table의 내부 색인으로 사용한다.

Internet Protocol(IP)

IP datagram foramt

  • TTL(time-to-live)
    • 네트워크에서 데이터그램이 무한히 순환하지 않도록 한다(routing loop). 이 필드값은 라우터가 데이터그램을 처리할 때마다 감소한다. TTL의 필드가 0이 되면 라우터가 이 데이터그램을 폐기한다.
  • upper layer
    • IP 데이터그램이 최종 목적지에 도착했을 때만 사용되며, 이 필드값은 IP 데이터그램에서 데이터 부분이 전달될 목적지의 트랜스포트 계층의 특정 프로토콜을 명시한다.
  • source and destination IP address
    • 출발지가 데이터그램을 생성할 때, 자신의 IP 주소를 출발지 IP 주소 필드에 삽입하고 목적지 IP 주소를 목적지 IP 주소 필드에 삽입한다.

IPv4

  • unique 32-bit number
  • identifies an interface(on a host, on a router, ..)
  • Represented in dotted-quad notaion
    • Ex) 193.32.216.9

Hierarchical Addressing: IP prefixes

  • Network and host portions(left and right)
  • 12.34.158.0/24 -> 24-bit prefix with 2^8 addresses
  • Ex) 12.34.158.5 -> 00001100  00100010  10011110    00000101
                            <-------Network(24bits)--------> <-Host(8bits)->

/24는 subnet mask이며 32비트 주소의 왼쪽 24비트가 서브넷 주소라는 것을 가리킨다.

Classful Addressing

  • Class A(0*): 첫 8비트가 네트워크 주소 -> 2^7개 존재, 호스트 -> 2^24개
  • Class B(10*): 첫 16비트가 네트워크 주소 -> 2^16
  • Class C(110*): 첫 24비트가 네트워크 주소 -> 2^24

Classless InterDomain Routing(CIDR)

32비트 IP주소를 두 부분으로 나누고, 이것은 다시 점으로 된 십진수 형태의 a.b.c.d/x를 가진다. x는 주소 첫 부분의 비트 수이다.

Subnets

라우터를 거치지 않고 데이터를 보낼 수 있는 IP의 집합(하나의 라우터 인터페이스로 연결), Subnet 파트에 해당하는 주소가 같다.

Reference

KOCW - 컴퓨터 네트워크
컴퓨터 네트워킹 하향식 접근

0개의 댓글