
有線コンピュータネットワークでは、パケットが1つのネットワークセグメントから次のネットワークセグメントに渡されるときにホップが発生します。データパケットは、送信元と送信先の間を移動するときにルーターを通過します。ホップ数とは、データが送信元から送信先に渡されるネットワークデバイスの数を指します(ルーティングプロトコルに応じて、これには送信元/送信先が含まれる場合があります。つまり、最初のホップはホップ0またはホップ1としてカウントされます[1])。
各ホップでストア アンド フォワードやその他のレイテンシが発生するため、送信元と送信先の間のホップ数が多いと、リアルタイムパフォーマンスが低下します。
ホップ数
有線ネットワークでは、ホップ数は、データが送信元と宛先の間で通過するネットワークまたはネットワークデバイスの数を指します(ルーティングプロトコルによっては、これには送信元/宛先が含まれる場合があり、最初のホップはホップ0またはホップ1としてカウントされます[1])。したがって、ホップ数は、2つのホスト間の距離の大まかな測定値です。1オリジンホップカウントを使用するルーティングプロトコル[1](RIPなど)の場合、ホップカウントnは、送信元ホストと宛先ホストの間にn個のネットワークがあることを意味します。 [1] [2] DHCPなどの他のプロトコルでは、「ホップ」という用語を使用して、メッセージが転送された回数を示します。[3]
インターネットプロトコル(IP)などのレイヤー3ネットワークでは、データパス上の各ルータがホップを構成します。ただし、このメトリック自体は、特定のホップの速度、負荷、信頼性、または遅延を考慮せず、合計数のみを考慮するため、最適なネットワークパスを決定するのに役立ちません。ただし、ルーティング情報プロトコル(RIP)などの一部のルーティングプロトコルは、ホップ数を唯一のメトリックとして使用します。[4]
ルータはパケットを受信するたびにパケットを変更し、存続時間(TTL) を減らします。ルータは、TTL 値がゼロの受信パケットをすべて破棄します。これにより、ルーティングエラーが発生した場合にパケットがネットワーク内を無限に往復することがなくなります。ルータはホップ カウントを管理できますが、他の種類のネットワーク デバイス (イーサネット ハブやブリッジなど) は管理できません。
ホップ制限
IPv4では存続時間(TTL) 、IPv6ではホップ制限として知られるこのフィールドは、パケットが破棄されるまでに許可されるホップ数の制限を指定します。ルータは IP パケットが転送されるときに、それぞれの TTL またはホップ制限フィールドを減分して変更します。ルータは結果フィールドが 0 以下のパケットを転送しません。これにより、パケットが永久にループするのを防ぎます。
次のホップ
ネットワークデバイスを構成する場合、ホップはネクストホップを指すことがあります。[5]ホップがネットワークトラフィックを転送する場合、ネクストホップはローカルホップが最終宛先への次の要素であると見なすものです。ルーティングテーブルは通常、ネクストホップがわかっている宛先ネットワークまたはIP アドレスの候補のリストで構成されます。ネクストホップルーティングまたはネクストホップ転送では、ネクストホップ情報のみを保存することで、ルーティングテーブルのサイズが削減されます。特定のゲートウェイは、宛先までの完全なパスではなく、パスに沿った 1 つのステップのみを認識します。ネクストホップが不明な場合、ホップは、ネットワークの種類に応じて、パケットを暗黙的に破棄するか、エラーを返します。コンシューマーネットワークのデバイスには、トラフィックがローカルネットワークに到達するか、インターネットサービスプロバイダーに転送されることしかできないため、ローカルネットワークとデフォルトゲートウェイのルートのみが提供されることがよくあります。[6]ルーターでは、異なるネットワーク間でトラフィックを転送できるようにするために複数のルートが必要です。[7]実際には、ルートは、ネットマスクによるアドレス割り当てによって暗黙的に構成されるか、 routeなどのツールを使用した手動割り当てによって構成されるか、DHCPやルーティングプロトコルなどの構成プロトコルを使用して動的に構成される。
リンク層としてイーサネットを使用するTCP/IPネットワークでは、宛先は常に IP アドレスですが、ネクストホップは技術的に同じアドレス ファミリである必要はありません。パケットはリンク層で転送される必要があるため、ネクストホップはMAC アドレスなどのリンク層アドレスに解決されるだけで済みます。たとえば、 Linuxでは、ネクストホップは IP アドレスまたはインターフェイスのいずれかである必要があります。宛先アドレスとネクストホップのアドレス ファミリは一致している必要がないため、IPv4 トラフィックを IPv6 ネットワークに転送することは可能であり、その逆も可能です。アドレスが指定されていない場合は、宛先はローカル リンク上に存在すると想定され、それ以外の場合はネクストホップが使用されます。その後、いずれかのアドレスがIPv6の場合はNDP、IPv4の場合はARPに渡され、ネットワーク スタック上でパケットを渡すために必要なリンク層アドレスに解決されます。他のシナリオでは、リンク層の解決に、パケットの送信先ピアを決定する必要がある仮想プライベート ネットワークなどの異なる方法が必要になる場合があります。転送に共通するのは、次のホップが現在のホップに論理的に接続される必要があり、それによって送信元と送信先の間に途切れないチェーンが構築されることです。論理接続では、パケットが仮想トンネルに渡される可能性があるため、物理的な接続は必要ありません。[要出典]
ソースルーティングは、データがパケットにエンコードされ、ホップ(パケットのソースなど)が中間ホップのルーティング決定に影響を与えることができるネットワークを表します。[8]これにより、ネットワーク遅延の改善、ネットワーク輻輳の軽減、またはその他の要件を満たす ために使用される高度なテレトラフィックエンジニアリングが可能になります。
診断
tracerouteコマンドを使用すると、あるホストから別のホストまでのルータ ホップの数を測定できます。ホップ数は、ネットワークの障害を見つけたり、ルーティングが正しいかどうかを確認したりするのに役立ちます 。
ワイヤレスアドホックネットワーク
ワイヤレス アドホック ネットワークでは、通常、参加しているすべてのノードがルーターとしても機能します。つまり、「ホップ」と「ホップ カウント」という用語がしばしば混乱の対象となります。多くの場合、送信ノードは単に最初のホップとしてカウントされるため、「ホップ」を「ルーターを経由する」と「ノードからノードへ移動する」の両方として解釈した場合、「ホップ」の数は同じになります。たとえば、RFC 6130 では、「1 ホップ ネイバー」をワイヤレス インターフェイス経由で直接到達可能な他のノードとして定義しています。
参照
参考文献
- ^ abcde Comer, Douglas (2014). Internetworking with TCP/IP. 第 1 巻(第 6 版). Harlow. p. 294 (脚注). ISBN 978-1-292-05623-4. OCLC 971612806.
{{cite book}}: CS1 メンテナンス: 場所が見つかりません 発行者 (リンク) - ^ Comer, Douglas (2014). Internetworking with TCP/IP (第 6 版). Upper Saddle River, New Jersey. pp. 293, 655. ISBN 978-0-13-608530-0. OCLC 855671923.
{{cite book}}: CS1 メンテナンス: 場所が見つかりません 発行者 (リンク) - ^ Comer, Douglas (2014). TCP/IP によるインターネットワーキング。第 1 巻(第 6 版)。Harlow。p. 466。ISBN 978-1-292-05623-4. OCLC 971612806.
{{cite book}}: CS1 メンテナンス: 場所が見つかりません 発行者 (リンク) - ^ RFC 1058、ルーティング情報プロトコル、C. Hendrik、インターネット協会 (1988 年 6 月)
- ^ 「CCNP実践学習:レイヤ3スイッチング > レイヤ3スイッチング入門」www.ciscopress.com 。 2019年7月5日閲覧。
- ^ Salter, Jim (2016-04-17). 「Linuxルーターをゼロから構築するためのArsガイド」Ars Technica . 2024年12月18日閲覧。
- ^ Beijnum、Iljitsch van (2008-01-17)。 「インターネット ルーティングに成長痛が再び?」アルステクニカ。2024 年 12 月 18 日に取得。
- ^ 「2.2.10. ソースルーティングを無効にする | Red Hat 製品ドキュメント」。docs.redhat.com 。 2024 年 12 月 18 日閲覧。
