私はネットワーキングに関するビデオ講義を行っていました。そこでは、講師がICMPをトランスポート層プロトコルと言います。しかし、それはネットワーク層プロトコルとしてそれを記述する様々なフォーラムを表示しています。これは私をたくさん混乱させました。誰かが明確にすることはできますか?ICMPはトランスポート層プロトコルですか?
答えて
トランスポート層プロトコルは、エンドツーエンドでデータを送信し、信頼性を保証する(または明示的に保証しない)ことに関係します。 TCPは、あるコンピュータから別のコンピュータにデータを送信するために使用され、データが正しく転送されることを保証するために必要なロジックを含みます。一方、UDPは信頼性を高めながら一方のコンピュータから別のコンピュータにデータを送信するために使用されます。
ICMPはこれを実際には行いません。その仕事は、ルーターがインターネットの形や異なるプロトコルでパケットを送信する方向を理解するのを助けることです。したがって、ネットワークレイヤプロトコルと見なされます。これは、データが適切な場所にルーティングされることを保証することであり、実際にはデータをルーティングしないためです。
希望すると便利です。
間違いなく、ネットワークレイヤプロトコルです。トランスポート層としばしば混同される理由は、ICMPがANYトランスポート層なしで動作することです。例えば。 pingまたはtracerouteには明確なポートがありません。代わりに、各マシンのtcp/ipスタックは、(他のすべてのアプリケーションの場合と同様に、ポートを調べて対応するアプリケーションに渡すのではなく)着信ICMPメッセージの処理と応答に責任を負います。
更新:
は、どうやらそれはので、ここで、読者を混乱に聞こえる概念と意図を説明するリチャード・スティーブンスによるTCP/IPイラストからのスナップショットです。
本からの引用。プロトコルボックスを配置する
は、「ICMPとIGMPは常に 課題であるラベル。以前、彼らは本当に がIPへの補助剤であるため、我々は、IPと同じ層でそれらを示した。しかし、ここで私たちは、IPの上にそれらを表示します ICMPメッセージとIGMPメッセージはIPデータグラムにカプセル化されていることを改めて表明します」
は概念を教えること 『いくつかのプロトコルおよびアプリケーション』 仕事異なっは、各レイヤーの標準概念から、異なるタスク(ネットワークがホップするホップとしてのエンドツーエンドのトランスポート)が困難で、消化に時間がかかります。
学ぶための次の最も重要な事は、あなたが複数を使用してpingを実行しても、
ある別の同じマシンからコンソールを言う、まだすべての個々を追跡することができる、いわゆる接続が(ちょうど関連しますメッセージ交換、そうでなければtcpのような接続はありません)。
上記の方法は、OS固有のものです。 Linuxスタックは、元のアプリケーション層がトリガされたポートを含むICMPのデータフィールドに8バイトを格納します。これはpingプログラムの下の同じ本でも説明されています。
同じことが、ARP/RARPなどの下位層プロトコルにも適用されます。
「トランスポート層と混同していることはよくありますか?この質問とは別に、私はそれを見たことがありません。トランスポート層なしで動作するという事実は、それがトランスポート層にあるという証拠の種類ではありません。さもなければ、すべてがトランスポート層になければなりません。あなたはちょうどここの混乱に加わるだけです。 – EJP
OSIモデルを通して学ぶ人のために、私は、何らかの種類のトランスポート層が常に存在すると考えています。周囲が見えないので、ICMPが独自にトランスポートを処理すると考えるようになります。最初に、アプリケーションを識別し、ポートなしで動作する例外について学習するためのポートが常に存在することを学びます。スティーブンスの聖書でさえ、ICMPはある意味では輸送であり、他の意味ではネットワークのようなものです。私はスタックの曇った絵を念頭に置いている。ここで見積もることができます。 – fayyazkl
また、何が混乱していると思わせるか分かりません。私は、ICMPの最も一般的なアプリケーションの2つが、学生の心の中で常に問題である方法を説明しました – fayyazkl
- 1. Cでpcapからネットワーク層とトランスポート層プロトコルを取得するにはどうすればよいですか?
- 2. データリンク層とトランスポート層
- 3. トランスポート層のプロトコル名と番号をマッピングする方法はありますか?
- 4. Genicamトランスポート層
- 5. DNSがトランスポート層プロトコルとしてUDPを使用する理由は?
- 6. 他のプロトコルへのXMPPトランスポート
- 7. あるプロトコルを別のプロトコルに「ラッピングする」ときに、適切な用語(アプリケーション層、トランスポート層など)は何ですか?
- 8. etcdノードがハートビートを送信するときの基礎となるトランスポート層プロトコルは何ですか
- 9. トランスポート層セキュリティ(TLS)の例?
- 10. WCFトランスポート層のセキュリティ問題
- 11. xmppプロトコルでのトランスポートの多重登録
- 12. WebRTC:トランスポート層で動作するSFUはありますか?
- 13. トランスポート層はどこで動作しますか?
- 14. TCP/IP ACK送信者:トランスポート層またはアプリですか?
- 15. インターネット層またはトランスポート層でチェックサムが実行されましたか?
- 16. HTTPトランスポート・エラー:java.net.MalformedURLException:なしプロトコル:REPLACE_WITH_ACTUAL_URL
- 17. データリンク層のフロー制御とトランスポート層のフロー制御
- 18. SCTPアソシエーション中にICMPプロトコルに到達できません
- 19. ICMP
- 20. ActiveMQの "vm:"トランスポートで "failover:"プロトコルを使用することに利点はありますか?
- 21. アプリケーション層プロトコル - パケットのサイズが異なる
- 22. PythonでのICMP traceroute
- 23. トランスポート層のエラー(パイプの反対側のプロセスはありません)
- 24. トランスポート層は、データグラムパケットから送信元IPアドレスをどのように取得しますか?
- 25. イントラネットWebサービスを保護する方法(トランスポート層セキュリティとメッセージ暗号化)
- 26. GoogleゴーグルとLayarはどのアプリケーション層プロトコルを使用していますか?
- 27. ICMP応答パケット
- 28. ICMPポインタとチェックサム
- 29. ICMPソケット(linux)
- 30. TwistedとICMP(txNetTools)
「典型的には」という単語は、この回答には属していません。それともそうでないかです。 – EJP
@ EJP-それは良い点です。更新しました! – templatetypedef