生イーサネットフレーム


10

最近、Raw-Ethernetフレームに関する次の記事に戸惑いました。

RAW イーサネットフレームとRAWイーサネットフレームを使用したUDP
メッセージパッシング

簡単に言えば、両者ともイーサネット層だけを使用してポイントツーポイント通信を確立することが可能であると説明しています。その場合、IP層とTCP層のオーバーヘッドが回避され、スループットが増加します(一部のベンチマークによると、ほぼ50%)。

同様のテストをワイヤレス環境で行いたいのですが。ただし、いくつか問題があります。

1番目の問題
そのような努力を損なう可能性のあるハードウェアの制約(つまり、Wi-Fiカード)はありますか?

2番目の問題
どちらの記事も次のフレーム形式を選択しました。

プリアンブル| 区切り文字| Macヘッダー| ペイロード| パッド| CRC

私の知る限り、プリアンブル、デリミタ、パッド、およびCRCはイーサネットデバイスによってすべてのフレームに追加され、ソフトウェアを介して変更することはできません。Wi-Fiデバイスも同様だと思います。したがって、Macヘッダーの削除を妨げるハードウェアの制約(つまり、Wi-Fiカード)はありますか?

ps:通信はポイントツーポイントベースで行われることを考慮してください。つまり、ルーター、スイッチ、ブリッジなどは存在せず、インターネット接続もありません。


2
イーサネット経由の非IPトラフィックは何十年もの間ネットワーキングの一部でしたので、私はあなたが本当に答えようとしていることについて本当にはっきりしていません、そしておそらくあなたはネットワーキングの基本についてもう少し学ぶ必要があるでしょう。802.3イーサネットと802.11ワイヤレスは2つのまったく異なる規格であるため、「イーサネットワイヤレスカード」などはありません。そのため、2番目の問題のフレーム形式は802.11ネットワークにはまったく適用されませんが、フレームには規格に従って特定の要件があるため、リストするフレームのコンポーネントの多くは構成できません。
YLearn

1
イーサネット経由の@YLearn 非IPトラフィックは何十年もの間ネットワーキングの一部でしたが、当時のイーサネットデバイスは今日ほど「スマート」ではなく、多くの作業がCPUによって行われていました。「スマート」であることのコストが柔軟性を失うのかどうか疑問に思っていました。
Mark Messa

@YLearn は802.11ネットワークにはまったく適用されません。標準の802.11ネットワークに接続されている他のコンピューターは、このようなフレームを有効なものとして認識しないことを知っています。しかし、そのようなフレームを送受信することは可能ですか?またはハードウェアは許可しませんか?
Mark Messa

@MarkMessa、同じLAN上のあるホストから別のホストへのフレームは、2番目のホストによって受信されます。問題は、それらがホスト内のネットワークスタックの上位層に渡されるかどうかです。受信ホストにIPスタックのみがあり、フレームペイロードがIPでない場合、データは無視されます。あるホストから別のホストにデータが渡される方法に関する一般的なアイデアを得るには、OSIモデルについて学ぶ必要があります。
Ron Maupin

@MarkMessa、最初のコメントに関して、イーサネットデバイスは「よりスマート」であるにもかかわらず、イーサネットは引き続きイーサネットとして動作します。802.3は、IPを使用する必要がありません。たとえば、まれではありますが、現在のイーサネットは、AppletalkまたはIPX / SPXを今までと同じように、または上位層プロトコルなしでサポートします(多くの場合、通信にはL2のみを使用します)。2番目のコメントについては、「そのようなフレームを送受信することは可能ですか」という意味がわかりません。802.11経由で802.3フレームを送信することはできませんが、IPを含まない802.11のみの通信があります。
YLearn

回答:


8

まず、Wi-Fi(IEEE 802.11)はイーサネット(IEEE 802.3)であり、トークンリング(IEEE 802.5)にすぎません。または、802.3以外の他のIEEE LAN標準はイーサネットです。フレームヘッダーはWi-Fiとイーサネットでは異なります。

Wi-Fi、イーサネット、トークンリング、FDDIなどはすべて、OSIレイヤー1およびレイヤー2のLAN標準であり、上位層プロトコルのデータグラムをカプセル化します。それぞれがレイヤ3プロトコルを転送できますが、IPは1つだけです。

独自のプロトコルを作成するか、IEEE LANプロトコルの1つに既存のレイヤ3プロトコルの1つを使用できますが、選択するLANプロトコル用のフレームが必要です。プロトコルスタックを実行していないデバイスと相互運用できるとは期待しないでください。また、プロトコルスタックがない(つまり、IPを使用するインターネットがない)ルーターで実行できるとは期待できません。イーサネットスイッチやWAPなどのブリッジは、レイヤー2で動作するため、上位層プロトコルを転送し、LANを作成できます。

使用しているLANのタイプに応じたフレームヘッダーが必要です。1つには、あるホストが実際にフレーム内のレイヤー2アドレスなしで別のホストに送信する方法を説明します。基本的にはフレームやヘッダーのないRS-232のようなシリアル通信に戻ると思いますが、それはデータ制御のために追加のワイヤーに依存しています。


Wi-Fi(IEEE 802.11)はイーサネット(IEEE 802.3)ではありません OK、この混乱を避けるために質問の一部を変更しました。今、完全に話題から外れていますが、それについて考えるだけです。いくつかの製品が「ワイヤレスイーサネットLAN」として宣伝されています。
マークメッサ

私はそのようなことを見てきましたが、それが正しいという意味ではありません。Wi-Fiとイーサネットフレームは異なり、イーサネットは衝突検出を使用しますが、Wi-Fiは衝突回避を使用します。他のLANはトークンのようなものを使用して、衝突を完全に防ぎます。それらはすべて異なるLANであり、一部のアドバタイズメントでは同じものになりません。
Ron Maupin

それが正しいという意味ではありません。はい、同意します。私を訂正してくれてありがとう。CSMA / CD、CSMA / CA、トークンなどの違いを認識しています。しかし、「Wi-FiはワイヤレスイーサネットLANです」のような広告に目がくらみました。
Mark Messa

また、ルーター上での実行を期待することもできません。ルーター、スイッチ、ブリッジはなく、ポイントツーポイント通信しかありません。この混乱を避けるために質問を編集しました。
Mark Messa

1
@MarkMessa 私はフレームの使用を避けたくありません。MACヘッダーの使用を避けようと考えています。これが、要求が混乱する理由です。L2ヘッダーがないと、イーサネットまたは802.11フレームではなくなることを理解していないようです。802.3または802.11にL2ヘッダーが存在しなくても機能するには、独自のL2プロトコルを作成する必要があります。
YLearn

7

あなたの質問とコメントに基づいて、あなたが参照している2つの記事の要点を逃していると思います。

彼らが「生イーサネット」について話しているとき、彼らはどんなIP(L3)またはTCP / UDP(L4)ヘッダーも含まないデータフレームについて話している。彼らは、L2ヘッダーのないL2フレームの使用について話していません。

L2ヘッダーがない場合、フレームは802.3(イーサネット)でも802.11フレームでもありません。それは完全に別のものです。別個のL2プロトコル。

そのような努力を損なう可能性のあるハードウェアの制約(つまり、Wi-Fiカード)はありますか?

L2ヘッダーを含まないのですか?もちろんです。特定の答えを得るために特定のアダプターを指定する必要がありますが、L2ヘッダーを含まないほとんどの802.3または802.11アダプターで動作するドライバーを作成することさえできないと思います。私の推測では、ほとんどのアダプターはフレームを送信前または受信時に不正な形式として拒否/ドロップします。

IPまたはTCP / UDPヘッダーを含まない802.3または802.11フレームのみを送信するのですか?いいえ。これは通常のネットワーク操作の一部として常に発生し、数十年にわたって発生します(少なくとも802.3の間。802.11はそれほど長くはありませんが、少なくとも10年は経過しています)。

したがって、Macヘッダーの削除を妨げるハードウェアの制約(つまり、Wi-Fiカード)はありますか?

上記を参照。


ほとんどのアダプターはフレーム拒否/ドロップします。これが私の質問の答えだと思います。後で、興味深い「一時的な」コメントをすべて失わないように、自分の回答を送信します。
マークメッサ

フレームを送信前または受信時に不正な形式として拒否/ドロップします。私の知る限り、モニターモードでは、不正なフレーム(例:間違ったCRC)であっても、あらゆる種類のフレームを聞くことができます。ただし、奇妙なことに、ハードウェアではMACヘッダーなしでフレームをブロードキャストできません。
マークメッサ

小さな修正:ただし、奇妙なことに、アダプターではMACヘッダーなしでフレームをブロードキャストできません。
マークメッサ

2
@MarkMessa 「私が知る限り、モニターモードでは、不正なフレーム(例:間違ったCRC)でも、あらゆる種類のフレームを聞くことができます」これは、問題のデバイスに完全に依存しています。多くのアダプター(スイッチを含む)は、キャプチャー/ミラーリング/スパンするために送信する前でも、これらを処理してドロップします。多くの場合、キャプチャにCRCが含まれているイーサネットトレーラーは表示されません。
YLearn

1

同様のテストをワイヤレス環境で行いたいのですが。

まさにそれを行うWifibroadcast(Linux、いくつかのAndroidサポート)を見てください 。簡単な要約:1つはインジェクションモード、もう1つはモニターモードのwifiアダプターのペアを使用し、生のwifiフレームを使用してデータを送信します。これは単方向接続です。もともと低レイテンシのビデオフィードを送信する方法として考えられていましたが、もちろんあらゆる種類のデータに使用できます。

そのような努力を損なう可能性のあるハードウェアの制約(つまり、Wi-Fiカード)はありますか?

はい。正常に機能するアダプターと、機能が低下するアダプターがあります。rawモードの一部のアダプターには高スループットを含めることができません。一部のアダプターはファームウェアを変更する必要があります。2.4 GHz帯域で動作するアダプターもあれば、5 GHzで動作するアダプターもあれば、両方で動作するアダプターもあります。


0

はい。理論的には、そのようなポイントツーポイントイーサネットを実行できます。802.3イーサネットMACヘッダーを削除するには、両方のエンドポイントを無差別モードにする必要があります(そうでない場合、フレームはどちらのNICにも属しておらず、無視されます。)もちろん、これは「イーサネット」を実行していないことを意味します。


無差別モードこれは私が提起したいと思っていた非常に重要な問題です。無差別モードでは、自分のものとは異なるMACアドレスにアドレス指定されたフレームは、Wi-Fiカードによって破棄されません。ただし、同じことがBSSIDには当てはまりません(間違っている場合は修正してください)。フレームがBSSIDにアドレス指定されていない場合、Wi-Fiカードはそれを破棄します。それを回避し、カードに到達するすべてのフレームを受信することは可能ですか?(モニターモード?)
Mark Messa

802.3イーサネットMACヘッダーを削除する無差別モード @YLearnの回答に基づくと、ハードウェアはL2ヘッダーのないフレームを受け入れないようです。
マークメッサ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.