Download Powerpoint - People.cs.uchicago.edu

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

AppleTalk wikipedia , lookup

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

IEEE 1355 wikipedia , lookup

Net bias wikipedia , lookup

Backpressure routing wikipedia , lookup

Piggybacking (Internet access) wikipedia , lookup

CAN bus wikipedia , lookup

Cracking of wireless networks wikipedia , lookup

Computer network wikipedia , lookup

Peering wikipedia , lookup

Airborne Networking wikipedia , lookup

IEEE 802.1aq wikipedia , lookup

Recursive InterNetwork Architecture (RINA) wikipedia , lookup

Kademlia wikipedia , lookup

Dijkstra's algorithm wikipedia , lookup

Routing wikipedia , lookup

Routing in delay-tolerant networking 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