Network Layer
The network layer is concerned with getting packets from the source to the destination The Network layer is the lowest layer that deals with end to end transmission
Design Issues
These issues include the service provided to the transport layer Routing of the packets through the subnet Congestion control Connection of multiple networks together
Goals to design
The services should be independent from the subnet technology. The subnet should shielded of the subnets present Network addresses should use a uniform numbering plan even across LANs and WANs.
Connection oriented
The freedom of services provided to the Transport layer degenerates into two factions a) Connection oriented b) connection less service.
Differences
Issues
Initial setup
Connection
Required
Connectionless
Not possible
Destination
address Packet
only needed
during setup Guaranteed
on every
packet Not
differences
Control
Error
Done by
Network Lay Network Layer Yes
Done by
Transport Layer Network Layer No
Flow
Option Negation Possible
Identifiers
Yes
No
MIXTURES OF SERVICES
Layers Connection oriented service 7 6 5 4 3 2 1 Connectionless service
Connection oriented
N-CONNECT .request ( callee, aks_wanted,exp_wanted,qos, user_data ) N_CONNECT.indication ( ) N-CONNECT.responce ( responer, acks_wanted,exp_wanted, qos,user_data ) N-CONNECT.conformation( ) N_DISCONNECT.request (originator ,reason,user_ data,responding_address ) N-DISCONNECT.indication( )
Connection oriented
N-DATA.request (user_data) N-DATA.indication (user_data) N_DATA-ACKNOWLEDGE.request() N-DATA-ACKNOWLEDGE.indiction() N-DATA.request (user_data) N-DATA.indication (user_data) N_DATA-ACKNOWLEDGE.request() N-DATA-ACKNOWLEDGE.indiction() N-RESET.indication(originator,reason ) N-RESET.response() N-REPORT.confirm()
Connectionless oriented
N-UNITDATA.request (source_ address,destination_add, qos,user_data ) N-UNITDATA.indication( ) N-FACILITY.request (qos) N-FACILITY.indication(drstinati on_address,qos,reason ) N-REPORT.indication (destination_ address,qos,)
callee: NASP to be called caller:NASP used by calling transport entity Acks_wanted: Boolean flag
terminology
callee: NASP to be called caller:NASP used by calling transport entity Acks_wanted: Boolean flag
terminology
Exp_wanted :Boolean flag Qos:Quality of service User_data: Bytes transmitted but not examined
terminology
Responder: NASP connected to at the destination Originator:Specification of who initiated the N-RESET Reason: Specification of why the event happened
network layer
One of the functions of the network layer is to provide a uniform naming for the Transport layer to use
network layer
The second orIDI ( initial Domain Identifier ) field specifies the domain to which the number in the Dsp part belongs.
NASP address
The full NASP address is variable length upto 40 decimal digits or 20 bytes long.
NSAPS
In the analogy ,the telephone sockets are the NSAPs and the telephone numbers are the NSAP addresses.
INTERNAL ORGANIZATION
In subnet design (as opposed to OSI), We will use the subnet terms "IMPS"and "HOST" instead of "network layer" and "transport layer"
INTERNAL ORGANIZATION
The internal operation of the subnet,a connection is usually called a VIRTUAL CIRCUIT,
INTERNAL ORGANIZATION
the independent packets of the connectionless organization are DATAGRAMS, in analogy with telegrams
INTERNAL ORGANIZATION
Virtual circuits are generally used in subnets whose primary service is connection oriented
INTERNAL ORGANIZATION
In contrast with a datagram subnet no routes are worked out in advance ,even if the sevice is connection-oriented
INTERNAL ORGANIZATION
to forward packets for each of the currently open Virtual circuits passing through it.
INTERNAL ORGANIZATION
If packet flowing over a given virtual circuit always take through the subnet, each IMP must remember where
user 1
user2
user 1
queue
o packet
Network addresses
The format of OSI network addresses(NSAPs)
idp AFI IDI DSP
IDP:initialdomain part AFI:Authority and format indicator IDI:initialDomain identifier DSP:Domain specific part
subnet
h b c h
h
a d h e f
DIFFERENCES
VIRTUAL CIRCUITS ALLOW PACKETS TO CONTAIN CIRCUIT NUMBERS INSTEAD OF FULL DESTINATION ADDRESSES
comparision
Datagram each packet is routed independently In VC route is choosen when the VC is setup In Datagram congestion control is difficult In VC it is easy if enough buffers are allocated
Routing
In real function Network layer is routing packets from the source to the destination Te algorithms that choose the route and Data structures that they use are a major area of Network layer design
Routing algorithm
The routing algorithm is that part of the network layer software responsible for desiding which output line an incoming packet is to be transmitted on
routing Algorithms
The routing algorithms must be able to cope with the changes in the topology and traffic without requiring all jobs in all hosts to be abortedand the network to be rebooted every time some IMP crashes
Congestion
When too many packets are present in the subnet, performance degrades , this situation is called congestion
congestion
perfect desired
congestion
congestion
Congestion tends to feed upon itself and become worse If an IMP has no free buffer, it must ignore newly arriving packets.
Internetworking
Just as Congestion control is closely related to the primary function of the network layer, routing, so is Networking.
InterNetworking
Routing aside, another problem with Internetworking is that not all networks use the same protocols. Different protocols imply different packet formats,headers,flow- control,development rules,and more.
Internetworking
As a consequence , When packets move from network to network, conversions are necessary.
Adaptive Algorithms
attempt to change their routing decisions to reflect changes in topology and the current traffic.
Nonadaptive Algorithms
Non-adaptive routing algorithms do not base their routing decisions on the current state of the network, This Procedure is sometimes called static routing.
1. 2.
Examples:
Flooding Shortest Path Routing
Flooding Algorithm
Every incoming packet is sent out on every outgoing line except the one it arrived on, No routing table, no lookup! Problem: Vast number of duplicated packets
Flooding Uses
1. Used in small networks or limited horizon order 100s of nodes 2. Military Applications
1. Large number of routers is desirable 2. If one router is taken out (by a bomb?) flooding will
Undirected Weighted
Geographic Distance Mean queuing and transmission delay for a standard test packet as determined by hourly or daily B 7 test runs. C
2 A 6 G 2 E 2 4 H F 3 2 3 D 2
Dijkstras Algorithm
Each node is labeled (in parentheses) with its distance from the source node along the best known path.
B 2 A 6 G 2 E
7
2 4 F 3 2
C 3 D 2 H
G(-)
H(-)
G(6, A)
H(-)
E(4, B)
G(6, A)
H(-)
H(-)
1
G(5, E)
2 H(-)
G(5, E)
H(-)
G(5, E)
H(9, G)
G(5, E)
H(8, F)
G(5, E)
H(8, F)
G(5, E)
H(8, F)
G(5, E)
H(8, F)
B(2, A) A E(4, B)
G(5, E)
H(8, F)