Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Token Ringについて

Cyan
February 07, 2021

Token Ringについて

Cyan

February 07, 2021
Tweet

More Decks by Cyan

Other Decks in Technology

Transcript

  1. Token Ringについて

    View full-size slide

  2. イントロダクション
    - Ethernet(IEEE 802.3)とWLAN(IEEE 802.11)は LANで使われているプロトコル
    規格としてよく知られています。
    - しかし、LANの概念が登場した当初、Ethernet以外にもいろんな設計が提案され、
    そのうち、EthernetのライバルとしてToken Ringという技術がそこそこ使用されてい
    ました。
    - Token RingはIBMの主導の元で開発され、(細かい違いがあるが)IEEE 802.5に
    よって規格化されています。
    - 昨今Token Ringは殆ど使われていないが、Token Ringの考え方が今のシステム
    設計にも有益だと思い、理解しておいて損がないと考えています。

    View full-size slide

  3. 特徴
    - Token Ringはリングトポロジーを使用しています。すなわち、ネットワーク内の全てのノー

    はリング(輪)のようなネットワーク回線によって繋げられています。
    - それぞれのノードは大きく二つの要素によって構成されます。インタフェース(
    Interface)と
    ステーション(Station)です。インタフェースはNICだと考えて良く、ステーションはPCのよう
    なデバイスと認識して大丈夫かと思います。
    - 情報を送信する際に、Token Passingという概念を利用しますので、一回送信できるデータ
    のサイズに制限がないものの、リング内のデータフレームは一つのみにならなければいけ
    ません。また、サイズ制限がないが、THT(Token Hold Time)という送信時間制限(10ms)
    があります。
    - ノードを特定するのに、MACアドレスを利用していますが、Ethernet/Token Busと違い、
    Most Significant Bit First Orderを採用している為、Ethernet上のMACアドレスと変換す
    る必要がある。

    View full-size slide

  4. 送信の流れ
    - リング状のネット回線に一つのトークンフレームが常に回っています。
    - 情報(データもしくはコマンド)を送信したいノードはトークンが回って来た際にそれ
    をキャッチし、データフレーム(もしくはコマンドフレーム)に換えます。(複数のやり
    方があるが、贅言の必要がない為割愛)
    - データフレームに目標アドレスが記述されている為、フレームが目標じゃないノード
    を通過した場合、スルーされます。(インタフェースの内部では1ビットのバファを経
    由する為、ノードを通過する度に1ビットの遅れが発生します。これを1-Bit Delayと
    いう)
    - 目標アドレスのノードに到達できたら、情報がノード内のバッファにコピーされ、コ
    ピー済のフラグが立てられます。
    - データフレームが再度送信元に帰ってきた時、データフレームが消され、新しいトー
    クンフレームが回されます。

    View full-size slide

  5. トークンフレームの構造
    SD AC ED
    Start Frame Delimiter(1
    Byte):トークンフレームの開
    始位置を示す
    Access Control(1 Byte = 8 Bit):トークンの情報を格納する場所
    最初の3 Bit:優先順位を示す(大きい方が上位)
    次の1 Bit:トークンフレームであるかを示す
    次の1 Bit:モニター用フラグ(モニターノードを通過したかを示す)
    次の3 Bit:次のトークンを予約するために利用する
    End Frame Delimiter(1 Byte):
    トークンフレームの終了位置を示

    View full-size slide

  6. データフレームの構造
    SD AC FC Destination
    Address
    Source
    Address
    Data Checksum ED FS
    Frame Control(1 Byte):
    データフレームかコントロール
    フレームか(どういうコント
    ロールフレームか)を示す
    Destination Address(2もしくは6
    Byte):
    送信先のMACアドレスを示す
    Source Address(2もしくは6
    Byte):
    送信元のMACアドレスを示す
    Data(無制限):
    送信したい情報
    Checksum(4
    Byte):
    CRCアルゴリズム
    を用いた誤り検出
    用の付加情報
    Frame Status(1 Byte):
    A部分:アドレスが認識されたかを示す
    C部分:フレームがコピーされたか(送信先
    に送達できたか)を示す

    View full-size slide

  7. インタフェースのモード
    - Listening Mode:フレームをチェックする準備ができているモード(通常)
    - Transmit Mode:データを送信するモード
    - Receive Mode:データを受信するモード
    - Bypass Mode:フレームをチェックせず直接通過させるモード

    View full-size slide

  8. 異常への対応
    - Token Ringのネットワーク内に下記のフレーム異常が発生し得ます。
    - Orphan Frames:フレームが二周以上回っています。
    - Lose Tokens:リング内にトークンが消えています。
    - Grabled Frames:フレームが壊れている。
    - ステーションのうち、モニター(Monitor)と呼ばれている特別なステーションが存在
    し、上記のようなフレーム異常を検出し、対応します。
    - Orphan Frames:AC内のMonitorビットによってフレームが一度モニターのノードを通過したかを記
    録し、一度通過したことがあるフレームが再び通過した際に、該当フレームを破棄し、新しいトーク
    ンを回し始めます。
    - Lose Tokens:モニターにタイマーを用意し、設定された時間( Tokenless Interval)までトークンが来
    なかった場合、新しいトークンを回し始めます。
    - Grabled Frames:Checksum等によってフレームが壊れたと判断した場合、モニターが該当フレー
    ムを破棄し、新しいトークンを回し始めます。
    - モニターが死んだ場合、Contention Protocolにより別のステーションをモニターとし
    て機能させます。

    View full-size slide

  9. 長所
    - リング内のトークンが一つしかない為、CSMA/CD方式のような複雑な衝突回避方
    式が要りません。
    - SwitchをEthernetでの活用が始まったことと双方向通信が可能になったことにより、このメリットが
    薄れてしまいました。
    - 分散型なので、ステーションに優劣がありません。
    - MACアドレスが重複になった場合でも対応できます。

    View full-size slide

  10. 短所
    - 一つのノードが壊れただけでリングネット内の通信がすべてダメになってしまいま
    す。
    - 同じくToken Passingを使ったFDDIには二重リングを使って防ぐアプローチがあります。
    - Wire Centerを利用して壊れたノードをセンター内で Bypassするアプローチも存在する。
    - トークンが一つしかない&片方向通信しかできない為、オーバーヘッドが大きい。
    - 設備のコストが高い為、構築するのにお金がかかります。

    View full-size slide

  11. トーク

    インタフェース
    ステーション
    ノード
    アドレスA
    アドレスB
    アドレスC
    SD AC ED

    View full-size slide

  12. 送りたいメッセー
    ジがある!
    じゃTransmit(送
    信)モードに変え
    てデータを積み
    込むぞ
    アドレスA
    アドレスB
    アドレスC
    トーク

    View full-size slide

  13. アドレスA
    アドレスB
    アドレスC
    データ
    アドレスCまでよ
    ろしく頼んだぜ!
    SD AC FC Destination
    Address
    Source
    Address
    Data Checksum ED FS

    View full-size slide

  14. アドレスA
    アドレスB
    アドレスC
    データ
    アドレスCに送る
    ものだからパス こっちも送りたい
    データがあるけ
    ど、しばらく我慢
    するしかないな

    View full-size slide

  15. アドレスA
    アドレスB
    アドレスC
    データ
    うちに送ってくれ
    たデータのようで
    受信モードでコ
    ピーしてから受け
    取った印をつけ
    よう

    View full-size slide

  16. アドレスA
    アドレスB
    アドレスC
    既に受け取られ
    たようで新しい一
    周に入ろう

    View full-size slide

  17. 参考資料
    - [PDF] LAN Systems: Ethernet, Token Ring, and FDDI
    - [PDF] FDDI AND TOKEN Ring
    - [Wikipedia] Token Ring
    - [Wikipedia] Token passing
    - [Wikipedia] Carrier-sense multiple access with collision detection
    - [PDF] IEEE 802.5 (Token Ring) LAN (System Models for Distributed and Cloud Computing)
    - [Webpage] Network byte order on MAC address
    - [Wikipedia] Bit numbering
    - [PDF] Token Ring
    - [Webpage] Ethernet / Token Ring MAC Address Conversion Table
    - [PDF] Token Ring
    - [Webpage] Token Ring - is a MAU required?
    - [PDF] IEEE Ring LANs
    - [PDF] Token Ring Solutions
    - [PDF] Local Networks
    - [Video] IEEE standard 802.5 Token Ring
    - [Video] IEEE standard 802.5 Token Ring Frame Format
    - [Video] Token ring network and how it works

    View full-size slide

  18. ありがとうございました

    View full-size slide