Title: Network Architecture (R02) - L2 13/10/13
1Network Architecture (R02) - L213/10/13
- Jon Crowcroft,
- http//www.cl.cam.ac.uk/jac22
- http//www.cl.cam.ac.uk/teaching/1516/R02/
2Review of Internet Architecture
- Packet switching
- No circuit, virtual or otherwise
- Datagram Network
- No set up - fast for transactions
- Work Conserving
- (video download can be faster than viewing)
- Stateless
- (end and router dont share state)
- (max pkt size unchanged for 30 yrs!)
3Parsimony
- End to end model
- (clark et al)
- Cautious Sender
- Forgiving Receiver
- (postel principle)
Many different kinds of applications and higher-l
evel protocols
IP
Many different kinds of networks
The Hourglass Model, Steve Deering
4Design Philosophy of the DARPA Internet Protocols
- DDC/Sigcomm 1988
- Fundamental Goal effective technique for
multiplexed utilization of existing
interconnected networks - Sub-Goals
- Survivability
- Types of service
- Diversity
- Distributed management
- Cost effective
- Low barrier to host entry
- accountable
5IP packet
6IP Address Forwarding
- Based on destination address (32 bits!)
- Not source (why is it there?)
- Forwarding is hop by hop
- May change (or fail) somewhere along path
- Address should be where something is
- an interface of a host (can have lots)
- IP has several roles, conflated
- Routing Hint, Interface Id, Part of Flow State
- Route is how to get there
- Computed seperately, continuously and
asynchronously - Names (see later) are what something is
7Two components of routing
- Control component
- Decides where the packets will go
- Use a set of routing protocols (e.g. OSPF, BGP)
to collect information and produce a forwarding
table - Control plane
- Forwarding component
- Moving packets from input to output ports
according to forwarding table and packet header - Forwarding plane
Routing daemon collect routing info and
maintain routing DB
routes
kernel
Forwarding table
Forwarding algorithm and mechanism
packets
8Address Matching
- Packet forwarding requires
- Address matching
- Followed by table lookup of output port
- Moving the packet through the router (from input
port to output port) - This involves scheduling, queueing, design of
switch fabric etc, conventional aspects of switch
design - Address matching
- Exact matching
- e.g. bridge forwarding, DECnet, OSI/CLNP
- Longest prefix match best matching
- IP networks
9Exact match
- Easier
- Software approach
- Binary search
- Hash function
- Hardware Content Addressable Memory (CAM)
10Longest prefix match
- IP addresses are assigned in a manner that
reflect network topology - Address aggregation group destinations with the
same prefix together if they exit the same output
port - Therefore, longer prefixes tend to be announced
by customers ISPs who are closer to the
destination, whereas provider ISPs tend to
announce aggregated addresses - Hence a route to the longest prefix match is
preferred
11Example to show why longest prefix match is
better
BGP route advertisement for 1.2.3/24
Forwarding table
Forwarding table
ISP B (provider of ISP A)
ISP C (provider of ISP A)
Peer relationship
1.2.3/24
1.2.3/24
1.2.3.123/26
BGP route advertisement for 1.2.3.123/26
BGP route advertisement for 1.2.3.123/26
Longer prefix is a better route!
ISP A
Subnet 1.2.3.123/26
12Example
- Each entry in forwarding table has address
prefix e.g.
address 11001111 01011100 00000000 10000111
mask 11111111 11111111 11111111
11111111 address 11001111 01011100 00000000
00000000 mask 11111111 11111111 00000000
00000000 address 11001111 01011100 00000000
00000000 mask 11111111 11111111 11100000
00000000
Longest match
11001111 01011100 00000000 10000111 matches with
all three entries
13How to do Longest Prefix Match
- Not as easy as exact match
- Approaches
- Create a data structure for doing LPM
- Convert the problem into a form so that we can do
binary search - Reduce the problem to a sequence of exact match
problems which we can apply hashing - Optimization based on distribution of prefix
lengths - Combine software and hardware techniques
14Algorithms
- There is an entire industry of algorithms
- Binary search among all prefixes in forwarding
table - Perlmans book, 13.4
- Lampson et al IP Lookups using Multiway and
Multicolumn Search, IEEE Infocom 1998 - Trie bit-by-bit match
- Perlmans book, 13.3
- Binary search based on prefix length
- Perlmans book, 13.3.3
- Waldvogel et al Scalable High Speed IP Routing
Lookups, Sigcomm 1997
15But this is all going wrong! Why?
- Not enough bits -gt NATs
- NAT Traversal, Stateful browser/server
- end is URL Persistent HTTP state cookie!
- Four Ms (historical order)
- Multicast
- Mobility
- Multihoming
- Multipath
- Security and Social Scale
- Unsolicited traffic
- Byzantine (v. selfish or rational or altruistic)
- Despite original ARPANET packet radio
- And multicast since 1988,
- Hierarchy is wrong
16So Ipng effort started in 1992
- See course web site for papers!
- Specification of desiderata
- Led to a set of competing efforts
- Look at SIP PIP
- Represent extremes of
- CS (SIP) Telco (PIP)
- SIP from PARC looks XNS
- Just ip with more address bits
- PIP looks VC/ATM ish
- QoS, fancy routing options
17Eventually, converged on IPv6
- Committee design (SIP/PIP/Novell)
- Overtaken by reality ?
- Four Ms (current order)
- Multihoming - killing aggregation
- Mobility (smart phones roaming and receiving IP)
- Multipath (load balance, but how to id sub-flow)
- Multicast - sidelined?
- New requirements
- Receiver control of input
- New kinds of bad guys
- Authentic addresses (HIP)
- New content type (video interest)
18For Thursday- Oct 20
- you talk (7 bullets, 7 minutes!) about
- HagglePlutarch!
- http//www.cl.cam.ac.uk/teaching/1516/R02/papers/
- Schedule for Rest of Term up at
- http//www.cl.cam.ac.uk/teaching/1516/R02/r02-sche
d.txt - Essay 1, dueOct 30
- http//www.cl.cam.ac.uk/teaching/1516/R02/essays/e
ssay0.txt