Exam 2 Study Guide
Exam 2 Study Guide
Chapter 4
Network Layer: The Data Plane
• Key terms: encapsulation, segment, datagram, interface, subnet, subnet mask, CIDR notation
• Forwarding: moving packets from router input to router output
• Routing: determine path from source to destination using routing algorithm
• Data plane: local, per router, forwarding function
• Control pane: network-wide logic for routing
o Traditional – algorithm implemented in router
o Software-defined (SDN) – implemented in remote servers
• Router architecture
o Route processor
o High-speed switching fabric
o Input ports
Line termination, link layer protocol, lookup, forwarding, queuing
Forwarding based on longest prefix matching, table stored in TCAM
Queuing: fabric closer than input ports combined. Buffer overflow causes queuing
delay and loss
• Head-of-the-line (HOL) blocking
o Output ports
Buffer/queuing, link layer protocol, line termination
Scheduling: which packet to send next
• FIFO, priority, round-robin, weighted fair queuing
o Fabric types
Memory: slower, packet copied to system memory, uses 2 bus crossings per datagram
(shared bus), speed limited by memory bandwidth
Bus: input and output connected on same bus, speed limited by bus speed
Crossbar: overcomes bus bandwidth limitations, fixed length cells in fabric
• The Internet Protocol
o Protocols
IP: addressing conventions, datagram format, packet handling conventions
Routing: path selection
ICMP: error reporting, router signaling
o IP fragmentation
Maximum transmission unit (MTU)
o IP addressing
32-bit (version 4), 128-bit (version 6)
Classless InterDomain Routing (CIDR)
How do hosts get IP addresses?
• Static
• DHCP – discover, offer, request, ACK (NACK)
Hierarchical addressing
Internet Corporation for Assigned Names and Numbers (ICANN)
Network Address Translation (NAT)
• Why?
• Local network (LAN), external network (WAN), translation table
o IPv6
Why?
Tunneling in an IPv4 network
• Subnetting! (Just IPv4, remember the class examples.)
Chapter 5
Network Layer: The Control Plane
• Routing protocols – determine good path based on conditions
o Link state: global, all routers have complete topology
Dijkstra’s algorithm (know by name and purpose, not specific computation)
Link state broadcast, forwarding table
Complexity? Oscillations?
Node can advertise incorrect link cost, but each node computes its own table
o Distance vector: decentralized, routers know physically-connected neighbors and link cost
Bellman-Ford equation (know by name and purpose)
Iterative, asynchronous, distributed, notify only when distance vector changes
Good news fast, bad news slow
Poisoned reverse
Convergence time varies, may have routing loops
Node can advertise incorrect path cost which could propagate through network
o Static: changes slowly (or not at all)
o Dynamic: periodic updates in response to link cost changes
o Load-sensitive: cost varies based on congestion of link
• Intra-AS routing
o Also known as interior gateway protocol (IGP)
o RIP, OSPF, IGRP
o All routers must run same protocol within an autonomous system (AS)
o Gateway router links other ASes
• Open Shortest Path First (OSPF)
o Link-state algorithm, floods link-state advertisements (LSAs) to all other routers in AS
o Uses IP (not TCP/UDP). IS-IS similar, uses Ethernet (not IP).
o Security, multiple paths, integrated multicast support
o Hierarchical
Two-level: local area and backbone (area 0)
Area border routers, backbone routers, boundary routers
• Border Gateway Protocol (BGP)
o eBGP: exterior, subnet reachability from neighboring ASes
o iBGP: interior, share reachability to all internal routers within the AS
o BGP session between peers over semi-permanent TCP connection
Advertise paths to destination network prefixes with attributes
AS-PATH, NEXT-HOP
Messages: OPEN, UPDATE, KEEPALIVE (also acks), NOTIFICATION (also closes)
o Policy-based routing
Uses import policy to accept/decline path
Also determines whether to advertise path to other ASes
Policy done via advertisements
• Provider networks, dual-homed networks
Why have different protocol? Policy, scale, performance
o Hot potato routing: based on intra-domain cost
• Software defined networking (SDN)
o Purpose? Why? Easier network management, logically centralized programming, non-
proprietary implementation of control plane (white-box routers)
o Data plane switches
API for table-based switch control (OpenFlow)
Protocol for communicating with controller (OpenFlow)
o SDN controller
Maintain state information, interact with network control applications/network
switches, implemented as distributed system
Interface layer, network-wide state management layer, communication layer
o Network-control apps
o OpenFlow protocol
Between controller and switch over TCP, optional encryption
Controller-to-switch
• Features, configure, modify-state, packet-out
Asynchronous (switch-to-controller)
• Packet-in, flow-removed, port status
Symmetric (miscellaneous)
• Hello, echo, vendor
o Know these by name:
OpenDaylight (ODL) controller
ONOS controller
o Challenges?
• Internet control message protocol (ICMP)
o Used by hosts and routers for error reporting, echo request/reply
o ICMP message has type, code, first 8 bytes of datagram causing error
o Traceroute: source sends UDP segments to destination, ICMP response sent back
• Network Management and SNMP
o Managed devices contain managed objects whose data is gathered into a management
information base (MIB)
o SNMP protocol
Send a request from managing entity to agent, and get response
Send a trap message direct from agent to managing entity
o NETCONF
Manage devices network-wide, RPC paradigm with XML
o YANG
Data modeling language to specify structure, syntax, semantics