22
An Experimental Study of the Skype Peer-to-Peer VoIP System Saikat Guha (Cornell) Neil Daswani (Google) Ravi Jain (Google) IPTPS 2006 Saikat Guha, Neil Daswani, Ravi Jain Experimental Study of Skype

An Experimental Study of the Skype Peer-to-Peer VoIP System · 2018-04-06 · 20s 1m 3m 10m 30m 1h 3h CDF Relayed Conversation Duration Skype users: di er from le-sharing, phone users

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: An Experimental Study of the Skype Peer-to-Peer VoIP System · 2018-04-06 · 20s 1m 3m 10m 30m 1h 3h CDF Relayed Conversation Duration Skype users: di er from le-sharing, phone users

An Experimental Study of theSkype Peer-to-Peer VoIP

System

Saikat Guha (Cornell)

Neil Daswani (Google)

Ravi Jain (Google)

IPTPS 2006

Saikat Guha, Neil Daswani, Ravi Jain Experimental Study of Skype

Page 2: An Experimental Study of the Skype Peer-to-Peer VoIP System · 2018-04-06 · 20s 1m 3m 10m 30m 1h 3h CDF Relayed Conversation Duration Skype users: di er from le-sharing, phone users

About Skype

I Voice over IP (VoIP)

I 50 million users

I Valued at $2.6 billion

I Proprietary

Saikat Guha, Neil Daswani, Ravi Jain Experimental Study of Skype

Page 3: An Experimental Study of the Skype Peer-to-Peer VoIP System · 2018-04-06 · 20s 1m 3m 10m 30m 1h 3h CDF Relayed Conversation Duration Skype users: di er from le-sharing, phone users

About Skype

“Internet Telephony that Just Works”

I Adaptive voice quality

modem, broadband, T1, . . .

I Works in any network topology

one or more NATs, Firewalls, . . .

Saikat Guha, Neil Daswani, Ravi Jain Experimental Study of Skype

Page 4: An Experimental Study of the Skype Peer-to-Peer VoIP System · 2018-04-06 · 20s 1m 3m 10m 30m 1h 3h CDF Relayed Conversation Duration Skype users: di er from le-sharing, phone users

Outrageous Opinion1 #1

I NAT Traversal in Skype:I Level 0: Initiator NAT’edI Level 1: Recipient NAT’edI Level 2: Both NAT’ed (well-behaved NATs)I Level 3: Both NAT’ed (broken NATs)

Outrageous Opinion

NAT Traversal is essential for P2P

I How to pick NAT Traversal complexity,

and make it scale?1does not, necessarily, reflect the views of all co-authors or employers

Saikat Guha, Neil Daswani, Ravi Jain Experimental Study of Skype

Page 5: An Experimental Study of the Skype Peer-to-Peer VoIP System · 2018-04-06 · 20s 1m 3m 10m 30m 1h 3h CDF Relayed Conversation Duration Skype users: di er from le-sharing, phone users

NAT Traversal in Skype

Skype SkypeNAT

Level 0: Initiator NAT’ed

Solution: Don’t embed IP address in payloadApps: Most old software, almost all new software

Saikat Guha, Neil Daswani, Ravi Jain Experimental Study of Skype

Page 6: An Experimental Study of the Skype Peer-to-Peer VoIP System · 2018-04-06 · 20s 1m 3m 10m 30m 1h 3h CDF Relayed Conversation Duration Skype users: di er from le-sharing, phone users

NAT Traversal in Skype

Rendezvous

Skype SkypeNAT

Level 1: Recipient NAT’ed

Solution: Use Rendezvous ServiceApps: Bittorrent, MSN, Yahoo, Skype, . . .

Saikat Guha, Neil Daswani, Ravi Jain Experimental Study of Skype

Page 7: An Experimental Study of the Skype Peer-to-Peer VoIP System · 2018-04-06 · 20s 1m 3m 10m 30m 1h 3h CDF Relayed Conversation Duration Skype users: di er from le-sharing, phone users

NAT Traversal in Skype

Rendezvous

Skype SkypeNAT NAT

Level 2: Both NAT’ed (well-behaved NATs)

Solution: Use STUN (UDP) or STUNT (TCP)Apps: MSN, Yahoo, Skype, . . .

Saikat Guha, Neil Daswani, Ravi Jain Experimental Study of Skype

Page 8: An Experimental Study of the Skype Peer-to-Peer VoIP System · 2018-04-06 · 20s 1m 3m 10m 30m 1h 3h CDF Relayed Conversation Duration Skype users: di er from le-sharing, phone users

NAT Traversal in Skype

Rendezvous

Skype SkypeNAT NAT

Level 3: Both NAT’ed (broken NATs)

Solution: Use TURNApps: MSN (limited), Yahoo (limited), Skype

Saikat Guha, Neil Daswani, Ravi Jain Experimental Study of Skype

Page 9: An Experimental Study of the Skype Peer-to-Peer VoIP System · 2018-04-06 · 20s 1m 3m 10m 30m 1h 3h CDF Relayed Conversation Duration Skype users: di er from le-sharing, phone users

NAT Traversal in Skype

Rendezvous

Skype SkypeNAT NAT

Level 3: Both NAT’ed (broken NATs)

Solution: Use TURN + P2PApps: Skype

Saikat Guha, Neil Daswani, Ravi Jain Experimental Study of Skype

Page 10: An Experimental Study of the Skype Peer-to-Peer VoIP System · 2018-04-06 · 20s 1m 3m 10m 30m 1h 3h CDF Relayed Conversation Duration Skype users: di er from le-sharing, phone users

Contributions

1. Properties of Skype’s P2PRendezvous-Relay Service

I load (low), structure (yes), churn (low) . . .

2. Skype user behaviorI call-length (long), file-transfer (small), online

activity (predictable) . . .

Saikat Guha, Neil Daswani, Ravi Jain Experimental Study of Skype

Page 11: An Experimental Study of the Skype Peer-to-Peer VoIP System · 2018-04-06 · 20s 1m 3m 10m 30m 1h 3h CDF Relayed Conversation Duration Skype users: di er from le-sharing, phone users

Skype’s P2P Network

I Inherent structure: [Baset et al. INFOCOM ’06]

I Supernodes (SN): no NAT, spare bandwidth

I Ordinary nodes (ON): associate with one (or

a few) supernodes. Don’t contribute to overlay.

I Skype network: FastTrack (likely)I Experiment: Capture traffic for a SN

I at Cornell, 4.5 months, ∼13GB

I Caveat: everything “encrypted”, only one SNSaikat Guha, Neil Daswani, Ravi Jain Experimental Study of Skype

Page 12: An Experimental Study of the Skype Peer-to-Peer VoIP System · 2018-04-06 · 20s 1m 3m 10m 30m 1h 3h CDF Relayed Conversation Duration Skype users: di er from le-sharing, phone users

Skype’s P2P Network

00.10.20.30.40.50.60.70.80.9

1

30k10k3k1k3001003010

CD

F

Bandwidth (Bps)

Control trafficAll traffic

Relayed traffic

Supernode: Low Network Load

� Bandwidth: 51 Bps (median), 7.5 kBps (median relayed),34 kBps (peak)

� Control traffic (∼75%), Relayed traffic (∼10%)Saikat Guha, Neil Daswani, Ravi Jain Experimental Study of Skype

Page 13: An Experimental Study of the Skype Peer-to-Peer VoIP System · 2018-04-06 · 20s 1m 3m 10m 30m 1h 3h CDF Relayed Conversation Duration Skype users: di er from le-sharing, phone users

Skype’s P2P Network

I Experiment: Estimate no. of active nodes

I Supernodes (SN):I Discover SN: crawl client SN cacheI App-level ping: replay “hello”-packetI 30%–40% of SNs active, 250k foundI Caveat: DHCP assigned SN address

I All Nodes (ON+SN):I Record number of active nodesI .4 million simultaneous usersI Caveat: reported by proprietary client

Saikat Guha, Neil Daswani, Ravi Jain Experimental Study of Skype

Page 14: An Experimental Study of the Skype Peer-to-Peer VoIP System · 2018-04-06 · 20s 1m 3m 10m 30m 1h 3h CDF Relayed Conversation Duration Skype users: di er from le-sharing, phone users

Outrageous Opinion1 #2

I Rough estimate: (just network, not CPU)

I ∼1–2 GBps median relay-trafficI .20 well-provisioned boxes at PoPsI ∼ $10 million per year

I Supernodes mostly at universities (EU, Asia, US)

Outrageous Opinion

Skype freeloads on university bandwidth

I Is there an ISP-friendly commercial

model for P2P?Saikat Guha, Neil Daswani, Ravi Jain Experimental Study of Skype

Page 15: An Experimental Study of the Skype Peer-to-Peer VoIP System · 2018-04-06 · 20s 1m 3m 10m 30m 1h 3h CDF Relayed Conversation Duration Skype users: di er from le-sharing, phone users

Skype’s P2P Network

20%

40%

60%

80%

100%

Sun 10/2Sun 9/25Sun 9/18

Fra

ctio

n O

nlin

e

Date (noon UTC)

All NodesSupernodes

24h12h0h

UTC Thu 9/22

-5%

0%

5%

24h12h0h

Sup

erno

de C

hurn

UTC Thu 9/22

JoinsDeparts

Supernodes: Diurnal, Work-week Patterns

� Supernodes: low churn, .5% turnover (over 30-min)

Saikat Guha, Neil Daswani, Ravi Jain Experimental Study of Skype

Page 16: An Experimental Study of the Skype Peer-to-Peer VoIP System · 2018-04-06 · 20s 1m 3m 10m 30m 1h 3h CDF Relayed Conversation Duration Skype users: di er from le-sharing, phone users

Outrageous Opinion1 #3

I Handling ChurnI a blood sportI Skype, perhaps intentionally, controls

churn (based on NAT, bandwidth, maybe session history, . . .)

Outrageous Opinion

Churn resistance is overrated. Control churn.

I Is there a price-performance tradeoff

between controlling, and handling

churn?Saikat Guha, Neil Daswani, Ravi Jain Experimental Study of Skype

Page 17: An Experimental Study of the Skype Peer-to-Peer VoIP System · 2018-04-06 · 20s 1m 3m 10m 30m 1h 3h CDF Relayed Conversation Duration Skype users: di er from le-sharing, phone users

Skype Users

0.001

0.01

0.1

1

16d8d4d2d1d8h4h2h1h

P[s

essi

on ti

me

> x

]

Supernode Session Time

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

3h1h30m10m3m1m20s

CD

F

Relayed Conversation Duration

Skype users: differ from file-sharing, phone users

� Session Length: heavy-tailed, 5.5h median� File-Transfer: 346kB median� Call-Length: 12m 53s mean, 3h 26m max

Saikat Guha, Neil Daswani, Ravi Jain Experimental Study of Skype

Page 18: An Experimental Study of the Skype Peer-to-Peer VoIP System · 2018-04-06 · 20s 1m 3m 10m 30m 1h 3h CDF Relayed Conversation Duration Skype users: di er from le-sharing, phone users

Summary

1. Properties of Skype’s P2PRendezvous-Relay Service

I Low Load: NAT traversal, manysupernodes

I Stable: exploits heterogeneityI ISP-unfriendly, taxes universities

2. Skype usersI Different from file-sharing users

(longer session lengths, smaller files transferred)

I Different from phone users (longer calls)

3. Data available on requestSaikat Guha, Neil Daswani, Ravi Jain Experimental Study of Skype

Page 19: An Experimental Study of the Skype Peer-to-Peer VoIP System · 2018-04-06 · 20s 1m 3m 10m 30m 1h 3h CDF Relayed Conversation Duration Skype users: di er from le-sharing, phone users

Discussion

For a peer-to-peer application:

I Complexity and scalability of NAT

traversal

I ISP-friendly commercial model

I Tradeoffs between controlling and

handling churn

www.cs.cornell.edu/∼saikat/skype/

Saikat Guha, Neil Daswani, Ravi Jain Experimental Study of Skype

Page 20: An Experimental Study of the Skype Peer-to-Peer VoIP System · 2018-04-06 · 20s 1m 3m 10m 30m 1h 3h CDF Relayed Conversation Duration Skype users: di er from le-sharing, phone users

Outrageous Opinions2

I NAT Traversal is essential for P2P

I Skype freeloads on university bandwidth

I Churn resistance is overrated. Control

churn.

www.cs.cornell.edu/∼saikat/skype/

2does not, necessarily, reflect the opinion of my co-authors, our employers, or

anyone else.

Saikat Guha, Neil Daswani, Ravi Jain Experimental Study of Skype

Page 21: An Experimental Study of the Skype Peer-to-Peer VoIP System · 2018-04-06 · 20s 1m 3m 10m 30m 1h 3h CDF Relayed Conversation Duration Skype users: di er from le-sharing, phone users

Supernode Distribution

0%

20%

40%

60%

80%

100%

Sun 10/2Sun 9/25Sun 9/18

Dis

trib

utio

n of

Sup

erno

des

Date (noon UTC)

Europe

North America

Asia

Others

24h18h12h6h0h

UTC Thu 9/22

Saikat Guha, Neil Daswani, Ravi Jain Experimental Study of Skype

Page 22: An Experimental Study of the Skype Peer-to-Peer VoIP System · 2018-04-06 · 20s 1m 3m 10m 30m 1h 3h CDF Relayed Conversation Duration Skype users: di er from le-sharing, phone users

Filesize Distribution

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

10M3M1M300k100k30k10k3k1k

CD

F

File Size (bytes)

Relayed File Size

Saikat Guha, Neil Daswani, Ravi Jain Experimental Study of Skype