* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download Powerpoint - People.cs.uchicago.edu
Survey
Document related concepts
Network tap wikipedia , lookup
Internet protocol suite wikipedia , lookup
Zero-configuration networking wikipedia , lookup
Deep packet inspection wikipedia , lookup
Multiprotocol Label Switching wikipedia , lookup
Wake-on-LAN wikipedia , lookup
Backpressure routing wikipedia , lookup
Piggybacking (Internet access) wikipedia , lookup
Cracking of wireless networks wikipedia , lookup
Computer network wikipedia , lookup
Airborne Networking wikipedia , lookup
IEEE 802.1aq wikipedia , lookup
Recursive InterNetwork Architecture (RINA) wikipedia , lookup
Transcript
The Internet: Packet Switching and Other Big Ideas Ian Foster Recall: The Internet 1969 4 nodes 2 2004 100s of millions Recall: “Big Ideas” Underlying the Internet Packet switching Flexible, robust, efficient (in the network) Enabled by “smart terminals” End-to-end arguments in system design E.g., reliable in-order delivery via TCP Rough consensus and running code As a means of creating and evolving a complex artifact 3 4 5 Or? Metcalfe’s Law Utility of a network of N entities scales as number of potential connections, i.e., as N2 Reed’s Law Utility scales as the number of potential subgroups, i.e., as 2N 6 Or? The Internet isn't complicated The Internet isn't a thing. It's an agreement. The Internet is stupid. Adding value to the Internet lowers its value. All the Internet's value grows on its edges. The Internet’s three virtues: a. No one owns it b. Everyone can use it c. Anyone can improve it http://www.worldofends.com/ Or? (Bradner’s 10 Critical Choices) 7 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 Or? (Tim O’Reilly) 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 PCbased application. 9 Datagram Diagram 10 Scalable Infrastructure Scaling the Internet reliably and efficiently to hundreds of millions of nodes Routing Naming Email Search Concepts Hierarchy (=abstraction) Soft state Big central systems! (e.g., Google) Routing in Packet Switched Network Complex, crucial aspect of packet-switched networks Characteristics required Correctness Simplicity Robustness Stability Fairness Optimality Efficiency 11 12 Routing End systems and routers maintain routing tables, which indicate next router to which datagram should be sent Static May contain alternative routes Dynamic Flexible response to congestion and errors Network Information Source and Update Timing Routing decisions usually based on knowledge of network (not always) Distributed routing Nodes use local knowledge May collect info from adjacent nodes May collect info from all nodes on a potential route Central routing Collect info from all nodes Update timing When is network info held by nodes updated Fixed - never updated Adaptive - regular updates 13 14 Routing Strategies Fixed Flooding Random Adaptive 15 Fixed Routing Single permanent route for each source to destination pair Determine routes using a least cost algorithm Route fixed, at least until a change in network topology 16 Sample AS 17 Directed Graph of AS 18 Performance Criteria Used for selection of route Minimum hop Least cost 19 Fixed Routing Tables 20 Flooding No network info required Packet sent by node to every neighbor Incoming packets retransmitted on every link except incoming link Eventually a number of copies will arrive at destination Each packet is uniquely numbered so duplicates can be discarded Nodes can remember packets already forwarded to keep network load in bounds Can include a hop count in packets 21 Flooding Example 22 Properties of Flooding All possible routes are tried At least one packet will have taken minimum hop count route Very robust Can be used to set up virtual circuit All nodes are visited Useful to distribute information (e.g. routing) Application overlay Overlay delay (ms) . Adaptive Unstructured Multicast 350 300 250 200 150 D” E” 100 C” 50 A” B” 0 D’ E’ 0 100 150 200 IP delay (ms) C’ A’ B’ 10 D E C A B 10 nodes fail then MaxRDP rejoin 900s later 95% RDP 12 10 90%RDP RDP Physical topology 50 8 Stress 8 6 Time (sec) 3840 3360 3600 3120 2640 2880 2400 1920 2160 0 1680 0 1440 2 960 1200 2 720 4 240 480 4 0 “UMM: A dynamically adaptive, unstructured multicast overlay” M. Ripeanu et al. 6 Maxximum link stress . Base overlay 23 400 24 Random Routing Node selects one outgoing path for retransmission of incoming packet Selection can be random or round robin Can select outgoing path based on probability calculation No network info needed Route is typically not least cost nor minimum hop 25 Adaptive Routing Used by almost all packet switching networks Routing decisions change as conditions on the network change Failure Congestion Requires info about network Decisions more complex Tradeoff between quality of network info and overhead Reacting too quickly can cause oscillation Too slowly may not be relevant 26 Adaptive Routing - Advantages Improved performance Aid congestion control Complex system May not realize theoretical benefits 27 Classification Based on information sources Local (isolated) Route to outgoing link with shortest queue Can include bias for each destination Rarely used - do not make use of easily available info Adjacent nodes All nodes 28 Isolated Adaptive Routing ARPANET Routing Strategies: First Generation (1969) Distributed adaptive Estimated delay as performance criterion Bellman-Ford algorithm Node exchanges delay vector with neighbors Update routing table based on incoming info Doesn't consider line speed, just queue length Queue length not a good measurement of delay Responds slowly to congestion 29 ARPANET Routing Strategies: 2nd Generation (1979) Uses delay as performance criterion Delay measured directly Uses Dijkstra’s algorithm Good under light and medium loads Under heavy loads, little correlation between reported delays and those experienced 30 ARPANET Routing Strategies: 3rd Generation (1987) Link cost calculations changed Measure average delay over last 10 seconds Normalize based on current value and previous results 31 32 Least Cost Algorithms Basis for routing decisions Can minimize hop with each link cost 1 Can have link value inversely proportional to capacity Given network of nodes connected by bi-directional links Each link has a cost in each direction Define cost of path between two nodes as sum of costs of links traversed For each pair of nodes, find a path with the least cost Link costs in different directions may be different E.g. length of packet queue 33 Dijkstra’s Algorithm Definitions Find shortest paths from given source node to all other nodes, by developing paths in order of increasing path length N = set of nodes in the network s = source node T = set of nodes so far incorporated by the algorithm w(i, j) = link cost from node i to node j w(i, i) = 0 w(i, j) = if the two nodes are not directly connected w(i, j) 0 if the two nodes are directly connected L(n) = cost of least-cost path from node s to node n currently known At termination, L(n) is cost of least-cost path from s to n Dijkstra’s Algorithm Method Step 1 [Initialization] for n ≠ s Initial path costs to neighboring nodes are simply link costs Find neighboring node not in T with least-cost path from s Incorporate node into T Also incorporate the edge that is incident on that node and a node in T that contributes to the path Step 3 [Update Least-Cost Paths] L(n) = w(s, n) Step 2 [Get Next Node] T = {s} Set of nodes so far incorporated consists of only source node L(n) = min[L(n), L(x) + w(x, n)] for all n T If latter term is minimum, path from s to n is path from s to x concatenated with edge from x to n Algorithm terminates when all nodes have been added to T 34 35 Dijkstra’s Algorithm Notes At termination, value L(x) associated with each node x is cost (length) of least-cost path from s to x. In addition, T defines least-cost path from s to each other node One iteration of steps 2 and 3 adds one new node to T Defines least cost path from s to that node 36 Example of Dijkstra’s Algorithm 37 IRP and ERP 38 Autonomous Systems (AS) Group of routers Exchange information Common routing protocol Set of routers and networks managed by single organization A connected network There is at least one route between any pair of nodes 39 Interior Router Protocol (IRP) Passes routing information between routers within AS May be more than one AS in internet Routing algorithms and tables may differ between different AS Routers need some info about networks outside their AS Uses exterior router protocol (ERP) IRP needs detailed model ERP supports summary information on reachability 40 Border Gateway Protocol Internet BGP routing tables number more than 90,000 routes BGP uses many route parameters, called attributes, to define routing policies and maintain a stable routing environment BGP Routing Information Exchange Within AS, router builds topology picture using IGP Router issues Update message to other routers outside AS using BGP These routers exchange info with other routers in other AS Routers must then decide best routes 41 Classless Interdomain Routing: Used by BGP to reduce table sizes E.g., an ISP owns the IP address block 195.10.x.x from the Class C address space This block consists of 256 Class C address blocks, 195.10.0.x through 195.10.255.x. ISP assigns Class C block to each customer Without CIDR, the ISP would advertise 256 Class C address blocks to its BGP peers With CIDR, BGP can supernet the address space and advertise one block, 195.10.x.x. This block is the same size as a traditional Class B address block (thus class distinctions are rendered obsolete) 42 Subnets and Subnet Masks Allow arbitrary complexity of internetworked LANs within organization Insulate overall internet from growth of network numbers and routing complexity Site looks to rest of internet like single network Each LAN assigned subnet number Host portion of address partitioned into subnet number and host number Local routers route within subnetted network Subnet mask indicates which bits are subnet number and which are host number 43 44 Routing Using Subnets 45 Summary: Routing Further reading: William Stallings, Data and Computer Communications Routing Information Protocol: http://www.faqs.org/rfcs/rfc1058.html