SlideShare a Scribd company logo
1 of 49
Download to read offline
Week 10 
Routing in IP networks 
Interdomain routing with BGP
Agenda 
• Routing in IP networks 
• IPv6 subnets 
• Routing organisation 
• RIP 
• OSPF 
• Interdomain routing
Neighbour discovery 
IPv6: 1080:0:0:0:8:A 
Eth : A 
1080:0:0:0:8:A wants to send a packet to 1080:0:0:0:8:C 
1 
2 
Neighbour solicitation: Addr Eth 1080:0:0:0:8:C ? sent to IPv6 multicast address 
3 
IPv6: 1080:0:0:0:8:E 
Eth : E 
Ipv6: 1080:0:0:0:8:C 
Eth : C 
Ipv6: 1080:0:0:0:8:C 
Eth : C 
IPv6: 1080:0:0:0:8:E 
Eth : E 
IPv6: 1080:0:0:0:8:A 
Eth : A 
Ipv6: 1080:0:0:0:8:C 
Neighbour advertisement: 1080:0:0:0:8:C is reachable via Ethernet Add : C 
Eth : C 
IPv6: 1080:0:0:0:8:E 
Eth : E 
IPv6: 1080:0:0:0:8:A 
Eth : A
ICMPv6 Neighbor 
Discovery 
• Neighbour solicitation 
Type : 135 Code:0 Checksum 
The IPv6 address for which the link-layer Reserved 
R : true if node is a router 
S : true if answers to a neighbour solicitation 
• Neighbour advertisement 
Target IPv6 Address 
(e.g. Ethernet) address is needed. 
May also contain an optional field with the link-layer (e.g. 
Ethernet) address of the sender. 
Type : 136 Code:0 Checksum 
R S O Reserved 
Target IPv6 Address 
Target link layer Address 
The IPv6 and link-layer addresses
Router 
advertisements 
Ver Tclass Flow Label 
58 255 
Payload Length 
Router IPv6 address 
(link local) 
FF02::1 
(all nodes) 
Type:134 Code : 0 Checksum 
CurHLim Router lifetime 
Retrans Timer 
Maximum hop limit to avoid spoofed packets from 
outside LAN 
M O Res 
Reachable Time 
Options 
Value of hop limit to be used by hosts when sending 
IPv6 packets 
The lifetime associated with the default router in units 
of seconds. 0 is the router sending the advertisement 
is not a default router. 
The time, in milliseconds, that a node assumes a 
neighbour is reachable after having received a 
reachability confirmation. 
The time, in milliseconds, between retransmitted 
Neighbor Solicitation messages. 
MTU to be used on the LAN 
Prefixes to be used on the LAN
RA options 
• Format of the options 
• MTU option 
• Prefix option 
Type Length Options 
Options (cont.) 
Type : 5 Length:1 Reserved 
MTU 
Type : 3 Length:4 PreLen L A Res. 
Valid Lifetime 
Preferred Lifetime 
Reserved2 
IPv6 prefix 
Number of bits in IPv6 prefix that identify subnet 
The validity period of the prefix in seconds 
The duration in seconds that addresses generated from 
the prefix via stateless address autoconfiguration remain 
preferred.
Autoconfiguration 
• What happens when an endsystem boots ? 
ICMPv6 : Neighbour Solicitation 
Sent to multicast address 
Is someone using IPv6 address : 
FE80::M64(800:200C:417A) ? 
• Use Link-local IPv6 address (FE80::/64) 
• Each host, has a link-local IPv6 address 
• But another node might have chosen the 
same address ! 
R 
Ethernet : 0800:200C:417A 
FE80::M64(800:200C:417A) 
Address is valid if nobody answers
Global IPv6 address 
• How to obtain the IPv6 prefix of the subnet ? 
• Wait for router advertisements 
• Solicit router advertisement 
R 
ICMPv6 : Router Solicitation 
IPv6 Src: FE80::M64(800:200C:417A) 
Ethernet : 0800:200C:417A IPv6 Dest: FF02::2 
FE80::M64(800:200C:417A)
Global IPv6 address 
• IPv6 addresses are allocated for limited 
lifetime 
• This allows IPv6 to easily support 
renumbering 
R 
ICMPv6 : Router Advertisement 
IPv6 Src: FE80::M64(EthernetR) 
IPv6 Dest: FF02::1 
IPv6 Prefix = 2001:6a8:1100::/48 
Prefix lifetime 
Ethernet : 0800:200C:417A 
FE80::M64(800:200C:417A)
Privacy issues 
• Autoconfigured IPv6 addresses contain 
the MAC address of the hosts 
• How to maintain privacy with IPv6 ? 
• Use DHCPv6 and never reallocate the 
same IPv6 address 
• Allow hosts to use random host ids 
• algorithms have been implemented to 
generate such random host ids on 
nodes with and without stable storage
ICMP Redirect 
2001:db8:1234:5678::1 
R1 
2001:db8:1234:5678::/64 
2001:db8:1234:5678::AA 
2001:db8:1234:5678::BB 
R2 
2001:db8:2345::/48 
2001:db8:1234:5678::2 
::/0
Agenda 
• IPv6 
• Routing in IP networks 
• IPv6 subnets 
• RIP 
• OSPF
RIP 
• Distance vector 
• default period : 30 seconds (with jitter) 
• distance vector is multicasted in UDP 
message to all RIP routers in local subnets 
• Optional extension : 
• send distance vector after each change 
• but some links flaps... 
• send distance vector if routing table 
changed and did not send another 
vector within the last 5 seconds
RIP : message format 
• RIP messages are sent over UDP 
• port 520
RIP : Route 
Entries
Agenda 
• Routing in IP networks 
• IPv6 subnets 
• RIP 
• OSPF
OSPF 
• Standard link-state routing protocol for 
TCP/IP architecture 
• Builds upon link-state routing with 
some extensions 
• Hierarchical routing with areas 
• Designated routers on subnets 
• Equal Cost Multipath
OSPF 
• Operation 
• HELLO packets to discover neighbours 
• Update of routing tables 
• Link state packets 
• acknowledgements, sequence 
numbers, age 
• periodic transmission/ link changes 
• Database description 
• Link state Request 
• used when a router boots to request link 
state packets from neighbours
OSPF details 
R R R R 
2001:db8:1::A/48 2001:db8:1::B/48 2001:db8:1::C/48 2001:db8:1::D/48 
2001:db8:1::C/48 
2001:db8:1::B/48 
2001:db8:1::A/48 
2001:db8:1::D/48
OSPF details 
(2) 
R R R R 
2001:db8:1::A/48 2001:db8:1::B/48 2001:db8:1::C/48 2001:db8:1::D/48 
2001:db8:1::C/48 
2001:db8:1::B/48 
2001:db8:1::A/48 
LAN 
2001:db8:1::D/48
OSPF in large 
networks 
• Divide network in areas 
• Backbone area : network backbone 
• all routers connected to two or more areas 
belong to the backbone area 
• All non-backbone areas must be attached to 
the backbone area 
• at least one router inside each area must 
be attached to the backbone 
• OSPF routing must allow any router to send 
packets to any other router
OSPF details 
(4) 
R1 R5 
R7 R8 
D E 
R9 R10 
C 
D E 
R3 R4 
RA 
RC 
RB 
Inside each non-backbone area 
l Routers exchange link state packets to 
distribute the topology of the area 
l Routers do not know the topology of 
other areas, but each router knows how 
to reach the backbone area 
Stub AREA 1 
AREA 0 
AREA 2 
Inside backbone area 
l Routers exchange link state packets to 
distribute the topology of the backbone area 
l Each router knows how to reach the other 
areas and distance vectors are used to 
distribute inter-area routes
OSPF areas
Equal Cost Multipath 
• How to use all paths without hurting 
TCP performance 
R3 R7 
R1 R2 
R4 
R5 
R6 
R8 
R9 
RD
Agenda 
• Routing in IP networks 
• Interdomain routing 
• Peering links 
• BGP basics
Interdomain routing 
• Goals 
• Allow to transmit IP packets along the 
best path towards their destination 
through several transit domains while 
taking into account their routing policies 
of each domain without knowing their 
detailed topology 
• From an interdomain viewpoint, best path 
often means cheapest path 
• Each domain is free to specify inside its 
routing policy the domains for which it 
agrees to provide a transit service and 
the method it uses to select the best path 
to reach each destination
Interdomain links 
• Private link 
• Usually a leased line between two routers 
belonging to the two connected domains 
R1 R2 
DomainA DomainB
Interconnection 
exchanges 
• How to efficiently connect several 
domains together ? 
R1 
R2 
R3 
R4 
Physical link 
Interdomain link
An Internet exchange 
point
AMS-IX 
• Largest IX in the world
AMS-IX
Routing policies 
• A domain specifies its routing policy by 
defining on each BGP router two sets of filters 
for each peer 
• Import filter 
• Specifies which routes can be accepted by 
the router among all the received routes 
from a given peer 
• Export filter 
• Specifies which routes can be advertised by 
the router to a given peer
Routing policies 
with RPSL 
AS1 AS2 
AS3 AS4 
$ 
AS7 
Customer-provider 
$ $ $ 
$ 
Shared-cost 
Import policy for AS4 
Import: from AS3 accept AS3 
import: from AS7 accept AS7 
import: from AS1 accept ANY 
import: from AS2 accept ANY 
Export policy for AS4 
export: to AS3 announce AS4 AS7 
export: to AS7 announce ANY 
export: to AS1 announce AS4 AS7 
export: to AS2 announce AS4 AS7 
Import policy for AS7 
Import: from AS4 accept ANY 
Export policy for AS4 
export: to AS4 announce AS7
Agenda 
• Routing in IP networks 
• Interdomain routing 
• Peering links 
• BGP basics
Border Gateway Protocol 
• Path vector protocol 
• BGP router advertises its best route to each 
destination 
AS1 AS2 
AS4 
2001:db8:1/48 
AS5 
lprefix:2001:db8:1/48 
lASPath: AS1 
lprefix: 2001:db8:1/48 
ASPath: ::AS2:AS4:AS1 
lprefix: 2001:db8:1/48 
lASPath: AS4:AS1 
lprefix: 2001:db8:1/48 
ASPath: AS1 
• ... with incremental updates
BGP : Principles 
• BGP relies on the 
incremental exchange of path vectors 
BGP session established 
over 
TCP connection between 
peers 
Each peer sends all its 
active routes 
As long as the BGP session 
remains up 
Incrementally update BGP routing 
tables 
AS3 
R1 
R2 
AS4 
BGP 
session 
BGP Msgs
BGP basics (2) 
• 2 types of BGP messages 
• UPDATE (path vector) 
• advertises a route towards one prefix 
• Destination address/prefix 
• Interdomain path (AS-Path) 
• Nexthop 
• WITHDRAW 
• a previously announced route is not 
reachable anymore 
• Unreachable destination address/prefix
BGP router 
BGP Loc-RIB 
Peer[N] 
All 
BGP Msgs 
from Peer[N] BGP Msgs 
Peer[1] 
Import filter 
Attribute 
manipulation 
Peer[N] 
Peer[1] 
Export filter 
Attribute 
manipulation 
acceptable 
routes 
BGP Decision 
Process 
BGP Routing Information Base 
Contains all the acceptable routes 
learned from all Peers + internal routes 
l BGP decision process selects 
the best route towards each destination 
BGP Msgs 
from Peer[1] 
to Peer[N] 
BGP Msgs 
to Peer[1] 
Import filter(Peer[i]) 
Determines which BGM Msgs 
are acceptable from Peer[i] Export filter(Peer[i]) 
Determines which 
routes can be sent to Peer[i] 
One best 
route to each 
destination 
BGP Adj-RIB-In 
BGP Adj-RIB-Out
Example 
AS20 
R2 
AS30 
AS10 
UPDATE 
lprefix: 2001:db8:12/48, 
lNextHop:R1 
lASPath: AS10 
UPDATE 
lprefix: 2001:db8:12/48, 
lNextHop:R2 
lASPath: AS20:AS10 
R1 R3 
2001:db8:12/48 
BGP 
R4 
AS40 
BGP 
BGP 
UPDATE 
lprefix: 2001:db8:12/48, 
lNextHop:R1 
lASPath: AS10 
UPDATE 
lprefix: 2001:db8:12/48, 
lNextHop:R4 
lASPath: AS40:AS10 
l What happens if link AS10-AS20 goes down ?
How to prefer some 
routes over others ? 
RA RB 
R1 
Backup: 2Mbps 
Primary: 34Mbps 
AS1 
AS2
BGP router 
BGP RIB 
Peer[N] 
Peer[1] 
Import filter 
Attribute 
manipulation 
Peer[N] 
Peer[1] 
Export filter 
Attribute 
manipulation 
BGP Msgs 
from Peer[N] 
BGP Msgs 
from Peer[1] 
BGP Msgs 
to Peer[N] 
BGP Msgs 
All 
acceptable 
routes 
BGP Decision 
Process 
One best to Peer[1] 
route to each 
destination 
Import filter 
l Selection of acceptable routes 
l Addition of local-pref attribute 
inside received BGP Msg 
lNormal quality route : local-pref=100 
lBetter than normal route :local-pref=200 
lWorse than normal route :local-pref=50 
Simplified BGP Decision Process 
l Select routes with highest 
local-pref 
l If there are several routes, 
choose routes with the 
shortest ASPath 
l If there are still several routes 
tie-breaking rule
How to prefer some 
routes over others 
• Limitations 
RA 
R1 R2 
R3 
RB 
Cheap 
Expensive 
AS1 
AS2 
AS3 
AS4 
R5 AS5
How to prefer routes ? 
RA RB 
R1 
Backup: 2Mbps 
Primary: 34Mbps 
AS1 
AS2 
RPSL-like policy for AS1 
aut-num: AS1 
import: from AS2 RA at R1 set localpref=100; 
from AS2 RB at R1 set localpref=200; 
accept ANY 
export: to AS2 RA at R1 announce AS1 
to AS2 RB at R1 announce AS1 
RPSL-like policy for AS2 
aut-num: AS2 
import: from AS1 R1 at RA set localpref=100; 
from AS1 R1 at RB set localpref=200; 
accept AS1 
export: to AS1 R1 at RA announce ANY 
to AS2 R1 at RB announce ANY
How to prefer routes ? 
RA 
R1 R2 
R3 
RB 
Cheap 
Expensive 
AS1 
AS2 
AS3 
AS4 
R5 AS5 
RPSL policy for AS1 
aut-num: AS1 
import: from AS2 RA at R1 set localpref=100; 
from AS4 R2 at R1 set localpref=200; 
accept ANY 
export: to AS2 RA at R1 announce AS1 
to AS4 R2 at R1 announce AS1 
u AS1 will prefer to send over cheap link 
u But the flow of the packets destined to 
AS1 will depend on the routing policy of 
the other domains
local-pref and 
economical 
l In practicer, elolcaalti-oprnefsish oiftpens combined 
with filters to enforce economical 
relationships 
Prov1 Prov2 
$ $ 
AS1 
Peer1 
Peer2 
Peer3 
Peer4 
Cust1 Cust2 
$ Customer-provider 
$ 
Shared-cost 
$ 
Local-pref values used by AS1 
> 1000 for the routes received from a Customer 
500 – 999 for the routes learned from a Peer 
< 500 for the routes learned from a Provider
local-pref 
• Which route will be used by AS1 to reach AS5 ? 
AS1 
$ 
$ 
AS4 
AS2 
AS3 
Shared-cost 
$ 
$ 
AS5 $ Customer-provider 
$ 
• and how will AS5 reach AS1 ? 
$ 
AS8 
AS6 
AS7 
$ 
$ 
Internet paths are often asymmetrical
Internet 1990s 
• NSFNet 
• American backbone 
• no commercial traffic 
• Some regional 
networks 
• US regions, national 
networks in Europe 
• Universities/research 
labs 
• connected to regional 
networks or NSFNet
Internet early 2000s 
• Tier-1 ISPs 
• Dozen transit ISPs 
shared-cost 
• Tier-2 ISPs 
• Regional/ National 
ISPs 
• Tier-3 ISPs 
• Smaller ISPs, 
Entreprises, 
• shared-cost with 
other T3 ISPs
Today’s Internet 
• Hyper Giants 
• google, microsoft, 
yahoo, amazon, ... 
• google peers 70% 
ISPs 
• Tier-1 ISPs 
• Tier-2 ISPs 
• Tier-3 ISPs 
Craig Labovitz), Scott Iekel-Johnson, Danny McPher•son, JMon Oabenrhyeid ep, Faerneamr Jianhagniasn, at IXPs 
Internet Inter-Domain Traffic, SIGCOMM 2010

More Related Content

What's hot

Innovation is back in the transport and network layers
Innovation is back in the transport and network layersInnovation is back in the transport and network layers
Innovation is back in the transport and network layersOlivier Bonaventure
 
Part 4 : reliable transport and sharing resources
Part 4 : reliable transport and sharing resourcesPart 4 : reliable transport and sharing resources
Part 4 : reliable transport and sharing resourcesOlivier Bonaventure
 
Surviving The Stump The Chump Interview Questions
Surviving The Stump The Chump Interview QuestionsSurviving The Stump The Chump Interview Questions
Surviving The Stump The Chump Interview QuestionsDuane Bodle
 
Network interview questions
Network interview questionsNetwork interview questions
Network interview questionsrajasekar1712
 
Internet innovation with Multipath TCP
Internet innovation with Multipath TCPInternet innovation with Multipath TCP
Internet innovation with Multipath TCPOlivier Bonaventure
 
Part 5 : Sharing resources, security principles and protocols
Part 5 : Sharing resources, security principles and protocolsPart 5 : Sharing resources, security principles and protocols
Part 5 : Sharing resources, security principles and protocolsOlivier Bonaventure
 
10 coms 525 tcpip - internet protocol - ip
10   coms 525 tcpip -  internet protocol - ip10   coms 525 tcpip -  internet protocol - ip
10 coms 525 tcpip - internet protocol - ipPalanivel Kuppusamy
 
IP/MAC Address Translation
IP/MAC Address TranslationIP/MAC Address Translation
IP/MAC Address TranslationIsmail Mukiibi
 
Beyond TCP: The evolution of Internet transport protocols
Beyond TCP: The evolution of Internet transport protocolsBeyond TCP: The evolution of Internet transport protocols
Beyond TCP: The evolution of Internet transport protocolsOlivier Bonaventure
 

What's hot (20)

0-RTT TCP converters
0-RTT TCP converters0-RTT TCP converters
0-RTT TCP converters
 
Innovation is back in the transport and network layers
Innovation is back in the transport and network layersInnovation is back in the transport and network layers
Innovation is back in the transport and network layers
 
Part 4 : reliable transport and sharing resources
Part 4 : reliable transport and sharing resourcesPart 4 : reliable transport and sharing resources
Part 4 : reliable transport and sharing resources
 
Part 12 : Local Area Networks
Part 12 : Local Area Networks Part 12 : Local Area Networks
Part 12 : Local Area Networks
 
6 app-tcp
6 app-tcp6 app-tcp
6 app-tcp
 
Surviving The Stump The Chump Interview Questions
Surviving The Stump The Chump Interview QuestionsSurviving The Stump The Chump Interview Questions
Surviving The Stump The Chump Interview Questions
 
Network interview questions
Network interview questionsNetwork interview questions
Network interview questions
 
9 ipv6-routing
9 ipv6-routing9 ipv6-routing
9 ipv6-routing
 
Future Internet protocols
Future Internet protocolsFuture Internet protocols
Future Internet protocols
 
11 bgp-ethernet
11 bgp-ethernet11 bgp-ethernet
11 bgp-ethernet
 
Multipath TCP
Multipath TCPMultipath TCP
Multipath TCP
 
Internet innovation with Multipath TCP
Internet innovation with Multipath TCPInternet innovation with Multipath TCP
Internet innovation with Multipath TCP
 
IPv6 Entreprise Multihoming
IPv6 Entreprise MultihomingIPv6 Entreprise Multihoming
IPv6 Entreprise Multihoming
 
Part 5 : Sharing resources, security principles and protocols
Part 5 : Sharing resources, security principles and protocolsPart 5 : Sharing resources, security principles and protocols
Part 5 : Sharing resources, security principles and protocols
 
8 congestion-ipv6
8 congestion-ipv68 congestion-ipv6
8 congestion-ipv6
 
rip, ospf 13-14
rip, ospf 13-14rip, ospf 13-14
rip, ospf 13-14
 
10 coms 525 tcpip - internet protocol - ip
10   coms 525 tcpip -  internet protocol - ip10   coms 525 tcpip -  internet protocol - ip
10 coms 525 tcpip - internet protocol - ip
 
BGP Advanced topics
BGP Advanced topicsBGP Advanced topics
BGP Advanced topics
 
IP/MAC Address Translation
IP/MAC Address TranslationIP/MAC Address Translation
IP/MAC Address Translation
 
Beyond TCP: The evolution of Internet transport protocols
Beyond TCP: The evolution of Internet transport protocolsBeyond TCP: The evolution of Internet transport protocols
Beyond TCP: The evolution of Internet transport protocols
 

Viewers also liked

Computer Networking : Principles, Protocols and Practice - lesson 1
Computer Networking : Principles, Protocols and Practice - lesson 1Computer Networking : Principles, Protocols and Practice - lesson 1
Computer Networking : Principles, Protocols and Practice - lesson 1Olivier Bonaventure
 
Beyond TCP: The evolution of Internet transport protocols
Beyond TCP: The evolution of Internet transport protocolsBeyond TCP: The evolution of Internet transport protocols
Beyond TCP: The evolution of Internet transport protocolsOlivier Bonaventure
 
Some lessons learned developing OERs over a decade
Some lessons learned developing OERs over a decadeSome lessons learned developing OERs over a decade
Some lessons learned developing OERs over a decadeOlivier Bonaventure
 
Implementing IPv6 Segment Routing in the Linux kernel
Implementing IPv6 Segment Routing in the Linux kernelImplementing IPv6 Segment Routing in the Linux kernel
Implementing IPv6 Segment Routing in the Linux kernelOlivier Bonaventure
 

Viewers also liked (9)

Computer Networking : Principles, Protocols and Practice - lesson 1
Computer Networking : Principles, Protocols and Practice - lesson 1Computer Networking : Principles, Protocols and Practice - lesson 1
Computer Networking : Principles, Protocols and Practice - lesson 1
 
Beyond TCP: The evolution of Internet transport protocols
Beyond TCP: The evolution of Internet transport protocolsBeyond TCP: The evolution of Internet transport protocols
Beyond TCP: The evolution of Internet transport protocols
 
Some lessons learned developing OERs over a decade
Some lessons learned developing OERs over a decadeSome lessons learned developing OERs over a decade
Some lessons learned developing OERs over a decade
 
Implementing IPv6 Segment Routing in the Linux kernel
Implementing IPv6 Segment Routing in the Linux kernelImplementing IPv6 Segment Routing in the Linux kernel
Implementing IPv6 Segment Routing in the Linux kernel
 
7 tcp-congestion
7 tcp-congestion7 tcp-congestion
7 tcp-congestion
 
3 network-transport
3 network-transport3 network-transport
3 network-transport
 
5 sharing-app
5 sharing-app5 sharing-app
5 sharing-app
 
4 transport-sharing
4 transport-sharing4 transport-sharing
4 transport-sharing
 
2 reliability-network
2 reliability-network2 reliability-network
2 reliability-network
 

Similar to Week 10 Routing in IP networks Interdomain routing with BGP

NP - Unit 4 - Routing - RIP, OSPF and Internet Multicasting
NP - Unit 4 - Routing - RIP, OSPF and Internet MulticastingNP - Unit 4 - Routing - RIP, OSPF and Internet Multicasting
NP - Unit 4 - Routing - RIP, OSPF and Internet Multicastinghamsa nandhini
 
Networking Basics with Linux
Networking Basics with LinuxNetworking Basics with Linux
Networking Basics with LinuxHenry Osborne
 
Cisco presentation2
Cisco presentation2Cisco presentation2
Cisco presentation2ehsan nazer
 
Introduction to ipv6 v1.3
Introduction to ipv6 v1.3Introduction to ipv6 v1.3
Introduction to ipv6 v1.3Karunakant Rai
 
8-Lect_8 Addressing the Network.tcp.pptx
8-Lect_8 Addressing the Network.tcp.pptx8-Lect_8 Addressing the Network.tcp.pptx
8-Lect_8 Addressing the Network.tcp.pptxZahouAmel1
 
Demystifying Networking Webinar Series- Routing on the Host
Demystifying Networking Webinar Series- Routing on the HostDemystifying Networking Webinar Series- Routing on the Host
Demystifying Networking Webinar Series- Routing on the HostCumulus Networks
 
CodiLime Tech Talk - Adam Kułagowski: IPv6 - introduction
CodiLime Tech Talk - Adam Kułagowski: IPv6 - introductionCodiLime Tech Talk - Adam Kułagowski: IPv6 - introduction
CodiLime Tech Talk - Adam Kułagowski: IPv6 - introductionCodiLime
 
Fedv6tf-IPv6-new-friends
Fedv6tf-IPv6-new-friendsFedv6tf-IPv6-new-friends
Fedv6tf-IPv6-new-friendsTim Martin
 
Neighbor Discovery Deep Dive – IPv6-Networking-Referat
Neighbor Discovery Deep Dive – IPv6-Networking-ReferatNeighbor Discovery Deep Dive – IPv6-Networking-Referat
Neighbor Discovery Deep Dive – IPv6-Networking-ReferatDigicomp Academy AG
 
Microsoft Offical Course 20410C_08
Microsoft Offical Course 20410C_08Microsoft Offical Course 20410C_08
Microsoft Offical Course 20410C_08gameaxt
 

Similar to Week 10 Routing in IP networks Interdomain routing with BGP (20)

Bgp (1)
Bgp (1)Bgp (1)
Bgp (1)
 
bgp.ppt
bgp.pptbgp.ppt
bgp.ppt
 
NP - Unit 4 - Routing - RIP, OSPF and Internet Multicasting
NP - Unit 4 - Routing - RIP, OSPF and Internet MulticastingNP - Unit 4 - Routing - RIP, OSPF and Internet Multicasting
NP - Unit 4 - Routing - RIP, OSPF and Internet Multicasting
 
IPv6
IPv6IPv6
IPv6
 
IP Routing.pptx
IP Routing.pptxIP Routing.pptx
IP Routing.pptx
 
Networking Basics with Linux
Networking Basics with LinuxNetworking Basics with Linux
Networking Basics with Linux
 
Network Layer Protocol.pptx
Network Layer Protocol.pptxNetwork Layer Protocol.pptx
Network Layer Protocol.pptx
 
Cisco presentation2
Cisco presentation2Cisco presentation2
Cisco presentation2
 
6421 b Module-04
6421 b Module-046421 b Module-04
6421 b Module-04
 
Introduction to ipv6 v1.3
Introduction to ipv6 v1.3Introduction to ipv6 v1.3
Introduction to ipv6 v1.3
 
8-Lect_8 Addressing the Network.tcp.pptx
8-Lect_8 Addressing the Network.tcp.pptx8-Lect_8 Addressing the Network.tcp.pptx
8-Lect_8 Addressing the Network.tcp.pptx
 
Demystifying Networking Webinar Series- Routing on the Host
Demystifying Networking Webinar Series- Routing on the HostDemystifying Networking Webinar Series- Routing on the Host
Demystifying Networking Webinar Series- Routing on the Host
 
Wrou01
Wrou01Wrou01
Wrou01
 
CodiLime Tech Talk - Adam Kułagowski: IPv6 - introduction
CodiLime Tech Talk - Adam Kułagowski: IPv6 - introductionCodiLime Tech Talk - Adam Kułagowski: IPv6 - introduction
CodiLime Tech Talk - Adam Kułagowski: IPv6 - introduction
 
Fedv6tf-IPv6-new-friends
Fedv6tf-IPv6-new-friendsFedv6tf-IPv6-new-friends
Fedv6tf-IPv6-new-friends
 
Neighbor Discovery Deep Dive – IPv6-Networking-Referat
Neighbor Discovery Deep Dive – IPv6-Networking-ReferatNeighbor Discovery Deep Dive – IPv6-Networking-Referat
Neighbor Discovery Deep Dive – IPv6-Networking-Referat
 
Border Gatway Protocol
Border Gatway ProtocolBorder Gatway Protocol
Border Gatway Protocol
 
Microsoft Offical Course 20410C_08
Microsoft Offical Course 20410C_08Microsoft Offical Course 20410C_08
Microsoft Offical Course 20410C_08
 
Bgp
BgpBgp
Bgp
 
OSPF Configuration
OSPF ConfigurationOSPF Configuration
OSPF Configuration
 

More from Olivier Bonaventure

More from Olivier Bonaventure (20)

Part3-reliable.pptx
Part3-reliable.pptxPart3-reliable.pptx
Part3-reliable.pptx
 
Part10-router.pptx
Part10-router.pptxPart10-router.pptx
Part10-router.pptx
 
Part1-Intro-Apps.pptx
Part1-Intro-Apps.pptxPart1-Intro-Apps.pptx
Part1-Intro-Apps.pptx
 
Part9-congestion.pptx
Part9-congestion.pptxPart9-congestion.pptx
Part9-congestion.pptx
 
Part2-Apps-Security.pptx
Part2-Apps-Security.pptxPart2-Apps-Security.pptx
Part2-Apps-Security.pptx
 
Part11-lan.pptx
Part11-lan.pptxPart11-lan.pptx
Part11-lan.pptx
 
Part5-tcp-improvements.pptx
Part5-tcp-improvements.pptxPart5-tcp-improvements.pptx
Part5-tcp-improvements.pptx
 
Part8-ibgp.pptx
Part8-ibgp.pptxPart8-ibgp.pptx
Part8-ibgp.pptx
 
Part4-reliable-tcp.pptx
Part4-reliable-tcp.pptxPart4-reliable-tcp.pptx
Part4-reliable-tcp.pptx
 
Part7-routing.pptx
Part7-routing.pptxPart7-routing.pptx
Part7-routing.pptx
 
Part6-network-routing.pptx
Part6-network-routing.pptxPart6-network-routing.pptx
Part6-network-routing.pptx
 
Part1-Intro-Apps.pptx
Part1-Intro-Apps.pptxPart1-Intro-Apps.pptx
Part1-Intro-Apps.pptx
 
Part2-Apps-Security.pptx
Part2-Apps-Security.pptxPart2-Apps-Security.pptx
Part2-Apps-Security.pptx
 
Part4-reliable-tcp.pptx
Part4-reliable-tcp.pptxPart4-reliable-tcp.pptx
Part4-reliable-tcp.pptx
 
Part3-reliable.pptx
Part3-reliable.pptxPart3-reliable.pptx
Part3-reliable.pptx
 
A personal journey towards more reproducible networking research
A personal journey towards more reproducible networking researchA personal journey towards more reproducible networking research
A personal journey towards more reproducible networking research
 
Part 11 : Interdomain routing with BGP
Part 11 : Interdomain routing with BGPPart 11 : Interdomain routing with BGP
Part 11 : Interdomain routing with BGP
 
Part 8 : TCP and Congestion control
Part 8 : TCP and Congestion controlPart 8 : TCP and Congestion control
Part 8 : TCP and Congestion control
 
Part 6 : Internet applications
Part 6 : Internet applicationsPart 6 : Internet applications
Part 6 : Internet applications
 
Part 3 : building a network and supporting applications
Part 3 : building a network and supporting applicationsPart 3 : building a network and supporting applications
Part 3 : building a network and supporting applications
 

Recently uploaded

Javier_Fernandez_CARS_workshop_presentation.pptx
Javier_Fernandez_CARS_workshop_presentation.pptxJavier_Fernandez_CARS_workshop_presentation.pptx
Javier_Fernandez_CARS_workshop_presentation.pptxJavier Fernández Muñoz
 
Robotics-Asimov's Laws, Mechanical Subsystems, Robot Kinematics, Robot Dynami...
Robotics-Asimov's Laws, Mechanical Subsystems, Robot Kinematics, Robot Dynami...Robotics-Asimov's Laws, Mechanical Subsystems, Robot Kinematics, Robot Dynami...
Robotics-Asimov's Laws, Mechanical Subsystems, Robot Kinematics, Robot Dynami...Sumanth A
 
Robotics Group 10 (Control Schemes) cse.pdf
Robotics Group 10  (Control Schemes) cse.pdfRobotics Group 10  (Control Schemes) cse.pdf
Robotics Group 10 (Control Schemes) cse.pdfsahilsajad201
 
2022 AWS DNA Hackathon 장애 대응 솔루션 jarvis.
2022 AWS DNA Hackathon 장애 대응 솔루션 jarvis.2022 AWS DNA Hackathon 장애 대응 솔루션 jarvis.
2022 AWS DNA Hackathon 장애 대응 솔루션 jarvis.elesangwon
 
tourism-management-srs_compress-software-engineering.pdf
tourism-management-srs_compress-software-engineering.pdftourism-management-srs_compress-software-engineering.pdf
tourism-management-srs_compress-software-engineering.pdfchess188chess188
 
March 2024 - Top 10 Read Articles in Artificial Intelligence and Applications...
March 2024 - Top 10 Read Articles in Artificial Intelligence and Applications...March 2024 - Top 10 Read Articles in Artificial Intelligence and Applications...
March 2024 - Top 10 Read Articles in Artificial Intelligence and Applications...gerogepatton
 
KCD Costa Rica 2024 - Nephio para parvulitos
KCD Costa Rica 2024 - Nephio para parvulitosKCD Costa Rica 2024 - Nephio para parvulitos
KCD Costa Rica 2024 - Nephio para parvulitosVictor Morales
 
Triangulation survey (Basic Mine Surveying)_MI10412MI.pptx
Triangulation survey (Basic Mine Surveying)_MI10412MI.pptxTriangulation survey (Basic Mine Surveying)_MI10412MI.pptx
Triangulation survey (Basic Mine Surveying)_MI10412MI.pptxRomil Mishra
 
multiple access in wireless communication
multiple access in wireless communicationmultiple access in wireless communication
multiple access in wireless communicationpanditadesh123
 
FUNCTIONAL AND NON FUNCTIONAL REQUIREMENT
FUNCTIONAL AND NON FUNCTIONAL REQUIREMENTFUNCTIONAL AND NON FUNCTIONAL REQUIREMENT
FUNCTIONAL AND NON FUNCTIONAL REQUIREMENTSneha Padhiar
 
Uk-NO1 kala jadu karne wale ka contact number kala jadu karne wale baba kala ...
Uk-NO1 kala jadu karne wale ka contact number kala jadu karne wale baba kala ...Uk-NO1 kala jadu karne wale ka contact number kala jadu karne wale baba kala ...
Uk-NO1 kala jadu karne wale ka contact number kala jadu karne wale baba kala ...Amil baba
 
Prach: A Feature-Rich Platform Empowering the Autism Community
Prach: A Feature-Rich Platform Empowering the Autism CommunityPrach: A Feature-Rich Platform Empowering the Autism Community
Prach: A Feature-Rich Platform Empowering the Autism Communityprachaibot
 
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMS
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMSHigh Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMS
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMSsandhya757531
 
Katarzyna Lipka-Sidor - BIM School Course
Katarzyna Lipka-Sidor - BIM School CourseKatarzyna Lipka-Sidor - BIM School Course
Katarzyna Lipka-Sidor - BIM School Coursebim.edu.pl
 
Theory of Machine Notes / Lecture Material .pdf
Theory of Machine Notes / Lecture Material .pdfTheory of Machine Notes / Lecture Material .pdf
Theory of Machine Notes / Lecture Material .pdfShreyas Pandit
 
Structural Integrity Assessment Standards in Nigeria by Engr Nimot Muili
Structural Integrity Assessment Standards in Nigeria by Engr Nimot MuiliStructural Integrity Assessment Standards in Nigeria by Engr Nimot Muili
Structural Integrity Assessment Standards in Nigeria by Engr Nimot MuiliNimot Muili
 
Uk-NO1 Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Exp...
Uk-NO1 Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Exp...Uk-NO1 Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Exp...
Uk-NO1 Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Exp...Amil baba
 

Recently uploaded (20)

Javier_Fernandez_CARS_workshop_presentation.pptx
Javier_Fernandez_CARS_workshop_presentation.pptxJavier_Fernandez_CARS_workshop_presentation.pptx
Javier_Fernandez_CARS_workshop_presentation.pptx
 
Robotics-Asimov's Laws, Mechanical Subsystems, Robot Kinematics, Robot Dynami...
Robotics-Asimov's Laws, Mechanical Subsystems, Robot Kinematics, Robot Dynami...Robotics-Asimov's Laws, Mechanical Subsystems, Robot Kinematics, Robot Dynami...
Robotics-Asimov's Laws, Mechanical Subsystems, Robot Kinematics, Robot Dynami...
 
Designing pile caps according to ACI 318-19.pptx
Designing pile caps according to ACI 318-19.pptxDesigning pile caps according to ACI 318-19.pptx
Designing pile caps according to ACI 318-19.pptx
 
Robotics Group 10 (Control Schemes) cse.pdf
Robotics Group 10  (Control Schemes) cse.pdfRobotics Group 10  (Control Schemes) cse.pdf
Robotics Group 10 (Control Schemes) cse.pdf
 
ASME-B31.4-2019-estandar para diseño de ductos
ASME-B31.4-2019-estandar para diseño de ductosASME-B31.4-2019-estandar para diseño de ductos
ASME-B31.4-2019-estandar para diseño de ductos
 
2022 AWS DNA Hackathon 장애 대응 솔루션 jarvis.
2022 AWS DNA Hackathon 장애 대응 솔루션 jarvis.2022 AWS DNA Hackathon 장애 대응 솔루션 jarvis.
2022 AWS DNA Hackathon 장애 대응 솔루션 jarvis.
 
tourism-management-srs_compress-software-engineering.pdf
tourism-management-srs_compress-software-engineering.pdftourism-management-srs_compress-software-engineering.pdf
tourism-management-srs_compress-software-engineering.pdf
 
March 2024 - Top 10 Read Articles in Artificial Intelligence and Applications...
March 2024 - Top 10 Read Articles in Artificial Intelligence and Applications...March 2024 - Top 10 Read Articles in Artificial Intelligence and Applications...
March 2024 - Top 10 Read Articles in Artificial Intelligence and Applications...
 
KCD Costa Rica 2024 - Nephio para parvulitos
KCD Costa Rica 2024 - Nephio para parvulitosKCD Costa Rica 2024 - Nephio para parvulitos
KCD Costa Rica 2024 - Nephio para parvulitos
 
Versatile Engineering Construction Firms
Versatile Engineering Construction FirmsVersatile Engineering Construction Firms
Versatile Engineering Construction Firms
 
Triangulation survey (Basic Mine Surveying)_MI10412MI.pptx
Triangulation survey (Basic Mine Surveying)_MI10412MI.pptxTriangulation survey (Basic Mine Surveying)_MI10412MI.pptx
Triangulation survey (Basic Mine Surveying)_MI10412MI.pptx
 
multiple access in wireless communication
multiple access in wireless communicationmultiple access in wireless communication
multiple access in wireless communication
 
FUNCTIONAL AND NON FUNCTIONAL REQUIREMENT
FUNCTIONAL AND NON FUNCTIONAL REQUIREMENTFUNCTIONAL AND NON FUNCTIONAL REQUIREMENT
FUNCTIONAL AND NON FUNCTIONAL REQUIREMENT
 
Uk-NO1 kala jadu karne wale ka contact number kala jadu karne wale baba kala ...
Uk-NO1 kala jadu karne wale ka contact number kala jadu karne wale baba kala ...Uk-NO1 kala jadu karne wale ka contact number kala jadu karne wale baba kala ...
Uk-NO1 kala jadu karne wale ka contact number kala jadu karne wale baba kala ...
 
Prach: A Feature-Rich Platform Empowering the Autism Community
Prach: A Feature-Rich Platform Empowering the Autism CommunityPrach: A Feature-Rich Platform Empowering the Autism Community
Prach: A Feature-Rich Platform Empowering the Autism Community
 
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMS
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMSHigh Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMS
High Voltage Engineering- OVER VOLTAGES IN ELECTRICAL POWER SYSTEMS
 
Katarzyna Lipka-Sidor - BIM School Course
Katarzyna Lipka-Sidor - BIM School CourseKatarzyna Lipka-Sidor - BIM School Course
Katarzyna Lipka-Sidor - BIM School Course
 
Theory of Machine Notes / Lecture Material .pdf
Theory of Machine Notes / Lecture Material .pdfTheory of Machine Notes / Lecture Material .pdf
Theory of Machine Notes / Lecture Material .pdf
 
Structural Integrity Assessment Standards in Nigeria by Engr Nimot Muili
Structural Integrity Assessment Standards in Nigeria by Engr Nimot MuiliStructural Integrity Assessment Standards in Nigeria by Engr Nimot Muili
Structural Integrity Assessment Standards in Nigeria by Engr Nimot Muili
 
Uk-NO1 Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Exp...
Uk-NO1 Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Exp...Uk-NO1 Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Exp...
Uk-NO1 Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Exp...
 

Week 10 Routing in IP networks Interdomain routing with BGP

  • 1. Week 10 Routing in IP networks Interdomain routing with BGP
  • 2. Agenda • Routing in IP networks • IPv6 subnets • Routing organisation • RIP • OSPF • Interdomain routing
  • 3. Neighbour discovery IPv6: 1080:0:0:0:8:A Eth : A 1080:0:0:0:8:A wants to send a packet to 1080:0:0:0:8:C 1 2 Neighbour solicitation: Addr Eth 1080:0:0:0:8:C ? sent to IPv6 multicast address 3 IPv6: 1080:0:0:0:8:E Eth : E Ipv6: 1080:0:0:0:8:C Eth : C Ipv6: 1080:0:0:0:8:C Eth : C IPv6: 1080:0:0:0:8:E Eth : E IPv6: 1080:0:0:0:8:A Eth : A Ipv6: 1080:0:0:0:8:C Neighbour advertisement: 1080:0:0:0:8:C is reachable via Ethernet Add : C Eth : C IPv6: 1080:0:0:0:8:E Eth : E IPv6: 1080:0:0:0:8:A Eth : A
  • 4. ICMPv6 Neighbor Discovery • Neighbour solicitation Type : 135 Code:0 Checksum The IPv6 address for which the link-layer Reserved R : true if node is a router S : true if answers to a neighbour solicitation • Neighbour advertisement Target IPv6 Address (e.g. Ethernet) address is needed. May also contain an optional field with the link-layer (e.g. Ethernet) address of the sender. Type : 136 Code:0 Checksum R S O Reserved Target IPv6 Address Target link layer Address The IPv6 and link-layer addresses
  • 5. Router advertisements Ver Tclass Flow Label 58 255 Payload Length Router IPv6 address (link local) FF02::1 (all nodes) Type:134 Code : 0 Checksum CurHLim Router lifetime Retrans Timer Maximum hop limit to avoid spoofed packets from outside LAN M O Res Reachable Time Options Value of hop limit to be used by hosts when sending IPv6 packets The lifetime associated with the default router in units of seconds. 0 is the router sending the advertisement is not a default router. The time, in milliseconds, that a node assumes a neighbour is reachable after having received a reachability confirmation. The time, in milliseconds, between retransmitted Neighbor Solicitation messages. MTU to be used on the LAN Prefixes to be used on the LAN
  • 6. RA options • Format of the options • MTU option • Prefix option Type Length Options Options (cont.) Type : 5 Length:1 Reserved MTU Type : 3 Length:4 PreLen L A Res. Valid Lifetime Preferred Lifetime Reserved2 IPv6 prefix Number of bits in IPv6 prefix that identify subnet The validity period of the prefix in seconds The duration in seconds that addresses generated from the prefix via stateless address autoconfiguration remain preferred.
  • 7. Autoconfiguration • What happens when an endsystem boots ? ICMPv6 : Neighbour Solicitation Sent to multicast address Is someone using IPv6 address : FE80::M64(800:200C:417A) ? • Use Link-local IPv6 address (FE80::/64) • Each host, has a link-local IPv6 address • But another node might have chosen the same address ! R Ethernet : 0800:200C:417A FE80::M64(800:200C:417A) Address is valid if nobody answers
  • 8. Global IPv6 address • How to obtain the IPv6 prefix of the subnet ? • Wait for router advertisements • Solicit router advertisement R ICMPv6 : Router Solicitation IPv6 Src: FE80::M64(800:200C:417A) Ethernet : 0800:200C:417A IPv6 Dest: FF02::2 FE80::M64(800:200C:417A)
  • 9. Global IPv6 address • IPv6 addresses are allocated for limited lifetime • This allows IPv6 to easily support renumbering R ICMPv6 : Router Advertisement IPv6 Src: FE80::M64(EthernetR) IPv6 Dest: FF02::1 IPv6 Prefix = 2001:6a8:1100::/48 Prefix lifetime Ethernet : 0800:200C:417A FE80::M64(800:200C:417A)
  • 10. Privacy issues • Autoconfigured IPv6 addresses contain the MAC address of the hosts • How to maintain privacy with IPv6 ? • Use DHCPv6 and never reallocate the same IPv6 address • Allow hosts to use random host ids • algorithms have been implemented to generate such random host ids on nodes with and without stable storage
  • 11. ICMP Redirect 2001:db8:1234:5678::1 R1 2001:db8:1234:5678::/64 2001:db8:1234:5678::AA 2001:db8:1234:5678::BB R2 2001:db8:2345::/48 2001:db8:1234:5678::2 ::/0
  • 12. Agenda • IPv6 • Routing in IP networks • IPv6 subnets • RIP • OSPF
  • 13. RIP • Distance vector • default period : 30 seconds (with jitter) • distance vector is multicasted in UDP message to all RIP routers in local subnets • Optional extension : • send distance vector after each change • but some links flaps... • send distance vector if routing table changed and did not send another vector within the last 5 seconds
  • 14. RIP : message format • RIP messages are sent over UDP • port 520
  • 15. RIP : Route Entries
  • 16. Agenda • Routing in IP networks • IPv6 subnets • RIP • OSPF
  • 17. OSPF • Standard link-state routing protocol for TCP/IP architecture • Builds upon link-state routing with some extensions • Hierarchical routing with areas • Designated routers on subnets • Equal Cost Multipath
  • 18. OSPF • Operation • HELLO packets to discover neighbours • Update of routing tables • Link state packets • acknowledgements, sequence numbers, age • periodic transmission/ link changes • Database description • Link state Request • used when a router boots to request link state packets from neighbours
  • 19. OSPF details R R R R 2001:db8:1::A/48 2001:db8:1::B/48 2001:db8:1::C/48 2001:db8:1::D/48 2001:db8:1::C/48 2001:db8:1::B/48 2001:db8:1::A/48 2001:db8:1::D/48
  • 20. OSPF details (2) R R R R 2001:db8:1::A/48 2001:db8:1::B/48 2001:db8:1::C/48 2001:db8:1::D/48 2001:db8:1::C/48 2001:db8:1::B/48 2001:db8:1::A/48 LAN 2001:db8:1::D/48
  • 21. OSPF in large networks • Divide network in areas • Backbone area : network backbone • all routers connected to two or more areas belong to the backbone area • All non-backbone areas must be attached to the backbone area • at least one router inside each area must be attached to the backbone • OSPF routing must allow any router to send packets to any other router
  • 22. OSPF details (4) R1 R5 R7 R8 D E R9 R10 C D E R3 R4 RA RC RB Inside each non-backbone area l Routers exchange link state packets to distribute the topology of the area l Routers do not know the topology of other areas, but each router knows how to reach the backbone area Stub AREA 1 AREA 0 AREA 2 Inside backbone area l Routers exchange link state packets to distribute the topology of the backbone area l Each router knows how to reach the other areas and distance vectors are used to distribute inter-area routes
  • 24. Equal Cost Multipath • How to use all paths without hurting TCP performance R3 R7 R1 R2 R4 R5 R6 R8 R9 RD
  • 25. Agenda • Routing in IP networks • Interdomain routing • Peering links • BGP basics
  • 26. Interdomain routing • Goals • Allow to transmit IP packets along the best path towards their destination through several transit domains while taking into account their routing policies of each domain without knowing their detailed topology • From an interdomain viewpoint, best path often means cheapest path • Each domain is free to specify inside its routing policy the domains for which it agrees to provide a transit service and the method it uses to select the best path to reach each destination
  • 27. Interdomain links • Private link • Usually a leased line between two routers belonging to the two connected domains R1 R2 DomainA DomainB
  • 28. Interconnection exchanges • How to efficiently connect several domains together ? R1 R2 R3 R4 Physical link Interdomain link
  • 30. AMS-IX • Largest IX in the world
  • 32. Routing policies • A domain specifies its routing policy by defining on each BGP router two sets of filters for each peer • Import filter • Specifies which routes can be accepted by the router among all the received routes from a given peer • Export filter • Specifies which routes can be advertised by the router to a given peer
  • 33. Routing policies with RPSL AS1 AS2 AS3 AS4 $ AS7 Customer-provider $ $ $ $ Shared-cost Import policy for AS4 Import: from AS3 accept AS3 import: from AS7 accept AS7 import: from AS1 accept ANY import: from AS2 accept ANY Export policy for AS4 export: to AS3 announce AS4 AS7 export: to AS7 announce ANY export: to AS1 announce AS4 AS7 export: to AS2 announce AS4 AS7 Import policy for AS7 Import: from AS4 accept ANY Export policy for AS4 export: to AS4 announce AS7
  • 34. Agenda • Routing in IP networks • Interdomain routing • Peering links • BGP basics
  • 35. Border Gateway Protocol • Path vector protocol • BGP router advertises its best route to each destination AS1 AS2 AS4 2001:db8:1/48 AS5 lprefix:2001:db8:1/48 lASPath: AS1 lprefix: 2001:db8:1/48 ASPath: ::AS2:AS4:AS1 lprefix: 2001:db8:1/48 lASPath: AS4:AS1 lprefix: 2001:db8:1/48 ASPath: AS1 • ... with incremental updates
  • 36. BGP : Principles • BGP relies on the incremental exchange of path vectors BGP session established over TCP connection between peers Each peer sends all its active routes As long as the BGP session remains up Incrementally update BGP routing tables AS3 R1 R2 AS4 BGP session BGP Msgs
  • 37. BGP basics (2) • 2 types of BGP messages • UPDATE (path vector) • advertises a route towards one prefix • Destination address/prefix • Interdomain path (AS-Path) • Nexthop • WITHDRAW • a previously announced route is not reachable anymore • Unreachable destination address/prefix
  • 38. BGP router BGP Loc-RIB Peer[N] All BGP Msgs from Peer[N] BGP Msgs Peer[1] Import filter Attribute manipulation Peer[N] Peer[1] Export filter Attribute manipulation acceptable routes BGP Decision Process BGP Routing Information Base Contains all the acceptable routes learned from all Peers + internal routes l BGP decision process selects the best route towards each destination BGP Msgs from Peer[1] to Peer[N] BGP Msgs to Peer[1] Import filter(Peer[i]) Determines which BGM Msgs are acceptable from Peer[i] Export filter(Peer[i]) Determines which routes can be sent to Peer[i] One best route to each destination BGP Adj-RIB-In BGP Adj-RIB-Out
  • 39. Example AS20 R2 AS30 AS10 UPDATE lprefix: 2001:db8:12/48, lNextHop:R1 lASPath: AS10 UPDATE lprefix: 2001:db8:12/48, lNextHop:R2 lASPath: AS20:AS10 R1 R3 2001:db8:12/48 BGP R4 AS40 BGP BGP UPDATE lprefix: 2001:db8:12/48, lNextHop:R1 lASPath: AS10 UPDATE lprefix: 2001:db8:12/48, lNextHop:R4 lASPath: AS40:AS10 l What happens if link AS10-AS20 goes down ?
  • 40. How to prefer some routes over others ? RA RB R1 Backup: 2Mbps Primary: 34Mbps AS1 AS2
  • 41. BGP router BGP RIB Peer[N] Peer[1] Import filter Attribute manipulation Peer[N] Peer[1] Export filter Attribute manipulation BGP Msgs from Peer[N] BGP Msgs from Peer[1] BGP Msgs to Peer[N] BGP Msgs All acceptable routes BGP Decision Process One best to Peer[1] route to each destination Import filter l Selection of acceptable routes l Addition of local-pref attribute inside received BGP Msg lNormal quality route : local-pref=100 lBetter than normal route :local-pref=200 lWorse than normal route :local-pref=50 Simplified BGP Decision Process l Select routes with highest local-pref l If there are several routes, choose routes with the shortest ASPath l If there are still several routes tie-breaking rule
  • 42. How to prefer some routes over others • Limitations RA R1 R2 R3 RB Cheap Expensive AS1 AS2 AS3 AS4 R5 AS5
  • 43. How to prefer routes ? RA RB R1 Backup: 2Mbps Primary: 34Mbps AS1 AS2 RPSL-like policy for AS1 aut-num: AS1 import: from AS2 RA at R1 set localpref=100; from AS2 RB at R1 set localpref=200; accept ANY export: to AS2 RA at R1 announce AS1 to AS2 RB at R1 announce AS1 RPSL-like policy for AS2 aut-num: AS2 import: from AS1 R1 at RA set localpref=100; from AS1 R1 at RB set localpref=200; accept AS1 export: to AS1 R1 at RA announce ANY to AS2 R1 at RB announce ANY
  • 44. How to prefer routes ? RA R1 R2 R3 RB Cheap Expensive AS1 AS2 AS3 AS4 R5 AS5 RPSL policy for AS1 aut-num: AS1 import: from AS2 RA at R1 set localpref=100; from AS4 R2 at R1 set localpref=200; accept ANY export: to AS2 RA at R1 announce AS1 to AS4 R2 at R1 announce AS1 u AS1 will prefer to send over cheap link u But the flow of the packets destined to AS1 will depend on the routing policy of the other domains
  • 45. local-pref and economical l In practicer, elolcaalti-oprnefsish oiftpens combined with filters to enforce economical relationships Prov1 Prov2 $ $ AS1 Peer1 Peer2 Peer3 Peer4 Cust1 Cust2 $ Customer-provider $ Shared-cost $ Local-pref values used by AS1 > 1000 for the routes received from a Customer 500 – 999 for the routes learned from a Peer < 500 for the routes learned from a Provider
  • 46. local-pref • Which route will be used by AS1 to reach AS5 ? AS1 $ $ AS4 AS2 AS3 Shared-cost $ $ AS5 $ Customer-provider $ • and how will AS5 reach AS1 ? $ AS8 AS6 AS7 $ $ Internet paths are often asymmetrical
  • 47. Internet 1990s • NSFNet • American backbone • no commercial traffic • Some regional networks • US regions, national networks in Europe • Universities/research labs • connected to regional networks or NSFNet
  • 48. Internet early 2000s • Tier-1 ISPs • Dozen transit ISPs shared-cost • Tier-2 ISPs • Regional/ National ISPs • Tier-3 ISPs • Smaller ISPs, Entreprises, • shared-cost with other T3 ISPs
  • 49. Today’s Internet • Hyper Giants • google, microsoft, yahoo, amazon, ... • google peers 70% ISPs • Tier-1 ISPs • Tier-2 ISPs • Tier-3 ISPs Craig Labovitz), Scott Iekel-Johnson, Danny McPher•son, JMon Oabenrhyeid ep, Faerneamr Jianhagniasn, at IXPs Internet Inter-Domain Traffic, SIGCOMM 2010

Editor's Notes

  1. The transmission of IPv6 packets over Ethernet is defined in : M. Crawford, Transmission of IPv6 Packets over Ethernet Networks, RFC2464, December 1998 Note that in contrast with ARP used by IPv4, ICMPv6 neighbour solicitation messages are sent to a multicast ethernet address and not to the broadcast ethernet address. This implies that only the IPv6 enabled hosts on the LAN will receive the ICMPv6 message.
  2. The ICMPv6 neighbour discovery messages are sent with HopLimit=255 The role of the R, S and O flags is described as follows in RFC4861 R Router flag. When set, the R-bit indicates that the sender is a router. The R-bit is used by Neighbor Unreachability Detection to detect a router that changes to a host. S Solicited flag. When set, the S-bit indicates that the advertisement was sent in response to a Neighbor Solicitation from the Destination address. The S-bit is used as a reachability confirmation for Neighbor Unreachability Detection. It MUST NOT be set in multicast advertisements or in unsolicited unicast advertisements. O Override flag. When set, the O-bit indicates that the advertisement should override an existing cache entry and update the cached link-layer address. When it is not set the advertisement will not update a cached link-layer address though it will update an existing Neighbor Cache entry for which no link-layer address is known. It SHOULD NOT be set in solicited advertisements for anycast addresses and in solicited proxy advertisements. It SHOULD be set in other solicited advertisements and in unsolicited advertisements.
  3. When the M bit is set to true, this indicates that IPv6 addresses should be obtained from DHCPv6 When the O bit is set to true, this indicates that the hosts can obtain additional information (e.g. address of DNS resolver) from DHCPv6 The router advertisements messages can also be sent in unicast in response to solicitations from hosts. A host can obtain a router advertisement by sending a router solicitation which is an ICMPv6 message containing only the router solicitation message (type 133).
  4. The two L and A bits are defined as follows : L 1-bit on-link flag. When set, indicates that this prefix can be used for on-link determination. When not set the advertisement makes no statement about on-link or off-link properties of the prefix. In other words, if the L flag is not set a host MUST NOT conclude that an address derived from the prefix is off-link. That is, it MUST NOT update a previous indication that the address is on-link. A 1-bit autonomous address-configuration flag. When set indicates that this prefix can be used for stateless address configuration. Other options have been defined for the router advertisements. For example, the RDNSS option defined in J. Jeong, S. Park, L. Beloeil, S. Madanapalli, IPv6 Router Advertisement Option for DNS Configuration, RFC 5006, Sept. 2007 allows a router to advertise the IPv6 address of the DNS resolver to be used by hosts on the LAN.
  5. This utilisation of ICMPv6 Neighbour solicitation is called Duplicate Address Detection. It is used everytime a host obtains a new IPv6 address and is required to ensure that a host is not using the same IPv6 address as another host on the same LAN.
  6. IPv6 is supposed to easily support renumbering and IPv6 router advertisements are one of the ways to perform this renumbering by allowing hosts to update their IPv6 addresses upon reception of new router advertisement messages. However, in practice renumbering an IPv6 network is not easily because IPv6 addresses are manually encoded in too many configuration files, see e.g. : F. Baker, E. Lear, R. Droms, Procedures for Renumbering an IPv6 Network without a Flag Day, RFC4192, 2005
  7. This extension to support privacy-aware IPv6 addresses is defined in T. Narten, R. Draves, S. Krishnan, Privacy Extensions for Stateless Address Autoconfiguration in IPv6, RFC4941, Sept. 2007
  8. RFC2453 RIP Version 2. G. Malkin. November 1998 Gary Malkin, RIP : an intra-domain routing protocol, Addison-Wesley, 2002
  9. RFC2328 OSPF Version 2. J. Moy. April 1998. J. Moy, OSPF: Anatomy of an Internet Routing Protocol, Addison Wesley, 1998
  10. For more information on the organization of the Internet, see : G. Huston, Peerings and settlements, Internet Protocol Journal, Vol. 2, N1 et 2, 1999, http://www.cisco.com/warp/public/759/ipj_Volume2.html For more information on interconnection points or Internet exchanges, see : http://www.euro-ix.net/ http://www.ripe.net/ripe/wg/eix/index.html http://www.ep.net/ep-main.html
  11. On link AS7-AS4 AS7 advertises its own routes to AS4 AS4 advertises to AS7 the routes that allow to reach the entire Internet On link AS4-AS2 AS4 advertises its own routes and the routes belonging to AS7 AS2 advertises the routes that allow to reach the entire Internet
  12. On link AS3-AS4 AS3 advertises its internal routes AS4 advertises its internal routes and the routes learned from AS7 (its customer) On link AS1-AS2 AS1 advertises its internal routes and the routes received from AS3 and AS4 (its customers) AS2 advertises its internal routes and the routes learned from AS74(its customer)
  13. RFC 2622 Routing Policy Specification Language (RPSL). C. Alaettinoglu, C. Villamizar, E. Gerich, D. Kessens, D. Meyer, T. Bates, D. Karrenberg, M. Terpstra. June 1999. RFC 2650 Using RPSL in Practice. D. Meyer, J. Schmitz, C. Orange, M. Prior, C. Alaettinoglu. August 1999. Internet Routing Registries contain the routing policies of various ISPs, see : http://www.ripe.net/ripencc/pub-services/whois.html http://www.arin.net/whois/index.html http://www.apnic.net/apnic-bin/whois.pl
  14. If link AS10-AS20 goes down, AS20 will not consider anymore the path learned from AS10. It will thus remove this path from its routing table and will instead select the path learned from AS40. This will force AS20 to send the following UPDATE to AS30 :
  15. Note that in RPSL, the set localpref construct does not exist. It is replaced with action preference=x. Unfortunately, in RPSL the routes with the lowest preference are preferred. RPSL uses thus the opposite of local-pref....
  16. This local-pref settings corresponds to the economical relationships between the various ASes. Since AS1 is paid to carry packets towards Cust1 and Cust2, it will select a route towards those networks whenever possible. Since AS1 does not need to pay to carry packets towards Peer1-4, AS1 will select a route towards those networks whenever possible. AS1 will only utilize the routes receive from its providers when there is no other choice. It is shown in the following papers that this way of utilizing the local-pref attribute leads to stable BGP routes : Lixin Gao, Timothy G. Griffin, and Jennifer Rexford, "Inherently safe backup routing with BGP," Proc. IEEE INFOCOM, April 2001 Lixin Gao and Jennifer Rexford, "Stable Internet routing without global coordination," IEEE/ACM Transactions on Networking, December 2001, pp. 681-692 The RPSL policy of AS1 could be as follows : RPSL policy for AS1 aut-num: AS1 import: from Cust1 action set localpref=200; accept Cust1 from Cust2 action set localpref=200; accept Cust2 from Peer1 action set localpref=150; accept Peer1 from Peer2 action set localpref=160; accept Peer2 from Peer3 action set localpref=170; accept Peer3 from Peer4 action set localpref=180; accept Peer4 from Prov1 action set localpref=100; accept ANY from Prov2 action set localpref=100; accept ANY
  17. Due to the utilization of the local-pref attribute, some paths on the Internet are longer than their optimum length, see : Lixin Gao and Feng Wang , The Extent of AS Path Inflation by Routing Policies, GlobalInternet 2002
  18. See : L. Subramanian, S. Agarwal, J. Rexford, and RH Katz. Characterizing the Internet hierarchy from multiple vantage points. In IEEE INFOCOM, 2002