Transcript lecture22
EE 122: Lecture 22
(Overlay Networks)
Ion Stoica
November 27, 2001
Motivations
Changes in the network happen very slowly
Why?
- Internet network is a shared infrastructure; need to achieve
consensus (IETF)
- Many of proposals require to change a large number of
routers (e.g., IP Multicast, QoS); otherwise end-users won’t
benefit
Proposed changes that haven’t happened yet on
large scale:
- Congestion (RED ‘93); More Addresses (IPv6 ‘91)
- Security (IPSEC ‘93); Multi-point (IP multicast ‘90)
[email protected]
2
Motivations (cont’d)
One size does not fit all
Applications need different levels of
-
Reliability
Performance (latency)
Security
Access control (e.g., who is allowed to join a multicast
group)
- …
[email protected]
3
Goals
Make it easy to deploy new functionalities in the
network accelerate the pace of innovation
Allow users to customize their service
[email protected]
4
Solution
Deploy processing in the network
Have packets processed as they traverse the
network
AS-1
AS-1
[email protected]
IP
Overlay Network
(over IP)
5
Examples
Overlay multicast
Increase robustness and performance
Content Distribution Networks (CDNs)
[email protected]
6
Motivations: IP Multicast Problems
Scalability with number of groups
- Routers need to maintain per-group state
• Aggregation of multicast addresses is complicated
Supporting higher level functionality is difficult
- IP Multicast: best-effort multi-point delivery service
- Reliability and congestion control for IP Multicast complicated
• Need to deal with heterogeneous receiver negotiation hard
[email protected]
7
Approach
Provide IP multicast functionality above the IP layer
application level multicast
Challenge: do this efficiently
Projects:
-
Narada
Overcast
Scattercast
Yoid
…
[email protected]
8
Narada [Yang-hua et al, 2000]
Multi-source multicast
Involves only end hosts
Small group sizes <= hundreds of nodes
Typical application: chat
[email protected]
9
Narada (cont’d)
Gatech
Stanford
Stan1
Stan2
CMU
Berk1
Berk2
Berkeley
Overlay Tree
Stan1
Gatech
Stan2
CMU
Berk1
[email protected]
Berk2
10
Discussion
Scalability (# of groups)
- Routers do not maintain per-group state
- End systems do, but they participate in very few groups
Easier to deploy
Potentially simplifies support for higher level functionality
- Leverage computation and storage of end systems
- For example, for buffering packets, transcoding, ACK aggregation
- Leverage solutions for unicast congestion control and reliability
Scalability (# of receivers) still an open issue
- Other solutions (e.g., Overcast) are scalable but not as flexible: typically
assume single-source multicast trees
[email protected]
11
Examples
Overlay multicast
Increase robustness and performance
Content Distribution Networks (CDNs)
[email protected]
12
Motivation
Routing in the Internet is not optimal with respect
to
- Performance: packets do not necessary propagate
along the shortest path
- Robustness: two nodes may not be able to
communicate although there is a path between them
Why?
[email protected]
13
Solution
Control routing at the application level
Projects
- Resilient Overlay Networks
- Detour
[email protected]
14
Resilient Overlay Networks
[Anderson et al, 2001]
Make the end to end communication more robust
Each node monitor the network conditions to
every other node by periodically probing the
network
If node n1 cannot reach n2 directly, try to reach it
through an intermediate node n3
Intended application: robust communication in a
small group (<= 50, 60 nodes)
[email protected]
15
Resilient Overlay Networks (cont’d)
N1 can no longer communicate directly to N2
N2
N1
[email protected]
16
Resilient Overlay Networks (cont’d)
Find a node N3 such that N1 can communicate
with N3 and N3 with N2
N2
N1
[email protected]
17
Discussion
Find an alternate path in most cases when two
nodes cannot communicate directly’
Can be used to provide better delay and
bandwidth than the direct IP route between two
nodes
Scalability still an open issue
[email protected]
18
Examples
Overlay multicast
Increase robustness and performance
Content Distribution Networks (CDNs)
[email protected]
19
Motivations
Today’s Internet is not optimized for Web traffic
Many clients transfer the same information (e.g.,
CNN front page, software downloads)
Identical files are transferred over and over again
IP multicast not a solution:
- Users don’t access the same info at the same time
- Users have widely different capabilities:
• Communication: cable modem vs. dial up modem
• Display: high-resolution workstation monitor vs.
Palm Pilot
• …
[email protected]
20
Solution
Have nodes inside the network that store and
process the documents
Examples: web caching, transcoding
[email protected]
21
“Base-line” Solution
Many clients transfer same information
- Generate unnecessary server and network load
- Clients experience unnecessary latency
Server
Backbone ISP
ISP-1
ISP-2
Clients
[email protected]
22
Reverse Caches
Cache documents close to server decrease server load
Typically done by content providers
Server
Reverse caches
Backbone ISP
ISP-1
ISP-2
Clients
[email protected]
23
Forward Proxies
Cache documents close to clients reduce network traffic
and decrease latency
Typically done by ISPs or corporate LANs
Server
Reverse caches
Backbone ISP
ISP-1
ISP-2
Forward caches
Clients
[email protected]
24
Content Distribution Networks
(CDNs)
Integrate forward and reverse caching
functionalities into one overlay network (usually)
administrated by one entity
- Example: Akamai
Documents are cached both
- As a result of clients’ requests (pull)
- Pushed in the expectation of a high access rate
Beside caching do processing, e.g.,
- Handle dynamic web pages
- Transcoding
[email protected]
25
CDNs (cont’d)
Server
CDN
Backbone ISP
ISP-1
ISP-2
Forward caches
Clients
[email protected]
26
Discussion
CDNs were developed to efficiently handle
today’s web traffic
Relive server and network load
- Perform load balancing, caching
Increase client performance
Process data according to clients needs
A basic technique that makes CDNs possible is
redirection (see HTTP). How?
[email protected]
27
Conclusions
Overlay networks allow to deploy new services in the
network today, e.g.,
- Multicast, CDNs
Can increase network robustness and client
perceived performance, e.g.,
- RON, CDNs
Challenges
- Efficiency
• A packet may need to be processed above transport
layer before reaching the destination
• Path followed by the packet might be worse than the
direct IP route
- Scalability
[email protected]
28