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

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

  • View
    233

  • Download
    0

Embed Size (px)

Citation preview

Skype          .

~ P2P通信の秘密~β1

http://ikejisoft.com/池嶋 俊

Skype P2P~ 通信の秘密~ 2

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

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

Skype P2P~ 通信の秘密~ 3

趣味• P2P

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

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

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

• 使われていない?

Skype P2P~ 通信の秘密~ 4

Skype は?• Skype やろうぜ

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

ない ?

Skype P2P~ 通信の秘密~ 5

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

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

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

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

Skype P2P~ 通信の秘密~ 6

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

– Skype の P2P– Skype が P2P

Skype P2P~ 通信の秘密~ 7

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

Skype P2P~ 通信の秘密~ 8

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

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

Skype P2P~ 通信の秘密~ 9

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

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

Skype P2P~ 通信の秘密~ 10

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

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

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

Skype P2P~ 通信の秘密~ 11

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

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

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

Skype P2P~ 通信の秘密~ 12

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

Skype P2P~ 通信の秘密~ 13

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

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

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

Skype P2P~ 通信の秘密~ 14

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

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

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

Skype P2P~ 通信の秘密~ 15

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

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

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

Skype P2P~ 通信の秘密~ 16

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

事がある

NAT

不許可

Skype P2P~ 通信の秘密~ 17

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

NAT

許可

Skype P2P~ 通信の秘密~ 18

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

NAT

Skype P2P~ 通信の秘密~ 19

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

NAT

許可

Skype P2P~ 通信の秘密~ 20

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

許可不許可

Skype P2P~ 通信の秘密~ 21

解決法 2• 必殺 UDP Hole Punching

Skype P2P~ 通信の秘密~ 22

解決法 2• 必殺 UDP Hole Punching

許可許可

Skype P2P~ 通信の秘密~ 23

解決法 2• 必殺 UDP Hole Punching

許可許可

Skype P2P~ 通信の秘密~ 24

解決法 2• 必殺 UDP Hole Punching

許可許可

Skype P2P~ 通信の秘密~ 25

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

許可不許可

Skype P2P~ 通信の秘密~ 26

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

Skype P2P~ 通信の秘密~ 27

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

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

Skype P2P~ 通信の秘密~ 28

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

されてきた!

Skype P2P~ 通信の秘密~ 29

ひとやすみ 2

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

Skype P2P~ 通信の秘密~ 30

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

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

Skype P2P~ 通信の秘密~ 31

SIP のしくみ

AA さんと話したい。

A さんはこっちだ

了解

SIP サーバー

Skype P2P~ 通信の秘密~ 32

SIP の問題

A さんと話したい。

忙しい

C さんと話したい。

E さんと話したい。

F さんと話したい。

Skype P2P~ 通信の秘密~ 33

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

Skype P2P~ 通信の秘密~ 34

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

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

Skype P2P~ 通信の秘密~ 35

Skype の世界

グループ グループ

Skype P2P~ 通信の秘密~ 36

Skype の動作

A

グループ

グループ

A さんはどこ?

そこにいるよ

Skype P2P~ 通信の秘密~ 37

Skype の動作 2

AB

グループ

グループ

B さんはどこ?

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

ここにいた

Skype P2P~ 通信の秘密~ 38

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

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

A

A さんはどこ?

Skype P2P~ 通信の秘密~ 39

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

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

• Skype にぴったり

Skype P2P~ 通信の秘密~ 40

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

Akira 192.168.xx.yy

Alice 172.25.xx.zz

Bob 10.0.zz.yy

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

Skype P2P~ 通信の秘密~ 41

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

Akira 192.168.xx.yy

Alice 172.25.xx.zz

Bob 10.0.zz.yy

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

テーブルを分ける

Skype P2P~ 通信の秘密~ 42

検索するには?

P

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

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

Skype P2P~ 通信の秘密~ 43

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

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

Skype P2P~ 通信の秘密~ 44

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

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

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

Skype P2P~ 通信の秘密~ 45

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

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