P2P Networks as Content P2P Networks as Content Delivery Networks - - PowerPoint PPT Presentation

p2p networks as content p2p networks as content delivery
SMART_READER_LITE
LIVE PREVIEW

P2P Networks as Content P2P Networks as Content Delivery Networks - - PowerPoint PPT Presentation

ENSC 835: HIGH- -PERFORMANCE NETWORKS PERFORMANCE NETWORKS ENSC 835: HIGH P2P Networks as Content P2P Networks as Content Delivery Networks Delivery Networks FINAL PROJECT PRESENTATION FINAL PROJECT PRESENTATION Fall 2003 Fall 2003


slide-1
SLIDE 1

1 1

ENSC 835: HIGH ENSC 835: HIGH-

  • PERFORMANCE NETWORKS

PERFORMANCE NETWORKS

FINAL PROJECT PRESENTATION FINAL PROJECT PRESENTATION Fall 2003 Fall 2003 André André Dufour Dufour http://www.sfu.ca/~adufour/ensc835/ http://www.sfu.ca/~adufour/ensc835/ adufour@sfu.ca adufour@sfu.ca

P2P Networks as Content P2P Networks as Content Delivery Networks Delivery Networks

slide-2
SLIDE 2

2 2

Roadmap Roadmap

  • Introduction and Motivation

Introduction and Motivation

  • CDNs and Issues

CDNs and Issues

  • Why P2P?

Why P2P?

  • Problem Description

Problem Description

  • What Are We Trying to Achieve?

What Are We Trying to Achieve?

  • About the Chosen Protocol

About the Chosen Protocol

  • Survey of Related Work

Survey of Related Work

  • Implementation and Results

Implementation and Results

  • Future Work

Future Work

  • References

References

slide-3
SLIDE 3

3 3

Introduction: CDNs Introduction: CDNs

  • Distributed servers in lower

Distributed servers in lower-

  • tier ISPs

tier ISPs

  • Close to users

Close to users

  • Geographically dispersed

Geographically dispersed

  • Again, close to users

Again, close to users

  • Avoid network bottlenecks

Avoid network bottlenecks

  • Overall intent:

Overall intent:

  • Distribute processing and network load

Distribute processing and network load

  • No single point of failure

No single point of failure

  • Thus, “better” performance

Thus, “better” performance

slide-4
SLIDE 4

4 4

CDNs CDNs -

  • Issues

Issues

  • Cost!

Cost!

  • To customers:

To customers:

  • As much as $15,000 / month / Mbps [1]

As much as $15,000 / month / Mbps [1]

  • To operators:

To operators:

  • Akamai

Akamai has 12,600 servers worldwide [1] has 12,600 servers worldwide [1]

  • Exodus/Cable & Wireless has 2600 servers [1]

Exodus/Cable & Wireless has 2600 servers [1]

  • Fortinet

Fortinet (AV vendor) operates a multi (AV vendor) operates a multi-

  • tier CDN for

tier CDN for distributing antivirus updates distributing antivirus updates

  • Can we do without the servers?

Can we do without the servers?

slide-5
SLIDE 5

5 5

P2P Networks P2P Networks

P2P is a class of applications that takes P2P is a class of applications that takes advantage of resources advantage of resources --

  • - storage, cycles,

storage, cycles, content, human presence content, human presence --

  • - available at

available at the edges of the Internet [2] the edges of the Internet [2]

  • Aggregate or leverage existing resources

Aggregate or leverage existing resources

  • Users’ hard drives

Users’ hard drives

  • Overlay of existing network

Overlay of existing network

  • Significant participation of end systems

Significant participation of end systems

slide-6
SLIDE 6

6 6

P2P Networks P2P Networks

  • Naturally distributed

Naturally distributed

  • More fault tolerant than server approach

More fault tolerant than server approach

  • Cannot easily be disabled by equipment

Cannot easily be disabled by equipment failure failure

  • Structure similar to CDNs, but without

Structure similar to CDNs, but without dedicated servers dedicated servers

slide-7
SLIDE 7

7 7

Problem Description Problem Description

  • Simulate the use of a P2P network

Simulate the use of a P2P network (Gnutella) as a CDN (Gnutella) as a CDN

  • Consider the distribution of versioned

Consider the distribution of versioned content (e.g. AV update, OS patch, …) content (e.g. AV update, OS patch, …)

  • Observe the propagation

Observe the propagation behaviour behaviour of the

  • f the

content content

  • In particular, how long it takes to reach all

In particular, how long it takes to reach all nodes nodes

slide-8
SLIDE 8

8 8

Gnutella Gnutella

  • Distributed P2P networking protocol

Distributed P2P networking protocol

  • 3 phases of interest:

3 phases of interest:

  • Connection (Anne and Brian’s project)

Connection (Anne and Brian’s project)

  • Query flooding

Query flooding

  • Downloading with HTTP

Downloading with HTTP

  • Selected because it’s an open and widely

Selected because it’s an open and widely deployed technology deployed technology

slide-9
SLIDE 9

9 9

Gnutella as a CDN Gnutella as a CDN

slide-10
SLIDE 10

10 10

Related Work Related Work

  • Gnutella development is ongoing

Gnutella development is ongoing

  • I used v 0.4 (for simplicity)

I used v 0.4 (for simplicity)

  • Latest quasi

Latest quasi-

  • stable version is 0.6

stable version is 0.6

  • Many other P2P protocols and applications are

Many other P2P protocols and applications are emerging emerging

  • Kazaa/Fastrack

Kazaa/Fastrack network network

  • P2P Gaming (see [3], [4])

P2P Gaming (see [3], [4])

  • Akamai

Akamai uses a P2P architecture for uses a P2P architecture for synchronizing its servers synchronizing its servers

  • But have not found any evidence that someone

But have not found any evidence that someone is doing what we propose is doing what we propose

slide-11
SLIDE 11

11 11

Implementation Implementation

  • Used NS

Used NS-

  • 2

2

  • We’re operating at the application layer

We’re operating at the application layer

  • Finer control than OPNET

Finer control than OPNET

  • Simulated a network of Gnutella

Simulated a network of Gnutella servents servents

  • Parameters:

Parameters:

  • Number of nodes

Number of nodes

  • % of nodes with content

% of nodes with content

  • Connectivity of network (

Connectivity of network (avg avg and max and max conns conns) )

  • Time between queries

Time between queries

  • Random number generator seed

Random number generator seed

slide-12
SLIDE 12

12 12

Implementation: the Gory Details Implementation: the Gory Details

GnutAgent ReleventAgent

GnutDescriptor GnutQueryData GnutQueryHitData

GnutStats GnutPathList

slide-13
SLIDE 13

13 13

Results Results

0.5 1 1.5 2 2.5 200 400 600 800 1000 1200 Time [s] Number of Nodes not Updated

5% of nodes have content 5% of nodes have content – – Weakly connected ring Weakly connected ring

slide-14
SLIDE 14

14 14

Results Results

5% of nodes have content 5% of nodes have content – – Strongly connected Strongly connected

  • 0.5

0.5 1 1.5 2 2.5 200 400 600 800 1000 1200 Time [s] Number of Nodes Not Updated

slide-15
SLIDE 15

15 15

Results Results

50% of nodes have content 50% of nodes have content – – Strongly connected Strongly connected

  • 1

1 2 3 4 5 6 7 8 200 400 600 800 1000 1200 Time [s] Number of Nodes Not Updated

slide-16
SLIDE 16

16 16

Results Results

50% of nodes have content 50% of nodes have content – – Weakly connected ring Weakly connected ring

  • 1

1 2 3 4 5 6 7 8 200 400 600 800 1000 1200 Time [s] Number of Nodes Not Updated

slide-17
SLIDE 17

17 17

Conclusions Conclusions

  • Both connectivity and proportion of nodes

Both connectivity and proportion of nodes with content influence update time with content influence update time

  • Given the right conditions, P2P networks

Given the right conditions, P2P networks can be used as CDNs can be used as CDNs

  • But beware: this is only a toy

But beware: this is only a toy-

  • sized

sized

  • simulation. More analysis and larger
  • simulation. More analysis and larger

simulation is required simulation is required

slide-18
SLIDE 18

18 18

Future Work Future Work

  • More simulation!

More simulation!

  • Larger network

Larger network

  • Larger range of parameters

Larger range of parameters

  • More parameters?

More parameters?

  • Integrate this project with Anne and

Integrate this project with Anne and Brian’s “Gnutella Connection Dynamics” Brian’s “Gnutella Connection Dynamics”

  • Add simulation of HTTP download

Add simulation of HTTP download

slide-19
SLIDE 19

19 19

References References

  • [1] CDN shortlist (printable version):

http://www.hostingtech.com/connectivity/02_06_cdn_print.html, (accessed October 28, 2003).

  • [2] What is P2P… and What Isn’t [Nov. 24,

2000]:http://www.openp2p.com/pub/a/p2p/2000/11/24/shirky1-whatisp2p.html?page=2,(accessed October 27, 2003).

  • [3] A. El Saddik, and A. Dufour, "Peer-to-Peer Suitability for Collaborative Multiplayer Games," In

Proceedings of the Seventh IEEE International Symposium on Distributed Simulation and Real Time Applications, Delft, Netherland 25th - 28th Oct. 2003.

  • [4] A. El Saddik, and A. Dufour, "Peer-to-Peer Communication through the Design and

Implementation of Xiangqi," In Proceedings of the International Conference on Parallel and Distributed Computing, Klagenfurt, Austria 26th - 29th August 2003.

  • [5] A. Fouron, and B. Fraser, “Dynamic Connection Creation in the Gnutella Network,” Graduate

Work, Simon Fraser University, 2003.

  • [6] Gnutella – Stable – 0.4:
  • http://rfc-gnutella.sourceforge.net/developer/stable/index.html,
  • (accessed October 10, 2003).
  • [7] Gnutella Protocol Development:
  • http://rfc-gnutella.sourceforge.net/developer/testing/index.html,
  • (accessed October 10, 2003).
  • [8] S. Floyd and V. Paxson, ``Difficulties in simulating the Internet,'' IEEE/ACM Transactions on

Networking, vol. 9, no. 4, pp. 392 - 403, August 2001.