Computer Networking:
a Top-Down Approach (8th ed.) :
Notes of "Select" Lectures
Chapter 4 Network Layer - data plane
The network layer can be decomposed into two parts:
? the data plane (数据平面)
? the per-router functions in the network layer
? determine how a datagram (that is, a network-layer packet) arriving on one of a router‘s input links is forwarded to one of that router‘s output links
? the control plane (控制平面)
? the network-wide logic
? controls how a datagram is routed among routers along an end-to-end path from the source host to the destination host
4.1 Network Layer Overview
Forwarding versus routing; data plane, control plane; network service model.
There is a piece of the network layer in each and every host and router in the network.
? H1 is sending information to H2.
? The network layer in H1 takes segments from the transport layer in H1, encapsulates each segment into a datagram, and then sends the datagrams to its nearby router, R1.
? At the receiving host, H2, the network layer receives the datagrams from its nearby router R2, extracts the transport-layer segments, and delivers the segments up to the transport layer at H2.
? Routers:
? the primary data-plane role of each router is to forward datagrams from its input links to its output links;
? the primary role of the network control plane is to coordinate these local, per-router forwarding actions so that datagrams are ultimately transferred end-to-end, along paths of routers between source and destination hosts.
4.1.1 Forwarding and Routing: The Network Data and Control Planes
The primary role of the network layer: to move packets from a sending host to a receiving host.
Two important network-layer functions:
? Forwarding (转发): the router-local action of transferring a packet from an input link interface to the appropriate output link interface
? Routing (路由选择): the network-wide process that determines the end-to-end paths that packets take from source to destination.
? Routing algorithms (路由选择算法).
Forwarding table (转发表): a key element in every network router.
? A router forwards a packet by examining the value of one or more fields in the arriving packet‘s header, and then using these header values to index into its forwarding table.
? The value stored in the forwarding table entry for those values indicates the outgoing link interface at that router to which that packet is to be forwarded.
Control Plane: The Traditional Approach
A routing algorithm runs in each and every router and both forwarding and routing functions are contained within a router.
Control Plane: The SDN Approach
? A physically separate, remote controller computes and distributes the forwarding tables to be used by each and every router.
? At the heart of software-defined networking (SDN, 软件定义网络), where the network is "software-defined" because the controller that computes forwarding tables and interacts with routers is implemented in software.
4.1.2 Network Service Model
The network service model (网络服务模型) defines the characteristics of end-to-end delivery of packets between sending and receiving hosts.
Some possible services that the network layer could provide could include:
? Guaranteed delivery.
? Guaranteed delivery with bounded delay.
? In-order packet delivery.
? Guaranteed minimal bandwidth.
? Security.
The Internet‘s network layer provides a single service, known as best-effort service (尽力而为服务).
With best-effort service, packets are
? neither guaranteed to be received in the order in which they were sent,
? nor is their eventual delivery even guaranteed.
There is
? no guarantee on the end-to-end delay
? nor is there a minimal bandwidth guarantee.
The Internet‘s basic best-effort service model combined with adequate bandwidth provisioning (带宽供给) and bandwidth-adaptive application-level protocols have arguably proven to be more than "good enough" to enable an amazing range of applications.
Computer Networking: Notes of "Select" Lectures (Chapter 4: Network Layer - data plane)