Lainbo

Lainbo's Blog

If you’re nothing without the suit, then you shouldn't have it.
github
email
follow

あなたの最適化ラインサーバーは大きなパッケージですか?

サーバーを選ぶ際、一部の業者は自社の回線がどれほど優れているか、ピーク時の安定性などを主張し、優れた 24 時間遅延テストの画像を提供しますが、これは本当に信頼できますか?
image

「大きなパケット」と「小さなパケット」とは?#

「大きなパケット」と「小さなパケット」とは、一部の VPS サービスプロバイダーがデータパケットのサイズに基づいて異なるネットワークルーティング戦略を採用することを指します:

  • 小さなパケット:通常は最適化されたルートを通ります。これがサービスプロバイダーがよく宣伝する回線です。
  • 大きなパケット:最適化されていないルートを通る可能性があり、パフォーマンスが低下しますが、サービスプロバイダーのコストは低くなります。

もっと分かりやすく説明すると
MTU は簡単に言えばトラックのサイズです。あなたのデータパケットは荷物に相当し、トラックが大きければ大きな荷物を運ぶことができます。トラックが小さくても、大きな荷物を小さな荷物に分けて運ぶことはできますが、効率は低下します。

しかし、現在の業者は、小さな荷物を高速道路で、大きな荷物を土の道で運ぶことをしています。あなたが ping でルートを測定すると、小さな荷物を通っているため、高速道路を通っていると思い込むかもしれませんが、実際に購入して使用を開始すると、土の道を通っていることに気づきます。

「土の道」を通る香港サーバーのルーティング図#

香港に行く際、明らかに広州出口から直接香港に接続できるのに、アメリカを一周してしまいます。
image

「高速道路」を通る香港サーバーの国際ルーティング図#

広州出口から直接香港に接続し、何の迂回もありません。
image

なぜ ping テストが欺瞞的である可能性があるのか#

大きなパケットと小さなパケットのサービスプロバイダーは、あなたが小さなデータパケット(ping サーバー)を送信しているときに、上記の高速道路に直接接続させますが、実際の使用(通常は大きなパケットの使用)を開始すると、土の道を通らせます。もしサービスプロバイダーが悪意を持っている場合、ping を実行しても実際の体験を測定することはできません。

大きなパケットと小さなパケットを検出する方法#

私たちはNTrace-coreを使用して、VPS に大きなパケットと小さなパケットのルーティング問題が存在するかどうかを検出できます。以下は具体的な手順です:

  1. インストール:

    curl nxtrace.org/nt | bash
    
  2. テストコマンドを実行:

    nexttrace --tcp --psize 12 202.96.209.133:80 && nexttrace --tcp --psize 1452 202.96.209.133:80
    

    このコマンドは、上海電信にある IP アドレスに対して 2 回テストを送信します:

    • 最初は 12KB の小さなパケットを送信
    • 次に 1452KB の大きなパケットを送信
  3. 2 回の出力結果を比較し、ルーティングが同じかどうかを確認します。ルーティングが異なる場合、大きなパケットと小さなパケットの問題が存在する可能性が高いです。

注意事項#

  1. パケットサイズが 1452KB である理由を挙げますが、過度に大きなパケットサイズはイーサネットフレームのサイズを超える可能性があります。ネットワークカードの MTU を確認できますが、過度に大きなパケットは意味がなく、データパケットは分割されます。1452 バイトのパケットサイズは、さまざまなネットワークプロトコルのオーバーヘッドを考慮した比較的適切な選択です。
    1452バイト = 1518-18-8-20-20
    つまり:イーサネットフレームサイズ-フレームヘッダーとトレーラー-存在する可能性のあるダイヤル情報-IP情報-TCPプロトコルヘッダー
    
  2. 文中のすべてのテストルーティング画像はNTrace-coreによって生成されており、前述の大きなパケットと小さなパケットのテストコマンドは同じツールです。
読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。