なぜあなたのインターネットは遅いのか?問題を切り分けて特定するトラブルシューティング

  • このエントリーをはてなブックマークに追加

      2020/08/31

2c94e1ef7f199352028a2a50a922efd8_s

はじめに

家庭、コーヒーショップ、またはオフィスでの作業中に「インターネット(インフラ)にまつわる問題」を経験したことがある人には、この記事が役に立つかもしれない。
問題解決の手助けとなるよう、基本的なトラブルシューティングとアドバイスを順番に述べていこうと思う。インフラチームが調査しやすいよう、より難しいケースのデータを紹介しよう。

読みながら覚えておくべきことは、パケットがすべてということだ。ウェブページ、画像、Eメールのダウンロード、またはビデオ会議をしている時、コンピュータは、あらゆるデータを番号の付いた小さなパケットに分割し、パイプを通してそれぞれの目的地に送っていると想像してみてほしい。そしてそれらは目的地で再度、順番に組み立てられる。

ネットワークの問題は、通信課程で正常に動作しなかったわずかなパケットが原因で起こる。例えば、パイプの詰まり、バグ、過剰なデバイス接続、外部摂動、その他たくさんの考え得る理由など。

簡単なテスト

さて、いくつかの簡単なオンラインテストをすることから始めよう。100%正確でなくても、ブラウザから(またはスマホからでも)数回クリックするだけで実行できるし、解決に少し近づくことができる。

良い例は、「スピードテスト」だ。大きなボタンを押して待機し、ダウンロードや帯域幅の重いアプリケーションを実行しないこと。一番良いのは、両方を比較することができるよう、「通常」の値が何であるかを知っておくことだ。

有名な「スピードテスト」への接続を優先してくる卑劣なプロバイダがあるため、ping.online.netのような、あまり有名ではないウェブサイトも試してみるといい。容量の大きいファイルのダウンロードを開始して、どのくらい速くダウンロードできるかチェックしてみよう。

ここで、全ての接続ユーザ間で接続が共有されているということに注意する必要がある。そのため、一人が簡単に帯域幅を独占してしまい、他の人のパイプを詰まらせることがある。これは、オフィスのように、皆が他の人のために十分な大きさのパイプを持とうとしている場所では起こりにくいが、公共の場所では発生することが多い。この場合、あなたができることはほぼ何もない。

次に紹介するのは「素晴らしい」やつ。Netalyzrというものだ。Javaが必要だが、それだけの価値はある(こんなこと初めて言ったよ)。Androidアプリもあるけれど、問題のあるデバイスから実行したほうがいい(自分の携帯やデータ「インターネット」というものが実際、どれほど良いものか見るのも面白いけれど)。Netalyzrは「かなり多くの」テストを実行する。DNS、ブロックされているポート、レイテンシなど。そして、わかりやすくて、ヘルプデスクに共有しやすいレポートを作成してくれる。詳しくはMozillaのパリ支社を見てほしい。

2014-08-20-15.48.32-252x448
いくつかの ISP は IPv6(ついに!)と呼ばれるインターネットの新バージョンを公開し始めている。「新しい」ので、まだ何か問題があるかもしれない。これをチェックするには、Test-ipv6でテストを実行してみてほしい。

基本的な接続性

前回のテストで、何らかの異常があることが分かった場合や、まだ疑問がある場合には、これから紹介するツールを使って、インターネットへの基本的な接続テストや、あなたのいる場所から離れたサーバまでの各ネットワークセグメントの基本的な健全性とパスの確認を行ってみるといい。

「ping」は、1秒ごとにターゲットへプローブを送信し、それが(往復で)どのくらいの時間がかかるかを報告してくれる。指標としては、ヨーロッパと米国西海岸間の基本的な時間は~約160ミリ秒、米国東部から米国西海岸までは~90ミリ秒、台北からヨーロッパまでは~300ミリ秒だ。もしそれよりも高い場合、あなたは実に「ラグっている、遅いインターネット」を見ている可能性がある。

ping-wikipedia
「トレースルート(traceroute)」は、「ping」とはまた一味異なる。やっていることは同じだが、送信元と宛先間で中間ホップを表示する。

このドメインで最高なのは、「mtr」と呼ばれ、上に述べた2つを素晴らしく組み合わせたようなものだ。各ホップにおいて、pingを連続実行するのだ。また、共有する必要がある場合は、–reportを追加すれば簡単に結果をコピーして貼り付けることができるようにしてくれる。ホップ1つや2つのためにレイテンシが高くなってしまうことや、パケット・ロスは、大抵は問題にならない。というのも、ネットワークデバイスはこうしたテストに応答するために作られているわけではなく、いずれかの方向にリダイレクトするというメイン機能において、ビジー状態でない時に応答するだけだからだ。問題発生時にわかりやすい指標となるのは、多くのノード(特にあなたのターゲット)が、パケット・ロスやより高いレイテンシを示し始めるかどうか、である。

mtr-mozilla
最初のホップの数値が高い場合、コンピュータと、家、またはオフィスやバー間のインターネットゲートウェイに何か問題があることを意味する。

「中間あたり」で問題が発生した場合は、ISPか、そのまたISPの問題だ。その場合あなたができることは、サポートに問い合わせて苦情を言うか、できればISPを変えることだ。これはまさに米国のNetflixで起きたことである。

終盤近くの数値が高い場合、それは恐らくテスト中のサービスに問題があるので、運営会社にコンタクトをとってみよう。

ワイヤレス

簡単な方法がある。今ワイヤレス接続の状態であれば、有線ネットワークに切り替えて前述のテストを再実行してみてほしい。びっくりするかもしれないけど、ワイヤレスは魔法じゃないよ:)

家庭や小規模店舗のWi-Fiルータ(“BGN”と書いてあるものや2.4GHzのもの)のほとんどが、クライアントとの通信において3つの周波数またはチャネルのうち、1つしか使えないようになっている。そのため、クライアントは通信する順番を待たなければならない。

ここで、近所の人の無線LANが同じ周波数だと想像してみてほしい。あなたの無線LANが近所の人のパケットを識別していたとしても、チャネルを共有しなければならなくなる。もし近くに2人以上の無線LANユーザがいれば(ワイヤレスのネットワークがWi-Fiリストに表示される)、非最適なワイヤレス体験をすることになるだけでなく、それでは指数関数的に遅くなるだろう。

それを解決、または緩和するためには、Androidの「Wifi Analyzer」のようなアプリを使用するといいかもしれない。Xは周波数で、実際に使用可能なのは重複しない1、6、11のみだ。そしてYはどれだけノイズがあるかを示している。自分のを探してみて、チャネルがさほど混んでいないなら、ワイヤレスルータの設定を見て動かしてみるとよい。

2.4ghz-band-utilization-252x448
もし全部がビジー状態という場合、最後の選択肢は、もう少し最近の規格をサポートしているルータ(つまり“ABGN”(最近では“AC”も)の記載があるもの、または5GHzのもの)を買うことだ。ほとんどのハイエンドフォンやノートパソコンもこれに対応している。その使用可能チャネルは、3つどころか約20もある。

公共の場におけるもう一つのよくある問題は、全く接続できない人がいる一方で、何の問題もなく接続できる人がいる、というケースだ。これは通常、アドレス(ここではスロットとみなす)をデバイスに割り当てるDHCPと呼ばれるメカニズムによって生じる。初期設定では小規模ネットワーク用に作られていて、もう使わないスロットであっても長期間記憶している。通常、ルータ設定にて「記憶」時間を減らしたり、スロットの保管領域を増やしたりすることが可能だ。

有線

有線なら、解決案はそれほど複雑ではない。まずルータ以外のプラグを抜いて、良くなるか様子を見よう。もし良くならなければ、問題はコンピュータにあるかもしれない。また、ルータとスイッチの間にケーブル2本を差すなど、ネットワーク内に物理的なループを作らないように注意してほしい。

原文:https://blog.mozilla.org/it/2015/07/21/troubleshooting-the-internet/(2015-7-21)
※元記事の筆者には直接翻訳の許可を頂いて、翻訳・公開しております。

 -Tech

FAworksではプロのコンサルタントが案件をお探しします

  関連記事

何が彼女をボットづくりに没頭させるのか?ボットの魅力と可能性/Emma Winston氏インタビュー

ボット初心者の方ですか?私たちは、今度主催するイベント「The Art of Bots」に先駆けて、

IT系妻によるライフハック術11選!

さっそくですが、あなたに質問です。 洗濯を洗濯板でやってますか? 掃除をほうきとちりとりでやってます

Crystalの紹介:Cのように速く、Rubyのように滑らか

Crystalの紹介:Cのように速く、Rubyのように滑らか

僕は、Rubyistだ。Rubyと、そのコミュニティ、その生産性など、Rubyにまつわる多くのものが

MySQL Cluster―MySQLはいかに2億QPSのスケーリングを実現したか

この記事は、オラクル社MySQL主任プロダクトマネージャ、アンドリュー・モルガン氏からのゲスト投稿で

【企業別】Advent Calendar2014 はてブ数ランキングまとめ

皆さん、2014年も残す所1週間を切りましたが、いかがお過ごしでしょうか。もはや師走の風物詩となった

Uberがリアルタイムマーケットプラットフォームをスケールしている方法

Uberがリアルタイムマーケットプラットフォームをスケールしている方法

Uberは、たった4年で38倍という目覚ましい成長を遂げたという。今回が恐らく初めてだと思うが、Ub

LL系カンファレンスの歴史

WEBエンジニアの祭典!LL系カンファレンスの歴史

例年夏から秋にかけて開催されているLL(lightweight language, 軽量プログラミン

node.js における stream の歴史とそれぞれの問題点

node.js における stream の歴史とそれぞれの問題点

内容 前史(stream API以前のstream) stream1 stream全盛期、ユーザラン

エンジニアの作業効率を一気に上げてくれる、無料Google Chrome拡張機能おすすめ20選

ちょっとした時短の積み重ねが作業時間を減らしてくれる 情報収集やブラウザチェック、ルーティーンワーク

【2020年版】東京周辺で開催のエンジニア向け技術系カンファレンス日程まとめ【全64件!】

重要:新型コロナウイルス感染症の拡大により、多数のイベントが中止または延期を発表しています。 公式サ