返信

>1.イーサネットコントローラーからMAUに向けて送信動作中に
>  フレームを受信した際、衝突検出回路がそれを検出した場合

これは,collisionにカウントされるでしょう。
正確にいうと,送信動作中に,自分が送信した信号とは違う信号を
受信した時点でcollisionが起こったものと見なす,ということだと思います。
それから,ちょっと記憶が曖昧ですけれど,
衝突を検出する回路はMAUの中にあり,
そこで衝突を検出したら,
MAUからイーサネットコントローラに衝突を通知するんだと思います。

>2.送信動作には入っていないが、
>  スイッチの対抗のリピータハブのリピータ回路にて
>  フレームが衝突した信号(ジャム信号?)が流れてきて、
>  スイッチのポートの受信側で受信した場合

送信動作に入っていないんですから,
別の人が送ったパケットが衝突した,っていうことですね。
それもカウントするのかなぁ。
こっちはよくわかりません。

>あれぇ?
>「衝突が起こっていればruntを受信してもおかしくはないと思います」
>というのは、どういう意味ですか?

衝突を検出したら,そこでジャム信号を送ってから送信動作をやめます。
すると,先頭部分だけ送信したところで送信動作をやめるわけですから,
規定サイズ以下の小さなパケットになってしまいます。
それがruntパケットっていうことですね。

>「+1Vと-1Vが混ざったら0V」
>の場合は電圧が無いので、
>これも信号が無くなるわけだから、
>「runts」としてはカウントされませんね。

こっちは,0Vになったとしても一瞬のことですから,
パケットはそこで終わりではなく,
0Vの部分はパケットの一部であり,その後もパケットは続いているものと,
見なされるでしょう。
だから,パケットは小さくならないはずです。

>この場合も「パケットが小さくなることはありません」とありますが、
>ではノイズの影響では「runts」はカウントされないと思って良いのですか?

何も信号が流れていない状態で短時間のノイズを拾い,
それを信号と誤ってデータに復元するとruntになるでしょう。
ノイズが60バイト分以上流れて,規定サイズを超えると,
runtではなく,CRCエラーになるかもしれません。

>そもそもどういう時に「runts」ができ、
>スイッチでカウントされるのかわかりません。

runtパケットができる主な要因は次の二つだと思います。
・衝突を検出し,最小パケットに満たないところで送信動作はやめた
・最小パケットに満たない短いノイズを拾い,それをパケットと見誤った

で,それを受信するとruntsとしてカウントされる,
っていうことだと思います。

<code>Only

  • 使用できるHTMLタグ: <code>
  • 文字で図を描く場合に<code>と</code>で囲んでください
画像認証
機械的なスパムメッセージ送信を防止するために画像認証を設けています。ご協力ください。
Image CAPTCHA
Enter the characters shown in the image.