chapter 4: network layer
DESCRIPTION
CHAPTER 4: NETWORK LAYER. Packet Switching Virtual Circuits Datagrams Network Routers Internet Protocol IPv4 IPv6 Routing Algorithms IP Routing Broadcast and Multicast. NETWORK LAYER RESPONSIBILITIES. Moving Transport segments from their sources to their destinations. - PowerPoint PPT PresentationTRANSCRIPT
CHAPTER 4: NETWORK LAYER
• Packet Switching• Virtual Circuits• Datagrams
• Network Routers• Internet Protocol• IPv4• IPv6
• Routing Algorithms• IP Routing• Broadcast and Multicast
NETWORK LAYER RESPONSIBILITIES
Page 2Chapter 4CS 447
• Moving Transport segments from their sources to their destinations• Breaking segments into manageable units at the source and reassembling
them at the destination• Determining paths for packets to take through the network, and ensuring
that those paths are followed.
CIRCUIT SWITCHING
Page 3Chapter 4CS 447
In traditional circuit switching, an end-to-end circuit is established and maintained until one of the endstations terminates the
connection.
PROBLEMS WITHCIRCUIT SWITCHING
Page 4Chapter 4CS 447
Circuit switching has one great advantage: once established, the circuit is dedicated, i.e., a communication line is completely open until formally terminated.However, this approach has a number of serious problems:• Many networked applications don’t require a dedicated circuit, so reserving
a communication line until an endstation formally terminates it can represent a serious waste of resources.
• The route originally selected for the circuit may be optimal to begin with, but may prove to be suboptimal as the communication continues.
• An entire, end-to-end path must be found and reserved before any communication is allowed between the two endstations; this is definitely not conducive to many modern applications (e.g., Web surfing, videoconferencing).
• Transmission errors are propagated all the way to the destination, requiring retransmission across the entire network.
PACKET SWITCHING
Page 5Chapter 4CS 447
In packet switching, the source’s message is broken into manageable “packets” that are transmitted to the destination individually, not
necessarily along the same path.
THE PROS AND CONS OF PACKET SWITCHING
Page 6Chapter 4CS 447
Packet switching remedies the principal problems of circuit switching:
However, packet switching does have its own set of problems:
• Lines aren’t dedicated, so their utilization is higher.
• Messages are “packetized”, so line-sharing is reasonably fair.
• Routing may be dynamic, i.e., an alternate route may be chosen when traffic patterns change.
• The entire route does not have to be chosen prior to sending any data.
• Errors aren’t propagated end-to-end.
• Switches must be programmed to make sophisticated routing decisions.• Switches must manage memory for queued packets that await forwarding.• Packets must be prefixed with control headers, increasing overhead.• Endstations must deal with missing packets and packets received out of order.• Without a dedicated circuit, transmission times become unpredictable.
VIRTUAL CIRCUITS
Page 7Chapter 4CS 447
NetworkNode
NetworkNode
NetworkNode
NetworkNode
NetworkNode
VC7
packet
VC4
packet
VC2
packet
VC8
packet
VC6
packet
VC3
packetVC1
packet
VC3
packet
VC1
packet
VC8
packet
VC5
packet
Node has a VC table that looks something like this:
IncomingVC #
SourceNode
OutgoingVC #
NextNode
1 3 3 8 4 2 5 5 7 6 8 1
• Routes are chosen when the VC is initially set up
• All packets must follow the VC route, even if traffic conditions have improved or worsened
• Buffer space must be allocated for each VC
• A failed router destroys all VCs running through it
• VC routing is handled by a table
DATAGRAMS
Page 8Chapter 4CS 447
NetworkNode
NetworkNode
NetworkNode
NetworkNode
NetworkNode
pkt to
dest. X
pkt to
dest. X
pkt to
dest. X
pkt to
dest. X
pkt to
dest. X
pkt to
dest. X
• No route set-up is done• All packets must contain
the full source and destination addresses
• Each packet is routed independently
• A failed router only affects the packets passing through it when the failure occurs
• Congestion control is difficult
IP uses a datagram approach to packet switching, while
Multiprotocol Link Switching (MPLS) uses virtual circuits.
PACKET SWITCHING COMPARISONS
Page 9Chapter 4CS 447
Issue Datagram Virtual CircuitConnection
Set-Up
Addressing
StateInformation
Routing
Effect ofSwitch Failures
Quality of ServiceSupport
CongestionControl
Issue Datagram Virtual CircuitConnection
Set-Up Not needed Required
Addressing
StateInformation
Routing
Effect ofSwitch Failures
Quality of ServiceSupport
CongestionControl
Issue Datagram Virtual CircuitConnection
Set-Up Not needed Required
Addressing Each packet contains full destination address
Each packet contains a short VC identifier
StateInformation
Routing
Effect ofSwitch Failures
Quality of ServiceSupport
CongestionControl
Issue Datagram Virtual CircuitConnection
Set-Up Not needed Required
Addressing Each packet contains full destination address
Each packet contains a short VC identifier
StateInformation
Switch does not hold state information
Switch holds VC state information in a table
Routing
Effect ofSwitch Failures
Quality of ServiceSupport
CongestionControl
Issue Datagram Virtual CircuitConnection
Set-Up Not needed Required
Addressing Each packet contains full destination address
Each packet contains a short VC identifier
StateInformation
Switch does not hold state information
Switch holds VC state information in a table
Routing Each packet is forwarded independently
All packets follow the same route
Effect ofSwitch Failures
Quality of ServiceSupport
CongestionControl
Issue Datagram Virtual CircuitConnection
Set-Up Not needed Required
Addressing Each packet contains full destination address
Each packet contains a short VC identifier
StateInformation
Switch does not hold state information
Switch holds VC state information in a table
Routing Each packet is forwarded independently
All packets follow the same route
Effect ofSwitch Failures
None, except for loss of packets during crash
All VCs passing through the failed switch are broken
Quality of ServiceSupport
CongestionControl
Issue Datagram Virtual CircuitConnection
Set-Up Not needed Required
Addressing Each packet contains full destination address
Each packet contains a short VC identifier
StateInformation
Switch does not hold state information
Switch holds VC state information in a table
Routing Each packet is forwarded independently
All packets follow the same route
Effect ofSwitch Failures
None, except for loss of packets during crash
All VCs passing through the failed switch are broken
Quality of ServiceSupport Difficult Easy
CongestionControl
Issue Datagram Virtual CircuitConnection
Set-Up Not needed Required
Addressing Each packet contains full destination address
Each packet contains a short VC identifier
StateInformation
Switch does not hold state information
Switch holds VC state information in a table
Routing Each packet is forwarded independently
All packets follow the same route
Effect ofSwitch Failures
None, except for loss of packets during crash
All VCs passing through the failed switch are broken
Quality of ServiceSupport Difficult Easy
CongestionControl Difficult Easy
INTERNETWORKING
Page 10Chapter 4CS 447
Networks can be connected via a variety of devices, operating at various protocol layers.
A repeater works at the Physical Layer to
regenerate weak signals on a bit-by-bit
basis.
A bridge works at the Data Link Layer to store and forward
frames from one LAN to another.
A router works at the Network Layer to direct incoming
packets onto networks that bring them closer to their
final destination.
Finally, a gateway works at the Transport Layer to interconnect subnetworks by keeping track of
incoming and outgoing virtual circuits that may use differing transport protocols.
NETWORK ROUTERS
Page 11Chapter 4CS 447
A router is a network node operating at the Network Layer (and lower), with two primary
responsibilities:• Running algorithms to decide where to send incoming datagrams.• Forwarding datagrams from its input ports to its output ports.
Input Port
Bit Receptio
n(Physical
Layer)
Packet Reception
(Data Link
Layer)
Lookup, Forwarding, Queueing
(Network Layer)
Output Port
Packet Release(Data Link
Layer)
Bit Release
(Physical Layer)
Datagram Buffering, Queueing
(Network Layer)
Switching Fabric
Switching Via
Crossbar
The router’s input port mechanism contains memory
holding a lookup table indicating where to forward
packets.If the datagram arrival rate
exceeds the forwarding rate, then datagrams are queued
inside input buffers.
The router’s switching fabric
forwards the datagrams
from the input ports to the
correct output ports.
The router’s output port mechanism contains memory
buffers for holding datagrams that arrive from the fabric faster than the
router’s transmission rate.
CROSSBAR SWITCHES
Page 12Chapter 4CS 447
Both circuit switching and packet switching rely heavily on primitive internal routing that usually takes place on a crossbar switch.
Each crosspoint in the switch has a transistor connecting a unique
input/output pair. When activated, a crosspoint transfers
every signal on its input line onto its output line.
Multistage space-division switches, use smaller
interconnected crossbar switches to inexpensively connect large numbers of
input/output pairs.
inputs
outputs
INPUT OR OUTPUT BUFFERS?
Page 13Chapter 4CS 447
If a router is forced to buffer datagrams due to excessive traffic (either fast arrival rates or slow transmission rates, should it use
input buffers (i.e., holding the datagrams before they are routed) or output buffers (i.e., holding the datagrams after they are routed)?
Router
Datagram for output port 3
Datagram for output port 3
Datagram for output port 3
Datagram for output port 4
Datagram for output port 1
Note that the use of input buffers can result in datagrams being blocked from proceeding to their output ports, even if the output
ports are open, a condition known as Head-of-Line Blocking.
FRAGMENTATION
Page 14Chapter 4CS 447
Different networks have different packet size limitations, based upon their protocols and their system administrators.
To accommodate these differences, gateways may have to break packets into smaller fragments in order to get them through a network.
Transparent fragmentation involves breaking packets into fragments upon entrance to a network, and recombining the fragments at
the exit gateway.
This eliminates the negative effects of fragmentation (i.e., header overhead,
destination host reassembly) on the rest of the internetwork.
Non-transparent fragmentation involves breaking packets into fragments upon
entrance to a network, but recombining the fragments only at their final destination.
This eliminates the negative effects of transparency (i.e., repeated fragmenting,
common exit gateways) on the rest of the internetwork.
INTERNET PROTOCOL
Page 15Chapter 4CS 447
IP was designed for three primary purposes:
1. Define the basic unit of data
transfer (i.e., the data format) through
any TCP/IP internet.
2. Perform the routing of data
through the internet by selecting
appropriate paths.
3. Process packets, generate error
messages, and discard packets in such a
way to ensure “unreliable” packet
delivery.
THE IPv4 HEADER
Page 16Chapter 4CS 447
Version HdrLen Service Type
Flags Fragment Offset
Total Length
Identification
Protocol Header ChecksumTime To Live
Source IP Address
Destination IP Address
Options & Padding (if any)
Version: Version of IP used to create the datagram, used by nodes to process it correctly.HdrLen: Length of the header in 32-bit words (because the Options field has no fixed size).Service Type: 3-bit Precedence field, & three 1-bit Delay, Throughput, and Reliability flags.
Flags: Don’t-Fragment flag and More-Fragments flag.
Time To Live: Length of time (in seconds) datagram may stay in the internet.
Identification: All fragments of the same packet have the same ID number.
Version HdrLen Service Type
Flags Fragment Offset
Total Length
Identification
Total Length: Length of the entire datagram in bytes (16-bit field means 65,535-byte max).
Fragment Offset: Offset from start of packet (in bytes) of current fragment.
Protocol Header ChecksumTime To Live
Source IP Address
Destination IP Address
Options & Padding (if any)
Header Checksum: 1’s complement of 1’s complement sum of the 16-bit values in header.
Destination IP Address: 32-bit IP address of the datagram’s final destination.
Protocol: Global ID # of the protocol used to create the datagram (e.g., TCP).
Source IP Address: 32-bit IP address of the datagram’s original source.
Options & Padding: End-of-option-list; No-operation-just-align; Military-security-application; Loose-source-routing; Record-route; Stream-identifier (obsolete), Strict-source-routing; Record-internet-timestamps.
IPv4 ADDRESSES
Page 17Chapter 4CS 447
There are three principal classes of IP addresses, with all endstations on the same network given a common prefix:
CLASS A (for networks with more than 216 endstations):Network ID0 Host ID
Actual range of values: 0.1.0.0 to 126.0.0.0Special Class A Address Conventions: 0.0.0.0 signifies “this host”
0.X.X.X signifies “all hosts on this network”X.255.255.255 signifies “directed broadcast”127.X.X.X signifies “loopback”
CLASS B (for networks with between 28 and 216 endstations):
Actual range of values: 128.0.0.0 to 191.255.0.0Special Class B Address Conventions: X.X.255.255 signifies “directed broadcast”
10 Host IDNetwork ID
CLASS C (for networks with less than 28 endstations):
110Actual range of values: 192.0.1.0 to 223.255.255.0Special Class C Address Conventions: X.X.X.255 signifies “directed broadcast”
Host IDNetwork ID
INTERNET CONTROL MESSAGE PROTOCOL
Page 18Chapter 4CS 447
IP datagrams with the Protocol field set to 1 are ICMP messages, which allow routers to report errors or provide information about
unexpected circumstances.
ICMP Message Type Description
Echo Request/Reply Tests if a destination is reachable and responding.
Destination Unreachable Router notifies source if it can’t forward datagram.
Source Quench Router notifies source when it discards a datagram.
Redirect Router tells endstation of router to use in paths.
Time Exceeded Datagram’s Time-To-Live or reassembly time expired.
Parameter Problem Datagram’s header is bad (e.g., missing parameters).
Timestamp Request/Reply Synchronizes router’s clock with that of a neighbor.
Address Mask Request/Reply Request mask to determine which bits ID the subnet.
IPv6
Page 19Chapter 4CS 447
The next generation of the Internet Protocol, IPv6, introduces several improvements over the previous
version, IPv4:• Address sizes are quadrupled, from 32-bits to 128
bits.• Rather than an Options-driven flexible header size, a fixed header size is
used, with various extension headers added to support options.• Additional options have been added, including jumbograms
(i.e., allowing excessively large datagrams for certain high-capacity applications), authentication, and security.
• Resource preallocation is supported, opening the door for real-time applications that require guarantees about bandwidth and delay.
IPv6 HEADER
Page 20Chapter 4CS 447
Version: IP version used to create datagram, used to process it correctly.Traffic Class: Message priority (IP control, interactive, real-time, etc.)Flow Label: ID # involving end-to-end flow (tells routers about special handling).
Hop Limit: Remaining # of hops allowed (when 0 reached, frame is discarded).Next Header: Type of header after IPv6 header (i.e., UDP, TCP, IPv6 extension).Payload Length: Total length of transport-level payload + extension headers.
Destination IP Address: 128-bit IP address of the datagram’s final destination.Source IP Address: 128-bit IP address of the datagram’s original source.
Version Traffic Class
Next Header Hop Limit
Flow Label
Payload Length
Source IP Address
Destination IP Address
Version Traffic Class
Next Header Hop Limit
Flow Label
Payload Length
Source IP Address
Destination IP Address
IPv6 EXTENSION HEADERS
Page 21Chapter 4CS 447
Destination Options Header #2Options relevant only to the final destination (e.g., ???)
Encapsulation Security Payload HeaderMechanisms to ensure confidential frame access (via key-based encryption)
Authentication HeaderMechanisms to detect unauthorized frame modification (via a key-based code)
Fragment HeaderEndstation fragmentation information (e.g., sequence numbers, offsets)
Source Routing HeaderStrict or loose routing information (e.g., specific routers to be traversed)
Destination Options Header #1Options relevant to all but the final destination (e.g., ???)
Hop-By-Hop Options HeaderOptions relevant to each router in the path (e.g., Jumbo Payload, Router Alert)
IPv6 options are implemented as additional extension headers after the 40-byte header, which provides extensibility to support future
services for quality of service, security, mobility, etc., without necessitating the redesign of the basic protocol
IPv6 DEPLOYMENT
Page 22Chapter 4CS 447
IPv4 DEPLOYMENTJanuary 2000:
220,533 addresses374,013 links
5,107 autonomous systems
October 2000:626,773 addresses
1,007,723 links7,563 autonomous
systems
April 2002:1,224,773 addresses
2,093,194 links10,999 autonomous
systems
January 2008:4,853,991 addresses
5,682,419 links17,791 autonomous
systems
June 2010:16,802,061 addresses
18,796,744 links26,702 autonomous
systems
January 2009:4,752 IPv6 addresses
17,036 IPv6 links489 autonomous
systems
June 2010:8,551 IPv6 addresses
21,852 IPv6 links715 autonomous
systems
While the central pool of IPv4 addresses at the IANA was depleted in February 2011, due to
various address masking techniques, the need for IPv6 deployment has not been
overwhelming, allowing the transition to occur gradually.
IPv6 ADOPTION HISTORY
Page 23Chapter 4CS 447
Beginning with its alpha testing in 1996, the adoption of IPv6 exhibits a common pattern in the history of communication technology
deployment.1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
• First, deep-pocket corporations in the server, system software, and telecommunications fields invest in research in the new technology.
• Once the viability of the technology is demonstrated, the larger manufacturers and developers become involved.
• With the technology’s foundation firmly in place, commitment by more fragile markets (mobile, cable, etc.) is facilitated.
• Finally, the technology becomes universally accepted as a standard and virtually everyone jumps on board.
ROUTING ALGORITHMS
Page 24Chapter 4CS 447
The Network Layer has responsibility for determining end-to-end communication routes.
Routing algorithms fall into two basic categories:
STATIC ROUTING
Page 25Chapter 4CS 447
The Pros• Routing decisions are simple, so
network nodes have little processing to contend with
• Not having to deal with control messages that address congestion problems could significantly lighten the traffic load on the network
The Cons• Ignoring changing conditions on the network may lead to a serious
performance degradation• By not rerouting around potential trouble spots within the network,
opportunities to relieve the congestion problems are missed, and the problems are exacerbated
SHORTEST PATH ROUTING
Page 26Chapter 4CS 447
Each network node finds the shortest path from itself to every other node by applying Dijkstra’s Algorithm:
Initialize DONE_SET to {myself}For every other node N, initialize COST(N) = edgeCost(N, myself) and PRED(N) = myselfLoop through these steps until every node is in DONE_SET:
• Pick a node M not in DONE_SET whose COST is minimal, and place M in DONE_SET
• For every node N not in DONE_SET, reset COST(N) to the minimum of COST(N) & COST(M)+edgeCost(M,N) (if the latter is minimum, set PRED(N) = M
G
A
H I
E F
CB
D13
7
6
8
19
21
16
8
2
2
5
3
4 3
(0,-)
(,-) (,-)
(,-) (,-)
(,-)(,-)
(,-)
(,-)
(0,-)
(7,A)
(27,E)
(6,A)
(19,E)
(8,A) (22,E
)
(,-)
(,-)G
A
H I
E F
CB
D13
7
6
8
19
21
16
8
2
2
5
3
4 3
(0,-)
(7,A)
(,-)
(6,A)
(,-)
(8,A) (,-)
(,-)
(,-)G
A
H I
E F
CB
D13
7
6
8
19
21
16
8
2
2
5
3
4 3
Page 27Chapter 4CS 447
(0,-)
(7,A)
(26,B)
(6,A)
(19,E)
(8,A) (22,E
)
(,-)
(,-)G
A
H I
E F
CB
D13
7
6
8
19
21
16
8
2
2
5
3
4 3
(0,-)
(7,A)
(26,B)
(6,A)
(18,H)
(8,A) (16,G)
(,-)
(,-)G
A
H I
E F
CB
D13
7
6
8
19
21
16
8
2
2
5
3
4 3
(0,-)
(7,A)
(26,B)
(6,A)
(19,E)
(8,A) (16,G)
(,-)
(,-)G
A
H I
E F
CB
D13
7
6
8
19
21
16
8
2
2
5
3
4 3
(0,-)
(7,A)
(25,D)
(6,A)
(18,H)
(8,A) (16,G)
(20,F)
(23,D)
G
A
H I
E F
CB
D13
7
6
8
19
21
16
8
2
2
5
3
4 3
(0,-)
(7,A)
(26,B)
(6,A)
(18,H)
(8,A) (16,G)
(20,F)
(,-)G
A
H I
E F
CB
D13
7
6
8
19
21
16
8
2
2
5
3
4 3
(0,-)
(7,A)
(25,D)
(6,A)
(18,H)
(8,A) (16,G)
(20,F)
(23,D)
G
A
H I
E F
CB
D13
7
6
8
19
21
16
8
2
2
5
3
4 3
(0,-)
(7,A)
(25,D)
(6,A)
(18,H)
(8,A) (16,G)
(20,F)
(23,D)
G
A
H I
E F
CB
D13
7
6
8
19
21
16
8
2
2
5
3
4 3
DIJKSTRA EXAMPLE (CONTINUED)
Page 28Chapter 4CS 447
FLOODINGA second static routing approach is flooding, in which a network node
forwards every packet arriving on a particular incoming line onto every other outgoing line, usually with a maximum hop-count.
In spite of its obvious disadvantages vis-à-vis congestion, flooding has several advantages:• Every route is attempted, a useful feature in an emergency.• At least one received copy will use a minimum-hop route, which could
facilitate the set-up of a virtual circuit• Every node is visited, which could facilitate the dissemination of important
data (e.g., routing or congestion information)
Page 29Chapter 4CS 447
DYNAMIC ROUTINGThe Pros• By dynamically adjusting to
network traffic conditions, the network may deliver superior performance to its users
• Conversely, the rerouting used in dynamic routing schemes can be used to alleviate congestion problems on the network.
The Cons• The adaptive strategy mustn’t react too quickly (causing a congestion-
causing oscillation between routes) or too slowly (failing to take advantage of improving congestion conditions or to avoid worsening conditions)
• The processing burden on the network nodes increases substantially
Page 30Chapter 4CS 447
DISTANCE VECTOR ROUTINGOne method of implementing dynamic routing is to have each network node maintain a table of current measurements regarding its communication with the other network nodes (e.g., the delay in getting a message to that node).Periodically, each node is sent the tables of all of its immediate neighbors,
using that data to update its own table.
Don’t Bother!
26,27,32,25
5,12,16,27
17,16,12,14
8,9,16,11
19,23,2,8
37,29,25,33
12,12,13,10
26,14,10,6
22,13,12,15
0 -A25 IB5 CC12 FD
25 FG
8 CE
10 IH
2 FF
6 II12 FJ
A’sDelay
SendThrough
0 -25 I5 C
11 F
29 E
9 E
10 I
2 F
6 I
NetworkNode
ABCD
G
E
H
F
I13 EJ
A’s Old Delay Table
C’sDelay
5210
12
32
3
7
14
21
NetworkNode
ABCD
G
E
H
F
I17J
E’sDelay
91837
20
0
3
14
54
F’sDelay
2301410
23
14
11
0
810
I’sDelay
619218
27
5
4
2
09
Updates From A’s Neighbors
A’sDelay
SendThrough
NetworkNode
A’s New Delay Table
Page 31Chapter 4CS 447
LINK STATE ROUTINGTo counteract the main problem with distance vector routing (namely,
that receiving localized traffic information from one’s neighbors doesn’t result in a rapid adjustment to routing), link state routing was
developed as an alternative.Whenever a network node experiences a “big” change (i.e., when it’s booted up, when a new link to it is established or an old one is severed, when the cost of one of its links changes substantially), the node floods the network with a message telling every node
in the network what its new link costs are.Whenever a network node builds up a reasonable description of the network topology, it uses Dijkstra’s Algorithm to determine its shortest path to every other node in the
network.Link Cost Options:
- Maximize Performance (simple minimum hop-count?)
- Minimize Cost (actual monetary charges for using the network?)
- Maximize Reliability (recent outages? high error rates?)
- Maximize Throughput (how long to get a bit across the link?)
- Minimize Delay (propagation delay + queueing delay)
Page 32Chapter 4CS 447
HIERARCHICAL ROUTINGA serious problem with methods like link state routing is the need for every network node to keep data about every other network node, no
matter how large the network is.An alternative is to hierarchically divide the network into regions and
sub-regions, requiring each node to keep data about every node within its particular sub-region, but to only keep rudimentary data
about how to access the other sub-regions.Region A Region B
Region CRegion D
Sub-Region 1Sub-
Region 2
Sub-Region 3
Sub-Region 2Sub-
Region 1
Sub-Region 4
Sub-Region 1
Sub-Region 2
Sub-Region 3
Sub-Region 3
Sub-Region 1 Sub-Region 2 Each node maintains a table entry for:• every other node in its
sub-region,• one access point to every
sub-region in its same region, and
• one access point to each of the other regions.
Page 33Chapter 4CS 447
IP ROUTING
AutonomousSystem
1
AutonomousSystem
2
AutonomousSystem
3
AutonomousSystem
4
AutonomousSystem
n
ExteriorRouter 1
ExteriorRouter 2
ExteriorRouter 3
ExteriorRouter 4
ExteriorRouter 5
Routing is handled in a hierarchical fashion in IP.• Inside the independently administered autonomous system, the Open
Shortest Path First protocol (OSPF) is used. It uses a link state dynamic routing scheme.
• Outside the autonomous systems, the Border Gateway Protocol (BGP) is used. It uses a distance vector dynamic routing scheme that keeps track of the precise path of systems that is traversed, thus accommodating both efficiency needs and political considerations.
BACKBONE NETWORK
BGP route advertisements append AS numbers, producing an active path
back to the source network
Page 34Chapter 4CS 447
COMMON OSPF HIERARCHYOSPF
Area 0
This type of hierarchical topology is favored because it is...
Campus Backbone or
WAN
Building Backbone
Core LayerBackbone Routers; Provides
interconnectivity
Distribution LayerArea Border Routers;
Starts implementation of security, DNS, etc.
Access LayerInter-Area Routers; Provides access to servers and hosts
• Scalable – functionality is localized, so additional sites are easily added
• Easy to implement – the physical hierarchy corresponds to OSPF’s logical hierarchy
• Easy to troubleshoot – the localized functionality helps to isolate problems
• Predictable – capacity planning and modeling are facilitated by the layered approach
Page 35Chapter 4CS 447
BGP PASS-THROUGH AUTONOMOUS SYSTEM ROUTING
In addition to its inter-AS role, BGP is
set up to handle intra-AS routing
through autonomous systems not running
BGP.
When traffic that didn’t start and won’t finish within such an autonomous system must cross the AS, BGP interacts with the routing
protocol used by the AS to transport the BGP traffic across the AS.
Page 36Chapter 4CS 447
BROADCAST ROUTINGThe simple approaches to broadcasting messages to all network
nodes have obvious problems.
NetworkNode
broadcast packet
If the broadcast packet arrives on the same link that the node uses to send messages to the
broadcaster, the node forwards the message on all of its other links.
If the broadcast packet arrives on a different link than the one that the node uses to send
messages to the broadcaster, the node assumes it’s a duplicate and discards the
message.
• Having the broadcaster send independent copies of the message to each network node wastes bandwidth and requires the broadcaster to know every node address.
• Flooding overloads the network with redundant copies of the message.• Spanning tree approaches require every node to be cognizant of a
spanning tree.• An alternative is to use reverse path forwarding, a kind of limited
flooding.
Page 37Chapter 4CS 447
MULTICAST ROUTINGWith emerging internetworked applications like IP television,
videoconferencing, networked gaming, and video-on-demand, the need for multicasting protocols has increased tremendously.
Multiple Unicast Send individual messages to each relevant receiver.
Slow & wasteful of bandwidth
BroadcastSend one message to everyone, with
irrelevant receivers rejecting it.
Disruptive & wasteful of bandwidth
Page 38Chapter 4CS 447
INTERNET GROUP MANAGEMENT PROTOCOLThis IP protocol assumes that special group addresses are set up for multicast groups, and that routers periodically update their lists of
which neighboring stations are part of which groups.
ListT,MB
ListT
ListB
T,B
ListTM
When a multicast message arrives at a router, it checks
whether its subnetwork contains any of the
multicast group’s members; if so, it forwards the
message; if not, it discards it.