Download presentation
Presentation is loading. Please wait.
Published byWalter Gilbert Modified over 8 years ago
1
Lecture 7
2
Building Forwarding Tables There are several methods Static Method Dynamic Methods Centralized Distributed Distance Vector Link State
3
Dynamic Methods- Distributed Nodes are responsible of building their own tables Nodes exchange information between themselves to build a view of the topology Algorithms depend on which information do nodes exchange
4
Distance Vector Every table contains the next hop and path cost for each destination Initially, if nodes are not directly connected, the cost is infinity Nodes exchange their full forwarding tables (dest + cost) These tables are exchanged with neighboring nodes only If in a received table, the total cost to a destination is less than the cost in the node’s table, the next hop is changed to the node that sent the table The new cost is the cost in the received table + the cost to the node that sent the table
5
E A D B C 3 2 1 6 4 2 DestN HopCost BB3 C- DD2 EE2 DestN HopCost AA2 B- C- D- DestN HopCost AA2 BB4 CC6 E- DestN HopCost AA2 CC1 DD4 E- DestN HopCost A- BB1 DD6 E-
6
E A D B C 3 2 1 6 4 2 DestN HopCost BB3 CB4 DD2 EE2 DestN HopCost AA2 BA5 C- DA4 DestN HopCost AA2 BB4 CB5 EA4 DestN HopCost AA2 CC1 DD4 EA5 DestN HopCost AB4 BB1 DB5 E-
7
E A D B C 3 2 1 6 4 2 DestN HopCost BB3 CB4 DD2 EE2 DestN HopCost AA2 BA5 CA6 DA4 DestN HopCost AA2 BB4 CB5 EA4 DestN HopCost AA2 CC1 DD4 EA5 DestN HopCost AB4 BB1 DB5 EB6
8
Distance Vector Usually use Bellman Ford algorithm to calculate routes Tables are exchanged either Periodically Triggered by events (e.g. failures) Can experience count to infinity problem
9
E A D B C 3 2 1 6 4 2 DestN HopCost BB3 CB4 DD2 EE2 DestN HopCost AA2 BA5 CA6 DA4 DestN HopCost AA2 BB4 CB5 EA4 DestN HopCost AA2 CC1 DD4 EA5 DestN HopCost AB4 BB1 DB5 EB6
10
E A D B C 3 2 1 6 4 2 DestN HopCost BB3 CB4 DD2 E- DestN HopCost AA2 BB4 CB5 EA4 DestN HopCost AA2 CC1 DD4 EA5
11
E A D B C 3 2 1 6 4 2 DestN HopCost BB3 CB4 DD2 E- DestN HopCost AA2 BB4 CB5 EB9 DestN HopCost AA2 CC1 DD4 E-
12
E A D B C 3 2 1 6 4 2 DestN HopCost BB3 CB4 DD2 ED11 DestN HopCost AA2 BB4 CB5 E- DestN HopCost AA2 CC1 DD4 E-
13
E A D B C 3 2 1 6 4 2 DestN HopCost BB3 CB4 DD2 E- DestN HopCost AA2 BB4 CB5 EA13 DestN HopCost AA2 CC1 DD4 EA14
14
Count to Infinity Problem The cycle will continue until the cost value reaches very high (infinity) value before all nodes find out E is unreachable The previous cycle involves 3 nodes, some cycles can contain tens of nodes It causes switching loops and takes time to end depending on the number of nodes involved
15
Solutions Several Solution proposed but all have disadvantages Advertise full table including next hop High traffic Complexity Split horizon Do not advertise route to its next hop Split horizon with Poison reverse For next hop, advertise links passing through it with cost = Split horizon with/without Poison reverse handles loops with small number of nodes
16
Routing Information Protocol RIP uses distance vector with link costs = 1 Finds minimum hops Costs range from 1 to 15, 16 is infinity Updates are sent every 30 seconds or when a routing table changes Works with small networks (max hop number = 15)
17
Link State Each node sends information only about its directly connected neighbors (full table not sent) Information (link state packet “LSP”) contains neighboring nodes and their cost LSP contains Node ID, link states, sequence no., time to live (counter) This information is sent to all nodes in the network (enhanced flooding) Always assumes node received information from all other nodes
18
Link State Nodes build two tables, one for confirmed links and another for tentative links 1) The confirmed table starts with the node itself 2) For the node (X) just added to the confirmed list, select its LSP 3) For each neighbor of X, calculate the cost to reach this neighbor (= cost to X + cost from X to neighbor) 4) If neighbor is not in confirmed list replace old entry with new one if: Neighbor is not in tentative table or It is in tentative table but new cost is less than current cost 5) If tentative table is empty stop, otherwise move least cost entry from tentative to confirmed table and go to 2
19
E A D B C 3 2 1 6 4 2
20
DestN HopCost AA0 DestN HopCost Confirmed Tentative Node A’s Tables
21
DestN HopCost AA0 DestN HopCost BB3 DD2 EE2 Confirmed Tentative Node A’s Tables
22
DestN HopCost AA0 EE2 DestN HopCost BB3 DD2 Confirmed Tentative Node A’s Tables
23
DestN HopCost AA0 EE2 DestN HopCost BB3 DD2 Confirmed Tentative Node A’s Tables A is already in confirmed list, so E is done
24
DestN HopCost AA0 EE2 DD2 DestN HopCost BB3 Confirmed Tentative Node A’s Tables
25
DestN HopCost AA0 EE2 DD2 DestN HopCost BB3 CD8 Confirmed Tentative Node A’s Tables B through D = 6, cost in tentative for B is 3, hence ignore
26
DestN HopCost AA0 EE2 DD2 BB3 DestN HopCost CD8 Confirmed Tentative Node A’s Tables B through D = 6, cost in tentative for B is 3, hence ignore
27
DestN HopCost AA0 EE2 DD2 BB3 DestN HopCost CB4 Confirmed Tentative Node A’s Tables Cost to C via B is less, replace in tentative table. Everything else is in confirmed table already.
28
DestN HopCost AA0 EE2 DD2 BB3 CB4 DestN HopCost Confirmed Tentative Node A’s Tables All C’s neighbors already in confirmed. Tentative empty-> done
29
DestN HopCost AA0 EE2 DD2 BB3 CB4 Link State Distance Vector Node A’s Tables DestN HopCost AA0 BB3 CB4 DD2 EE2
30
Link State Uses Dijkstra’s algorithm Flooding causes considerable overhead, hence time between update packets is long (an hour) Changes trigger updates but only nodes which their links changed send data Requires larger storage than distance vector More stable than distance vector Responds more quickly to topology changes
31
Open Shortest Path First OSPF uses link state Includes authentication services to protect network from hacked routers
32
Other Switching Methods The previous methods are called proactive switching/routing methods They keep a table of all the destinations Suitable for stable networks (topology does not change much) Not suitable for wireless links because topology changes frequently (mobility) Also for wireless networks, nodes may store routes they never use
33
Reactive Routing Mainly for wireless networks Path is searched only when there is data to send Source initiates a route request Nodes forward request (e.g. flooding) till it reaches destination Destination replies and nodes forward till it reaches source Nodes forwarding packets record in it their addresses Source receives the first packet and records addresses in it as the path
34
Reactive Routing Subsequent packets are discarded This is one of many available algorithms and enhancements (search for AODV) Some algorithms depend on GPS and assume the source know the position of the destination It is still an open area for research
35
Quality of Service What is QoS?! Appeared with ISDN networks Several parameters exist Delay Jitter Packet Loss Data Rate Applications differ in what they can handle Data Voice (real time/non-real time, with/without compression) Video (real time/non-real time, with/without compression)
36
QoS Parameters Delay Time it takes data to go from source to destination Data: doesn’t matter, unless receiver/transmitter times out Voice: real time, certain limits OK (several ms) Voice: non real time, same as data, buffer voice Video: non real time-> same as data, buffer video Video: real time-> limits also exist as with voice
37
QoS Parameters Jitter Variation in the delay (rms value of delay) Usually high jitter indicates network congestion Data: generally does not matter Voice: (both) limits exist otherwise voice breaks Video: (both) same as voice, video cuts
38
QoS Parameters Packet Loss Due to errors or congestion Data: unacceptable all packets must be received correctly, retransmit Voice: (both) up to certain limits OK, severe-> voice cuts, retransmissions are pointless Video: (both) up to certain limits OK, severe-> distortions, retransmissions are useless
39
QoS Parameters Data Rate Transmission characteristics of each application Data -> busts, lots of data then nothing Voice (no compression)-> constant data rate Voice (compression)-> variable data rate (compression usually refers to silence suppression) Video (no compression)-> constant data rate (rarely used because of high data rate) Video (compression)-> variable data rate Variable data rate is identified with max and mean rate required (or max and min rates)
40
Some Practical Data Rate Services Best Effort Service Default for packet switching No QoS, all users’ data is equal, all applications are equal Committed/Dedicated/Guaranteed Service You get what you buy, nothing more or less (1M = 1M) Service guaranteed whether 0 or all users are working Variable Rate Service You get a committed data rate You’re allowed to exceed this if network has low load Must return to minimum rate if network is congested Flow control methods are heavily used
41
How to implement QoS? Prior to any connection requiring QoS signaling is required Every node in the path (forwarding signaling) checks required services and its resources and ongoing connections If it can satisfy, forward to next hop, otherwise deny connection Destination replies with same path to complete the handshake Main problem is step 2!!!
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.