Presentation is loading. Please wait.

Presentation is loading. Please wait.

Chi-Cheng Lin, Winona State University CS412 Introduction to Computer Networking & Telecommunication Chapter 5 Network Layer.

Similar presentations


Presentation on theme: "Chi-Cheng Lin, Winona State University CS412 Introduction to Computer Networking & Telecommunication Chapter 5 Network Layer."— Presentation transcript:

1 Chi-Cheng Lin, Winona State University CS412 Introduction to Computer Networking & Telecommunication Chapter 5 Network Layer

2 2 Topics l Design Issues l Routing Algorithms l Congestion Control l Internetworking

3 3 Position of network layer

4 4 Network Layer 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

5 5 Store-and-Forward Packet Switching l The environment of the network layer protocols.

6 6 Figure 19.3 Network layer in an internetwork

7 7 Figure 19.4 Network layer at the source

8 8 Figure 19.5 Network layer at a router

9 9 Figure 19.6 Network layer at the destination

10 10 Services Provided to Transport Layer l Designing goals  Independent of subnet technology  Transport layer shielded from number, type, and topology of subnets  Uniform network address numbering l Two Types of Services  Connectionless  Connection-oriented

11 11 Implementation of Connectionless Service l Routing within a diagram subnet.

12 12 Implementation of Connection-Oriented Service l Routing within a virtual-circuit subnet.

13 13 Comparison of Virtual-Circuit and Datagram Subnets 5-4

14 14 Routing Algorithms l Network layer software l Deciding which output line an incoming packet should be transmitted to  Datagram: made for each packet  VC: made for new VC setup

15 15 Routing Algorithms l Desirable Properties  Correctness  Simplicity  Robustness  Stability  Fairness  Optimality

16 16 Routing Algorithms - Optimality l What to optimize?  Minimizing mean packet delay  Maximizing total network throughput  Problem  The above two are in conflicts l Compromise  Minimizing number of hops a packet must take from source to destination

17 17 Classes of Routing Algorithm l Two major classes  Non-adaptive  Adaptive

18 18 Two Major Classes of Routing Algorithm l Adaptive  Algorithms differ in  where to get information, e.g.,  Locally  From adjacent routers  From all routers  when to change routes, e.g.,  Every T sec  When the load changes  When the topology changes  what metric used for optimization, e.g.,  Distance  Number of hops  Estimated transit time

19 19 Routing Algorithms to be Studied l Static (i.e., nonadaptive) routing  Shortest path routing  Flooding l Dynamic (i.e., adaptive) routing  Distance vector routing  Link state routing

20 20 Optimality Principle l 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. l Proof? I K J L

21 21 Sink Tree l Direct consequence of optimality principle l Subnet graph  Node: router  Arc: link l The set of optimal routes from all sources to a given destination form a tree rooted at the destination l Might not be unique l Goal of routing algorithms  Discover and use the sink tree for all routers

22 22 Sink Tree l Example  Distance metric: number of hops SubnetSink tree

23 23 Shortest Path Routing l Given a pair of routers, find the shortest path between them l Subnet graph  Node: router  Arc: link  Labels of arcs  Function of factors  Weighting function changed for different criteria

24 24 Dijkstra's Algorithm l Each node labeled with  (distance from source, best known path)  Initially  distance: infinity  best known path: unknown  Label might change to reflect better paths l Node is either tentative or permanent  Initially tentative  As a path from source to that node discovered, label becomes permanent and never gets changed

25 25

26 26 Dijkstra's Algorithm l How do we find the path? l The algorithm given in the book works from destination to source  Why?

27 27 Flooding l Every incoming packet is sent out on every outgoing line except for the input line l Problem  Large number of packets are generated l Solutions  Hop counter  Avoiding duplicates  Selective flooding

28 28 Flooding - Conclusion l Optimal  Shortest path is always chosen  No other algorithm can produce a shorter delay l Robust l Not practical in most applications l Useful in some applications  Military application: robustness  Distributed database applications  Concurrent update  Wireless networks  Metric of other routing algorithms

29 29 Distance Vector Routing l Table in each router  Giving  Best known distance to each destination  Which line to use to get there  Indexed by each router  Each entry contains two parts  Preferred outgoing line to use for that destination  Estimate of "distance" to go there  Best known distance to each destination  Updated by exchanging information with neighbors

30 30 Distance Vector Routing l Router  Knows "distance" to each neighbor  Sends list to each neighbor every T msec  Receives lists from neighbors every T msec  If neighbor X knows  Distance from X to I is X I, and  Distance from the router to X is m then delay from router to I via X is (X I + m)  Performs calculation for each neighbor to find the best  Old table not used in calculation

31 31

32 32 Distance Vector Routing l Count-to-Infinity Problem  Good news spread fast, bad news leisurely  Infinity has to be defined

33 33 Link State Routing l A router 1.Discovers its neighbors and learn their network addresses - HELLO 2.Measures the delay or cost to each neighbor - ECHO 3.Constructs a packet telling all it has just learned – link state packet 4.Sends this packet to all other routers – flooding w/ duplicate avoidance 5.Computes the shortest path to every other router – Dijkstra’s algorithm

34 34 Link State Routing l In effect  Complete topology and all delays are experimentally measured and distributed to every router  Dijkstra's algorithm is applied to find the shortest path

35 35 Link State Packets

36 36 Hierarchical Routing l Problem  Network size grows  Routing tables grow l Solution  Hierarchical routing l Idea  Routers are divided into "regions"  Router knows detail about routing within its region  Router knows nothing about internal structure of other region

37 37 Path length from 1A to 5C?

38 38 Congestion Control l Congestion  Too many packets present in the subnet l Effects  Performance degraded  Packet lost

39 39 Congestion and Network Performance (Without congestion control) (Could be achieved by congestion control)

40 40 Causes of Congestion l Causes  Too many packets need an output line  queuing  Problem: not enough memory  packets dropped  Solution(?): adding more memory  New problem: timeout and retransmit  worse  Slow processors  Low bandwidth lines l Congestion tends to feed upon itself and become worse

41 41 Congestion Control v.s. Flow Control l Flow control relates to traffic between two machines, while congestion control is more global l Examples  No congestion, flow control needed  Flow control not needed, congestion l Confusion  Congestion control might send back "slow down" messages  Not an acknowledgement

42 42 Congestion Control - General Principles l Two groups  Open loop  Closed loop – feedback loop  Explicit feedback  Implicit feedback  Source deduces existence of congestion by making local observation  E.g., time needed for acknowledgement to come back

43 43 Congestion Control - General Principles l Closed Loop - Approach  Monitor the system to detect when and where congestion occurs  Pass this information to places where actions can be taken  Adjust system operation to correct the problem

44 44 Congestion Control l Congestion = (Load > Resources) l Solutions  Increase resources  Decrease load

45 45 Congestion Prevention Policies Policies that affect congestion. 5-26

46 46 Congestion Control in VC Subnets l Admission control l Alternative routes l Resource reservation  Based on negotiated agreement

47 47 Congestion Control in VC Subnets

48 48 Choke Packets l Used in both VC and datagram subnets l Approach  Each router monitors output line utilization  Threshold for "warning state"  A receiving router  Checks packet to see if output line in warning state  If yes then send a "choke packet" back to source host original packet tagged and forwarded

49 49 Choke Packet l Source, upon receiving a choke packet  Reduces traffic by a percentage after receiving choke packet  Choke packet referred to same destination is ignored for a fixed time interval  After time interval expired, listens  If choke packet received then goto the step of reducing traffic else increase traffic

50 50 Choke Packet l Typically  First choke packet causes data rate reduced to 50%, then 25%, …  Traffic is increased in smaller increments l Why?

51 51 Hop-by-Hop Choke Packets l Problem in high speed and long distance  slow reaction l Solution  Hop-by-hop choke packets l Buffers needed in routers l Effects:  Quick relief at the price of more buffers

52 52 Hop-by-Hop Choke Packets l (a) A choke packet that affects only the source. l (b) A choke packet that affects each hop it passes through.

53 53 Load Shedding l Discard whatever cannot be handled l Which packets to drop?  Application-dependent  Priorities

54 54 Load Shedding l Strategies  Wine or milk  Priority  Priority classes  Coupled with traffic shaping token bucket  Packet without token sent with lowest priority  Allowing VC set up with exceeding specification  Contingent on low priority  Header field needed (ATM 1bit) l Discard as early as possible!

55 55 Jitter Control l Jitter: variation in packet arrival time l Necessary for audio/video transmission l Control  Delay jitter is bounded by computing expected transit time for each hop along path  Packet is checked for behind/ahead schedule  Behind: sent out ASAP  Ahead: held for a while l Usually buffering is used to eliminate jitters

56 56 Internetworking l A collection of interconnected networks.

57 57 How Networks Differ

58 58 How Networks Can Be Connected

59 59 Concatenated Virtual Circuits l A sequence of VCs is set up from source through one or more gateways to destination l Each gateway maintains tables of information of VCs l Best when all networks have roughly the same properties

60 60 Concatenated Virtual Circuits

61 61 Connectionless Internetworking l Packets are not required to follow same sequence of connections l Routing per packet  Possibly higher bandwidth than VC l Packets might arrive out of order l Problems  Format  Addressing

62 62 Connectionless Internetworking

63 63 Tunneling l Encapsulating packets of a protocol in the payload of packets of another protocol l Useful in  Internetworking  VPN  IPv4 to IPv6 transition  …

64 64 Tunneling

65 65 Internetwork Routing l AS (Autonomous System)  Each network in internetwork independent of others l Two-Level Routing  Interior gateway protocol  Exterior gateway protocol l Differences between interior and exterior routings  International boundaries  Cost  Quality of service

66 66 Fragmentation l Why maximal packet size  Hardware  OS  Protocols  Standards  Retransmission reduction  Prevention of one packet occupying channel too long

67 67 Fragmentation l Maximum packet size different in different protocol  Examples: ATM 48 bytes, IP 65,515 bytes l Problem  Large size packets want to go through network of smaller packet size l Solution: Fragmentation  Allowing gateways to break packets into fragments, each as a separate internet packet  Problem: Easy to break but difficult to put back together

68 68 Fragmentation Strategies l Transparent fragmentation l Nontransparent fragmentation Transparent fragmentation Nontransparent fragmentation G5G5

69 69 Transparent Fragmentation l Properties  Fragmentation transparent to subsequent networks  Same exit gateway in each network l Procedure  Fragmentation  Each fragment is addressed to same exit gateway  Fragments are combined at exit gateway

70 70 Transparent Fragmentation l Simple l Problems  Combination  Performance  Overhead on repeated assembling

71 71 Nontransparent Fragmentation l Properties  Combination done at destination host  One or more exit gateway(s) l Procedure  Fragmentation  Each fragment is addressed to exit gateway(s)  Fragments are combined at destination host l Higher performance in datagram model l Problems  Every host must be able to reassemble  Overhead in packet header

72 72 Nontransparent Fragmentation l Numbering  Required for assembly l Assembly approach  Elementary fragment size defined  Fragments of a packet = maximum packet size of another network except for the last one  Header fields  Packet number  Number of first elementary fragment  End-of-packet bit

73 73


Download ppt "Chi-Cheng Lin, Winona State University CS412 Introduction to Computer Networking & Telecommunication Chapter 5 Network Layer."

Similar presentations


Ads by Google