NETWORK LAYER
Design issues
Routing
Congestion
Logical Addressing
Design Issues
• Store-and-Forward Packet Switching
• Services Provided to the Transport layer
• Implementation of Connectionless Service
• Implementation of Connection-Oriented
Service
• Comparison of Virtual-Circuit and Datagram
Subnets
Store-and-Forward Packet
Switching
fig 5-1
The environment of the network layer protocols.
Services provided to transport
layer
The services should be independent of router technology
Transport layer should be shielded from the number, type and topology of the routers present
The network address made available to transport layer should use a uniform numbering plan
Implementation of Connectionless
Service
within a diagram subnet.
Implementation of Connection-
Oriented Service
Comparison of Virtual-Circuit and Datagram
Subnets
5-4
Routing
Forwarding
Flooding
Routing
Forwarding: Route method versus next-hop method
Flooding
Note
Flooding broadcasts packets, but
creates loops in the systems.
Loop can be avoided by
Hop Count
Time Stamp
Sink tree
Sink Tree
(a) A subnet. (b) A sink tree for router B.
Routing Algorithms
Adaptive
Non - adaptive
Routing Algorithms
• Shortest Path Routing
• Distance Vector Routing
• Link State Routing
• Hierarchical Routing
• Broadcast Routing
• Multicast Routing
Shortest Path Routing
Dijkstra algorithm(Shortest path)
Example of formation of shortest path tree
Distance vector routing tables
Initialization of tables in distance vector routing
Note
In distance vector routing, each node
shares its routing table with its
immediate neighbors periodically and
when there is a change.
Updating in distance vector routing
Count to infinity
Link State Routing
Each router must do the following:
1. Discover its neighbors, learn their network address.
2. Measure the delay or cost to each of its neighbors.
3. Construct a packet telling all it has just learned.
4. Send this packet to all other routers.
5. Compute the shortest path to every other router.
Learning about the Neighbors
(a) Nine routers and a LAN. (b) A graph model
of (a).
Measuring Line Cost
A subnet in which the East and West parts are connected by two
lines.
Building Link State Packets
(a) A subnet. (b) The link state packets for this
subnet.
Concept of link state routing
Link state knowledge
Hierarchical Routing
Hierarchical routing.
MULTICAST ROUTING PROTOCOLS
Note
In unicasting, the router forwards the
received packet through
only one of its interfaces.
Unicasting
Note
In multicasting, the router may
forward the received packet
through several of its interfaces.
Multicasting
Multicasting versus multiple unicasting
Note
Emulation of multicasting through
multiple unicasting is not efficient
and may create long delays,
particularly with a large group.
Note
In unicast routing, each router in the
domain has a table that defines
a shortest path tree to possible
destinations.
Note
In multicast routing, each involved
router needs to construct
a shortest path tree for each group.
Broadcast Routing
Reverse path forwarding. (a) A subnet. (b) a Sink tree. (c) The tree built by reverse path forwarding.
Multicast Routing
(a) A network. (b) A spanning tree for the leftmost router.
(c) A multicast tree for group 1. (d) A multicast tree for group 2.
Congestion Control and
Quality of Service
Traffic descriptors
Three traffic profiles
CONGESTION
Figure : Packet delay and throughput as functions of load
Congestion control categories
Backpressure method for alleviating congestion
Choke packet
BECN
FECN
Congestion control in TCP- Slow start, exponential increase
Note
In the slow-start algorithm, the size of the congestion window
increases exponentially until it reaches a threshold.
Congestion avoidance, additive increase
Note
In the congestion avoidance algorithm, the size of the congestion
window increases additively until
congestion is detected.
Note
An implementation reacts to congestion detection in one of the following
ways:
❏ If detection is by time-out, a new slow
start phase starts.
❏ If detection is by three ACKs, a new
congestion avoidance phase starts.
TCP congestion policy summary
Congestion example
QUALITY OF SERVICE
Flow Characteristics
Flow Classes
Flow characteristics
TECHNIQUES TO IMPROVE QoS
Scheduling
Traffic Shaping
Resource Reservation
Admission Control
FIFO queue
Priority queuing
Weighted fair queuing
Leaky bucket
Leaky bucket implementation
Note
A leaky bucket algorithm shapes bursty traffic into fixed-rate traffic by
averaging the data rate. It may drop the packets if the bucket is full.
Note
The token bucket allows bursty traffic at a regulated maximum rate.
Token bucket
Internetworking
INTERNETWORKING
•Need for Network Layer
•Internet switching
•Internet communication
Links between two hosts
Network layer in an internetwork
Network layer at the source, router, and destination
Network layer at the source, router, and destination (continued)
Note
Switching at the network layer in the Internet uses the datagram
approach to packet switching.
Note
Communication at the network layer in the Internet is connectionless.
Logical Addressing
Note
An IPv4 address is 32 bits long.
Note
The IPv4 addresses are unique
and universal.
Note
The address space of IPv4 is
32
2 or 4,294,967,296.
Dotted-decimal notation and binary notation for an IPv4 address
Note
In classful addressing, the address space is divided into five classes:
A, B, C, D, and E.
Finding the classes in binary and dotted-decimal notation
Number of blocks and block size in classful IPv4 addressing
Note
In classful addressing, a large part of the available addresses were
wasted.
Note
Classful addressing, which is almost obsolete, is replaced with
classless addressing.
Classful Addressing-
Examples
• A subnet mask is a number that looks like an IP address.
• It shows TCP/IP how many bits are used for the network portion of the IP
address by covering up, or “masking,” the IP address’s network portion.
• Class A begins with (0-127.x.x.x)
0.0.0.0 to 127.255.255.255 use subnet mask = 255.0.0.0
• Class B begins with (128-191.x.x.x)
A block of 16 addresses granted to a small organization
Note
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.
Note
The first address in the block can be found by setting the rightmost
32 − n bits to 0s.
IPv6 ADDRESS
Note
An IPv6 address is 128 bits long.
IPv6 address in binary and hexadecimal colon notation
Abbreviated IPv6 addresses
Type prefixes for IPv6 addresses
Type prefixes for IPv6 addresses (continued)
Prefixes for provider-based unicast address
Multicast address in IPv6
Reserved addresses in IPv6
Local addresses in IPv6
IPV4 Vs IPV6
Three transition strategies
Dual stack
Tunneling strategy
Header translation strategy
Header translation