新人SEの学習記録

14年度入社SEの学習記録用に始めたブログです。気づけば社会人3年目に突入。

学習記録:イーサネット&TCP/IP

[学習記録] イーサネット&TCP/IP

第5章 スター型接続のイーサネット

ネットワークのケーブル
  • UTPケーブル
    • 現在のスター型接続のイーサネットで使用される配線
    • Unshielded Twisted Pairケーブルは、2本の細い電線をよじり合わせて1対とした配線を4対束ねたケーブル
    • 両端にRJ-45という8端子のモジュラーコネクタが付いている
    • もともとはオフィスで使うビジネスフォン用のケーブルだったが、現在では同じタイプのケーブルではなくなっている
    • Unshieldedはシールド無しという意味で、ツイストペア線はプラスチックの外皮の中にそのまま入っている
    • 一般には微弱な電気信号を送るためのケーブルは、ノイズに強くするため信号線の外側に金属の箔や網を巻くシールドがある
    • STPというケーブルもあり、こちらは全体をシールドで覆っている。10Gイーサネットで使用される
    • シールドのアース接続を適切に行わないと逆にノイズが乗るので、長く延長する場合は配慮が必要
    • UTP/STPにはよじり合わせのピッチなどに応じていくつかの種類があり、カテゴリという形で分類されている
    • カテゴリの数字が大きくなるほど高速の伝送が可能
    • 100Base-TXはカテゴリ5以上、1000Base-Tはカテゴリ5e以上、10GBase-Tはカテゴリ6a以上のケーブルを使用
  • 光ファイバケーブル
    • 家庭やオフィスで使用されているイーサネットは、ほとんどがUTPケーブルを使用
    • 一般に使われる中で最も高速な1Gイーサネットでも100メートルまで延長可能なので、大抵の場合はUTPで問題なし
    • 100メートルより長い距離を接続したい場合やノイズのひどい場所での配線には光ファイバケーブルを使用する
    • 送信側にレーザなどの発光源があり、光がファイバ内部を反射しながら伝わり、受信側の受光素子で電気信号で変換
リピーター
  • 同軸ケーブルを使っていた頃のイーサネットの話
    • 同軸ケーブルは500メートルまで延長できる10Base5、185メートルまでの10Base2があるが、実はもっと延長できる
    • ただし長く伸ばすと信号の減衰が大きくなり、正常に受信できなくなる
    • リピーターという中継装置を間に置くことでこれを回避
  • リピーター
    • ネットワークインタフェースを複数持ち、あるインタフェースで受信した信号をほかのすべてのインタフェースで再送信する
    • つまり、各ケーブル間でイーサネットフレームの中継を行う
    • 単純なコネクタ接続ではなく、受信信号を受信/増幅回路で処理し、レベル低下や波形の歪みなどをきちんと補正して再送信する
    • 衝突判定を適切に行うために、接続する総延長と段数には上限があり、10Baseイーサネットの場合は最大で4段
    • データの通信という論理的な面で見れば、リピーターは単なる電線やコネクタと同等のもの
    • 伝送されるデータには関与しないが、メディアの異常は検出する
    • 断線やショート、異常な信号を送り続けているといったことを検出すると、その同軸ケーブルに接続しているインタフェースをシャットダウンする
  • 10Base-Tリピーターハブ
    • 10Base-Tハブには多数のリピーター回路が内蔵されており、接続されるUTPケーブルは個別のリピータを経由して接続される
    • ハブの各ポートのリピーター回廊は、信号の減衰や劣化を補正するとともに、機器やケーブルの異常を検知するとそのポートを切り離す
    • バス型ネットワークの場合、障害発生時には何台もの機器を接続した共有同軸ケーブル単位で切り離すことになる
    • リピーターハブの場合は個々のポート、つまり機器単位での切り離しとなるため、ネットワークの可用性は大幅に向上
  • ポートの極性
    • UTPケーブルで接続するモジュラーソケットは、MDI(Media Depend Interface)と呼ばれる
    • つまり、メディアの形式に依存するインタフェースという意味
    • 10Base-T/100Base-TXのUTPケーブルを使った接続は、4対のうちの2対のツイストペア線を使って送信と受信を行う
    • 通常はハブとコンピュータ類を接続するのに便利なように、コンピュータ側とハブ側では送信端子と受信端子が入れ替わっている
    • その場合、同じ端子同士を接続するストレート接続ケーブルを使えばよい
    • ハブを介さずコンピュータ同士を接続する場合は、接続する端子が入れ替わっているクロス接続ケーブルを使用する必要がある
    • ネットワークインタフェース部やポート部にMDI、MDI-II、MDI-=、MDI-Xなどと表記されている場合がある
    • 無印、IIや=はストレート、Xはクロスという意味
    • 現在のネットワーク機器の多くは、自動的に送受信端子の配置を変えられるようになっているため、特に配慮は不要
    • AutoMDI/MDI-X機能と呼ぶ
  • 10Base-Tネットワークの拡張
    • 10Base-T用のハブは数個から数十個のポートを備えており、ポートの数だけ機器を接続できる
    • ポート数以上の機器を接続したい場合、UTPケーブルの100メートル上限を超えたい場合には複数のハブを接続することが可能
    • UTPケーブルを使ってハブ同士を繋ぐだけで良い。カスケード接続という
    • 前に説明したリピーターによる同軸ケーブルの拡張と同じことなので、接続できる段数には限界がある(10Base-Tでは4台)
ネットワークの分割
  • ネットワーク上のトラフィックが増えると、衝突の発生が増えるという問題
    • 衝突が発生すると送信中のデータが破棄されるため、時間の無駄が生じる
    • 1つのネットワークを衝突の影響が伝搬しない形で複数セグメントに分割できれば、ネットワーク効率が改善できる
    • 単にネットワークを分割しただけでは、別のネットワークに接続された機器同士は通信できない
    • 必要な通信は確保しながら、不要なトラフィックを分離するための機器がブリッジ
  • ブリッジ
    • リピータと同様に、複数のネットワークインタフェースを持ち、複数のネットワークを接続する
    • 最も単純なのは、2つのインタフェースで2つのネットワークを接続する形
    • 2つのネットワークセグメント間でのイーサネットフレームの中継を行う
    • リピーターがデータを無条件に中継するのに対し、ブリッジは選択的に中継する
  • ネットワークAに接続されたコンピュータ:aとb、ネットワークBに接続されたコンピュータ:cとd、という場合
    • aからb宛に送信されたフレーム>bとブリッジに受信され、ブリッジはこのフレームを中継しない
    • aからc宛に送信されたフレーム>ブリッジで受信され、これをネットワークBに中継する
    • aがブロードキャストフレームを送信>bとブリッジに受信され、ブリッジはこれをネットワークBに中継
    • ネットワークAで衝突が発生>ブリッジはそれを検出するが、ネットワークBには衝突の発生を伝えない
    • 中継するフレームが宛先ネットワーク側の衝突で失われた場合>ブリッジが再送信処理を行う
  • ブリッジのもう一つの特徴は、中継するデータをバッファに一時的に保管すること
    • 他のネットワークに中継する際、中継先で別の機器が送信中等の理由ですぐに送信できない場合に備えたもの
    • ブリッジがフレームを記憶することにより、衝突への対応も変わる
    • 中継先セグメントで衝突が発生した場合、再送はブリッジの責任で行われる
    • 送信元には衝突の発生が伝わらない=衝突ドメインがブリッジによって分割されたことになる
    • 他方のネットワークに関係ないトラフィックはブリッジで遮断されるので、実質的に接続された機器数が減ったのと同じ
    • つまり、2つのネットワークは独立して機能することができる
  • ブリッジにおける中継の判断
    • MACアドレスを登録した表を使い、受信したフレームを他方のインタフェースに中継するかどうか判断する
    • それぞれのネットワークセグメントに接続されているすべての機器のMACアドレスを表の形にまとめる
    • フレームを受信すると、宛先アドレスを表の中から探す
    • 受信したセグメントと宛先のセグメントが同じなら何もせず、別のセグメントならそのインタフェースに中継する
  • アドレスの登録
    • MACアドレスを登録した表をどうやって作るか?
    • 一つはネットワークの管理者が手作業でアドレスを登録する方法
    • もう一つはブリッジがやり取りされるフレームの情報に基づいて、自力で表を作成するという方法
    • フレームに含まれる送信元MACアドレスからどのセグメントにどの機器が接続されているかが判明する
    • 最初は全フレームが全ネットワークに中継されるが、受信するごとに徐々に表が完成されネットワークが分離されていく
    • このような仕組みをラーニングブリッジと呼ぶ
ネットワークの効率化
  • メディア共有型のイーサネットは接続機器が増えると個々の機器あたりの通信容量が低下する問題がある
    • a, b, c, dの機器があり、aからb、cからdの通信を行う場合、この二つの通信は無関係であるが並行して通信はできない
    • ブリッジを導入すればセグメント単位での分割は行えるが、個々のセグメント内では同じ問題が発生する
    • では、ブリッジのインタフェース数を増やし、各セグメントに機器が1台しかないところまでネットワークを分割したら?
    • 各機器が送信したフレームは、宛先MACアドレスに基づいて宛先機器に中継される
    • ブリッジ内部の中継処理がネットワーク速度よりも十分高速であれば、この中継処理を並行して行うことが可能
  • スイッチ
    • 各ポートにMACアドレスに基づいた選択的な中継機能を備えている機器をスイッチ、スイッチングハブと呼ぶ
    • ポート数の多いブリッジと考えて良い、フレームを中継する仕組みもブリッジと同じ
    • ラーニングブリッジと同じように受信フレームの送信元アドレスからMACアドレス表を作成
    • 接続機器の数が多い場合、リピーターハブからスイッチに変えるだけでネットワーク効率は大幅に改善
    • 現在の100M, 1Gイーサネットネットワークはスイッチを使った構成になっており、リピーターハブはほとんど使われない
    • フレーム中の宛先アドレスを受信するとすぐに送信を開始する方法をカットスルー方式と呼ぶ
    • フレームをすべて受信してから送信を開始するのはストアアンドフォワード方式
  • スイッチと衝突
    • カスケード接続でない場合、スイッチの各ポートには1台の機器しか接続されていない
    • この場合、衝突が起きるのは機器からの送信とスイッチからその機器への送信が同時に起きた場合のみ
    • それも後述する全二重接続により回避することが可能
  • 全二重通信
    • スイッチの導入により、衝突の発生原因はスイッチと機器との間での同時送信のみに
    • 同軸ケーブルの時代にはどうにもならないが、UTPケーブルは内部で送受信の配線が分かれている
    • よって、送受信を独立して行う全二重通信に対応可能
    • 各機器のネットワークインターフェースとスイッチが送受信を別々に行える構造になれば、イーサネット通信も全二重に
    • 現在販売されている100M, 1Gイーサネット製品は全二重に対応
  • フロー制御
    • 受信側の処理能力を超えて送信側がデータを送るとデータが失われてしまう
    • 受信側はデータを一旦バッファに記憶するが、処理が間に合わないとバッファが一杯になってしまうため
    • この場合、送信側がフレームの送信を抑止しないとバッファ溢れによりデータが喪失してしまう
    • 受信側の処理能力に合わせて送信を抑制する仕組みをフロー制御や輻輳制御と呼ぶ
  • スイッチの処理能力
    • スイッチにより、以下の処理能力向上が挙げられる
    • 1)関連のないフレーム伝送を並行に行える
    • 2)フレームを内部でバッファリングすることで衝突を無くせる
    • 3)全二重化により1つのポートでの送受信の並行化も実現
    • これらにより、初期のメディア共有型に比べ、大幅に総帯域幅が拡大
    • 一方のコストとして、ネットワークトラフィックの処理やメモリ容量など、ポート数が増えるほどスイッチは高価になる