Network Layer: The Data Plane • Network Layer Overview • Router Architecture • Network Layer Functions and Service Models – Network Layer Functions – IP Addressing – Network Service Models: Virtual Circuit vs. Datagram • IP Forwarding and IP Protocol – IP Datagram Forwarding Model – IP and ICMP: Datagram Format, IP Fragmentation – DHCP • NAT, IPv6 and IPv6 transition (over IPv4) Readings: Textbook: Chapter 4, Sections 4.1-4.3, review section 1.3 (packet vs. circuit switching) CSci4211: Network Layer: The 1 Data Plane
What Does Network Layer Do? • End-to-end deliver packet from sending to application transport receiving hosts, � hop-by- network data link network hop � thru network physical data link network network data link physical data link physical – A network-wide concern! physical network – Involves every router, host data link network physical in the network data link physical • Compare: network network data link – Transport layer data link physical physical • between two end hosts network application data link – Data link layer transport physical network data link • over a physical link physical directly connecting two (or more) physically hosts CSci4211: Network Layer: The 2 Data Plane
What Does Network Layer Do? • transport segment from sending to receiving host • on sending side application transport network encapsulates segments data link network physical data link network network into datagrams physical data link data link physical physical • on rcving side, delivers network data link segments to transport network physical data link physical layer network network data link • network layer protocols data link physical physical in every host, router network application data link transport physical • Router examines header network data link fields in all IP datagrams physical passing through it CSci4211: Network Layer: The 3 Data Plane
Network Layer Functions • Addressing – Globally unique address for each routable device • Logical address, unlike MAC address (as you � ll see later) – Assigned by network operator • Need to map to MAC address (as you � ll see later) • Routing: building a � map � of network – Which path to use to forward packets from src to dest • Forwarding: delivery of packets hop by hop – From input port to appropriate output port in a router CSci4211: Network Layer: The 4 Data Plane
Two Key Network-Layer Functions • forwarding: move analogy: packets from router � s input to • routing: process of appropriate router planning trip from output source to dest • routing: determine • forwarding: process route taken by of getting through packets from source single interchange to dest. – routing algorithms CSci4211: Network Layer: The 5 Data Plane
Network Layer: Data Plane, Control Plane Control plane Data plane •network-wide logic •local, per-router function •determines how datagram is •determines how datagram routed among routers along arriving on router input end-end path from source host port is forwarded to to destination host router output port •two control-plane approaches: • traditional routing algorithms: •forwarding function implemented in routers • software-defined networking values in arriving (SDN) : implemented in packet header (remote) servers 0111 1 2 3 CSci4211: Network Layer: The 6 Data Plane
Per-router Control Plane Individual routing algorithm components in each and every router interact in the control plane Routing Algorithm control plane data Local forwarding table plane header output 0100 3 0110 2 0111 2 1001 1 values in arriving packet header 1 0111 2 3 7
Logically Centralized Control Plane A distinct (typically remote) controller interacts with local control agents (CAs) Remote Controller control plane data plane CA CA CA CA CA values in arriving packet header 1 0111 2 3 8
Routing & Forwarding: Logical View of a Router 5 3 B C 5 2 A 2 1 F 3 1 2 D E 1 CSci4211: Network Layer: The 9 Data Plane
Router Architecture Overview Two key router functions: • run routing algorithms/protocol (RIP, OSPF, BGP) • forwarding datagrams from incoming to outgoing link CSci4211: Network Layer: The 10 Data Plane
Input Port Functions Physical layer: bit-level reception Decentralized switching : Data link layer: • using header field values, lookup output port using forwarding table in input port e.g., Ethernet memory see chapter 6 • goal: complete input port processing at � line speed � • queuing: if datagrams arrive faster than forwarding rate into switch fabric CSci4211: Network Layer: The 11 Data Plane
Switching Fabrics • transfer packet from input buffer to appropriate output buffer • switching rate: rate at which packets can be transfer from inputs to outputs • often measured as multiple of input/output line rate • N inputs: switching rate N times line rate desirable • three types of switching fabrics memory bus memory crossbar CSci4211: Network Layer: The 12 Data Plane
Switching Via Memory First generation routers: • traditional computers with switching under direct control of CPU •packet copied to system � s memory • speed limited by memory bandwidth (2 bus crossings per datagram) input output port port memory (e.g., (e.g., Ethernet) Ethernet) system bus CSci4211: Network Layer: The 13 Data Plane
Switching Via a Bus • datagram from input port memory to output port memory via a shared bus • bus contention: switching speed limited by bus bandwidth • 32 Gbps bus, Cisco 5600: sufficient speed for access and enterprise routers CSci4211: Network Layer: The 14 Data Plane
Switching Via An Interconnection Network • overcome bus bandwidth limitations • banyan networks, crossbar, other interconnection nets initially developed to connect processors in multiprocessor • advanced design: fragmenting datagram into fixed length cells, switch cells through the fabric. • Cisco 12000: switches 60 Gbps through the interconnection network CSci4211: Network Layer: The 15 Data Plane
Input Port Queuing • Fabric slower than input ports combined -> queueing may occur at input queues – queueing delay and loss due to input buffer overflow! • Head-of-the-Line (HOL) blocking: queued datagram at front of queue prevents others in queue from moving forward switch switch fabric fabric output port contention: one packet time later: only one red datagram can be green packet transferred. experiences HOL lower red packet is blocked blocking CSci4211: Network Layer: The 16 Data Plane
Output Ports • Buffering required when Datagram (packets) can datagrams arrive from fabric be lost due to congestion, faster than the transmission lack of buffers rate Priority scheduling – who • Scheduling discipline chooses gets best performance, among queued datagrams for network neutrality transmission CSci4211: Network Layer: The 17 Data Plane
Output Port Queueing switch switch fabric fabric one packet time later at t, packets more from input to output • buffering when arrival rate via switch exceeds output line speed • queueing (delay) and loss due to output port buffer overflow! CSci4211: Network Layer: The 18 Data Plane
IPv4 Addressing: Basics • Globally unique (for � public � IP addresses) • IPv4 address: 32-bit identifier for host, router interface • Interface: connection between host/router and physical link – router � s typically have multiple interfaces – host may have multiple interfaces – IP addresses associated with each interface • Dot notation (for ease of human reading) 223.1.1.1 = 11011111 00000001 00000001 00000001 223 1 1 1 CSci4211: Network Layer: The 19 Data Plane
IP Addressing: Network vs. Host 223.1.1.2 • Two-level hierarchy – network part (high order 223.1.1.1 223.1.1.4 bits) 223.1.1.3 – host part (low order bits) • What � s a network ? 223.1.7.0 223.1.9.2 ( from IP address perspective) – device interfaces with same network part of IP 223.1.9.1 223.1.7.1 address 223.1.8.1 223.1.8.0 – can physically reach each 223.1.2.6 223.1.3.27 other without intervening router 223.1.2.1 223.1.2.2 223.1.3.1 223.1.3.2 CSci4211: Network Layer: The 20 Data Plane
� Classful � IP Addressing class 7 15 23 31 1.0.0.0 to A 0network host 127.255.255.255 128.0.0.0 to B network 10 host 191.255.255.255 192.0.0.0 to C network host 110 223.255.255.255 224.0.0.0 to D multicast address 1110 239.255.255.255 32 bits • Disadvantage: inefficient use of address space, address space exhaustion • e.g., class B net allocated enough addresses for 65K hosts, even if only 2K hosts in that network CSci4211: Network Layer: The 21 Data Plane
Recommend
More recommend