個人的なメモ置き場ブログに書くほどのものでもないことを書きます

以下の本を読みながら勉強する

Ethernetとは

OSI階層モデルで言うと、第1層(物理層)とデータリンク層(第2層)の下半分(メディアアクセス制御(MAC)副層)までを規定したプロトコル。
データリンク層の上半分は、論理リンク制御(LLC層)と言う

Ethernet標準

DIXイーサネット標準

DEC,intel,Xeroxによって標準化された規格

IEEE802.3

IEEEによって標準化された規格。
clause(節)からなる
サプリメント
IEEE802.3にあらたな項目を追加するときに発行されるもの。(802.3aとか802.3uとか。)標準化の手続きが終わるとサプリメント自体の更新は終了する。

イーサネットの構成要素

  • フレーム
  • MAC
  • シグナリングコンポーネント
  • 物理メディア

Ethernetに接続されるもの(コンピュータとかプリンタとか)の総称をステーションと呼ぶ。

フレーム

MAC層でやりとりされるデータ。
次のような構造である。
644848161632
プリアンブル宛先アドレス送信元アドレスタイプ/長さデータフレームチェックシーケンス
  • プリアンブル
 データの開始を表す、"101010・・・11"という信号。(実は10M Ethernetしか使われていないらしい。)
プリアンブルは8オクテット分あるが、リピータなどを1段ずつ通過する際に、(内部処理の遅れや、同期回路の起動の遅れなどによって)何ビットか消失することがある。そのため、全体の長さで判断せず、最後の連続する「10101011」によってプリアンブルの終了と宛先アドレス部の始まりを検出することになっている。
ということらしい。(以下から引用 http://www.atmarkit.co.jp/ait/articles/0107/05/new...
  • 宛先アドレス
  • 送信元アドレス
 いわゆるMACアドレスと呼ばれているもの。48bitの値で、先頭24bitが各ベンダに割り当てられた値。(OUI)
  • タイプ/長さ
 データフィールドの内容の識別のために用いられる。VLANの情報とかはここに書かれる。
  • データ
 TCP/IP等の上位のプロトコルのパケットのデータが入る。46バイト〜1500バイトの大きさである。必ず46バイト以上である必要がある。
  • フレームチェックシーケンス
 データの完全性をチェック
CSMA/CD
については、いろんなところに解説が載っているので省略。
http://ja.wikipedia.org/wiki/CSMA/CD

衝突ドメイン

同じ一つの信号時間帯領域(2つのステーションが同時に通信しようとしたら干渉する範囲)のことをいう。
  • リピータで接続しても同じドメインになる(論理的には1本のケーブルといっしょ)
  • ツイストペアケーブルで接続し、リピータハブで接続しても同じドメインになる
  • スイッチングハブで(いわゆる今見かけるハブ、またはL2スイッチ)で接続すると、衝突ドメインが分割される
 スイッチングハブでは、ハブが各ポートにつながっているMACアドレスを記憶し、宛先MACアドレスを見て、
該当するポートにしかフレームを流さない制御をしている。


全二重イーサネット

CSMA/CDと異なり、送信と受信を同時に行うことができる。サプリメント802.3xで標準化
衝突ドメインは送信端と受信端の間だけになり、衝突することがないので、衝突検出をする必要がない。

各メディアごとの全二重サポート

サポートされている場合とされてない場合がある。当然のことながら同軸ケーブルを用いるような場合はサポートされない。

全二重メディアセグメントの最大距離

CSMA/CDのラウンドとリップ時間の制約がないため、制約条件はケーブルの信号伝送特性だけになる。
10BASE-T,100BASE-TX,1000BASE-T共通で100m
光ファイバではもっと長い

イーサネットのフロー制御

スイッチとかのバッファが一杯になったりしないように制御する
全二重の場合はIEEE802.3xで仕様が規定されている。

MAC制御用のフレームは、タイプフィールドが0x8808である。
受信したフレームのタイプフィールドが0x8808だと、データフィールドのopecodeを探す。
PAUSEシステム
PAUSEコマンドは、
宛先が01:80:C2:00:00:01opcodeは0x0001であり、opcodeに続く2バイトに送信中断時間(0〜65536)が含まれているフレームである。
PAUSEコマンドを受け取ったステーションは、「中断時間×512ビット時間」の間だけ、送信を停止する。

受信側のステーションのバッファが不足しそうになったとき、PAUSEコマンドを送信する。
送信側ステーションでは、PAUSEコマンドを受け取ったら中継時間分だけ、または中断時間0のフレームを受信するまで送信を停止する。

参考
http://www.atmarkit.co.jp/ait/articles/0110/02/new...
http://www.infraexpert.com/study/ethernet9.html

自動ネゴシエーション

サプリメントIEEE802.3uで標準化された。ツイストペアケーブルを用いるイーサネットメディアシステムは、すべて自動ネゴシエーションをサポートできる。
光ファイバの場合は、様々な光源と波長があるため対応できないが、ギガビットイーサネットではサポートされている。

自動ネゴシエーションの動作


以下のメディアシステム向けに規定
  • 10BASE-T
  • 100BASE-TX(シールドなしツイストペア)
  • 100BASE-T4
  • 100BASE-T2
  • 1000BASE-TX
FLP
リンク間の情報を伝えるために、「FLP(ファーストリンクパルス)」と呼ばれる信号を用いる。
FLPは33個のパルスで構成されてお折り、各パルスの幅は100nsである。

33個のパルスのうち、奇数版目のパルスはクロック情報であり、偶数番目のパルスがデータである。
(パルスがあればロジック1、なければロジック0)この16bitのメッセージをリンク符号(Link Code Word)という。

自動ネゴシエーションは、リンクの初期化時に16bitのメッセージを必要なだけ送信できるが、最初のメッセージ(ベースページ)だけでネゴシエーションを完了させることができる場合が多い。
FLPの16bitの中身は、以下のようになっている。
D0D1D2D3D4D5D6D7D8D9D10D11D12D13D14D15
S0S1S2S3S4A0A1A2A3A4A5A6A7RFAckNP

S0:0
S1からS4:0
A0〜A7の意味は以下の通り。自分が通信できるモードの部分のbitを1にする
bitテクノロジー
A010BASE-T
A110BASE-T全二重
A2100BASE-TX
A3100BASE-T全二重
A4100BASE-T4
A5フロー制御用PAUSE操作
A6reserved
A7reserved

RF:障害が発生した場合に1
ACK:同じ内容のリンクデータを3回受信すると1
(誤りがあってもわかるようになっている)
NP:Next Page

Ethernetのメディアシステム

概要

イーサネットの信号の伝送のために、各ステーションは標準に基づいたメディアシステムで接続されているが、ステーションの中にはメディアに依存する部分と依存しない部分がある。
メディア依存する部分を分離したものをメディア非依存アタッチメントという。以下のようなものがある。
  • AUI(10Mbps専用)
  • MII(10/100Mbps対応)
  • GMII(Gbit Ethernet対応)
AUI
(注:本に書いてある感じからすると、AUIはトランシーバと接続するインタフェースの名前のような感じががする。)
AUI(Attachment Unit Interface)は10Mbps専用のアタッチメントで、トランシーバ(MAU)とイーサネットインタフェースを15pinのAUIコネクタで接続する。
MII
MII(Media-Independent Interface)は、10Mbpsと100Mbpsの両方をサポートする。MIIのトランシーバのことを、PHY(つまり、物理層のことを示す)という。ステーションのMIIコネクタと接続する場合は、40pinのMIIコネクタで接続する(が、もちろんステーションにPHYを内蔵してもよい)
RMII
MIIでは信号が16本必要だが、8本ですむようにしたもの
http://www48.atpages.jp/~cent22/Electronics/MII_RM...
コントローラとMIIの間に入るI/Fらしい
https://e2e.ti.com/group/jp/f/892/t/314402
GMII
GMII(Gigabit Media-Independent Interface)はコネクタを介して接続する規格ではなく、ボード上のチップ間のI/Fとなっている。またGMIIは1000Mbpsのみをサポートウスる設計になっており、100Mbps/10MbpsもサポートするのであればMIIも用意する必要がある。
SGMII
シリアル伝送できるようにしたGMII

http://en.wikipedia.org/wiki/Media-independent_int...
によると、
625MHzのDDRの差動信号で伝送し、8b/10b変換しているらしい。

イーサネットの信号符号化処理

符号化を行うPHYの一部を、PCS(Physical Coding Sublayer:物理符号化副層)と呼ぶ。
http://www.atmarkit.co.jp/ait/articles/0302/28/new...
AUIの信号符号化処理
10Mbpsのメディアシステム(同軸もツイストペアも光ファイバも)マンチェスタ符号を用いる。
(1b/2b変換みたいなものか…)
10BASE5の場合使われるレベルは0Vと-2Vである。
MII
4b/5b変換をする
GMII
1000Base-Tでは、8B1Q4という符号化方式を用いる
  1. 8bitに1bitの冗長化符号をつけて9bitにする
  2. 冗長化符号と上位2bit(合わせて3bit)で変換表(8種類?)の中から1つを選択する
  3. 残りの6bitで5値データ4組を得る
(2^8=512<5^4=625なので足りる)
という符号化をし、その4組をツイストペアケーブルのそれぞれの別の線で送り出す。

符号化の話と外れるが、1000Base-Tの場合は、電圧を5段階にわけで5値を送ることによって周波数を下げている。
http://ascii.jp/elem/000/000/431/431314/index-4.ht...

10BASE-T

  • カテゴリ3のツイストペアケーブルで10Mbpsの通信ができるように設計されているが、カテゴリ5ケーブルが広く使われている
  • ツイストペアケーブルを接続するコネクタをRJ-45という
  • AUI I/Fを持つNICの場合は、AUIトランシーバケーブルを用いて、外部トランシーバ(MAU)と接続することができる
  • ツイストペアケーブルの対になっている線には、差動信号が流れる。+が0V〜2.5Vを遷移し、-が0V〜2.5Vを遷移する
  • 符号化方式は、マンチェスタ符号である
  • 2組4本の線を用いて、1本をデータの送信用、もう1本をデータの受信用として使用する
  • 10BASE-Tセグメントは、100m以内にしなければならない(?)
  • 一般的な10BASE-Tトランシーバの受信回路では、スケルチレベルは300mV以下である
  • 10BASE-Tセグメントの使用では、ケーブルテスタを使用してセグメントの端から端まで測定したときの最大信号ゲン推量を11.5dBと規定している。一般的なカテゴリ5ケーブルの場合、500フィート辺りのゲン推量は、周波数10MHzの場合は10dBである
  • がんばってもセグメントを150m以上にするのは困難
  • スケルチレベルを下げればもっと長くなるが、クロストークが発生するリスクが高まる
  • ケーブルのインピーダンスを100Ωにするのが望ましいが、120Ωのケーブルも使用を認められている
  • RJ-45コネクタの結線は以下の通り
ピン番号信号
1TD+
2TD-
3RD+
4未使用
5未使用
6RD-
7未使用
8未使用

10BASE-F

光ファイバによるメディアシステムである
  • 10GMbpsの光ファイバリンクセグメントにはFOIRL(Fiber Optic Inter-Repeater Link)セグメントと、10BASE-Fがある。FOIRLは元々リピータ間を接続するためのものであった。
10BASE-F標準では、以下の3つの光ファイバセグメントが規定されている
  • 10BASE-FL
  • 10BASE-FB
  • 10BASE-FP
タグ

コメントをかく


「http://」を含む投稿は禁止されています。

利用規約をご確認のうえご記入下さい

Wiki内検索

フリーエリア

メニューバーA

ここは自由に編集できるエリアです。

管理人/副管理人のみ編集できます