2

Skype プロトコルについて質問があります。おそらく、wiki によると、Skype のスーパーノードは UDP ホール パンチングに使用されます。スーパーノードは、ファイアウォール/NAT のないノードです。

私の質問は、これはどのように信頼できるのですか? 大多数のインターネット ユーザーは NAT の背後にいるのではありませんか?

また、この手法を使用して P2P アプリケーションを作成した場合、ファイアウォールのないピアが存在しないとどうなりますか? 最終的にNATなしでいくつかのピアが存在することに依存するアプリケーションを起動する方法がわかりません

ありがとう

4

2 に答える 2

1

STUNなどのサービスについての議論が含まれているlibjingleに関する論文を読んでください。両方の当事者が NAT の背後にある場合、多くの場合、リレーを介して中継したり、一方または他方の側に穴を開けるのを支援したりするために、外部サービスが必要になります。

http://code.google.com/apis/talk/libjingle/important_concepts.html

于 2011-07-09T13:32:43.020 に答える
0

特に Skype についてコメントすることはできませんが、これについてはある程度の経験があります (http://wiki.squeak.org/squeak/5629)。私たちはスーパーノードを「大きな友好的な巨人」またはBFGと呼びました:)。

スーパーノードの背後にある考え方は、ネットワーク内に出現し、新しいユーザーに NAT ホール パンチングのオプションを提供することを望んでいる一方で、p2p ネットワーク オペレーターとして、最小限のセットを自分で提供することです (1 台または 2 台のマシンである可能性があります。最初の穴あけに必要なだけで、実際のトラフィックはとにかく直接再ルーティングされます)。私の知る限り、Skype も同様です。Skype は、最小限のスーパーノード セットを実行します。

今年初めに Skype に問題が発生したとき、多くの人が再接続を試みたため、スーパーノードが過負荷になり、ドミノ効果が発生しました。Skype はスーパーノードを追加しましたが、その時点で再接続しようとする人の数が非常に多かったため、ネットワークが再構築されるまでにかなりの時間がかかりました。非常に面白いことに、上記のプロジェクトでも同様のことがありましたが、P2P ネットワークは、どこか限界を超えてすべてが崩壊するまで非常に回復力があります。

[免責事項: 私は Skype の元所有者である eBay で働いていますが、これはすべて私の個人的な意見であり、公開情報に基づいています]

于 2011-07-09T13:32:44.707 に答える