computer networks chapter 4 advanced internetworking n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Computer Networks Chapter 4: Advanced Internetworking PowerPoint Presentation
Download Presentation
Computer Networks Chapter 4: Advanced Internetworking

Loading in 2 Seconds...

play fullscreen
1 / 56

Computer Networks Chapter 4: Advanced Internetworking - PowerPoint PPT Presentation


  • 141 Views
  • Uploaded on

Computer Networks Chapter 4: Advanced Internetworking. 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 Outline.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Computer Networks Chapter 4: Advanced Internetworking' - cyrah


Download Now An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
problems
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 outline
Chapter Outline
  • Global Internet
  • Multicast
  • Mobile IP
chapter goal
Chapter Goal
  • Understanding the scalability of routing in the Internet
  • Discussing IPv6
  • Understanding the concept of multicasting
  • Discussing Mobile IP
the global internet
The Global Internet

The tree structure of the Internet in 1990

the global internet1
The Global Internet

A simple multi-provider Internet

interdomain routing bgp
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
Interdomain Routing

A network with two autonomous system

route propagation
Route Propagation
  • Idea: Provide an additional way to hierarchically aggregate routing information is 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)
egp and bgp
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
    • 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
slide11
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”
the global internet2
The Global Internet
  • Multihomed AS

A simple multi-provider Internet

  • Transit AS
  • Stub AS
bgp 4 border gateway protocol
BGP-4: Border Gateway Protocol
  • Assumes the Internet is an arbitrarily interconnected set of AS's.
  • Define localtrafficas traffic that originates at or terminates on nodes within an AS, and transit trafficas traffic that passes through an AS.
  • We can classify AS's into three types:
    • Stub AS: an AS that has only a single connection to one other AS; such an AS will only carry local traffic (small corporation in the figure of the previous page).
    • Multihomed AS: an AS that has connections to more than one other AS, but refuses to carry transit traffic (large corporation at the top in the figure of the previous page).
    • 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 in the figure of the previous page).
slide14
BGP
  • The goal of Inter-domain routing is to find any loop free path to the intended destination
    • Reachability is more concerned than optimality
    • Finding path close to optimal is considered to be a great achievement
  • Why?
slide15
BGP
  • Scalability: An Internet backbone router must be able to forward any packet destined anywhere
    • Having a routing table that will provide a match for any valid IP address
  • Autonomous nature of the domains
    • Not possible to calculate meaningful path costs for a path that crosses multiple ASs
    • 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
slide16
BGP

Each AS has:

  • One BGP speakerthat 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
slide17
BGP
  • BGP does not belong to either of the two main classes of routing protocols (distance vectors and link-state protocols)
  • BGP advertises complete pathsas an enumerated lists of ASs to reach a particular network
bgp example
BGP Example

Example of a network running BGP

bgp example1
BGP Example
  • Speaker for AS 2 advertises reachability to P and Q
    • Network 128.96, 192.4.153, 192.4.32, and 192.4.3, can be reached directly from AS 2.
  • Speaker for backbone network then advertises
    • Networks 128.96, 192.4.153, 192.4.32, and 192.4.3 can be reached along the path <AS 1, AS 2>.
  • Speaker can also cancel previously advertised paths
bgp issues
BGP Issues
  • It should be apparent that the 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
integrating interdomain and intradomain routing
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

integrating interdomain and intradomain routing1
Integrating Interdomain and Intradomain Routing

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

routing areas
Routing Areas

Backbone area

Area border router (ABR)

A domain divided into areas

major features
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
ipv6 addresses
IPv6 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
    • IPv6 compatible IPv4 address: ::128.42.1.87
  • Address assignment
    • provider-based
    • geographic
ipv6 header
IPv6 Header
  • 40-byte “base” header
  • Extension headers (fixed order, mostly fixed length)
    • fragmentation
    • source routing
    • authentication and

security

    • other options
broadcast routing

duplicate

creation/transmission

duplicate

duplicate

in-network

duplication

sourceduplication

R2

R3

R4

R2

R3

R4

R1

R1

Broadcast Routing
  • Deliver packets from source to all other nodes
  • Source duplication is inefficient:
  • source duplication: how does source determine recipient addresses?
in network duplication
In-network duplication
  • Flooding: when node receives broadcast packet, sends copy to all neighbors
    • Problems: cycles & broadcast storm
  • Controlled flooding: node only broadcasts packet if it hasn’t broadcast same packet before
    • Node keeps track of packet ids already broadcasted
    • Or reverse path forwarding (RPF): only forward packet if it arrived on shortest path between node and source
  • Spanning tree
    • No redundant packets received by any node
spanning tree

(b) Broadcast initiated at D

(a) Broadcast initiated at A

A

A

D

D

G

G

B

E

E

B

F

F

c

c

Spanning Tree
  • First construct a spanning tree
  • Nodes forward copies only along spanning tree
spanning tree creation

A

A

D

D

G

G

B

E

E

B

F

F

c

c

Spanning Tree: Creation
  • Center node
  • Each node sends unicast join message to center node
    • Message forwarded until it arrives at a node already belonging to spanning tree

3

4

2

5

1

  • Stepwise construction of spanning tree

(b) Constructed spanning tree

multicast routing problem statement

Source-based trees

Multicast Routing: Problem Statement
  • Goal: find a tree (or trees) connecting routers having local multicast group members
    • tree: not all paths between routers used
    • source-based: different tree from each sender to receivers
    • shared-tree: same tree used by all group members

Shared tree

approaches for building multicast trees
Approaches for building multicast trees

Approaches:

  • source-based tree: one tree per source
    • shortest path trees
    • reverse path forwarding
  • group-shared tree: group uses one tree
    • minimal spanning (Steiner)
    • center-based trees

…We first look at basic approaches, then specific protocols adopting these approaches

shortest path tree

1

i

5

4

3

6

2

Shortest Path Tree
  • Multicast forwarding tree: tree of shortest path routes from source to all receivers
    • Dijkstra’s algorithm

LEGEND

S: source

router with attached

group member

R1

R4

router with no attached

group member

R2

R5

link used for forwarding,

i indicates order link

added by algorithm

R3

R7

R6

reverse path forwarding
Reverse Path Forwarding
  • Rely on router’s knowledge of unicast shortest path from it to sender
  • Each router has simple forwarding behavior:

if (multicast datagram received on incoming link on shortest path back to sender)

then flood datagram onto all outgoing links

else ignore datagram

reverse path forwarding example
Reverse Path Forwarding: example

S: source

LEGEND

R1

router with attached

group member

R4

R2

router with no attached

group member

R5

datagram will be forwarded

R3

R7

R6

datagram will not be

forwarded

  • Result is a source-specific reverse SPT
    • may be a bad choice with asymmetric links
reverse path forwarding pruning
Reverse Path Forwarding: pruning
  • Forwarding tree contains subtrees with no multicast group members
    • no need to forward datagrams down subtree
    • “prune” messages sent upstream by router with no downstream group members

LEGEND

S: source

R1

router with attached

group member

R4

router with no attached

group member

R2

P

P

R5

prune message

P

R3

links with multicast

forwarding

R7

R6

shared tree steiner tree
Shared-Tree: Steiner Tree
  • Steiner Tree: minimum cost tree connecting all routers with attached group members
  • problem is NP-complete
  • excellent heuristics exists
  • not used in practice:
    • computational complexity
    • information about entire network needed
    • monolithic: rerun whenever a router needs to join/leave
center based trees
Center-based trees
  • Single delivery tree shared by all
  • One router identified as “center” of tree
  • to join:
    • edge router sends unicast join-msg addressed to center router
    • join-msg“processed” by intermediate routers and forwarded towards center
    • join-msg either hits existing tree branch for this center, or arrives at center
    • path taken by join-msg becomes new branch of tree for this router
center based trees an example
Center-based trees: an example

Suppose R6 chosen as center:

R1

LEGEND

R4

3

router with attached

group member

R2

2

router with no attached

group member

R5

R3

1

1

R7

R6

path order in which join messages generated

internet multicasting routing dvmrp
Internet Multicasting Routing: DVMRP
  • DVMRP: Distance Vector Multicast Routing Protocol, RFC1075
  • Flood and prune:reverse path forwarding, source-based tree
    • RPF tree based on DVMRP’s own routing tables constructed by communicating DVMRP routers
    • no assumptions about underlying unicast routing protocols (RIP, OSPF, etc)
    • initial datagram to multicast group flooded everywhere via RPF
    • routers not wanting group: send upstream prune messages
dvmrp continued
DVMRP: continued…
  • Soft state: DVMRP router periodically (1 min.) “forgets” branches are pruned:
    • Multicast data again flows down unpruned branch
    • downstream router: reprune or else continue to receive data
  • routers can quickly regraft to tree
    • following IGMP join at leaf
  • odds and ends
    • commonly implemented in commercial routers
    • Mbone routing done using DVMRP
tunneling
Tunneling

Q: How to connect “islands” of multicast routers in a “sea” of unicast routers?

logical topology

physical topology

  • Multicast datagram encapsulated inside “normal” (non-multicast-addressed) datagram
  • Normal IP datagram sent thru “tunnel” via regular IP unicast to receiving multicast router
  • receiving multicast router unencapsulates to get multicast datagram
pim protocol independent multicast
Not dependent on any specific underlying unicast routing algorithm (works with all)

Two different multicast distribution scenarios :

PIM: Protocol Independent Multicast
  • Dense (密):
  • group members densely packed, in “close” proximity.
  • bandwidth more plentiful
  • Sparse(疏):
  • Number of networks with group members small wrtnumber of interconnected networks
  • group members “widely dispersed”
  • bandwidth not plentiful
consequences of sparse dense dichotomy
Dense

group membership by routers assumeduntil routers explicitly prune

data-driven construction on multicast tree (e.g., RPF)

bandwidth and non-group-router processing profligate

Sparse:

no membership until routers explicitly join

receiver- drivenconstruction of multicast tree (e.g., center-based)

bandwidth and non-group-router processing conservative

Consequences of Sparse-Dense Dichotomy:
pim dense mode
PIM- Dense Mode
  • Flood-and-prune RPF, similar to DVMRP but
  • underlying unicast routing protocol provides RPF information for incoming datagram
  • less complicated (less efficient) downstream flood than DVMRP reduces reliance on underlying routing algorithm
  • has protocol mechanism for router to detect it is a leaf-node router
pim sparse mode
Center-based approach

Router sends join message to rendezvous point (RP)

intermediate routers update state and forward join

after joining via RP, router can switch to source-specific tree

increased performance: less concentration, shorter paths

PIM - Sparse Mode

R1

R4

join

R2

join

R5

join

R3

R7

R6

all data multicast

from rendezvous

point

rendezvous

point

pim sparse mode1
Sender(s):

unicast data to RP, which distributes down RP-rooted tree

RP can extend multicast tree upstream to source

RP can send stop message if no attached receivers

“no one is listening!”

PIM - Sparse Mode

R1

R4

join

R2

join

R5

join

R7

R6

all data multicast

from rendezvous

point

rendezvous

point

routing for mobile hosts
Routing for Mobile Hosts
  • Mobile IP
    • home agent:Router located on the home network of the mobile hosts
    • home address:The permanent IP address of the mobile host.Has a network number equal to that of the home network and thus of the home agent
    • foreign agent:Router located on a network to which the mobile node attaches itself when it is away from its home network
routing for mobile hosts2
Routing for Mobile Hosts
  • Problem of delivering a packet to the mobile node
    • How does the home agent intercept a packet that is destined for the mobile node ?
      • Proxy ARP
    • How does the home agent then deliver the packet to the foreign agent ?
      • IP tunnel
      • Care-of-address
    • How does the foreign agent deliver the packet to the mobile node ?
routing for mobile hosts3
Routing for Mobile Hosts
  • Route optimization in Mobile IP
    • The route from the sending node to mobile node can be significantly sub-optimal
    • One extreme example
      • The mobile node and the sending node are on the same network, but the home network for the mobile node is on the far side of the Internet
        • Triangle Routing Problem
routing for mobile hosts4
Routing for Mobile Hosts
  • Solution
    • Let the sending node know the care-of-address of the mobile node. The sending node can create its own tunnel to the foreign agent
    • Home agent sends binding update message
    • The sending node creates an entry in the binding cache
    • The binding cache may become out-of-date
      • The mobile node moved to a different network
      • Foreign agent sends a binding warning message
summary
Summary
  • We have talked about the following issues
    • Scalability routing in the Internet
    • IPv6
    • Broadcast/Multicasting
    • Mobile IP