Top Banner
The University of Adelaide, School of Computer Science 4 March 2014 Chapter 2 Instructions: Language of the Computer 1 1 Chapter 4 Advanced Computer Networks Module 6 BGP, IPV6, Multicast Routing Protocols Department of Computer Engineering, DTU Divyashikha Sethia ([email protected]) Problems How do we build a routing system that can handle hundreds of thousands of networks and billions of end nodes? How to handle address space exhaustion of IPV4? How to enhance the functionalities of Internet? Chapter Goal Understanding the scalability of routing in the Internet Discussing IPv6 Understanding the concept of multicasting Discussing Mobile IP The Global Internet The tree structure of the Internet in 1990 “end user” sites (e.g., Stanford University) that connect to “service provider” networks (e.g., BARRNET regional networks were, in turn, connected by a nationwide backbone Provider administratively independent entity (autonomous system (AS) )
26

BGP, IPV6, Multicast Routing Protocols

May 26, 2017

Download

Documents

hirenmadan
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: BGP, IPV6, Multicast Routing Protocols

The University of Adelaide, School of Computer Science 4 March 2014

Chapter 2 — Instructions: Language of the Computer 1

1

Ch

ap

ter 4

Advanced Computer

Networks

Module 6

BGP, IPV6, Multicast Routing

Protocols

Department of Computer

Engineering, DTU

Divyashikha Sethia

([email protected])

Problems

• How do we build a routing system that can handle

hundreds of thousands of networks and billions of

end nodes?

• How to handle address space exhaustion of IPV4?

• How to enhance the functionalities of Internet?

Chapter Goal

• Understanding the scalability of routing in the Internet

• Discussing IPv6

• Understanding the concept of multicasting

• Discussing Mobile IP

The Global Internet

The tree structure of the Internet in 1990

•“end user” sites (e.g., Stanford University) that connect to “service

provider” networks (e.g., BARRNET

•regional networks were, in turn, connected by a nationwide backbone

• Provider – administratively independent entity (autonomous system

(AS) )

Page 2: BGP, IPV6, Multicast Routing Protocols

The University of Adelaide, School of Computer Science 4 March 2014

Chapter 2 — Instructions: Language of the Computer 2

Global Internet ..

• Scalability issues:

- scalability of routing: We need to find ways to minimize the

number of network numbers that get carried around in routing

protocols and stored in the routing tables of routers.

- Address utilization: ensure that IP address space does not get

consumed too quickly

6

Ch

ap

ter 4

Classful Addressing

•Three possible classes for networks

•Class C network limited to 254 hosts (cannot use all-1s or all-0s)

•Personal computers result in networks with many hosts

•Class B network allows many hosts, but insufficient class B prefixes

•How can we minimize the number of assigned network prefixes especially class

B) without abandoning the 32-bit addressing scheme?

7

Ch

ap

ter 4

Internet Scaling Problem

•IPv4 defines a 32-bit address.

2 to the power 32 (4,294,967,296) addresses available.

The address shortage problem is aggravated by the fact that portions of the IP

address space have not been efficiently allocated

•Design problem:

- Class C networks are too small (254 hosts).

- Next option is class B, which is too big (65,534 hosts)

8

Ch

ap

ter 4

Internet Scaling Problem Alternatives

•IPv6

• Subnetting

• CDIR

• NAT

Page 3: BGP, IPV6, Multicast Routing Protocols

The University of Adelaide, School of Computer Science 4 March 2014

Chapter 2 — Instructions: Language of the Computer 3

9

Ch

ap

ter 4

Subnetting

• Initial Problems:

- Internet routing tables started to grow

- Local administrators had to request another network number from the Internet

before a new network could be installed at their site

10

Ch

ap

ter 4

Subnetting

•Allows a single network address to span multiple physical networks

•Not part of original TCP/IP address scheme

•Allows an organization to use a single network prefix for multiple physical

networks

•Subdivides the host suffix into a pair of fields for physical network and host

•Interpreted only by routers and hosts at the site; treated like normal address

elsewhere

11

Ch

ap

ter 4

Example of Subnet Addressing

•Both physical networks share prefix 128.10

•Router R uses third octet of address to choose physical net

•Only R is aware of the different physical networks

12

Ch

ap

ter 4

Interpretation of IP Address

•Classful interpretation is two-level hierarchy

– Physical network identified by prefix

– Host on the net identified by suffix

•Subnetted interpretation is three-level hierarchy

– Site identified by network prefix

– Physical net at site identified by part of suffix

– Host on the net identified by remainder of suffix

Page 4: BGP, IPV6, Multicast Routing Protocols

The University of Adelaide, School of Computer Science 4 March 2014

Chapter 2 — Instructions: Language of the Computer 4

13

Ch

ap

ter 4

Subnet Address

Example Class B address , 16-bit host portion is divided

into two 8-bit

fields

14

Ch

ap

ter 4

Subnet Address

15

Ch

ap

ter 4

Address Mask

•Each physical network is assigned 32-bit address mask (also called subnet mask)

•One bits in mask cover network prefix plus zero or more bits of suffix portion

•Logical and between mask and destination IP address extracts the prefix and

subnet portions

•32-bit subnet mask for a class B address

11111111 111111111 11111111 00000000

|__________________|_________|__________|

network part subnet host part

255.255.255.0

16

Ch

ap

ter 4

Variety of Route

•Forwarding must accommodate

– Network-specific routes

– Subnet-specific routes

– Host-specific routes

– Default route

– Limited broadcast

– Directed broadcast to network

– Directed broadcast to specific subnet

• Single algorithm with address masks can accommodate all the above

Page 5: BGP, IPV6, Multicast Routing Protocols

The University of Adelaide, School of Computer Science 4 March 2014

Chapter 2 — Instructions: Language of the Computer 5

17

Ch

ap

ter 4

Use of Address Masks

•Each entry in routing table also has address mask

•All-1s mask used for host-specific routes

•Network mask used for network-specific routes

•Subnet mask used for subnet-specific routes

•All-0s mask used for default route

18

Ch

ap

ter 4

Unified Forwarding Algorithm

19

Ch

ap

ter 4

Routing without subnet

20

Ch

ap

ter 4

Subnet masking with the help of router

Page 6: BGP, IPV6, Multicast Routing Protocols

The University of Adelaide, School of Computer Science 4 March 2014

Chapter 2 — Instructions: Language of the Computer 6

21

Ch

ap

ter 4

Advantages of Subnetting

•Divides the bigger network into smaller individual networks and it becomes easy

to handle the smaller networks than handle one huge network

•The network administrators can assign IP numbers to specific departments in an

organization so that when they can easily identify the departments on the network

using the same numbers.

•Security

•Size of global Internet routing table does not grow because site administrator does

not need to obtain additional adress space and routing advertisments for all subnets

are combined into a single routing table entry.

22

Ch

ap

ter 4

Classless Addressing: Address Blocks

To overcome address depletion.

•No classes, but the address are still granted in blocks.

• The size of the block( the number of addresses) varies based on

the nature and size of the entity.

• Household: 2 addresses

• Large organization: thousands of addresses.

• ISP: thousands or hundreds of thousands based

on the number of customers it may serve.

23

Ch

ap

ter 4

Classless Addressing: Address Blocks

Restriction

The Internet Authorities impose three

restrictions:

1. The address in a block must be contiguous, one after another.

2. The number of addresses in a block must be a power of 2 (

1,2,4,8,…)

3. The first address must be evenly divisible by the number of

addresses.

24

Ch

ap

ter 4

Page 7: BGP, IPV6, Multicast Routing Protocols

The University of Adelaide, School of Computer Science 4 March 2014

Chapter 2 — Instructions: Language of the Computer 7

25

Ch

ap

ter 4

Classless Addressing: Mask

Mask: /n

•32- bit

• can take any value from 0 to 32, for ex /24

•The n leftmost bits are 1s

• 32-n rightmost bits are 0s

In IPv4 addressing, a block of addresses can be defined as: x.y.z.t

/n

in which x.y.z.t defines one of the addresses

and the /n defines the mask.

Example: 172.31.16.42/26

26

Ch

ap

ter 4

Classless Addressing: Mask

The address and the /n notation define the whole block:

First address

Last address

Number of address

The first address in the block ( network address) can be found by

setting the rightmost 32 − n bits to 0s.

27

Ch

ap

ter 4

Example

28

Ch

ap

ter 4

The first address in a block is normally not assigned to any device; it is

used as the network address that

represents the organization to the rest of the world.

The last address in the block can be found by setting the rightmost 32 − n

bits to 1s.

Page 8: BGP, IPV6, Multicast Routing Protocols

The University of Adelaide, School of Computer Science 4 March 2014

Chapter 2 — Instructions: Language of the Computer 8

29

Ch

ap

ter 4

A block of addresses is granted to a small organization.

We know that one of the addresses is 205.16.37.39/28.

Find the last address for the block

Solution

The address is

205.16.37. 0010 0111

If we set 32 − 28 = 4 rightmost bits

to 1, we get

205.16.37. 0010 1111

or

205.16.37.47

30

Ch

ap

ter 4

Classless Inter-Domain Routing (CIDR)

- http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing#CIDR_blocks

Interdomain Routing (BGP)

• Internet is organized as autonomous systems (AS) each of

which is under the control of a single administrative

entity

• Autonomous System (AS)

– corresponds to an administrative domain

– examples: University, company, backbone network

• A corporation’s internal network might be a single AS, as

may the network of a single Internet service provider

Interdomain Routing

A network with two autonomous system

Page 9: BGP, IPV6, Multicast Routing Protocols

The University of Adelaide, School of Computer Science 4 March 2014

Chapter 2 — Instructions: Language of the Computer 9

Route Propagation

• Idea: Provide an additional way to hierarchically aggregate routing information in a large internet. – Improves scalability

• Divide the routing problem in two parts: – Routing within a single autonomous system

– Routing between autonomous systems

• Another name for autonomous systems in the Internet is routing domains – Two-level route propagation hierarchy

• Inter-domain routing protocol (Internet-wide standard)

• Intra-domain routing protocol (each AS selects its own)

Interdomain Routing

• Each AS can run whatever intradomain routing protocols it

chooses - static routes or multiple protocols if desired.

• Interdomain routing: different ASs share reachability

information descriptions of the set of IP addresses that can be

reached via a given AS with each other.

EGP and BGP

• Inter-domain Routing Protocols

– Exterior Gateway Protocol (EGP)

• Forced a tree-like topology onto the Internet

• Did not allow for the topology to become general

–Tree like structure: there is a single backbone and autonomous systems are connected only as parents and children and not as peers

The tree structure of the Internet in 1990

EGP and BGP • Inter-domain Routing Protocols

– Border Gateway Protocol (BGP)

• Assumes that the Internet is an arbitrarily interconnected set of ASs.

• Today’s Internet consists of an interconnection of multiple backbone

networks (they are usually called service provider networks, and they

are operated by private companies rather than the government)

• Sites are connected to each other in arbitrary ways

Page 10: BGP, IPV6, Multicast Routing Protocols

The University of Adelaide, School of Computer Science 4 March 2014

Chapter 2 — Instructions: Language of the Computer 10

The Global Internet

A simple multi-provider Internet

- today’s Internet: interconnection of multiple backbone networks ( called

service provider networks, operated by private companies)

- many providers arrange to interconnect with each other at a single “peering

point.”

BGP

• Some large corporations connect directly to one or

more of the backbone, while others connect to

smaller, non-backbone service providers.

• Many service providers exist mainly to provide

service to “consumers” (individuals with PCs in their

homes), and these providers must connect to the

backbone providers

• Often many providers arrange to interconnect with

each other at a single “peering point”

BGP-4: Border Gateway Protocol

• Assumes the Internet is an arbitrarily interconnected set of AS's.

• Local traffic: traffic that originates at/ terminates on nodes within AS • Transit traffic: traffic that passes through an AS.

• Classification of AS:

– Stub AS: an AS that has only a single connection to one other AS; carries only local traffic (small corporation ).

– Multihomed AS: an AS that has connections to more than one other AS, but refuses to carry transit traffic (large corporation )

– Transit AS: an AS that has connections to more than one other AS, and is designed to carry both transit and local traffic (backbone providers).

BGP

• The goal of Inter-domain routing is to find any path to the intended

destination that is loop free

– We are concerned with reachability than optimality

– Finding path anywhere close to optimal is considered to be a great

achievement

• Intradomain focuses on finding the best, non looping, policy-

compliant path—a much more complex optimization problem

Page 11: BGP, IPV6, Multicast Routing Protocols

The University of Adelaide, School of Computer Science 4 March 2014

Chapter 2 — Instructions: Language of the Computer 11

BGP

• Scalability: An Internet backbone router must be able to forward any

packet destined anywhere in the Internet

– Having a routing table that will provide a match for any valid IP

address

• Autonomous nature of the domains

– It is impossible to calculate meaningful path costs for a path that

crosses multiple

– Each domain may run its own interior routing protocols

– A cost of 1000 across one provider might imply a great path but it

might mean an unacceptable bad one from another provider

• Issues of trust

– Provider A might be unwilling to believe certain advertisements

from provider B

BGP

Each AS has:

• One BGP speaker that advertises:

– local networks

– other reachable networks (transit AS only)

– gives path information

• In addition to the BGP speakers, the AS has one or more border

“gateways” which need not be the same as the speakers

• The border gateways are the routers through which packets enter and

leave the AS

BGP

• BGP does not belong to either of the two main classes of routing

protocols (distance vectors and link-state protocols)

• BGP advertises complete paths as an enumerated lists of ASs to reach

a particular network - enables policy decisions, avoid loops

BGP

• Border gateway:R2, R4

Page 12: BGP, IPV6, Multicast Routing Protocols

The University of Adelaide, School of Computer Science 4 March 2014

Chapter 2 — Instructions: Language of the Computer 12

BGP Example

Example of a network running BGP

•Speaker for AS 2 advertises reachability to P and Q

Network 128.96, 192.4.153, 192.4.32, and 192.4.3, reachable from AS 2.

•Speaker for backbone network then advertises

Networks 128.96, 192.4.153, 192.4.32, and 192.4.3 reachable along path

<AS 1, AS 2>.

•Speaker can also cancel previously advertised paths

BGP Example

•Avoiding Loops

- AS2 connected to 10.0.1

-AS1 learns reachability of 10.01 via AS2

-- AS1 Advertise to AS3

-- AS3 advertise to AS2

-- AS2 advertises to AS3

-AS2-AS1-AS3-AS2

• AS1 AS2 AS3

|

10.0.1

BGP Issues

• AS numbers carried in BGP need to be unique

• For example, AS 2 can only recognize itself in the AS path in the

example if no other AS identifies itself in the same way

• AS numbers are 16-bit numbers assigned by a central authority

AS advertising

• Only advertise routes that it considers good enough for itself

• BGP speaker has a choice of several different routes to a destination, it

will choose the best one according to its own local policies, and then

that will be the route it advertises under no obligation to advertise any

route to a destination, even if it has one

• Withdrawn route

- BGP speakers need to be able to cancel previously advertised paths if

a critical link or node on a path goes down

Page 13: BGP, IPV6, Multicast Routing Protocols

The University of Adelaide, School of Computer Science 4 March 2014

Chapter 2 — Instructions: Language of the Computer 13

BGP-4 update packet

• Designed for classless addresses

• Updates contain both prefix itself and its length in bits

• CIDR prefix that begins 192.4.16 and is 20 bits long: 192.4.16/20

BGP-4

• On reliable TCP

• as long as nothing has changed, a BGP speaker can simply send an

occasional “keep alive” message that says, in effect “I’m still here and

nothing has changed.”

• If that router were to crash, it would stop sending the keep alives, and

the other routers that had learned routes from it would know that those

routes were no longer valid.

• BGP speakers exchange loop-free routes to all reachable networks, but

how they choose the “best” routes is largely left to the policies of the

AS

Integrating Interdomain and Intradomain Routing

• For stub AS that only connects to other ASs at a single point, the border router is the choice for all routes that are outside the AS (default routes to external world)

• How border routers inject specific routes they have learned from outside the AS

Provider AS ----> Customer AS (192.4.54/24)

• (inject a route to that prefix into the routing protocol running inside the provider AS)

• Problem: backbone networks, learns too much information from BGP - costly to inject it into the intradomain protocol

• inject 10,000 prefixes that it learned about from another AS, it will have to send very big link-state packets to the other routers in that AS, and their shortest-path calculations are going to become very complex

Integrating Interdomain and Intradomain Routing

All routers run iBGP and an intradomain routing protocol. Border

routers (A, D, E) also run eBGP to other ASs •interior BGP (iBGP) to effectively redistribute the information

that is learned by the BGP speakers at the edges of the AS to all

the other routers in the AS

- enables router in AS to learn best border router to use for

sending packet to any address

- A,D,E – eBGP A,D,E,B,C - iBGP

Page 14: BGP, IPV6, Multicast Routing Protocols

The University of Adelaide, School of Computer Science 4 March 2014

Chapter 2 — Instructions: Language of the Computer 14

Integrating Interdomain and Intradomain Routing

BGP routing table, IGP routing table, and combined table at router B

if a prefix like 18.0/16 is reachable via border router E, and the best interior path to

E is via C, then it follows that any packet destined for 18.0/16 should be forwarded

toward C. In this way, any router in the AS can build up a complete routing table

for any prefix that is reachable via some border router of the AS.

Next Generation IP

(IPv6)

IPV6

• Subnetting and CIDR help:

- contain rate at which Internet address space is being

consumed (the address depletion problem)

- control growth of routing table information needed in

Internet’s routers (the routing information problem).

• 100% efficiency not feasible

• Bigger address space than that provided by 32 bits will

eventually be needed

Major Features

• 128-bit addresses

• Multicast

• Real-time service

• Authentication and security

• Auto-configuration

• End-to-end fragmentation

• Enhanced routing functionality, including support for mobile

hosts

Page 15: BGP, IPV6, Multicast Routing Protocols

The University of Adelaide, School of Computer Science 4 March 2014

Chapter 2 — Instructions: Language of the Computer 15

IPv6 Addresses

• 128 bit addresses

• Classless addressing/routing (similar to CIDR)

• Notation: x:x:x:x:x:x:x:x (x = 16-bit hex number)

– contiguous 0s are compressed: 47CD::A456:0124 (omitting zeros::)

– IPv6 compatible IPv4 address: ::128.42.1.87

• Address assignment

– provider-based

– geographic

IPV6 address prefix assignment

IPv6 Header • 40-byte “base” header

• Version : 6

• Traffic class and flow label: QoS

• PayloadLen (length of packet excluding header)

• NextHeader replaces IP options and the Protocol field of IPv4.

• If options are required, then they are carried in one or more special headers following the IP header, and this is indicated by the value of the NextHeader field.

• If there are no special headers, the NextHeader field is the demux key identifying the higher-level protocol running over IP (e.g., TCP or UDP)

• Extension headers (fixed order, mostly fixed length)

– fragmentation

– source routing

– authentication and

security

– other options

IPv6 Header

• HopLimit field is simply the

TTL of IPv4, renamed to reflect

the way it is actually used

• Bulk of the header is taken up

with the source and destination

addresses, each of which is 16

bytes (128 bits) long

• Option processing is much

more efficient in IPv6, which is

an important factor in router

performance.

Page 16: BGP, IPV6, Multicast Routing Protocols

The University of Adelaide, School of Computer Science 4 March 2014

Chapter 2 — Instructions: Language of the Computer 16

IPv6 Header

• New formatting of options as extension headers means that they can

be of arbitrary length, whereas in IPv4 they were limited to 44 bytes

at most

• Each option has its own type of extension header type of each

extension header is identified by the value of the NextHeader field in

the header that precedes it, and each extension header contains a

NextHeader field to identify the header following it.

• Last extension header will be followed by a transport-layer header

(e.g., TCP) and in this case the value of the NextHeader field is the

same as the value of the Protocol field would be in an IPv4 header

IPV6 QoS

TrafficClass (4bit priority)

Two categories:

1. Congestion controlled

2. Non congestion controlled

Congestion controlled:

• No specific traffic: 0 no priority assigned

• Background data: data delivered in background (eg: news)

• Unattended data traffic: user is not waiting for data to be received (eg e-mail)

• Attended bulk data: User is waiting for data to be received (eg ftp, http)

• Interactive traffic: user interaction (eg TELNET)

• Control Traffic ( highest priority eg: OSP, RIP, SNMP)

IPV6 QoS

Non congestion control – traffic that expects minimal delay

(discarding no desirable, retransmission is expensive)

• Priority 8-15

• Data with less redundancy (low fidelity audio/video): higher

priority 15

• Data with more redundancy ( high fidelity audio/video): lower

priority 8

IPV6 QoS

• Flow Label: Special handling

• Flow of packets: sequence of packets sent from a specific source to a particular destination that needs special handling by routers

• It is defined by combination of source address and the value of the flow label

• Router supporting flow labels has a flow label table

• Flow label used to speed up of the packet processing

• Real time data requiring high resource usage eg: bandwidth, buffers

• Process can make reservations for resources

Page 17: BGP, IPV6, Multicast Routing Protocols

The University of Adelaide, School of Computer Science 4 March 2014

Chapter 2 — Instructions: Language of the Computer 17

IPV6 QoS

• Rules for flow labels:

1.Flow label is assigned to a packet by the source host

(random between 1 and 224); should not reuse flow label for

new flow till existing flow is active

2.If not flow label is support field is set to 0, router also

ignores it if it does not support flow label

3.All packet belonging to same flow have the same source ,

destination , priority and options

Auto configuration

• Connection to the Internet requires fair amount of system

administration expertise

• Information, such as a valid IP address, a subnet mask for the link to

which it attaches, and the address of a name server

• Auto configuration: “plug-and-play”

• IPV4: Depends on server that can hand out addresses to DHCP clients

• IPv6 helps provide a useful, new form of auto configuration called

stateless auto configuration, which does not require a server

Auto configuration

• IPV6 hierarchical unicast address

• Auto configuration problem into two parts:

1.Obtain an interface ID that is unique on the link to which the host is attached;

2. Obtain the correct address prefix for this subnet.

• Address prefix assignment for IPV6

• Use prefix 1111 1110 10 with 0’s along with

unique 48 bit MAC address

• Some devices—for example, printers or hosts on a small routerless network that do not connect to any other networks—this address may be perfectly adequate.

Auto configuration

• Globally valid address depend on a router on the same link to

periodically advertise the appropriate prefix for the link.

• Requires router be configured with correct address prefix, and

that this prefix be chosen in such a way that there is enough

space at the end (e.g., 48 bits) to attach an appropriate link-

level address

Page 18: BGP, IPV6, Multicast Routing Protocols

The University of Adelaide, School of Computer Science 4 March 2014

Chapter 2 — Instructions: Language of the Computer 18

Extension Headers

Extension Headers

• Hop by Hop option: used when source needs to pass

information to all router visited by data gram Pad1, PadN:

alignment options, jumbo payload: define payload longer than

65,535 bytes

• Source routing: Strict source routing and loose source route

options similar in IPV4

• Fragmentation: IPV6 only original source can fragment

unlike IPV4. source must use path MTU discovery technique

to find the smallest MTU supported by any network on the

path. (fragments using this knowledge)

Extension Headers

• Authentication: Validates the message sender and ensures the

integrity of data

• Encrypted Security Payload (ESP) : provides confidentiality

and guards against eavesdropping

• Destination Option: source needs to pass information to the

destination only (intermediate routers are not permitted to access

this information)

Transition from IPV4 to IPV6

Page 19: BGP, IPV6, Multicast Routing Protocols

The University of Adelaide, School of Computer Science 4 March 2014

Chapter 2 — Instructions: Language of the Computer 19

Dual Stack

Tunneling

Header Translation

Internet Multicast

Page 20: BGP, IPV6, Multicast Routing Protocols

The University of Adelaide, School of Computer Science 4 March 2014

Chapter 2 — Instructions: Language of the Computer 20

Overview

• IPv4

– class D addresses

– uses tunneling

• Integral part of IPv6

– problem is making it scale

Overview

• One-to-many

– Radio station broadcast

– Transmitting news, stock-price

– Software updates to multiple hosts

• Many-to-many

– Multimedia teleconferencing

– Online multi-player games

– Distributed simulations

Overview

• Without support for multicast

– A source needs to send a separate packet with the identical data to each member of the group

• This redundancy consumes more bandwidth

• Redundant traffic is not evenly distributed, concentrated near the sending host

– Source needs to keep track of the IP address of each member in the group

• Group may be dynamic (as listeners tune into an Internet radio station)

• To support many-to-many and one-to-many IP provides an IP-level multicast

Overview

• Basic IP multicast model is many-to-many based on multicast

groups

– Each group has its own IP multicast address

– Hosts that are members of a group receive copies of any

packets sent to that group’s multicast address

– A host can be in multiple groups

– A host can join and leave groups

Page 21: BGP, IPV6, Multicast Routing Protocols

The University of Adelaide, School of Computer Science 4 March 2014

Chapter 2 — Instructions: Language of the Computer 21

Overview

• Using IP multicast to send the identical packet to each member

of the group

– A host sends a single copy of the packet addressed to the

group’s multicast address

– The sending host does not need to know the individual

unicast IP address of each member

– Sending host does not send multiple copies of the packet

Overview

• IP’s original many-to-many multicast has been supplemented

with support for a form of one-to-many multicast

• One-to-many multicast

– Source specific multicast (SSM)

– A receiving host specifies both a multicast group and a

specific sending host

• Many-to-many model

– Any source multicast (ASM)

Overview

• A host signals its desire to join or leave a multicast

group by communicating with its local router using a

special protocol

– In IPv4, the protocol is Internet Group Management

Protocol (IGMP)

– In IPv6, the protocol is Multicast Listener Discovery

(MLD)

• The router has the responsibility for making multicast

behave correctly with regard to the host

Multicast addresses

• IPV4: Class D most significant four bits of Class D addresses are set to "1110". The 28-bit number following these four bits is called "multicast group ID".

• Like unicast IP packets, there should be a MAC-layer address to which the IP multicast address maps.

• Internet Assigned Numbers Authority (IANA) has reserved a set of the IEEE-802 MAC-layer addresses for multicast packets, 01:00:5E:00:00:00 to 01:00:5E:7F:FF:FF (hex).

• An IP multicast address can be mapped to an IEEE-802 address by placing the least-significant 23 bits of the IP multicast address into the least-significant 23 bits of the MAC-layer multicast address.

Page 22: BGP, IPV6, Multicast Routing Protocols

The University of Adelaide, School of Computer Science 4 March 2014

Chapter 2 — Instructions: Language of the Computer 22

Mapping of a IP multicast address to a IEEE-802

MAC-layer address

Mapping procedure there will be 32 different multicast addresses

mapped to the same IEEE-802 address.

Multicast Routing

• A router’s unicast forwarding tables indicate for any IP address, which link to use to forward the unicast packet

• To support multicast, a router must additionally have multicast forwarding tables that indicate, based on multicast address, which links to use to forward the multicast packet

• Unicast forwarding tables collectively specify a set of paths

• Multicast forwarding tables collectively specify a set of trees – Multicast distribution trees

Multicast Routing

• To support source specific multicast, the multicast forwarding

tables must indicate which links to use based on the

combination of multicast address and the unicast IP address of

the source

• Multicast routing is the process by which multicast distribution

trees are determined

Internet Group Management Protocol (

IGMP) • IGMP: Hosts willing to receive multicast messages (packets) need to

inform their immediately-neighboring routers that they are nterested in receiving multicast messages sent to certain multicast groups

• Routers periodically check whether the known group members are still active.

• In case of more than one multicast router on a (LAN) , one of the routers is elected as the "querier" and assumes responsibility of keeping track of membership state of the multicast groups which have active members on its subnetwork.

• Based on the information from IGMP router can decide whether to forward multicast messages it receives to its subnetwork(s) or not.

• After receiving a multicast packet sent to a certain multicast group, the router will check and see if there is at least one member of that particular group on its subnetwork. If that is the case the router will forward the message to that subnetwork. Otherwise, it will discard the multicast packet.

Page 23: BGP, IPV6, Multicast Routing Protocols

The University of Adelaide, School of Computer Science 4 March 2014

Chapter 2 — Instructions: Language of the Computer 23

Multicast Routing Algorithms

1. Flooding : If this is the first time, the router will forward the

packet on all interfaces, except the one from which the packet

has been received. Otherwise, the router will simply discard

the packet.

• Advantage: Simplicity

• Disadvantage:

- Large duplicated packets

- Entry for each packet seen (large router resources used up)

Multicast Routing Algorithms

2. Spanning Trees:

• A subset of internetwork links are selected to define a tree

structure (loop-less graph) such that there is only one active

path between any two routers. Since this tree spans to all nodes

in the internetwork it is called spanning tree.

• router receives a multicast packet, it forwards the packet on all

the links which belong to the spanning tree except the one on

which the packet has arrived, guaranteeing that the multicast

packet reaches all the routers in the internetwork

Multicast Routing Algorithms

• Spanning Trees Drawbacks

- Centralized traffic on small set of links

- Does not consider group membership

Multicast Routing Algorithms

Reverse Path Broadcasting (RPB)

• Modification of the Spanning Tree algorithm.

• No network-wide spanning tree

• Implicit spanning tree is constructed for each source.

• Whenever router receives a multicast packet on link "L" and

from source "S", the router will check and see if the link L

belongs to the shortest path toward S. If this is the case the

packet is forwarded on all links except L. Otherwise, the

packet is discarded.

Page 24: BGP, IPV6, Multicast Routing Protocols

The University of Adelaide, School of Computer Science 4 March 2014

Chapter 2 — Instructions: Language of the Computer 24

Multicast Routing Algorithms

RPB Advantages:

• easy to implement.

• Packets are forwarded through the shortest path from the source to the destination nodes, it is very fast.

• Does not need any mechanism to stop the forwarding process.

• The routers do not need to know about the entire spanning tree and since the packets are delivered through different spanning trees (and not a unique spanning tree) traffic is distributed over multiple tress and network is better utilized.

RPB Disadvantage:

• Does not take into account the information about multicast group membership for constructing the distribution trees.

Multicast Routing Algorithms

Truncated Reverse Path Broadcasting (TRPB)

• With IGMP protocol, router can determine whether members of a

given multicast group are present on the router subnetwork or not.

• If this subnetwork is a leaf subnetwork (it doesn't have any other

router connected to it) the router will truncate the spanning tree.

• TRPB similar to RPB won't forward the message to a neighbor

router if the local router is not on the shortest path from the neighbor

router to the source node.

• Multicast group membership is used in the TRPB algorithm and the

leaf subnets are truncated from the spanning trees

• Disadvantage: does not eliminate unnecessary traffics on non-leaf

subnetworks which do not have group member.

Multicast Routing Algorithms

Reverse Path Multicasting (RPM)

• Called RPB with prunes is an enhancement to the RPB and

TRPB algorithms.

• RPM constructs a delivery tree that spans only:

1) subnetworks with group members, and

2) routers and subnetworks along the shortest path to

subnetworks with group members.

• RPM tree can be pruned such that the multicast packets are

forwarded along links which lead to members of the

destination group.

Multicast Routing Algorithms

• Routers which do not have any downstream router in the TRPB tree

are called leaf routers.

• If a leaf router receives a multicast packet for a (source, group) pair

and it does not have any group member on its subnetworks, it will

send a "prune" message to the router from which it has received the

multicast packet.

• The prune message indicates that the multicast packets of that

particular (source, group) pair should not be forwarded on the link

from which the prune message has been received.

• Prune messages are only sent one hop back towards the source.

• Upstream router records the prune information in its memory.

Page 25: BGP, IPV6, Multicast Routing Protocols

The University of Adelaide, School of Computer Science 4 March 2014

Chapter 2 — Instructions: Language of the Computer 25

Multicast Routing Algorithms

• If the upstream router does not have any local recipient and receives prune

messages from all of its children in the TRPB tree, the upstream router will

send a prune message itself to its parent in the TRPB tree indicating that the

multicast packets for the (source, group) pair need not be forwarded to it.

• Cascaded prune messages will truncate the original TRPB tree such that the

multicast packets will be forwarded only on those links that will lead to a

destination node(multicast group member).

RPM Tree

• Group membership and network topology can dynamically change

and the prune state of delivery trees should be refreshes at regular

intervals.

• Relatively big memory space required for maintaining state

information for all (source, group) pairs is another drawback which

makes this algorithm not scalable (and therefore, not suitable for very

large internetworks).

Distance-Vector Multicast (DVMRP)

• Each router already knows that shortest path to source

S goes through router N.

• When receive multicast packet from S, forward on all

outgoing links (except the one on which the packet

arrived), iff packet arrived from N.

• Eliminate duplicate broadcast packets by only letting

– “parent” for LAN (relative to S) forward

• shortest path to S (learn via distance vector)

• smallest address to break ties

Distance-Vector Multicast Reverse Path Broadcast (RPB)

• Goal: Prune networks that have no hosts in group G

• Step 1: Determine of LAN is a leaf with no members in G

– leaf if parent is only router on the LAN

– determine if any hosts are members of G using IGMP

• Step 2: Propagate “no members of G here” information

– augment <Destination, Cost> update sent to neighbors with

set of groups for which this network is interested in receiving

multicast packets.

– only happens when multicast address becomes active.

Page 26: BGP, IPV6, Multicast Routing Protocols

The University of Adelaide, School of Computer Science 4 March 2014

Chapter 2 — Instructions: Language of the Computer 26

Summary

• We have looked at the issues of scalability in routing in the

Internet

• Intradomain routing - BGP

• We have discussed IPV6

• We have discussed Multicasting

# C

ha

pte

r Su

btitle

References:

• Computer Networks A Systems Approach, Peterson, Fourth

Edition, chapter 4

• Computer Network Forouzan, chapter 21

• IP Multicasting: Concepts, Algorithms, and Protocols,

http://www.cse.wustl.edu/~jain/cis788-97/ftp/ip_multicast.pdf