본문 바로가기
computer network

4장: Network Layer : The data plane

by leko 2023. 12. 1.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4장에서는 (네트워크 엣지에 있는 호스트) 와 (코어에 있는 라우터)에 모두 존재하는 3계층 (Network layer) 동작에 관해서 공부하게 됩니다. 가장 복잡도가 높은 인터넷 기술의 꽃에 해당하는 계층입니다. 3계층의 기능은 다음과 같이 2가지로 나눠집니다.

(1) 네트워크 가입자의 데이터(IP 패킷)를 처리(포워딩)하는 "Data plane" (4장)과
(2) 라우터들간에 주고 받는 라우팅프로토콜 메세지(이것도 IP패킷임)를 처리하고 라우팅테이블을 만드는 "Control plane" (5장)
=> (2)번 기능은 (1)번 기능을 수행하기 위해 필요한 것입니다.  

Network service model (required by Transport layer)

  • no loss, max. e2e-delay, min. BW (pkt/sec), in-order delivery, Delay jitter

Datagram packet switching network (ex. Internet)

  • No routing before data delivery
  • Packets (of course messages) between src and dst may take different e2e routes.
  • No in-order delivery guaranteed.
  • No resource reservation --> delay or loss can happen in output buffer at the intermediate nodes
  • It provides best-effort service (no service at all) and thus it can interconnect well networks that use heterogeneous L2 protocols.

Virtual Circuit packet switching network (ex. ATM) 

  • (목적지 IP주소를 보고) Routing before data delivery --> All messages between src and dst use the same route (이때는 2계층 주소만 보고 빨리 switching함) --> In-order delivery guaranteed 
  • No resource reservation --> delay or loss can happen in output buffer at the intermediate nodes like datagram packet switching
  • Optionally QoS might be provided.

(traditional) forwarding

  • input port로 들어온 패킷을 목적지 IP 주소로 배달하기 위해 output port (다음 라우터)를 결정
  • 이때 forwarding table (FIB라고도 함)를  이용함.
  • 패킷이 한 개의 라우터를 지나가는 사건

(traditional) routing

  • 라우터가 (e2e) path를 결정하는 행동
  • 라우터들 사이에 정보를 주고 받아야하므로 routing protocol (Chap.5)이 필요
  • 최종 목적지 네트워크로 가기위한 다음 라우터 (output port)를 계산하는 일은 각 라우터가 독자적으로 실행.

Traditional Internet routers

  • include control plane and data plane both in the same device.

In SDN, 

  • a control plane is implemented in a general PC that remotely locates from a packet switch which includes data plane.

 

 

  • Why each port has a FIB? -- In order to implement line speed forwarding
  • Decentralized switching means FIB lookup is done using FIB stored in input port memory.
  • Router architecture includes 
  1. control plane (routing protocol and middleboxes) <-- Software-oriented
  2. switching fabric : its performance is measured as multiples of N x R where N=number of ports, R=line rate (line speed) <-- Hardward-oriented
  3. Ports in line cards : link bandwidth may vary  <-- Hardward-oriented
  4. Control plane은 라우팅 software가 동작하는 모듈로 라우터들끼리 주고 받는 메세지(IP payload)를 처리하나, Data plane은 IP payload에 host들 사이에 주고 받는 layer 5 application message를 포함한 패킷을 포워딩하는 기능이다. 그러나 라우터들 끼리 주고 받는 라우팅 메시지도 Data plane을 통해서 포워딩된다.
  • Head-of-line (HoL) blocking
  1.  can occur at an input(ingress) buffer(queue) 
  2. due to a drawback of crossbar switching (Two pkts destined to the same output port cannot be switched at the same time)
  • The output buffer size at routers is proportional to (link bandwidth and average RTT), but inversely proportional to the number of TCP sessions.  Why? 
  • Queue scheduling algorithms 
  1.  FIFO (First In First Out)
  2.  Priority 
  3.  Round robin (RR)
  4.  Weighted Fair Queueing (WFQ)
  • What is Network Neutrality? Net neutrality is the principle that Internet service providers and governments regulating most of the Internet must treat all data on the Internet the same, and not discriminate or charge differentially by user, content, website, platform, application, type of attached equipment, or method of communication. For instance, under these principles, internet service providers are unable to intentionally block, slow down or charge money for specific websites and online content.

끝.

  • IPv4 datagram format
  1.  What is a role of TTL (Time-To-Live)?
  2.  Why is ToS (Type of Service) field not used in the Internet?
  3.  When is "upper-layer protocol" used?
  4.  Does IP do checksum for PDU as well as header?
  5.  The 4-bit Header Length field indicates the length of IPv4 packet header in 4 bytes.
  6.  The first eight bits of IPv4 packet which includes 20 bytes header is (01000101).
  7.  The maximum payload size of IPv4 packet which includes 20 bytes header is 65515 bytes.
  8.  IPv4 payload may include TCP segments, UDP datagrams, ICMP messages or OSPF messages.
  • IPv4 fragmentation/reassembly
  1.  IPv4 fragmentation may occur at a router or at a source host while IPv6 fragmentation occurs only at a source host.
  2.  Why is reassembly not performed at a router? (Reason1) avoiding complicated work at routers (Reason2) Fragmented IP packets are independently delivered. Thus they may take in different paths (i.e., over different intermediate routers) to the destination host.
  • IP addressing
  1. What does IP subnet, /24 (or 255.255.255.0) mean?
  2. (The prefix length of an IPv4 address is 29) means (its subnet mask is 11111111.11111111.11111111.11111000)
  • Is it correct or not? 
  1. "Multiple hosts may communicate (exchange L5 app. messages) with each other without a router" --- Yes, when they are in the same network. They are connected and communicate with each other via a L2-switch. 
  2. We can set up more host IP addresses using the class A IPv4 address than the class C IPv4 address. --- Yes, with class A, we  can set up distinct  (2^(32-8) - 2) IPv4 address, but only (2^(32- 24) - 2) with class C.

끝.

'computer network' 카테고리의 다른 글

컴네 강의 정리 1주차  (1) 2023.09.07