Chapter 16 Exterior Routing Protocols and Multicasting1
Chapter Chapter 1616Exterior Routing ProtocolsAnd Multicasting
Chapter 16 Exterior Routing Protocols and Multicasting2
Problems with Distance-Vector Problems with Distance-Vector and Link-State Routingand Link-State RoutingNeither distance-vector (RIP) nor link state
(OSPF) protocols effective for exterior routing
Distance vector and link state protocols assume all routers share common metric
Priorities and restrictions may differ between ASs
Flooding of link state information may become unmanageable
Chapter 16 Exterior Routing Protocols and Multicasting3
Path Vector RoutingPath Vector Routing
Dispense with routing metrics Provide information about:
– Which networks can be reached by given router
– Which ASs must be crossed to get there No distance or cost element Routing information includes all Ass visited to
reach destination– Allows policy routing
Chapter 16 Exterior Routing Protocols and Multicasting4
Boarder Gateway Protocol Boarder Gateway Protocol (BGP)(BGP)Allows routers (gateways) in different ASs
to exchange routing informationMessages sent over TCP
– See next slideThree functional procedures
– Neighbor acquisition– Neighbor reachability– Network reachability
Chapter 16 Exterior Routing Protocols and Multicasting5
BGP v4 MessagesBGP v4 Messages
Open– Start neighbor relationship with another router
Update– Transmit information about single route– List multiple routes to be withdrawn
Keepalive– Acknowledge open message– Periodically confirm neighbor relationship
Notification– Send when error condition detected
Chapter 16 Exterior Routing Protocols and Multicasting6
Neighbor AcquisitionNeighbor Acquisition
Neighbors attach to same subnetwork If in different ASs routers may wish to exchange
information Neighbor acquisitionis when two neighboring
routers agree to exchange routing information regularly– Needed because one router may not wish to take part
One router sends request, the other acknowledges– Knowledge of existence of other routers and need to
exchange information established at configuration time or by active intervention
Chapter 16 Exterior Routing Protocols and Multicasting7
Neighbor ReachabilityNeighbor Reachability
Periodic issue of keepalive messagesBetween all routers that are neighbors
Chapter 16 Exterior Routing Protocols and Multicasting8
Network ReachabilityNetwork Reachability
Each router keeps database of subnetworks it can reach and preferred route
When change made, router issues update message
All BGP routers build up and maintain routing information
Chapter 16 Exterior Routing Protocols and Multicasting9
BGP MessageBGP MessageFormatsFormatsMarker:
– Reserved for authentication
Length:– In octets
Type:– Open, Update,
Keepalive, Notification
Chapter 16 Exterior Routing Protocols and Multicasting10
Neighbor Acquisition DetailNeighbor Acquisition Detail
Router opens TCP connection with neighbor Sends open message
– Identifies sender’s AS and gives IP address– Includes Hold Time
As proposed by sender If recipient prepared to open neighbor
relationship– Calculate hold time
min [own hold time, received hold time] Max time between keepalive/update messages
– Reply with keepalive
Chapter 16 Exterior Routing Protocols and Multicasting11
Keepalive DetailKeepalive Detail
Header onlyOften enough to prevent hold time
expiring
Chapter 16 Exterior Routing Protocols and Multicasting12
Update DetailUpdate Detail
Information about single route through internet– Information to be added to database of any recipient
router– Network layer reachability information (NLRI)
List of network portions of IP addresses of subnets reached by this route
– Total path attributes length field– Path attributes field (next slide)
List of previously advertised routes being withdrawn
May contain both
Chapter 16 Exterior Routing Protocols and Multicasting13
Path Attributes FieldPath Attributes Field Origin
– Interior (e.g. OSPF) or exterior (BGP) protocol AS_Path
– ASs traversed for this route Next_Hop
– IP address of boarder router for next hop Multi_Exit_disc
– Information about routers internal to AS Local_Pref
– Tell other routers within AS degree of preference Atomic_Aggregate, Aggregator
– Uses subnet addresses in tree view of network to reduce information needed in NLRI
Chapter 16 Exterior Routing Protocols and Multicasting14
Withdrawal of Route(s)Withdrawal of Route(s)
Route identified by IP address of destination subnetwork(s)
Chapter 16 Exterior Routing Protocols and Multicasting15
Notification MessageNotification Message
Error notification Message header error
– Includes authentication and syntax errors Open message error
– Syntax errors and option not recognised– Proposed hold time unacceptable
Update message error– Syntax and validity errors
Hold time expired Finite state machine error Cease
– Close connection in absence of any other error
Chapter 16 Exterior Routing Protocols and Multicasting16
Diagram for BGP Routing Diagram for BGP Routing Information ExchangeInformation Exchange
Chapter 16 Exterior Routing Protocols and Multicasting17
BGP Routing Information BGP Routing Information ExchangeExchange R1 constructs routing table for AS1 using OSPF R1 issues update message to R5 (in AS2)
– AS_Path: identity of AS1– Next_Hop: IP address of R1– NLRI: List of all subnets in AS1
Suppose R5 has neighbor relationship with R9 in AS3 R9 forwards information from R1 to R9 in update message
– AS_Path: list of ids {AS2,AS1}– Next_Hop: IP address of R5– NLRI: All subnets in AS1
R9 decides if this is prefered route and forwards to neighbors
Chapter 16 Exterior Routing Protocols and Multicasting18
Inter-Domain Routing Protocol Inter-Domain Routing Protocol (IDRP)(IDRP) Exterior routing protocol for IPv6 ISO-OSI standard Path-vector routing Superset of BGP Operates over any internet protocol (not just TCP)
– Own handshaking for guaranteed delivery Variable length AS identifiers Handles multiple internet protocols and address schemes Aggregates path information using routing domain
confederations
Chapter 16 Exterior Routing Protocols and Multicasting19
Routing Domain ConfederationsRouting Domain Confederations
Set of connected ASAppear to outside world as single AS
– RecursiveEffective scaling
Chapter 16 Exterior Routing Protocols and Multicasting20
MulticastingMulticasting
Sending message to multicast address– Multicast address refers to a group of hosts
MultimediaTeleconferencingDatabasesDistributed computationReal-time workgroup
Chapter 16 Exterior Routing Protocols and Multicasting21
Multicasting within LANMulticasting within LAN
MAC level multicast addresses– IEEE 802 uses highest order bit 1
All stations that recognise the multicast address accept the packet
Works because of broadcast nature of LAN
Packet only sent onceMuch harder on internet
Chapter 16 Exterior Routing Protocols and Multicasting22
Example Example Configuration Configuration for Multicast for Multicast InternetInternet
Chapter 16 Exterior Routing Protocols and Multicasting23
BroadcastBroadcast
Assume location of recipients not know Send packet to every network Packet addressed to N3 traverses N1, link L3, N3 Router B translates IP multicast address to MAC
multicast address Repeat for each network Generates lots of packets
– In example, 13
Chapter 16 Exterior Routing Protocols and Multicasting24
Multiple UnicastMultiple Unicast
Location of each member of multicast group known to source
Table maps multicast address to list of networks
Only need to send to networks containing members of multicast group
Reduced traffic (a bit)– In example, 11
Chapter 16 Exterior Routing Protocols and Multicasting25
True MulticastTrue Multicast
Least cost path from source to each network containing member of group is determined– Gives spanning tree configuration
For networks containing group members only
Source transmits packet along spanning tree Packet replicated by routers at branch points of
spanning tree Reduced traffic
– In example, 8
Chapter 16 Exterior Routing Protocols and Multicasting26
Multicast Transmission Multicast Transmission ExampleExample
Chapter 16 Exterior Routing Protocols and Multicasting27
Requirements for Multicasting Requirements for Multicasting (1)(1) Router must forward two or more copies of incoming
packet Addressing
– IPv4 uses class D Start 1110 plus 28 bit group id
– IPv6 uses 8 bit prefix of all 1s, 4 bit flags field, 4 bit scope field 112 bit group id
Node must translate between multicast address and list of networks containing members of group
Router must translate between IP multicast address and subnet multicast address to deliver to destination network
Chapter 16 Exterior Routing Protocols and Multicasting28
Requirements for Multicasting Requirements for Multicasting (2)(2) Multicast addresses may be permanent or dynamic Individual hosts may join or leave dynamically
– Need mechanism to inform routers Routers exchange information on which subnets contain
members of groups Routers exchange information to calculate shortest path
to each network– Need routing protocol and algorithm
Routes determined based on source and destination addresses – Avoids unnecessary duplication of packets
Chapter 16 Exterior Routing Protocols and Multicasting29
Internet Group Management Internet Group Management Protocol (IGMP)Protocol (IGMP)
Type:Membership query (general or group specific), membership report, leave group, max. response time
Checksum: uses IPv4 algorithmGroup address: zero for request, valid IP
multicast for report or leave
Chapter 16 Exterior Routing Protocols and Multicasting30
IGMP OperationIGMP Operation
Host uses IGMP to make itself know as member of group to other hosts and routers
To join, send IGMP membership report message– Send to multicast destination of group being joined
Routers periodically issue IGMP query– To all-hosts multicast address– Hosts respond with report message for each group to which it
belongs Only one host in group needs to respond to keep group alive Host keeps timer and reponds if no other reply heard in time
Host sends leave group message– Group specific query from router determins if any members remain
Chapter 16 Exterior Routing Protocols and Multicasting31
Group Membership with IPv6Group Membership with IPv6
Function incorporated in ICMPv6Includes all ICMPv4 plus IGMP
– Includes group membership query and report– Addition of new group membership
termination message
Chapter 16 Exterior Routing Protocols and Multicasting32
Multicast Extension to OSPF Multicast Extension to OSPF (MOSPF)(MOSPF) Enables routing of IP multicast datagrams within
single AS Each router uses MOSPF to maintain local group
membership information Each router periodically floods this to all routers
in area Routers build shortest path spanning tree from a
source network to all networks containing members of group (Dijkstra)– Takes time, so on demand only
Chapter 16 Exterior Routing Protocols and Multicasting33
Forwarding Multicast PacketsForwarding Multicast Packets
If multicast address not recognised, discard
If router attaches to a network containing a member of group, transmit copy to that network
Consult spanning tree for this source-destination pair and forward to other routers if required
Chapter 16 Exterior Routing Protocols and Multicasting34
Equal Cost Multipath Equal Cost Multipath AmbiguitiesAmbiguitiesDijkstra’ algorithm will include one of
multiple equal cost paths– Which depends on order of processing nodes
For multicast, all routers must have same spanning tree for given source node
MOSPF has tiebreaker rule
Chapter 16 Exterior Routing Protocols and Multicasting35
Interarea MulticastingInterarea Multicasting
Multicast groups amy contain members from more than one area
Routers only know about multicast groups with members in its area
Subset of area’s border routers forward group membership information and multicast datagrams between areas– Interarea multicast forwarders
Chapter 16 Exterior Routing Protocols and Multicasting36
Inter-AS MulticastingInter-AS Multicasting
Certain boundary routers act as inter-AS multicast forwarders– Run and inter-AS multicast routing protocol as well
as MOSPF and OSPF– MOSPF makes sure they receive all multicast
datagrams from within AS– Each such router forwards if required– Use reverse path routing to determine source
Assume datagram from X enters AS at point advertising shortest route back to X
Use this to determine path of datagram through MOSPF AS
Chapter 16 Exterior Routing Protocols and Multicasting37
MOSPF Routing IllustrationMOSPF Routing Illustration
Chapter 16 Exterior Routing Protocols and Multicasting38
Multicast Routing Protocol Multicast Routing Protocol CharacteristicsCharacteristicsExtension to existing protocol
– MOSPF v OSPFDesigned to be efficient for high
concentration of group membersAppropriate with single ASNot for large internet
Chapter 16 Exterior Routing Protocols and Multicasting39
Protocol Independent Multicast Protocol Independent Multicast (PIM)(PIM)Independent of unicast routing protocolsExtract required routing information from
any unicast routing protocolWork across multiple AS with different
unicast routing protocols
Chapter 16 Exterior Routing Protocols and Multicasting40
PIM StrategyPIM Strategy
Flooding is inefficient over large sparse internet Little opportunity for shared spanning trees Focus on providing multiple shortest path unicast
routes Two operation modes
– Dense mode For intra-AS Alternative to MOSPF
– Sparse mode Inter-AS multicast routing
Chapter 16 Exterior Routing Protocols and Multicasting41
Spares Mode PIMSpares Mode PIM
A spare group:– Number of networks/domains with group
members present significantly small than number of networks/domains in internet
– Internet spanned by group not sufficiently resource rich to ignore overhead of current multicast schemes
Chapter 16 Exterior Routing Protocols and Multicasting42
Group Destination Router Group Destination Router Group Source RouterGroup Source RouterGroup Destination Router
– Has local group members– Router becomes destination router for given
group when at least one host joins groupUsing IGMP or similar
Group source router– Attaches to network with at least one host
transmitting on multicast address via that router
Chapter 16 Exterior Routing Protocols and Multicasting43
PIM ApproachPIM Approach For a group, one router designated rendezvous point (RP) Group destination router sends join message towards RP
requesting its members be added to group– Use unicast shortest path route to send– Reverse path becomes part of distribution tree for this RP to listeners
in this group Node sending to group sends towards RP using shortest path
unicast route Destination router may replace group-shared tree with
shortest path tree to any source– By sending a join back to source router along unicast shortest path
Selection of RP dynamic– Not critical
Chapter 16 Exterior Routing Protocols and Multicasting44
Example of PIM OperationExample of PIM Operation