Top Banner
Skype P2P 通通通通通β1 http://ikejisoft.com/ 池池 池
45

Skype . ~ P2P 通信の秘密~ β1 池嶋 俊.

Dec 18, 2015

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype          .

~ P2P通信の秘密~β1

http://ikejisoft.com/池嶋 俊

Page 2: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 2

自己紹介• 某国立大学 暇な大学生

– サークルしてみたり。– ミニコミ誌作ってみたり。– バイトしてみたり。– 起業してみたり。– 研究してみたり。

Page 3: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 3

趣味• P2P

– AsagumoWeb• http://asagumo.net• Web over P2P ソフト• たとえば、 Wikipedia のような大きなサイト

をどうやって P2P にするかを考えています。

– WOP( うおっぷ ) ・ MegaWeb/MiniWebなどの言葉を提案

• 使われていない?

Page 4: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 4

Skype は?• Skype やろうぜ

– http://ikejisoft.com 内– Google で Skype.com の次に出る。かもしれ

ない ?

Page 5: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 5

僕、私の Skype の使い方• 無駄に無駄話ブレーンストーミング

– とりあえず、会議通話で繋いでおく。– 独り言を言うと誰かが反応。

• たまに凄いアイディアが!?– 何時間接続していても通話料金関係無い

し。– 問題点 鼻歌を歌う人がいるとうるさい。

Page 6: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 6

おしながき• P2P とは何だ?• Skype と P2P

– Skype の P2P– Skype が P2P

Page 7: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 7

P2P という考え方• P2P とは一言で言うと分散。• ひとりでやっていたことを皆でやる

Page 8: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 8

P2P という歴史• クライアントサーバーシステム (C/S)

– 昔からある– Ex. Web– 作りやすい

Page 9: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 9

P2P という歴史• 最近でてきた P2P

• C/S に比べて– 良いところもあり、悪いところもある

Page 10: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 10

P2P という利点• 分散すると

– 負荷が分散される• コストが下る

– 可用性が向上する• いつでも使える

Page 11: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 11

P2P という欠点• 分散すると

– 複雑になる• 作りにくい

– 全体が大きくなる• つまり、端から端までの距離が長い• 号令をかけにくい

Page 12: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 12

ひとやすみ• 質問があれば、聞いてください。

Page 13: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 13

Skype と P2P• Skype で使われている 2 つの P2P

– Skype の P2P• Skype の一部で使われている P2P 技術

– Skype が P2P• Skype 全体の動きの P2P 技術

Page 14: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 14

Skype の P2P• 既存のボイスチャット (Yahoo Messe

nger など ) では、サーバーを介して話をする。

• Skype( や SIP) は直接通信する。

Page 15: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 15

P2P 通信の利点• サーバーの帯域に依存しない

– 音質を良くする事ができる。• サーバーが不要

– サーバーがダウンしていても使える。

Page 16: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 16

P2P 通信の障害• NAT や FW によって通信が邪魔される

事がある

NAT

不許可

Page 17: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 17

解決法 1• NAT の内側から通信を開始すればよい。

NAT

許可

Page 18: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 18

解決法 1• 呼び出し専用の人をおく

NAT

Page 19: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 19

解決法 1• 話したいという伝言をする。

NAT

許可

Page 20: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 20

P2P 通信の障害 Returns• 両方 NAT だったら?

許可不許可

Page 21: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 21

解決法 2• 必殺 UDP Hole Punching

Page 22: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 22

解決法 2• 必殺 UDP Hole Punching

許可許可

Page 23: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 23

解決法 2• 必殺 UDP Hole Punching

許可許可

Page 24: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 24

解決法 2• 必殺 UDP Hole Punching

許可許可

Page 25: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 25

P2P 通信の障害 Returns2• UDP Hole Punching に失敗したら?

許可不許可

Page 26: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 26

解決法 3• 中継してあげる

Page 27: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 27

なんでこんな面倒な事を?• 最初から中継でいいじゃないか?• 中継した分、音質が劣化する。

– 遅延が増え、ジッタエラーが増えるから。• できれば直接通話したい。• Skype はがんばる。

Page 28: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 28

Skype の P2P• これらのノウハウは P2P 関係で蓄積

されてきた!

Page 29: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 29

ひとやすみ 2

• 質問してください。• よろしくおねがいします。

Page 30: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 30

Skype が P2P• Skype 以外にも、ユーザー同士が直接

話す物はある。– MSN Messenger のボイスチャット– SIP– Skype との違いは?

Page 31: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 31

SIP のしくみ

AA さんと話したい。

A さんはこっちだ

了解

SIP サーバー

Page 32: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 32

SIP の問題

A さんと話したい。

忙しい

C さんと話したい。

E さんと話したい。

F さんと話したい。

Page 33: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 33

Skype の解• サーバーを分散してみました

Page 34: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 34

Skype の解• この分散されたサーバー をスーパ

ーノードと呼びます。• スーパーノードは一般ユーザーです。

Page 35: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 35

Skype の世界

グループ グループ

Page 36: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 36

Skype の動作

A

グループ

グループ

A さんはどこ?

そこにいるよ

Page 37: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 37

Skype の動作 2

AB

グループ

グループ

B さんはどこ?

ここにいないB さんがいるグループは?

ここにいた

Page 38: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 38

予想!スーパーノード• スーパーノードの間の通信は不明

– 今、注目されている技術に DHT( 分散ハッシュテーブル ) がある。

A

A さんはどこ?

Page 39: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 39

DHT とは何か?• P2P で使われる検索手法• 特徴

– 一瞬で探せる– 完全一致

• Skype にぴったり

Page 40: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 40

SIP サーバーの中身ユーザの名前 ユーザーの場所

Akira 192.168.xx.yy

Alice 172.25.xx.zz

Bob 10.0.zz.yy

・・・・・・・・・・・・・・・Zenither 192.168.yy.zz

Page 41: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 41

DHT にすると?ユーザの名前 ユーザーの場所

Akira 192.168.xx.yy

Alice 172.25.xx.zz

Bob 10.0.zz.yy

・・・・・・・・・・・・・・・Zenither 192.168.yy.zz

テーブルを分ける

Page 42: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 42

検索するには?

P

A-D E-H I-L M-P Q-T

P さんは M-Pの中にいるな

Page 43: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 43

Skype が P2P• Skype は P2P を使った世界規模の

ネットワークを作っている。

Page 44: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 44

まとめ• Skype は P2P 技術を使っています。• P2P 技術を使う事で、 Skype は

– より音質が良く– より使いやすく

   している。• これが Skype の人気の秘密。

Page 45: Skype . ~ P2P 通信の秘密~ β1  池嶋 俊.

Skype P2P~ 通信の秘密~ 45

つづきは• こまかい話は本にします• 「入門  Skype の仕組み 

無料 IP 電話を支えるピアツーピア技術」– 日経 BP 社– 10 月 24 日発売– 買ってください m(_ _ ;)m