Www.techstudent.co.cc UNIT 3 NETWORK LAYER. Network Layer It is responsible for end to end (source...

131
www.techstudent.co.cc UNIT 3 NETWORK LAYER

Transcript of Www.techstudent.co.cc UNIT 3 NETWORK LAYER. Network Layer It is responsible for end to end (source...

Page 1: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

UNIT 3

NETWORK LAYER

Page 2: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Network Layer

• It is responsible for end to end (source to destination) packet delivery, whereas the data link layer is responsible for node to node (hop to hop) packet delivery.

• The network layer provides the functional and procedural means of transferring variable length data sequences from a source to a destination via one or more networks while maintaining the quality of service, and error control functions.

• The network layer deals with transmitting information all the way from its source to its destination - transmitting from anywhere, to anywhere.

Page 3: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Network Layer Design Issues

• Services Provided to the Transport Layer

• Internal organization of the n/w layer

Page 4: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Services Provided to Transport Layer

• Provides services at n/w layer/transport layer interface.• It is the i/f betwn carrier and customer• i.e., the subnet boundary.• Its job is to deliver packets given to it by customers.

N/w layer services are designed with the following goals:

1. The service should be independent of the subnet technology.

2. The transport layer should be shielded from the number, type and topology of subnets present.

3. The n/w addrs made available to the transport layer should use a uniform numbering plan, across LANs and WANs

Page 5: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

• Divided into 2 groups based on whether n/w layer should provide connection-oriented or connectionless service

• 1st group –subnet unreliable so host should do flow ctrl & error ctrl– repn by internet community– Connectionless– Primitives SEND PACKET & RECEIVE PACKET– No ordering & flow ctrl– Each pkt must carry full destn addrs

• 2nd grp-subnet should provide reliable connection-oriented service– Repn by telephone companies1. Sending side must set up connection2. 2 process can enter into negotiation abt parameters, quality, cost of

service3. Commn in both direction & pkts delivered in sequence4. Flow ctrl provided automatically

Page 6: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Internal Organization of Network Layer

Two different organizations are possible, depending on the type of service offered

1. Virtual circuit• Used in subnets whose primary service is connection-oriented• Its idea is to avoid to choose a new route for every packet sent.• i.e., when a connection is established ,a route from the src to destn is

chosen as part of the connection setup and remembered.• The route is used for all traffic flowing over the connection (like

telephone s/m)• When the connection is released the VC is also terminated

2. Datagrams • No routes are worked out in advance.• Each packet is routed independently of its predecessors.• Successive packet may follow different routes.• More robust and adapt to failures and congestion more easily than

VC subnets

Page 7: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Implementation of Connectionless Service

• Packets are injected into the subnet individually • Routed independently of each other. • Packets are called datagrams (in analogy with telegrams) and

the subnet is called a datagram subnet. .• Each datagram contains full destination addrs• Every router has an internal table telling it where to send

packets for each possible destination. • Each table entry is a pair consisting of a destination and the

outgoing line to use for that destination. Only directly-connected lines can be used.

• For example, A has only two outgoing lines—to B and C—so every incoming packet must be sent to one of these routers, even if the ultimate destination is some other router. A's initial routing table is shown in the figure under the label ''initially.''

Page 8: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Figure. Routing within a datagram subnet.

Page 9: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Implementation of Connection-Oriented Service

• When a connection is established, a route from the source machine to the destination machine is chosen as part of the connection setup and stored in tables inside the routers.

• Same route is used for all traffic flowing over the connection• When the connection is released, the virtual circuit is also

terminated. • Each router should remember where to forward packets• Each packet carries an identifier (virtual circuit number)

telling which virtual circuit it belongs to• Every router maintain a table with one entry per open virtual

ckt passing through it

Page 10: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Comparison of Virtual-Circuit and Datagram Subnets

Page 11: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

ROUTING ALGORITHMS

• Major function of the n/w layer is routing packets from src m/c to dest m/c.

• Routing algorithm is the part of the n/w layer s/w responsible for deciding which output line an incoming packet should be txed on.

• If the subnet uses datagram internally ,this decision must be made anew for every arriving data packet since the best route may have changed since last time.

• If the subnet uses VC internally, routing decisions are made only when a new VC is being setup.

• Then data packets follow the previously established route.• This is also called session routing ,because a route remains in

force for an entire user session

Page 12: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Properties of Routing Algorithm

• Correctness

• Simplicity

• Robustness –able to cope with changes in topology & traffic

• Stability

• Fairness and

• Optimality

Page 13: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Routing algorithms Major categories:

Categorized into 2:• Non adaptive and Adaptive:Non adaptive:• Do not base their routing decisions on measurements or estimates

of the current traffic and topology.• Instead the choice of the route to use to get from I to J (for all I

and J) is computed in advance, off-line and downloaded to the routers when the n/w is booted.

• This procedure is called static routing.Adaptive algorithms:• Change their routing decisions to reflect changes in the topology

and the traffic as well.• Called dynamic routing.• Adaptive algorithms differ in where they get infrmn (eg: locally

from near by routers, or from all routers) ,when they change the route, and what metric is used for optimization (eg: distance).

Page 14: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Optimality Principle

• This is a general stmnt about optimal routes without regard to n/w topology or traffic.

• If router J is on the optimal path from router I to router K, then the optimal path from J to K also falls along the same route

• Optimal routes from all sources to given destn form a tree rooted at the destination. tree is called a sink tree

• The distance metric is the number of hops• A sink tree is not necessarily unique• The goal of all routing algorithms is to discover and use the

sink trees for all routers. • It does not contain any loops, so each packet will be delivered

within a finite number of hops

Page 15: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

A subnet. A sink tree for router B.

Page 16: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Static Routing Algorithms

• Shortest Path Routing

• Flooding

• Flow-Based Routing

Page 17: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Shortest Path RoutingConcept:

• Build a graph of the subnet– node of the graph represents a router– arc of the graph represents a communication line (link).

• To choose a route betwn a given pair of routers ,the algorithm finds the shortest path betwn them on the graph.

• Also called Dijkstra’s algorithm.• Each node is labeled with its distance from the src node along the best

known path.• Initially, no paths are known , so all nodes are labeled with dot.• As the algorithm proceeds and paths are found ,labels may change,

reflecting better paths.• A label may either be tentative or permanent.• Initially all labels are tentative.• When it is discovered that a label represents the shortest possible path from

the src to that node , it is made permanent and never changed thereafter.

Page 18: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

The first 5 steps used in computing the shortest path from A to D. The arrows indicate the working node

Page 19: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

FloodingConcept:• Every incoming packet is sent out on every outgoing line expect

the one it arrived on.Problem:• It generates duplicate packets.Solution:• Some measures are used ,like hop counter contained in the header

of each packet.• Which is decremented at each hop, with the packet is being

discarded when counter reaches 0.• The hop counter is initialized to the length of the path from src to

destn.• An alternative soln for damming the flood is to keep track of

which packets have been flooded, to avoid sending them out a second time.

• For this a source router put a seq. no. in each packet it rxes from its hosts.

Page 20: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

• Each router then needs a list per source router telling which seq. nos. originating at that source have already been seen.

• If an oncoming packet is on the list, it is not flooded• A more practical one is selective flooding.• In this algorithm the routers send every incoming

packet only on those lines that r approximately in the right direction.

Application:

It is not so practical but useful in• 1)Military applications• 2)Distributed database-to update all dbs concurrently• 3)As a metric for comparing other routing algorithms

Page 21: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Flow-Based Routing• This algorithm uses both topology and load for routing.• In some n/ws , the mean data flow betwn each pair of nodes is

relatively stable and predictable.• Under conditions in which the avg traffic from i to j is known in

advance and ,to a reasonable approximation ,constant in time, it is possible to analyze the flows mathematically to optimize the routing.

• Idea is: if the capacity and average flow of a line r known , it is possible to compute the mean packet delay on that line from queuing theory.

• From the mean delay of all the lines it is easy to calculate a flow-weighted avg to get the mean packet delay of the whole subnet.

• To use this, first- subnet topology must known, second- traffic matrix Fij must b given third- line capacity matrix Cij must b available and finally a routing algorithm must b chosen.

Page 22: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Routing

Page 23: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Flow-Based Routing

• This algorithm uses both topology and load for routing.• In some n/ws , the mean data flow betwn each pair of nodes is

relatively stable and predictable.• Under conditions in which the avg traffic from i to j is known in

advance and ,to a reasonable approximation ,constant in time, it is possible to analyze the flows mathematically to optimize the routing.

• Idea is: if the capacity and average flow of a line are known , it is possible to compute the mean packet delay on that line from queuing theory.

• From the mean delay of all the lines it is easy to calculate a flow-weighted avg to get the mean packet delay of the whole subnet.

• To use this, first- subnet topology must known, second- traffic matrix Fij must b given third- line capacity matrix Cij must be available and finally a routing algorithm must be chosen.

Page 24: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

a) Subnet with line capacities shown

b) The traffic in packets/sec and the routing matrix

Page 25: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

• Frm fig a, the weight on the arcs give the capacities Cij.

• fig b has an entry for each source-destn pair.

• Eg: 3 packets/sec go from B to D and they use route BFD to get there.

• By this infrmn, it is easy to calculate the total in line i, λi.

• Eg: the B-D traffic gives 3 packets/sec to the BF line and also 3 packets/sec to FD line.

• The mean number of packets /sec on each line is given by μCi.

• The mean delay for the each line is derived from the queuing theory formula: T=1/ μC- λ

Page 26: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Dynamic Routing Algorithms

• Distance Vector Routing

• Link State Routing

Page 27: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Distance Vector Routing

• Each router maintain a table (i.e, a vector) giving the best known distance to each destination and which line to use to get there.

• These tables are updated by exchanging information with the neighbors.

• Also called Bellman-Ford routing algorithm and the Ford-Fulkerson algorithm

• Each router maintains a routing table containing one entry for each router in the subnet.

• This entry contains two parts:– preferred outgoing line to use for that destination – estimate of the time or distance to that destination.

• The metric used might be: number of hops, time delay in ms etc.

Page 28: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

• Router is assumed to know the distance to each of its neighbors.

Eg:• Assume that the delay is used as a metric and the router knows

the delay to each of its neighbors.

• Once every T ms each router sends to each neighbor a list of its estimated delay to each destn.

• It also receives a similar list from each neighbor.

• By performing this calculation for each neighbor ,a router can find out which estimate seems the best and use that estimate and the corresponding line in its new routing table.

Page 29: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

(a) A subnet. (b) Input from A, I, H, K, and the new routing table for J.

Page 30: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

• Suppose that J measured its delay to its neighbors A,I H and K as 8,10,12 and 6 msec respectively.

• How J computes its new route to router G?

• It knows that it can reach A in 8 ms and A claims to be delay of 26 msec.

• Similarly , it computes the delay to G via I,H, and K as 41(31+10), 18(16+2) and 37(31+6) msec respectively.

• The best of these value is 18 msec, and that the route to use is via H.

Page 31: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Count-to-Infinity Problem• Distance vector routing has a serious drawback in practice: although

it may converges to the correct answer, it may do so slowly.• In particular, it reacts rapidly to good news but slowly to bad news.

Eg:• Suppose A is down initially and all other routers know this. i.e., they

all have recorded the delay to A as infinity.• When A comes up ,the other routers learn about it via the vector

exchanges.• At the time of first exchange ,B learns that its left neighbor has a 0

delay to A.• B now makes an entry into its routing table that A is 1 hop away to

the left.• On the second exchange ,C learns that B has a path of length 1 to A,

so it updates its routing table to indicate a path of length 2.• This process continues and after 4th exchange E also get infrmn that

A is up and have a distance of 4 hops.

Page 32: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

• Consider the case in which all the lines and routers are initially up.

• Routers B,C D and E have distances to A of 1,2,3 and 4 respectively.

• Suddenly A goes down ,or the line betn A and B is cut .• At the first packet xchg B does not hear anything from A.• Then C says “ don’t worry I have a path to A of length 2”.• B now thinks that it can reach A via C, with a path length of

3.• D and E do not update their entries for a on the first exchg.• On the second xchg C notices that each of its neighbors

claims to have a path to A of length 3.• It picks one of them at random and makes its new distance

to A 4.• Gradually all the routers work their way up to infinity• This problem is known as count-to-infinity

Page 33: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Count-to-Infinity Problem

Page 34: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Split Horizon Hack

• Is the solution for count-to-infinity problem.• This algorithm works the same way as distance vector

routing, except that the distance to X is not reported on the line that packets for r sent on.

• i.e., C tells D the truth but C tells B that its distance to A is infinite.

• Similarly D tells the truth to E but lies to C.• So when A goes down , on the first xchg ,B discovers that

the direct line is gone ,and C is reporting an infinite distance to A.

• Since neither of its neighbors can get to A, B sets its distance also infinity.

• On the next xchg .C hears that A is unreachable from both of its neighbors ,so it makes A unreachable too.

• Using split horizon the bad news propagates one hop per exchange.

Page 35: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Link State Routing

Each router must do the following:

1)Discover its neighbors, and learn their network addresses.

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.

Page 36: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

1.Learning about the Neighbors

• When a router is booted its first task is to learn who its neighbors are.

• By sending a special. HELLO packet on each point-to-point line.

• The router on the other end is expected to send back a reply telling who it is.

• These names must be globally unique.

Page 37: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

2. Measuring Line Cost

• The LSR algrthm requires each router to know the delay to each of its neighbors.

• The most direct way is to send a spl. ECHO packet over the line that the other side is required to send back immediately.

• By measuring the round trip time and dividing it by two , the sending router can get a reasonable estimate of the delay.

Page 38: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

3. Building Link State Packets

• Once the infrmn needed for the xchg has been collected, the next step is for each router to build a packet containing all the data.

• The packet starts with the identity of the sender , followed by a seq. no. , age and a list of neighbors.

• For each neighbor the delay to that neighbor is given.

Page 39: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Building Link State Packets

(a) A subnet. (b) The link state packets for this subnet.

Page 40: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

• The basic idea is to use flooding to distribute the link state packets.

• To keep the flood in check, each packet contains a seq no. that is incremented for each new packet sent.

4. Distributing the Link state packets

The packet buffer for router B

Page 41: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

• Each row here corresponds to a recently arrived ,but not yet fully processed ,link state packet.

• In fig, the link state packet from A arrived directly ,so it must b sent to C and F and acknowledged to A, shown by flag bytes.

• Similarly packets from F has to b forwarded to A and C and acknowledged to F.

Page 42: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

• Once router has accumulated a full set of link state packets ,it can construct the entire subnet graph.

• Every link is ,in fact represented twice, once for each direction.

• Then Dijkstra’s algorithm can b run locally to construct the shortest path to all possible destinations.

• The result of this algorithm can be installed in the routing tables and normal operation resumed.

2 widely used LSR protocols are OSPF (OpenShortestPathFirst) and IS-IS (IntermediateSystem-IntermediateSystem)

5. Computing the new Route

Page 43: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Link State Routing

Page 44: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Link State Routing

Each router must do the following:

1)Discover its neighbors, and learn their network addresses.

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.

Page 45: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

1.Learning about the Neighbors

• When a router is booted its first task is to learn who its neighbors are.

• By sending a special HELLO packet on each point-to-point line.

• The router on the other end is expected to send back a reply telling who it is.

• These names must be globally unique.

Page 46: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

2. Measuring Line Cost

• The LSR algorithm requires each router to know the delay to each of its neighbors.

• The most direct way is to send a spl. ECHO packet over the line that the other side is required to send back immediately.

• By measuring the round trip time and dividing it by two , the sending router can get a reasonable estimate of the delay.

Page 47: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

3. Building Link State Packets

• Once the infrmn needed for the xchg has been collected, the next step is for each router to build a packet containing all the data.

• The packet starts with the identity of the sender , followed by a seq. no. , age and a list of neighbors.

• For each neighbor the delay to that neighbor is given.

Page 48: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

4.Building Link State Packets

(a) A subnet. (b) The link state packets for this subnet.

Page 49: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

• The basic idea is to use flooding to distribute the link state packets.

• To keep the flood in check, each packet contains a seq no. that is incremented for each new packet sent.

• When a new link state packet comes in, it is checked against the list of packets already seen

• If it is new, it is forwarded on all lines except the one it arrived on.

• If it is a duplicate, it is discarded.• If a packet with a sequence number lower than the

highest one seen so far ever arrives, it is rejected as being obsolete since the router has more recent data

4. Distributing the Link state packets

Page 50: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Problems of algorithm

• Seq no: wrap around –causes confusion– Soln:- use 32 bit seq no:

• Router crash –lose track of seq no:• Seq no: corrupted

– Soln:- include age of each pkt & decrement it 1/sec

– When age becomes 0,info is discarded from router

– Age also decremented by each router during initial flooding process

Page 51: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

• When link state packet comes in to a router for flooding, it is not queued for transmission immediately. It is first put in a holding area to wait a short while.

• If another link state packet from the same source comes in before the first packet is transmitted, their sequence numbers are compared.

• If they are equal, the duplicate is discarded. • If they are different, the older one is thrown out. • To guard against errors on the router-router lines, all

link state packets are acknowledged.• When a line goes idle, the holding area is scanned in

round-robin order to select a packet or acknowledgement to send.

Page 52: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

• Each row here corresponds to a recently arrived ,but not yet fully processed ,link state packet.

• In fig, the link state packet from A arrived directly ,so it must be sent to C and F and acknowledged to A, shown by flag bytes.

• Similarly packets from F has to be forwarded to A and C and acknowledged to F.

The packet buffer for router B

Page 53: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

• Once router has accumulated a full set of link state packets ,it can construct the entire subnet graph.

• Every link is ,in fact represented twice, once for each direction.

• Then Dijkstra’s algorithm can be run locally to construct the shortest path to all possible destinations.

• The result of this algorithm can be installed in the routing tables and normal operation resumed.

2 widely used LSR protocols are OSPF (OpenShortestPathFirst) and IS-IS (IntermediateSystem-IntermediateSystem)

5. Computing the new Route

Page 54: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Hierarchical Routing

Page 55: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Hierarchical Routing

• As n/w grow in size ,the router routing tables grow proportionally.

• Memory ,CPU time and bandwidth usage also increases.• The n/w may grow to the point where it is no longer

feasible for every router to have an entry for every other router –so the routing will have to be done hierarchically.

• In this the routers are divided into regions, with each router knowing all the details about how to route packets to destinations within its own region, but knowing nothing about the internal structure of other region.

• For huge n/ws , a 2 level hierarchy may be insufficient.• It may be necessary to group regions into clusters, the

clusters into zones, the zones into groups etc.

Page 56: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Page 57: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

• Fig. shows a quantitative eg. of routing in a 2 level hierarchy with 5 regions.

• The full routing table for router 1A has 17 entries.• When routing is done hierarchically there r entries for all the

local routers as before, but all other regions hav been condensed in to a single router , so all traffic for region 2 goes via 1B-2A line, but the rest of the remote traffic goes via 1c-3B line.

• Hierarchical routing has reduced the table from 17 to 7 entries.• As the ratio of the number of regions to the number of routers

per region grows, the savings in the table space increases.• A problem with this is increased path length.• Eg: the best route from 1A to 5C is via region 2, but with

hierarchical routing all traffic to region 5 goes via region 3, becos it is better for most destns in region 5.

Page 58: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Routing for Mobile Hosts

Page 59: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Routing for Mobile Hosts

• Hosts that never move are said to be stationary. • Migratory hosts are basically stationary hosts who

move from one fixed site to another from time to time but use the network only when they are physically connected to it.

• Roaming hosts actually compute on the run and want to maintain their connections as they move around.

• The term mobile hosts to mean either of the latter two categories, that is, all hosts that are away from home and still want to be connected.

Page 60: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

• All users are assumed to have a permanent home location that never changes.

• Users also have a permanent home address that can be used to determine their home locations

• The routing goal in systems with mobile hosts is to make it possible to send packets to mobile hosts using their home addresses and have the packets efficiently reach them wherever they may be.

• The world is divided up geographically into small units called areas, where an area is typically a LAN or wireless cell.

• Each area has one or more foreign agents, which are processes that keep track of all mobile hosts visiting the area. In addition, each area has a home agent, which keeps track of hosts whose home is in the area, but who are currently visiting another area.

Page 61: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

• When a new host enters an area, either by connecting to it (e.g., plugging into the LAN) or just wandering into the cell, his computer must register itself with the foreign agent there. The registration procedure works :

1. Periodically, each foreign agent broadcasts a packet announcing its existence and address. A newly-arrived mobile host may wait for one of these messages, but if none arrives quickly enough, the mobile host can broadcast a packet saying: Are there any foreign agents around?

2. The mobile host registers with the foreign agent, giving its home address, current data link layer address, and some security information.

3. The foreign agent contacts the mobile host's home agent and says: One of your hosts is over here. The message from the foreign agent to the home agent contains the foreign agent's network address. It also includes the security information to convince the home agent that the mobile host is really there.

4. The home agent examines the security information, which contains a timestamp, to prove that it was generated within the past few seconds. If it is happy, it tells the foreign agent to proceed.

5. When the foreign agent gets the acknowledgement from the home agent, it makes an entry in its tables and informs the mobile host that it is now registered.

Page 62: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

hjkjhk

Page 63: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

• When a packet is sent to a mobile user it is routed to users home LAN (step 1)

• Home agent takes up the packet and looks up mobile users new location and finds address of the foreign agent handling the mobile host

• The home agent then does two things. • First, it encapsulates the packet in the payload field of an outer

packet and sends the latter to the foreign agent This mechanism is called tunneling

• After getting the encapsulated packet, the foreign agent removes the original packet from the payload field and sends it to the mobile host as a data link frame.

• Second, the home agent tells the sender to henceforth send packets to the mobile host by encapsulating them in the payload of packets explicitly addressed to the foreign agent instead of just sending them to the mobile host's home address (step 3).

• Subsequent packets can now be routed directly to the host via the foreign agent (step 4), bypassing the home location entirely.

Page 64: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

CONGESTION CONTROL ALGORITHMS

Page 65: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Congestion Control AlgorithmsWhen too many packets are present in the

subnet , performance degrades.-called congestion

Page 66: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

General Principles of Congestion Control

• Congestion control solutions can b of 2 types:• Open loop and Closed loop• Open loop solutns attempt to solve the problem by

good design, to make sure it does not occur in the first place.

• Closed loop solutions are based on the concept of f/b loop. This has 3 parts when applied to congestion control– Monitor the system detect when and where congestion

occurs.– Pass information to where action can be taken.– Adjust system operation to correct the problem

Page 67: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Congestion Prevention Policies

Page 68: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Traffic Shaping• An open loop method to help manage congestion is

forcing the packets to be transmitted at a more predictable rate.

• This approach is widely used in ATM n/ws and is called traffic shaping.

• When a VC is set up the user and the subnet agree on a certain traffic pattern for that circuit.

• Monitoring a traffic flow is called traffic policing.• Agreeing to a traffic shape and policing it afterward r

easier with VC subnet, than with Datagram subnets.

Page 69: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Leaky Bucket Algorithm

(a) A leaky bucket with water. (b) a leaky bucket with packets.

Page 70: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

• Fig a:A bucket with a small hole at the bottom ,no matter at what rate water enters ,the outflow is at a constant rate ,when there is any water in the bucket and zero when the bucket is empty.

• Also once the bucket is full, any additional water entering it spills over the sides and is lost.

• Fig b: this can also b applied to packets• Conceptually each host is connected to the n/w by an interface

containing ,a leaky bucket, ie, a finite internal queue.• If a packet arrives at the Queue when the queue is full , the

packet is discarded.• It was first proposed by Turner and is called Leaky Bucket

Algorithm.• It is simply a single-server Queuing system with constant

service time.

Page 71: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

• The host is allowed to put one packet /clock tick onto the n/w.

• This mechanism turns an uneven flow of packets from the user processes inside the host into an even flow of packets onto the n/w, smoothing out bursts and greatly reducing the chances of congestion.

• It is easy to implement a leaky bucket by using a finite queue.

• When a packet arrives , if there is room on the Q it is appended to the Q ; otherwise it is discarded.

• At every clock tick 1 packet is txed (unless the Q is empty)

Page 72: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Token Bucket Algorithm• The LBA enforces a rigid o/p pattern at the

avg rate, no matter how bursty the traffic is.

• It is better to allow the o/p to speed up somewhat when large bursts arrive- an algrthm used for this purpose is known a token bucket algrthm.

• In this ,the leaky bucket holds tokens, generated by a clock at the rate of one token every Δt sec.

Page 73: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Page 74: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

• In fig a) a bucket holding 3 tokens ,with 5 packets waiting to b txed.

• For a packet to b txed , it must capture and destroy 1 token.• In fig b: 3 of the 5 packets hav gone through, but the other 2 r

stuck waiting for 2 more tokens to b generated.• This algrthm does allow saving, upto the Max. size of the bucket

, n.• This property means that bursts of upto n packets can b sent at

once, allowing some burstiness in the o/p stream and giving faster response to sudden bursts of i/p.

• Another difference is the token bucket algrthm throws away tokens when the bucket fills up but never discards packets.

• But LBA discards packets when the bucket fills up.

Page 75: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

INTERNETWORKING

Page 76: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Internetworking

• Two or more networks are connected to form an internet

• ISSUES:• variety of different networks

– installed base of different networks is large – computers and networks get cheaper, the place where

decisions get made moves downward in organizations. – different networks (e.g., ATM and wireless) have

radically different technology, so it should not be surprising that as new hardware developments occur, new software will be created to fit the new hardware.

Page 77: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Devices Used• It is necessary to insert devices at junction between 2 n/ws to

handle necessary conversion as packets move from one n/w to another

• Name used for device depends on layer that does the work• Layer 1: Repeaters –copy individual bits between cable

segments• Layer 2: Bridges –store & forward data link frames between

LANs• Layer 3: Multiprotocol Routers –forward pkts between dissimilar

n/ws• Layer 4: Transport gateways –connect byte streams in transport

layer• Above 4: Application gateways

• Gateways –any device that connect 2 or more dissimilar n/ws

Page 78: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Devices Used

• Repeaters: are low-level devices that just amplify or regenerate weak signals.

• Bridges: are store and forward devices .it accepts an entire frame and passes it up to the DLL.

• Multiprotocol routers conceptually similar to bridges ,except that they are found in n/w layer. They just take incoming packets from 1 line and forward them on another, but the line may belong to different n/ws and different protocols.

• Transport gateways: make a connection betwn 2 n/w at the transport layer.

• Application gateways: connects 2 parts of an application in the application layer

Page 79: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

How Networks DifferSome of the many ways networks can differ.

5-43

Page 80: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Concatenated Virtual Circuits

• 2 styles of internetworking– Connection-oriented concatenation of virtual ckt subnets– Datagram internet style

• The subnet sees that the destination is remote and builds a virtual circuit to the router nearest the destination network.

• Then it constructs a virtual circuit from that router to an external gateway (multiprotocol router).

• This gateway records the existence of the virtual circuit in its tables and proceeds to build another virtual circuit to a router in the next subnet.

• This process continues until the destination host has been reached.

Page 81: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Concatenated Virtual Circuits

Internetworking using concatenated virtual circuits.

Page 82: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Connectionless Internetworking

A connectionless internet.

Page 83: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

• This model does not require all packets belonging to one connection to traverse the same sequence of gateways.

• datagrams from host 1 to host 2 are shown taking different routes through the internetwork.

• A routing decision is made separately for each packet depending on the traffic at the moment the packet is sent.

• This strategy can use multiple routes and thus achieve a higher bandwidth than the concatenated virtual-circuit model.

• On the other hand, there is no guarantee that the packets arrive at the destination in order, assuming that they arrive at all.

Page 84: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

TunnelingTunneling a packet from Paris to London.

Page 85: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

• Consider the case in which 2 TCP/IP based Ethernet , one at Paris and another at London and a PTT Wan in betwn wants to communicate.

• The solutn to this problem is a technique called tunneling.• To send an IP packet to host 2 ,host 1 constructs the packets

containing the IP addrs of host 2, inserts it into the Ethernet frame addresses to the Paris multiprotocol router , and puts it into the Ethernet.

• When the multiprotocol router gets the frame, it removes the IP packet , inserts it in the payload field of the WAN n/w layer packet, and addresses the later to the WAN addrs of the London multi protocol router.

• When it gets there, the London router removes the IP packet and sends it to the host 2 inside an Ethernet frame.

• Here the WAN can be seen as a big tunnel extending from one multiprotocol router to another.

Page 86: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Tunneling

Tunneling a car from France to England.

Page 87: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Internetwork Routing

(a) An internetwork. (b) A graph of the internetwork.

Page 88: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

• In fig a: 5 n/ws are connected with 6 multi protocol routers.

• Fig b: shows the graph of the n/w.• Once the graph has been constructed, known routing

algorithm like distance vector and link state algorithm can be applied to the set of multiprotocol routers.

• This gives a 2 level routing algorithm: within each n/w an Interior gateway protocol is used, but between n/ws an exterior gateway protocol is used.

• Since each n/w is independent , they all use different algorithms.

• Becos each n/w is independent of all the others , it is often referred to as an AutonomousSystem (AS)

Page 89: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

NETWORK LAYER IN THE INTERNET

Page 90: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Collection of Subnetworks

The Internet is an interconnected collection of many networks.

Page 91: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

• At the network layer, the Internet can be viewed as a collection of subnetworks or Autonomous Systems (ASes) that are interconnected.

• There is no real structure, but several major backbones exist.

• These are constructed from high-bandwidth lines and fast routers.

• Attached to the backbones are regional (midlevel) networks, and attached to these regional networks are the LANs at many universities, companies, and Internet service providers.

• The linchpin that holds the whole Internet together is the network layer protocol, IP (Internet Protocol).

Page 92: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Communication in the Internet works as follows

• The transport layer takes data streams and breaks them up into datagrams.

• In theory, datagrams can be up to 64 Kbytes each, but in practice they are usually not more than 1500 bytes (so they fit in one Ethernet frame).

• Each datagram is transmitted through the Internet, possibly being fragmented into smaller units as it goes.

• When all the pieces finally get to the destination machine, they are reassembled by the network layer into the original datagram.

• This datagram is then handed to the transport layer, which inserts it into the receiving process' input stream

Page 93: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

The IP protocol

Page 94: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

• The Version field keeps track of which version of the protocol the datagram belongs to .

• Since the header length is not constant, a field in the header, IHL, is provided to tell how long the header is, in 32-bit words .

• The Type of service field intended to distinguish between different classes of service. Various combinations of reliability and speed are possible.

• The Total length includes everything in the datagram—both header and data. The maximum length is 65,535 bytes .

• The Identification field is needed to allow the destination host to determine which datagram a newly arrived fragment belongs to. All the fragments of a datagram contain the same Identification value.

• Next comes an unused bit and then two 1-bit fields. DF stands for Don't Fragment. It is an order to the routers not to fragment the datagram because the destination is incapable of putting the pieces back together again

Page 95: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

• MF stands for More Fragments. All fragments except the last one have this bit set. It is needed to know when all fragments of a datagram have arrived.

• The Fragment offset tells where in the current datagram this fragment belongs. All fragments except the last one in a datagram must be a multiple of 8 bytes.

• The Time to live field is a counter used to limit packet lifetimes. It is supposed to count time in seconds, allowing a maximum lifetime of 255 sec.

• The Protocol field tells it which transport process to give it to. TCP is one possibility, but so are UDP and some others .

• The Header checksum verifies the header only. Such a checksum is useful for detecting errors generated by bad memory words inside a router.

• The Source address and Destination address indicate the network number and host number.

Page 96: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Some of the IP options

Security –how secret the information is Strict source routing –gives the complete path from source to

destination as a sequence of IP addresses Loose source routing –requires the pkt to traverse the list of

routers specified and in the order specified Record route –tells the router along the path to append their IP

address to option field Timestamp –each router records a 32-bit timestamp. This option

mainly used for debugging routing algorithms

Page 97: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

IP Addresses• Every host and router on the Internet has an IP

address, which encodes its network number and host number.

• The combination is unique: in principle, no two machines on the Internet have the same IP address.

• All IP addresses are 32 bits long and are used in the Source address and Destination address fields of IP packets.

• IP address does not actually refer to a host.• It really refers to a network interface, so if a host is on

two networks, it must have two IP addresses. • Machines connected to multiple n/ws have different IP

address on each n/w

Page 98: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

IP address formats.

Page 99: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

N/W Host (bits)

• Class A: 7 (2 7 n/ws) 24( 2 24hosts)

• Class B: 14 16

• Class C: 21 8

Page 100: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

• The class A, B, C, and D formats allow for up to 128 networks with 16 million hosts each, 16,384 networks with up to 64K hosts, and 2 million networks (e.g., LANs) with up to 256 hosts each.

• Also supported is multicast, in which a datagram is directed to multiple hosts.

• Addresses beginning with 1111 are reserved for future use. Over 500,000 networks are now connected to the Internet, and the number grows every year.

• Network numbers are managed by a nonprofit corporation called ICANN (Internet Corporation for Assigned Names and Numbers) to avoid conflicts. In turn, ICANN has delegated parts of the address space to various regional authorities, which then dole out IP addresses to ISPs and other companies.

• Network addresses, which are 32-bit numbers, are usually written in dotted decimal notation. In this format, each of the 4 bytes is written in decimal, from 0 to 255. For example, the 32-bit hexadecimal address C0290614 is written as 192.41.6.20.

• The lowest IP address is 0.0.0.0 and the highest is 255.255.255.255.

Page 101: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

• The values 0 and -1 (all 1s) have special meanings• The value 0 means this network or this host. • The value of -1 is used as a broadcast address to mean

all hosts on the indicated network.

Special IP addresses.

Page 102: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

• The IP address 0.0.0.0 is used by hosts when they are being booted.

• IP addresses with 0 as network number refer to the current network. These addresses allow machines to refer to their own network without knowing its number.

• The address consisting of all 1s allows broadcasting on the local network, typically a LAN. The addresses with a proper network number and all 1s in the host field allow machines to send broadcast packets to distant LANs anywhere in the Internet.

• All addresses of the form 127.xx.yy.zz are reserved for loopback testing. Packets sent to that address are not put out onto the wire; they are processed locally and treated as incoming packets. This allows packets to be sent to the local network without the sender knowing its number.

Page 103: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Subnets• All hosts in a n/w must have same n/w number.• This property of IP addressing can cause problems as n/ws

grow.• In case of class C if no. of m/cs increased more than 254 another

class C n/w address is needed.• Eventually it end up with many LANs , each with its own router

and each with its own class C n/w number• As the number of distinct local n/ws increases, managing them

can become a serious problem.• The solution to this problem is to allow a n/w to be split into

several parts for internal use but still act like a single n/w to the outside world.

• These parts are called subnets.• Outside the n/w , the subnetting is not visible, so allocating a new

subnet does not require contacting NIC or changing any external db

Page 104: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Subnet Mask• A mask used to determine what subnet an IP address belongs to.• An IP address has two components, the network address and the host

address. • For example, consider the IP address 192.228.17.57• Assuming this is part of a Class C network, the first two numbers

(192.228) represent the Class C network address, and the second two numbers (17.57) identify a particular host on this network.

• Subnetting enables the network administrator to further divide the host part of the address into two or more subnets.

• In this case, a part of the host address is reserved to identify the particular subnet.

• IP address in binary format. The full address is: • 11000000.11100100.00010001.00111001• The Class C network part is: • 11000000.11100100 • and the host address is • 00010001.00111001

Page 105: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

• Say 2 routers R1 and R2 are configured with a subnet mask with the value 255.255.255.224

• If a datagram with the destn address 192.228.17.57 arrives at R1 from the rest of the internet, R1 applies the subnet mask to determine that this adrs refers to subnet 1, which is say LAN X. and so forward the same to LAN X.

• Binary Decimal• IP Adrs 11000000.11100100.00010001.00111001 192.228.17.57• Subnet Mask 11111111.11111111.11111111.11100000 255.255.255.224• Bitwise AND 11000000.11100100.00010001.00100000 192.228.17.32• Subnet no. 11000000.11100100.00010001.001 1• Host no. 00000000.00000000.00000000.00011001 25

Page 106: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Subnets

A class B network subnetted into 64 subnets.

Page 107: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Internet Control Protocols• In addition to IP , which is used for data

transfer , the internet has several control protocols used in the n/w layer, which are:– ICMP

– ARP

– RARP

– BOOTP

Page 108: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

1.Internet Control Message Protocol (ICMP)

• The operation of the Internet is monitored closely by the routers.

• When something unexpected occurs, the event is reported by the ICMP ,which is also used to test the Internet .

• Each ICMP message type is encapsulated in an IP packet.

Page 109: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

The principal ICMP message types.

Page 110: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

• The DESTINATION UNREACHABLE message is used when the subnet or a router cannot locate the destination or when a packet with the DF bit cannot be delivered because a ''small-packet'' network stands in the way.

• The TIME EXCEEDED message is sent when a packet is dropped because its counter has reached zero. This event is a symptom that – packets are looping, – there is enormous congestion, or– the timer values are being set too low.

• The PARAMETER PROBLEM message indicates that an illegal value has been detected in a header field. This problem indicates a bug in the sending host's IP software or possibly in the software of a router transited.

Page 111: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

• The SOURCE QUENCH message was formerly used to throttle hosts that were sending too many packets. When a host received this message, it was expected to slow down. It is rarely used any more because when congestion occurs, these packets tend to add more fuel to the fire.

• The REDIRECT message is used when a router notices that a packet seems to be routed wrong. It is used by the router to tell the sending host about the probable error.

• The ECHO and ECHO REPLY messages are used to see if a given destination is reachable and alive. Upon receiving the ECHO message, the destination is expected to send an ECHO REPLY message back.

• The TIMESTAMP REQUEST and TIMESTAMP REPLY messages are similar, except that the arrival time of the message and the departure time of the reply are recorded in the reply. This facility is used to measure network performance.

Page 112: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

2.The Address Resolution Protocol (ARP)

• Although every machine on the Internet has one (or more) IP addresses, these cannot actually be used for sending packets because the data link layer hardware does not understand Internet addresses.

• Nowadays, most hosts at companies and universities are attached to a LAN by an interface board that only understands LAN addresses.

• For example, every Ethernet board ever manufactured comes equipped with a 48-bit Ethernet address.

• The boards send and receive frames based on 48-bit Ethernet addresses. They know nothing at all about 32-bit IP addresses.

• The question is: How do IP addresses get mapped onto data link layer addresses, such as Ethernet ?

Page 113: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Three interconnected class C networks: two Ethernets and an FDDI ring.

The Address Resolution Protocol (ARP)

Page 114: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

• Two Ethernets, one in the Computer Science Dept., with IP address 192.31.65.0 and one in Electrical Engineering, with IP address 192.31.63.0.

• These are connected by a campus backbone ring (e.g., FDDI) with IP address 192.31.60.0.

• Each machine on an Ethernet has a unique Ethernet address, labeled E1 through E6, and each machine on the FDDI ring has an FDDI address, labeled F1 through F3.

• how a user on host 1 sends a packet to a user on host 2?• Let us assume the sender knows the name of the intended receiver,

possibly something like [email protected]. • The first step is to find the IP address for host 2, known as

eagle.cs.uni.edu. • This lookup is performed by the Domain Name System.• DNS returns the IP address for host 2 (192.31.65.5). • The upper layer software on host 1 now builds a packet with 192.31.65.5

in the Destination address field and gives it to the IP software to transmit.

Page 115: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

• The IP software can look at the address and see that the destination is on its own network, but it needs some way to find the destination's Ethernet address .

• One solution is to have a configuration file somewhere in the system that maps IP addresses onto Ethernet addresses .

• This solution is certainly possible, but for organizations with thousands of machines, keeping all these files up to date is an error-prone, time-consuming job.

• A better solution is for host 1 to output a broadcast packet onto the Ethernet asking: Who owns IP address 192.31.65.5?

• The broadcast will arrive at every machine on Ethernet 192.31.65.0, and each one will check its IP address. Host 2 alone will respond with its Ethernet address (E2).

• In this way host 1 learns that IP address 192.31.65.5 is on the host with Ethernet address E2.

Page 116: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

• The protocol used for asking this question and getting the reply is called ARP (Address Resolution Protocol). Almost every machine on the Internet runs it.

• At this point, the IP software on host 1 builds an Ethernet frame addressed to E2, puts the IP packet (addressed to 192.31.65.5) in the payload field, and dumps it onto the Ethernet.

• The Ethernet board of host 2 detects this frame, recognizes it as a frame for itself, scoops it up.

• The Ethernet driver extracts the IP packet from the payload and passes it to the IP software, which sees that it is correctly addressed and processes it.

Page 117: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

3.RARP and BOOTPRARP:

• ARP solves the problem of finding out which Ethernet address corresponds to a given IP address.

• Sometimes the reverse problem has to be solved: Given an Ethernet address, what is the corresponding IP address?

• In particular, this problem occurs when a diskless workstation is booted. • Such a machine will normally get the binary image of its operating

system from a remote file server. • But how does it learn its IP address?• The first solution devised was to use RARP (Reverse Address

Resolution Protocol) • This protocol allows a newly-booted workstation to broadcast its

Ethernet address and say: My 48-bit Ethernet address is 14.04.05.18.01.25. Does anyone out there know my IP address? The RARP server sees this request, looks up the Ethernet address in its configuration files, and sends back the corresponding IP address.

Page 118: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

BOOTP

• A disadvantage of RARP is that it uses a destination address of all 1s (limited broadcasting) to reach the RARP server.

• However, such broadcasts are not forwarded by routers, so a RARP server is needed on each network.

• To get around this problem, an alternative bootstrap protocol called BOOTP was invented.

• Unlike RARP, BOOTP uses UDP messages, which are forwarded over routers.

• It also provides a diskless workstation with additional information, including the IP address of the file server holding the memory image, the IP address of the default router, and the subnet mask to use.

Page 119: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

The Interior Gateway Routing Protocol: OSPF

• A routing algorithm within an AS(Autonomous System) is called an interior gateway protocol;

• An algorithm for routing between ASes is called an exterior gateway protocol.

• The original Internet interior gateway protocol was a distance vector protocol ,based on the Bellman-Ford algorithm inherited from the ARPANET.

• It worked well in small systems, but not well as ASes got larger. • It also suffered from the count-to-infinity problem and generally

slow convergence .• In 1988, the Internet Engineering Task Force began work on a

successor. That successor, called OSPF (Open Shortest Path First), became a standard in 1990.

Page 120: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

OSPF supports three kinds of connections and networks:

• Point-to-point lines between exactly two routers.• Multiaccess networks with broadcasting (e.g.,

most LANs).• Multiaccess networks without broadcasting

(e.g., most packet-switched WANs).Multiaccess network is one that can have multiple

routers on it, each of which can directly communicate with all the others. All LANs and WANs have this property.

Page 121: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

OSPF – The Interior Gateway Routing Protocol

(a) An autonomous system. (b) A graph representation of (a).

Page 122: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

• OSPF represent the actual network as a graph like this and then compute the shortest path from every router to every other router.

• Many of the ASes in the Internet are themselves large and nontrivial to manage.

• OSPF allows them to be divided into numbered areas, where an area is a network or a set of contiguous networks.

• Areas do not overlap but need not be exhaustive, that is, some routers may belong to no area.

• An area is a generalization of a subnet. Outside an area, its topology and details are not visible.

Page 123: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

• Every AS has a backbone area, called area 0. • All areas are connected to the backbone, possibly by

tunnels, so it is possible to go from any area in the AS to any other area in the AS via the backbone.

• Each router that is connected to two or more areas is part of the backbone.

• As with other areas, the topology of the backbone is not visible outside the backbone.

• During normal operations, three kinds of routes may be needed: intra-area, interarea, and inter-AS.

• Intra-area routes are the easiest, since the source router already knows the shortest path to the destination router.

• Interarea routing always proceeds in three steps: go from the source to the backbone; go across the backbone to the destination area; go to the destination.

Page 124: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

OSPF distinguishes four classes of routers:

• Internal routers: are wholly within one area.

• Area border routers: connect two or more areas.

• Backbone routers: are on the backbone.

• AS boundary routers: talk to routers in other ASes.

Page 125: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

The relation between ASes, backbones, and areas in OSPF.

Page 126: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

• When a router boots, it sends HELLO messages on all of its point-to-point lines and multicasts them on LANs to the group consisting of all the other routers.

• On WANs, it needs some configuration information to know whom to contact.

• From the responses, each router learns who its neighbors are. Routers on the same LAN are all neighbors

• OSPF works by exchanging information between adjacent routers, which is not the same as between neighboring routers.

Page 127: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

The five types of OSPF messages.

5-66

Page 128: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Exterior Gateway Routing Protocol: BGP

• Within a single AS, the recommended routing protocol is OSPF .

• Between ASes, a different protocol, BGP (Border Gateway Protocol), is used .

• A different protocol is needed between ASes because the goals of an interior gateway protocol and an exterior gateway protocol are different.

• All an interior gateway protocol has to do is move packets as efficiently as possible from the source to the destination. It does not have to worry about politics.

Page 129: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

Typical policies involve political, security, or economic considerations. A few examples of routing constraints are:– No transit traffic through certain ASes.– Never put Iraq on a route starting at the Pentagon.– Traffic starting or ending at IBM should not transit

Microsoft.• BGP is fundamentally a distance vector protocol, but quite

different from most others • Instead of maintaining just the cost to each destination, each

BGP router keeps track of the path used. • Similarly, instead of periodically giving each neighbor its

estimated cost to each possible destination, each BGP router tells its neighbors the exact path it is using.

Page 130: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

(a) A set of BGP routers. (b) Information sent to F.

A set of BGP routers Infrmn sent to F

Page 131: Www.techstudent.co.cc UNIT 3 NETWORK LAYER.  Network Layer It is responsible for end to end (source to destination) packet delivery,

www.techstudent.co.cc

• After all the paths come in from the neighbors, F examines them to see which is the best.

• It quickly discards the paths from I and E, since these paths pass through F itself.

• The choice is then between using B and G. • Every BGP router contains a module that examines routes

to a given destination and scores them, returning a number for the ''distance'' to that destination for each route.

• Any route violating a policy constraint automatically gets a score of infinity.

• The router then adopts the route with the shortest distance. The scoring function is not part of the BGP protocol and can be any function the system managers want.