Presentation is loading. Please wait.

Presentation is loading. Please wait.

The Internet: Packet Switching and Other Big Ideas Ian Foster.

Similar presentations


Presentation on theme: "The Internet: Packet Switching and Other Big Ideas Ian Foster."— Presentation transcript:

1 The Internet: Packet Switching and Other Big Ideas Ian Foster

2 2 Recall: The Internet 1969 4 nodes 2004 100s of millions

3 3 Recall: “Big Ideas” Underlying the Internet l Packet switching u Flexible, robust, efficient (in the network) u Enabled by “smart terminals” l End-to-end arguments in system design u E.g., reliable in-order delivery via TCP l Rough consensus and running code u As a means of creating and evolving a complex artifact

4 4

5 5 Or? l Metcalfe’s Law u Utility of a network of N entities scales as number of potential connections, i.e., as N 2 l Reed’s Law u Utility scales as the number of potential subgroups, i.e., as 2 N

6 6 Or? l The Internet isn't complicated l The Internet isn't a thing. It's an agreement. l The Internet is stupid. l Adding value to the Internet lowers its value. l All the Internet's value grows on its edges. l The Internet’s three virtues: a. No one owns it b. Everyone can use it c. Anyone can improve itab.c http://www.worldofends.com/

7 7 Or? (Bradner’s 10 Critical Choices) 1) Make it all work on top of existing networks 2) Use packets, not circuits. 3) Create a (decentralized) ``routing'' function 4) Split Transmission Control Protocol (TCP) & Internet Protocol (IP) 5) ARPA funds UC Berkeley to put TCP/IP into Unix 6) CSNET, an early network used by universities, connects with the ARPANET 7) NSF requires users of the NSFNET to use TCP/IP 8) International telecommunications standards bodies reject TCP/IP, then create a separate standard called OSI 9) NSF creates an ``Acceptable Use Policy'' restricting NSFNET use to noncommercial activities 10) Once things start to build, government stays mostly out of the way

8 8 Or? (Tim O’Reilly) l I really believe we really are moving to a very, very different computing paradigm where applications actually live on the network. I mean, where exactly does Google live? It lives obviously on Google's bank of servers, but it also lives in a PC- based application.

9 9 Datagram Diagram

10 10 Scalable Infrastructure l Scaling the Internet reliably and efficiently to hundreds of millions of nodes u Routing u Naming u Email u Search l Concepts u Hierarchy (=abstraction) u Soft state u Big central systems! (e.g., Google)

11 11 Routing in Packet Switched Network l Complex, crucial aspect of packet-switched networks l Characteristics required u Correctness u Simplicity u Robustness u Stability u Fairness u Optimality u Efficiency

12 12 Routing l End systems and routers maintain routing tables, which indicate next router to which datagram should be sent l Static u May contain alternative routes l Dynamic u Flexible response to congestion and errors

13 13 Network Information Source and Update Timing l Routing decisions usually based on knowledge of network (not always) l Distributed routing u Nodes use local knowledge u May collect info from adjacent nodes u May collect info from all nodes on a potential route l Central routing u Collect info from all nodes l Update timing u When is network info held by nodes updated u Fixed - never updated u Adaptive - regular updates

14 14 Routing Strategies l Fixed l Flooding l Random l Adaptive

15 15 Fixed Routing l Single permanent route for each source to destination pair l Determine routes using a least cost algorithm l Route fixed, at least until a change in network topology

16 16 Sample AS

17 17 Directed Graph of AS

18 18 Performance Criteria l Used for selection of route l Minimum hop l Least cost

19 19 Fixed Routing Tables

20 20 Flooding l No network info required l Packet sent by node to every neighbor l Incoming packets retransmitted on every link except incoming link l Eventually a number of copies will arrive at destination l Each packet is uniquely numbered so duplicates can be discarded l Nodes can remember packets already forwarded to keep network load in bounds l Can include a hop count in packets

21 21 Flooding Example

22 22 Properties of Flooding l All possible routes are tried u Very robust l At least one packet will have taken minimum hop count route u Can be used to set up virtual circuit l All nodes are visited u Useful to distribute information (e.g. routing)

23 23 Adaptive Unstructured Multicast “UMM: A dynamically adaptive, unstructured multicast overlay” M. Ripeanu et al. A E B D C A’ E’ B’ D’ C’ A” E” B” D” C” Application overlay Base overlay Physical topology 0 2 4 6 8 10 0 240480720960 12001440 1680 19202160 2400 26402880 3120336036003840 Time (sec) RDP 0 2 4 6 8 10 12 Maxximum link stress. MaxRDP 95% RDP 90%RDP Stress 10 nodes fail then rejoin 900s later RDP=1 RDP=2

24 24 Random Routing l Node selects one outgoing path for retransmission of incoming packet l Selection can be random or round robin l Can select outgoing path based on probability calculation l No network info needed l Route is typically not least cost nor minimum hop

25 25 Adaptive Routing l Used by almost all packet switching networks l Routing decisions change as conditions on the network change u Failure u Congestion l Requires info about network l Decisions more complex l Tradeoff between quality of network info and overhead l Reacting too quickly can cause oscillation l Too slowly may not be relevant

26 26 Adaptive Routing - Advantages l Improved performance l Aid congestion control l Complex system u May not realize theoretical benefits

27 27 Classification l Based on information sources u Local (isolated) l Route to outgoing link with shortest queue l Can include bias for each destination l Rarely used - do not make use of easily available info u Adjacent nodes u All nodes

28 28 Isolated Adaptive Routing

29 29 ARPANET Routing Strategies: First Generation (1969) l Distributed adaptive l Estimated delay as performance criterion l Bellman-Ford algorithm l Node exchanges delay vector with neighbors l Update routing table based on incoming info l Doesn't consider line speed, just queue length l Queue length not a good measurement of delay l Responds slowly to congestion

30 30 ARPANET Routing Strategies: 2 nd Generation (1979) l Uses delay as performance criterion l Delay measured directly l Uses Dijkstra’s algorithm l Good under light and medium loads l Under heavy loads, little correlation between reported delays and those experienced

31 31 ARPANET Routing Strategies: 3 rd Generation (1987) l Link cost calculations changed l Measure average delay over last 10 seconds l Normalize based on current value and previous results

32 32 Least Cost Algorithms l Basis for routing decisions u Can minimize hop with each link cost 1 u Can have link value inversely proportional to capacity l Given network of nodes connected by bi-directional links l Each link has a cost in each direction l Define cost of path between two nodes as sum of costs of links traversed l For each pair of nodes, find a path with the least cost l Link costs in different directions may be different u E.g. length of packet queue

33 33 Dijkstra’s Algorithm Definitions l Find shortest paths from given source node to all other nodes, by developing paths in order of increasing path length l N =set of nodes in the network l s =source node l T =set of nodes so far incorporated by the algorithm l w(i, j) =link cost from node i to node j u w(i, i) = 0 u w(i, j) =  if the two nodes are not directly connected u w(i, j)  0 if the two nodes are directly connected l L(n) = cost of least-cost path from node s to node n currently known u At termination, L(n) is cost of least-cost path from s to n

34 34 Dijkstra’s Algorithm Method l Step 1 [Initialization] u T = {s} Set of nodes so far incorporated consists of only source node u L(n) = w(s, n) for n ≠ s u Initial path costs to neighboring nodes are simply link costs l Step 2 [Get Next Node] u Find neighboring node not in T with least-cost path from s u Incorporate node into T u Also incorporate the edge that is incident on that node and a node in T that contributes to the path l Step 3 [Update Least-Cost Paths]  L(n) = min[L(n), L(x) + w(x, n)] for all n  T u If latter term is minimum, path from s to n is path from s to x concatenated with edge from x to n l Algorithm terminates when all nodes have been added to T

35 35 Dijkstra’s Algorithm Notes l At termination, value L(x) associated with each node x is cost (length) of least-cost path from s to x. l In addition, T defines least-cost path from s to each other node l One iteration of steps 2 and 3 adds one new node to T u Defines least cost path from s to that node

36 36 Example of Dijkstra’s Algorithm

37 37 IRP and ERP

38 38 Autonomous Systems (AS) l Group of routers l Exchange information l Common routing protocol l Set of routers and networks managed by single organization l A connected network u There is at least one route between any pair of nodes

39 39 Interior Router Protocol (IRP) l Passes routing information between routers within AS l May be more than one AS in internet l Routing algorithms and tables may differ between different AS l Routers need some info about networks outside their AS l Uses exterior router protocol (ERP) l IRP needs detailed model l ERP supports summary information on reachability

40 40 Border Gateway Protocol l Internet BGP routing tables number more than 90,000 routes l BGP uses many route parameters, called attributes, to define routing policies and maintain a stable routing environment

41 41 BGP Routing Information Exchange l Within AS, router builds topology picture using IGP l Router issues Update message to other routers outside AS using BGP l These routers exchange info with other routers in other AS l Routers must then decide best routes

42 42 Classless Interdomain Routing: Used by BGP to reduce table sizes l E.g., an ISP owns the IP address block 195.10.x.x from the Class C address space u This block consists of 256 Class C address blocks, 195.10.0.x through 195.10.255.x. u ISP assigns Class C block to each customer u Without CIDR, the ISP would advertise 256 Class C address blocks to its BGP peers u With CIDR, BGP can supernet the address space and advertise one block, 195.10.x.x. u This block is the same size as a traditional Class B address block (thus class distinctions are rendered obsolete)

43 43 Subnets and Subnet Masks l Allow arbitrary complexity of internetworked LANs within organization l Insulate overall internet from growth of network numbers and routing complexity l Site looks to rest of internet like single network l Each LAN assigned subnet number l Host portion of address partitioned into subnet number and host number l Local routers route within subnetted network l Subnet mask indicates which bits are subnet number and which are host number

44 44 Routing Using Subnets

45 45 Summary: Routing l Further reading: William Stallings, Data and Computer Communications l Routing Information Protocol: http://www.faqs.org/rfcs/rfc1058.html


Download ppt "The Internet: Packet Switching and Other Big Ideas Ian Foster."

Similar presentations


Ads by Google