Transcript
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


Recommended