Chapter 22 Network Layer:Delivery, Forwarding, and Routing Part 4 BGP and Multicasting
Path Vector Routing • Distance vector and link state routing are intradomainrouting protocols used inside an autonomous system • Distance vector and link state routing protocols are not suitable for interdomain routing because of scalability • There is a need for a third routing protocol which we call path vector routing. • Path vector routing proved to be useful for interdomain routing.
Path Vector Routing • is similar to distance vector routing • Assuming that there is one node in each AS that acts as on behalf of the entire AS : Speaker Node • Speaker node creates a routing table and advertises it speaker nodes in the neighboring ASs • advertising the path, not the metric of the nodes
Path Vector Routing • The difference between the distance vector routing and path vector routing can be compared to the difference between a national map. A national map can tell us the road to each city and the distance to be travelled if we choose a particular route; an international map can tell us which cities exist in each country and which countries should be passed before reaching that city.
Path Vector Routing • At the beginning, each speaker node can know only the reachable of nodes inside its • autonomous system. • Node A1 is the speaker node for AS1, B1 for AS2, C1 for AS3, and Dl for AS4. • Node A1 creates an initial table that shows A1 to A5 are located in AS1 and can be • reached through it. Node B1 advertises that B1 to B4 are located in AS2 and can be • reached through Bl. And so on. • a speaker in an autonomous system shares its table with immediate neighbors. • When a speaker node receives a two-column table from a neighbor, it updates its own table by adding the nodes that are not in its routing table.
Path Vector Routing Loop prevention • The instability of distance vector routing and creation of loops can be avoided in path vector routing • When a router receives a message, it checks to see if its autonomous system is in the path list to the destination • If it is, looping is involved and the message is ignored Policy routing • Can be easily implemented through path vector routing • If one of the autonomous systems listed in the path is against its policy, it can ignore that path and that destination. It does not update its routing table with this path, and it does not send this message to its neighbors.
Path Vector Routing Optimum path • The optimum path is the path that fits the organization. • we chose the path that had the smaller number of autonomous systems. • For example, a path from AS4 to ASI can be AS4-AS3-AS2-AS1, or it can be AS4-AS3-ASI
Border Gateway Protocol (BGP) • Border Gateway Protocol is an interdomain routing protocol using path vector routing • Path Vector Routing • Each entry in the routing table contains the destination network, the next router, and the path to reach the destination • The path is usually defined as an ordered list of autonomous systems that a packet should travel through to reach the destination
Type of Autonomous System • Stub AS • has only one connection to another AS • The hosts in the AS can send or receive data traffic from other ASs. • A stub AS is either a source or a sink. • Multihomed AS • has more than one connection to other Ass • It can receive and send data traffic to more than one AS. • no transient traffic. • Transit AS • is a multihomed AS that also allows transient traffic. • ex) national and international ISPs
BGP (cont’d) • Path attributes • Well-known attributes: every BGP router must recognize • well-known mandatory : ORIGIN (RIP, OSPF, and so on), AS-PATH, NEXT_HOP • well-known discretionary : must be recognized by each router; but is not required to be included in every update message • Optional attributes • Optional transitive : must be passed to the next router by the router that has not implemented this attribute • Optional nontransitive : must be discarded if the receiving router has not implemented this attribute
BGP (cont’d) • BGP Session • The exchange of routing information between two routers using BGP takes place in a session. • Use of services of TCP • Referred to as semi-permanent connections • External and Internal BGP
MULTICAST ROUTING PROTOCOLS • In Unicast, the router forwards the received packet through only one of its interfaces. • In Multicasting, the router forwards the received packet through only one of its interfaces • In Broadcasting, The router may forward the received packet through several of its interfaces.
Multicast Applications • Access to Distributed Databases • Information Dissemination • Dissemination of News • Teleconferencing • Distance Learning
Multicasting versus multiple unicasting In Multicasting: • The packet is duplicated by the routers. • The destination address is between 18.104.22.168 - 22.214.171.124 (class D address) which is the Multicast groups IP addresses. In Multiple unicasting • The source sends multiple copies of the same packet, each with a different unicast destination address. • Example: sending an e-mail to a group Emulation of multicasting through multiple unicasting is not efﬁcient (use more BW) &may create long delays, particularly with a large group.
IP Multicasting only supports UDP as higher layer • There is no multicast TCP ! IP Multicast addresses It is class D address- from 126.96.36.199 to 188.8.131.52. Reserved IP Multicast address is 184.108.40.206 to 220.127.116.11. Examples of special and reserved Class D addresses, e.g,
Multicast Groups • The set of receivers for a multicast transmission is called a multicast group (identified by multicast address) • A user that wants to receive multicast transmissions joins the corresponding multicast group, and becomes a member of that group • Every host (more precisely: interface) can join and leave a multicast group dynamically • no access control • Every IP datagram send to a multicast group is transmitted to all members of the group • no security, no “floor control” • Sender does not need to be a member of the group • After a user joins, the network builds the necessary routing paths so that the user receives the data sent to the multicast group
Multicast Routing The Goal is to connect all multicast group members by the tree. Optimal Routing: Shortest Path Trees The root of the tree is the source, and the leaves are the potential destinations. The path from the root to each destination is the shortest path. Tow approaches to find it: • Unicast Routing • Multicast Routing • Source-Based Tree • Group-Shared Tree.
Shortest Path Trees: Unicast • The router has a shortest path tree to reach all destination. (The whole routing table is a shortest path tree).
Shortest Path Trees: Multicast Difficulties in handling multicast traffic is due to: • A multicast packet may have destinations in more than one network. • If we have n groups, we may need n shortest path trees. Can be solved using: • Source-based trees • Group-shared trees.
Source-Based Tree • The shortest path tree for a group deﬁnesthe next hop for each network that has loyal member(s) for that group. • We have 5 groups in the domain: G1, G2, G3, G4, and G5. At the moment G1 has loyal members in 4 networks, G2 in 3, G3 in 2, G4 in 2, and G5 in 2. If R1 receives a packet destined to G1 It sends a copy to R2 & to R4 (all members in G1
Group-Shared Tree In the source-based tree approach, each router needs to have one shortest path tree for each group. • The core has m shortest path trees and the rest of the have none. • If a router receives a multicast packet, it encapsulates the packet in a unicast packet and sends it to the core router. • The core router removes the multicast packet from its capsule, and consults its routing table to route the packet. (sends it as Multicast)