Routing on the Internet
2013, Part 2, Lecture 1.2Jens Andersson (Kaan Bür)
ETSF10 – Internet Protocols
Routing on the Internet
• Unicast routing protocols (part 2)[ed.5 ch.20.3]
• Multicast routing, IGMP[ed.5 ch.21.1-5]
• NAT & Firewalls[ed.5 ch.18.4.5 & 32.4]
2013-10-29 2ETSF05/ETSF10 - Internet Protocols
Internet Hierarchy
2013-10-29 ETSF05/ETSF10 - Internet Protocols 3
Hierarchical Routing
• aggregate routers into “autonomous systems”
• routers in same AS run same routing protocol– “intra-AS”
• routers in different AS can run different intra-AS routing protocol
• special routers in AS– run intra-AS routing
protocol with all other routers in AS
• also responsible for routing to destinations outside AS– run inter-AS routing
protocol with other gateway routers
Border Gateway Routers
2013-10-29 4ETSF05/ETSF10 - Internet Protocols
Autonomous Systems
• Inter-AS border (exterior gateway) routers– R1– R2– R3– R4
2013-10-29 ETSF05/ETSF10 - Internet Protocols 5
Why different Intra- & Inter-AS routing?
• Policy– Inter-AS: admin wants control over how its traffic
routed, who routes through its net. – Intra-AS: single admin, so no policy decisions needed
• Scale– Hierarchical: saves table size, reduced update traffic
• Performance– Intra-AS: can focus on performance– Inter-AS: policy may dominate over performance
2013-10-29 6ETSF05/ETSF10 - Internet Protocols
Internet Inter-AS routing: BGP
• Border Gateway Protocol: de facto standard• Path Vector protocol:
– Similar to Distance Vector– Border gateways broadcast to peers (not
necessarily neighbours) entire path (sequence of AS) to destination
– BGP routes to networks (AS), not individual hosts
2013-10-29 7ETSF05/ETSF10 - Internet Protocols
Path Vector Messages
• Same principle as distance vector routing
2013-10-29 8ETSF05/ETSF10 - Internet Protocols
Network Next Router Path
N01 R01 AS62, AS23, AS67
N02 R05 AS67, AS22, AS05, AS89
N03 R06 AS67, AS89, AS09, AS34
N03 R12 AS62, AS02, AS34
Path Vector Routing TableAS = Autonomous System = Organisation
Network id “next hop”“Metric”
Most valid of many ATTRIBUTES
2013-10-29 9ETSF05/ETSF10 - Internet Protocols
BGP Router Operations
• Receiving and filtering route advertisements from directly attached neighbour(s)
• Route selection– To route to destination X, which path (of several
advertised) will be taken?
• Sending route advertisements to neighbours
2013-10-29 10ETSF05/ETSF10 - Internet Protocols
BGP Router Operations
11
Establish session onTCP port 179
Exchange allactive routes
Exchange incrementalupdates
AS1
AS2
While connection is ALIVE exchangeroute UPDATE messages
BGP session
2013-10-29 ETSF05/ETSF10 - Internet Protocols
eBGP Operation
2013-10-29 ETSF05/ETSF10 - Internet Protocols 12
eBGP combined with iBGP
2013-10-29 ETSF05/ETSF10 - Internet Protocols 13
Forwarding Table
OSPFDomain
RIPDomain
BGP
OS kernel
OSPF Process
OSPF Routing tables
RIP Process
RIP Routing tables
BGP Process
BGP Routing tables
Forwarding Table Manager
Static routing table
Routing Tables and Forwarding Table
2013-10-29 15ETSF05/ETSF10 - Internet Protocols
Multicast: One-to-many Routing
Unicast• Routers forward multiple
unicast datagrams
Multicast• Routers (red) duplicate and
forward multicast datagrams
2013-10-29 21ETSF05/ETSF10 - Internet Protocols
Source and Group Addresses
2013-10-29 22ETSF05/ETSF10 - Internet Protocols
Joining a Multicast Group
• Local: host informs local multicast router– IGMP (Internet Group Management Protocol)
• Wide area: local router interacts with other routers to build forwarding tree and receive multicast data flow– MOSPF, DVMRP, PIM-DM– CBT, PIM-SM
2013-10-29 23
IGMPIGMP
IGMP
wide-areamulticast
routing
ETSF05/ETSF10 - Internet Protocols
Multicast Routing Protocols
• Shortest path trees, again!
• In unicast routing– One path (on tree) used at a time
• In multicast routing– Whole tree used each time– Each source needs a tree
2013-10-29 24ETSF05/ETSF10 - Internet Protocols
Source-Based Tree
• One tree per source (at each router)• One source per group• High complexity, high efficiency
2013-10-29 25
R1
S1
R2
S2
R4
R3
ETSF05/ETSF10 - Internet Protocols
Group-Shared Tree
• One tree per group (at one router)• Shared by multiple sources in group• Lower complexity, lower efficiency
2013-10-29 26
R1
S1
R2
S2
R4
R3
Rendezvous PointETSF05/ETSF10 - Internet Protocols
Reverse Path Forwarding
2013-10-29 ETSF05/ETSF10 - Internet Protocols 27
Source address routing!
Classification of Algorithms
2013-10-29 ETSF05/ETSF10 - Internet Protocols 28
PIM
• Independent from unicast protocol• Uses available routing info for path lookups• Two modes:
– Sparse Mode– Dense Mode
2013-10-29 29ETSF05/ETSF10 - Internet Protocols
PIM-SM
• Relatively few members assumed• Trees are built on demand (when needed)
– Group-shared trees with rendezvous points
• Methods for tree construction– Grafting– Pruning
• Can switch from group-shared to source-based if more efficient
2013-10-29 30ETSF05/ETSF10 - Internet Protocols
PIM-DM
• All hosts assumed to be members• Build source-based tree from source• Routers without members prune tree• Grafting used to add new members
2013-10-29 31ETSF05/ETSF10 - Internet Protocols
Example Topology
2013-10-29 32
g g
s
g
ETSF05/ETSF10 - Internet Protocols
Truncated Broadcast
2013-10-29 33
g g
s
g
ETSF05/ETSF10 - Internet Protocols
Pruning
2013-10-29 34
g g
s
prune (s,g)
prune (s,g)
g
ETSF05/ETSF10 - Internet Protocols
Steady State after Pruning
2013-10-29 35
g g
s
g
g
ETSF05/ETSF10 - Internet Protocols
graft (s,g)
graft (s,g)
Grafting on New Receivers
2013-10-29 36
g g
s
g
greport (g)
ETSF05/ETSF10 - Internet Protocols
Steady State after Grafting
2013-10-29 37
g g
s
g
g
ETSF05/ETSF10 - Internet Protocols
Logical Tunnelling
• Very few Internet routers can multicast– How to connect them?
2013-10-29 38ETSF05/ETSF10 - Internet Protocols
Multicast Backbone (MBONE)
• Encapsulation
2013-10-29 39ETSF05/ETSF10 - Internet Protocols
Internet Group Management Protocol
• IGMP, runs on top of IP• Not a multicast protocol
– Complementary– Runs in the leaves of the network
• Manages group membership– Provides multicast router with info
2013-10-29 40ETSF05/ETSF10 - Internet Protocols
IGMP Message Format
2013-10-29 41ETSF05/ETSF10 - Internet Protocols
IGMP Operation
• Only one router distributes packets in a group– Other routers may be serving their networks
2013-10-29 42ETSF05/ETSF10 - Internet Protocols
Joining a Group
• Request to router– Forwarded if first for a group
2013-10-29 43
0x16
ETSF05/ETSF10 - Internet Protocols
No Response
Leaving a Group
2013-10-29 44ETSF05/ETSF10 - Internet Protocols
No Response
IGMP General Query
2013-10-29 45ETSF05/ETSF10 - Internet Protocols
NAT - Network Address Translation
• Sharing of routable addresses (scarseresource)
• Adds some security …
2013-10-29 ETSF05/ETSF10 - Internet Protocols 46
NAT (network address only)
• Change source address on outgoing packets• Add address pair to active translations table• Only one internal address per destination
2013-10-29 ETSF05/ETSF10 - Internet Protocols 47
Pool of global addresses
NAT extended
• Add transport layer port
• Normally initiated from inside• Port forwarding: Setup static entry in table
2013-10-29 ETSF05/ETSF10 - Internet Protocols 48
Alternative: Externalsource address200.24.5.8 goes here
Alternative: External source port goes here
Firewalls: Filtering• Accept or reject
2013-10-29 ETSF05/ETSF10 - Internet Protocols 49
Proxy Firewall
• Filter on message content• Application gateway acts as proxy for http
server
2013-10-29 ETSF05/ETSF10 - Internet Protocols 50
Top Related