後で書く

第一章: ネットワークの基本概念

テストに関して

基本的に暗記.
  • 試験は持ち込みなしで,選択形式(計算問題含む)

教科書

  • タネンバウム、他,"コンピュータネットワーク 第5版", 日経BP社, 8,640円
    • 教科書に沿った講義ではないが、良い本なので入手するのはお勧め。できれば原書が良い
  • 第三版のATM、第二版のOSI
    • 詳細や待ち行列理論のサマリといった過去の版にしかない内容も
  • W. Stallings, "Data and Computer Communications - 9th Ed.", Prentice Hall, US$95.00
    • タネンバウムに並ぶ定番教科書。ハンドブック的な使いでもある
  • W. Richard Stevens, "TCP/IP Illustrated, Volume 1: The Protocols", Addison-Wesley Professional, US$79.99
    • TCP/IPに特化するが、ひとつのプロトコルの実例を通じてプロトコルが何をやらねばならないかがよくわかる.この分野に進む人は必須。
    • 訳書は"詳解TCP/IP〈Vol.1〉プロトコル"という書名
  • 小口正人, "コンピュータネットワーク入門 - TCP/IPプロトコル群とセキュリティー", サイエンス社, 2,048円
    • 比較的バランスよく書かれている最近の学部向け教科書
  • 田坂修二, "情報ネットワークの基礎", 数理工学社(発売:サイエンス社), 2,300円
    • 学部用なので個々のトピックの掘り下げは浅いが、待ち行列理論への言及もあり、下位層中心に全体の構成がよくできている。
    • 絶版だが中古で入手しやすい
  • 江崎浩,"ネットワーク工学―インターネットとディジタル技術の基礎", 数理工学社, 2,415円
    • 学部向け教科書で、インターネット時代の教科書としてふさわしい新しい構成
  • 浅野理森, "まるごと図解最新TCP/IPがわかる", 技術評論社, 1,980円
    • 入門用副読本:全くIPネットワークの概念を持っていない場合には最初に一読するとよい。
    • 絶版だが中古で1円

通信の基本概念

ネットワークとは


網状に接続された何か.
物流、人間関係のように色々な意味で使用されるが,
ここで扱うのは通信ネットワークの中の計算機ネットワーク (テレネットワークともいう)
    • 基本形は一対一の接続
    • 全ての通信相手と総当たりで接続されるのが究極形態
    • どのような形の通信も可能としつつ、コストを節減するための技術が必要

通信の形態


アドレッシング能力(通信形態)は以下の4つ.
名称通信方法その他備考
ユニキャスト unicast一対一特定の相手に伝送
マルチキャスト multicast特定の(論理的)グループのメンバ全てに伝送
ブロードキャスト broadcast(物理的に)届く範囲全てのノードに伝送放送
エニーキャスト anycast特定の(論理的)グループのメンバのうちどれかに伝送同じデータを持っているBDが複数あるとして,どれでもいいのでどれか一つからデータをもってくる
  • ユニキャスト,ブロードキャスト が通信形態としては基本になる.

一方, 同時性・方向性は以下の3つを覚える必要がある.
名称説明備考
単方向(simplex)一方向にのみデータが伝送
半二重(half-duplex)双方向にデータ伝送可能であるが同時には一方向のみトランシーバーなど
全二重(full-duplex)双方向に同時データ伝送が可能

ここで考えるべきには通信路単位.
例えばあるコンピュータに2つの通信路を持っていて,これでコンピュータ的には両方向の通信をしている場合でも,
ひとつの通信路では,simplexである.

交換(switching)


ここで話したい話題はそれこそ,一昔前の電話の交換手の交換.要は,どうやって相手とつなぐかという話.
全通信形態を全通信相手の組み合わせだけ用意するのは現実的ではない
  • 任意の通信相手との接続を可能にするしくみ交換
    • 結局のところは資源の共有(=完全には持たない)
    • これが通信事業者が成り立つ原理

交換方法には2種類ある.
回線交換
  • 事前に通信経路を設定して(シグナリング) 、(仮想)回線を確保: なんであれ,事前に通信経路を設定したら回線交換
  • あたかも物理的な線を独占しているかのような使い勝手
  • 実際に使っていなくても資源は占有
パケット交換
  • 情報をパケット(小包)に分割して各々に宛先情報をつけて送り、中間の中継地点ではそのときの状況に応じて適切な方面に送る
  • 個々のパケットごとに通ってきた経路が異なったり到着する順序が入れ替わる可能性がある
  • 必要な情報だけを送ることになる

コネクション指向とコネクションレス


交換よりも高次概念=アプリケーションよりで使う用語 Fig. 1-16
  • コネクション = 何か始まりがあって,終わりがあるもの
コネクション指向
  • 情報を一連の流れ(フロー)として捉える
    • c.f. 人間の会話でも途中で会話が途切れるというのと、話が終わるということは異なる. この話が続いている、というのが流れ
  • 何らかの意味での仮想回線を用意する
  • 回線交換で実現すると容易
コネクションレス
  • パケット、あるいはメッセージはあくまでも単体ごとに扱う: 何かにコマンドを送るみたいなやつ.
  • 事前のセットアップや仮想回線を実現する手間を回避
  • パケット交換で実現すると容易

今はコネクション指向の通信もパケット交換で実現している場合も多い.

まとめ: コンピュータネットワークの特徴

  • ブロードキャストを活用する
    • 自分宛以外は聞かなかったふりというやり方を多用
      • 最近はセキュリティの観点から状況が変わりつつある
  • コンピュータ(プログラム)は爆発的に喋る: バースト性
    • 送信したいデータがあるとき急に発生する: 人間の会話では相手との間みたいなものが連続的に存在する.
    • パケット交換との相性が良い
      • 一方、自然界の情報源は通常時間的な流れ、つながりを持っていて回線交換に適する
  • コンピュータは自分の一部を他と共有したりする
    • 独立した単体同士のコミュニケーションとして捉えられない部分がある

トポロジ

リンクとノード

論理的なネットワークはリンクとノードから成ると考える.
複数のリンクが中継ノードで接続されたものがネットワークと呼ばれる


ノード
  • エンドノード
    • 通常は計算機で、何らかのアプリケーションプログラムが稼働
  • 中継ノード
    • リンクとリンクを接続して通信の中継を行うノード
    • ルーターやブリッジなど
リンク
  • ノード間を接続するしくみ
  • 一対一接続
  • 多対多接続(一本の線で多くのものをつなげる)

代表的なトポロジ

以下ではノードとリンクの組み合わせでできる形についての議論をする.
  • 基本形は一対一の接続
    • 複数の相手と総当たりで一対一接続されるのが究極形態
    • 全員と専用の線でつながるということ
  • 共通の線で複数の相手に渡すことも可能
    • 識別、アドレシング
    • メディア(媒体)アクセスコントロール
  • 論理的トポロジと物理的トポロジは一致しない
バス
  • 元々のEthernet (10Base5, 10Base2)、無線、赤外線、etc.
  • あるノードからでる信号がすべてのノードに伝わる(そのため,色々なことが起きる).
  • 物理的な共有媒体(バス)にノードを接続
  • バスを適切に利用するための取り決めが必要
  • バス媒体そのものの物理的特性に性能が依存する
  • バスに問題が生じると全体に被害が及ぶ
  • ノードの付け外しの際にバスに悪影響を及ぼさないようにせねばならない(これを注意していればだいたいOK)
  • 回線容量を分け合うことになる
リング
  • TokenRing, FDDI, SONET ring, etc. (今はあんまり一般では使わない)
  • 隣のノードとの接続を順次繰り返して輪をつくる
  • リング型の媒体があるわけではなく、あくまでの隣のノードとの一対一接続の連続: 上流と下流がある
  • リングを適切に利用するための取り決めが必要
  • 他のノードを経由して通信が行われる
    • 一ケ所でも切れるとリングが成り立たなくなり、被害が全体に及ぶ
  • ノードの付け外しの際にはリングが切れる
  • 回線容量を分け合うことになる
スター
  • 集線装置(ハブ)にノードを接続
  • Ethernet (10BaseT), スイッチを使ったEthernet, ATM, etc.
  • ハブが通信方式を決める
  • 物理的なスターが論理的なスターとは限らない
  • ハブが壊れると全体に被害が及ぶが、線が切れても該当するノードだけの問題で済む
  • ノードの付け外しはハブの許す限り自由
  • 回線容量がどうなるかは集線装置次第
ツリー
  • 集線装置(ハブ, コンセントレータ)にノードを接続し、ハブを上位のハブに接続
  • スター同士の接続と考えることも可能だが、上下関係がある
  • FDDI, CDDI
  • スターと類似した性質だが、枝単位で運命共同体なのと、トラフィックの集約が起る

コンピュータに関連した各種のネットワーク


距離、規模、技術、運用 に応じて以下のように分類: 誰が持っているのか(組織-> LAN, NTT -> WAN)
  • 距離がすべてではないことに注意(詳細は後の回で)
The Intermet10,000kmPlanet
WAN (Wide Area Network)1000kmContinent
100kmcountry
MAN (Metropolitan Area Network)10kmCity
LAN (Local Area Network)1kmCampus
100mBuilding
10mRoom
PAN (Personal Area Network)1mSquare meter
SAN (Storage Area Network)ストレージ関係のデバイスを使う用
DAN (Desk Area Network)Mac のサンダーボルト的なやつ. サンダーボルトから画面に繋いで,そこから,いろんなポートにつなげるやつ
I/O channelプロセッサーと,メモリみたいな
Processor interconnectプロセッサーとコア

ネットワークアーキテクチャ


複数のコンピュータによる効率的、効果的な分散処理を可能とするためのハードウェア、ソフトウェアの設計体系
  • 1970年代に大きく進展

60年代後半からオンラインシステムの実現: 電話線にコンピュータ同士のやり取りをのせるようになった
  • 1971年の第一次回線開放(電話線、専用線複数企業利用)
    • ここまででは, 日本では電話線にコンピュータ同士の通信を載せては行けなかった(複数企業が一本の線に流してはいけない感じだった).
      • 守秘義務とかそこら辺の影響.

オイルショックによるコンピュータ導入推進
  • 人をリストラするため
  • これで色んなベンダが出てきて仕様が乱立した.

各ベンダ独自のアーキテクチャから国際標準へ
  • OSI (Open Systems Inter-connection)
  • 1978年から国際標準化機構ISOによる標準化

OSI

参照モデルとプロトコル
  • 現在では専ら参照モデル(後出)として利用
OSIプロトコル
二つのプロトコルスイートが存在した.
  • MAP(Manufacturing Automation Protocol)
  • TOP(Technical and Office Protocol)

ネットワーク層プロトコルとしてCLNP(Connectionless Network Protocol = ISO IP) があり, ルーティングプロトコルも独自(ES-IS).
  • ISO Presentation, ISO Session, ISO Transport(TP4)
  • Transportについてはネットワーク層の種類に応じて0-4の五種類

結局, 重すぎて実現できなかった.

ネットワークアーキテクチャ参照モデルの主要素


仮想化、階層化
  • サービス
    • ある層が自分の上の層に対して提供するプリミティブ(基本操作)の集合
    • どのようなプリミティブがあるかは示すが、どう実現されているかは規定しない
    • 上下2つの層はインタフェースを挟んで上がサービス利用者、下がサービス提供者
  • インタフェース
    • 一つ上位の層がその層を(SAP : Service Access Point)を通じてアクセスする方法を定義したもの
  • プロトコル
    • 同位エンティティによってやりとりされる情報の意味や手順に関する取り決め: 上下はプロトコルとは言わない.
    • あるエンティティはプロトコルを利用してサービス定義を実現する
    • エンティティはサービスを変えなければプロトコルは自由に変えることができる

OSIサービスプリミティブ

OSIモデルにおけるサービスの提供方法
  • 4種類に分類される
    • 1. 要求(request)
    • 2. 指示(indication)
    • 3. 応答(response)
    • 4. 確認(confirm)

サービスを明確に整理する上で様々なネットワークにおいて有効

プロトコルスタック

物理媒体からプログラムの間の一連の処理を分割
  • カプセル化: 各層で必要な情報を、一つ上の層の情報を包み込むような形で付加してゆく: どんどん大きくなる
  • 送信側上位から下位、受信側下位から上位
  • 中継点では下位の必要な部分のみを解釈
  • 分割は分け過ぎず、詰め込み過ぎずが肝要
    • 実際のところはシステムに依存して最適な形態が存在
  • 各種のスタックモデル
    • インターネットを扱う上では5層くらいが適当
    • OSI: 7層
    • TCP/IP: 4層
    • ATMなど、ISDN系はまた異なったモデル

OSIモデル

レイヤ名機能
アプリケーション
プレゼンテーションデータの表現形式、エンコード方式変換、暗号化
セッションアプリケーション同士の会話制御. コネクション(レス/オリエンテッド)とは違う概念
トランスポート
ネットワーク
データリンク
物理

TCP/IP
  • アプリケーション
  • トランスポート
  • ネットワーク
  • 物理 (host to network)
5層モデル

あくまでもデファクトスタンダード的なモデル
  • OSIから下の部分、TCP/IPから上の部分
    • 現実にインターネットを考える上でよく適合
      • OSI 各層の性格上、トランスポートまでの下位層はネットワークの仕事、セッションから上はアプリケーションサポート
      • モデルとしての考え方はOSI、実装的にはTCP/IPで、どちらにもぴったりしないことも
レイヤ名扱うデータの単位アドレス機能
アプリケーションメッセージ,データftp, telnet, httpなし(トランスポート)ユーザーの仕事
トランスポートメッセージ,セグメントTCP, UDPポート番号フロー制御、アプリケーションプロセスの識別
ネットワークパケット,データグラムIPIPアドレスインターネット中での配送
データリンクフレームLLC, MACMACアドレス直接つながった相手への配送
物理bitPLS, PMAなしビットを実際に送る

層構造の特徴

インタフェースが実現されていれば入れ替えがきく
  • どの層でどの機能を実現するかは任意性がある
    • 例: コネクション、誤り訂正、フロー制御
    • 2層と4層の類似性
    • 重複しても無駄ではあるが通信は可能
  • 一つの層の上に異なる層が同時に載りうる
    • IPの上にTCPとUDP
    • Ethernetの上にIPとAppleTalk
  • 下位プロトコルを上位に載せることも可能
    • トンネリング、VPN

高い通信品質、高い性能の実現には層構造自体が邪魔になることもある
    • レイヤバイオレーション技術
プロトコルスタックの実例
  • TCP/IP
  • AppleTalk
  • Novell NetWare
  • DECnet
  • SNA
  • XNS
  • X.25
  • OSI

郵便配達とのアナロジー

章末問題


  • 通信の形態(unicast, multicast, broadcast, anycast)について、各々どのようなものか説明してください。
  • 全二重通信、半二重通信、単方向通信について例をあげて説明してください。
  • LANでよく使われるトポロジを3つあげ、各々の性質を説明してください。
  • 完全結合、バス型、スター型、リング型の各トポロジについて、nノードを接続するのに必要なリンクの数を示して下さい。
  • 交換という概念を簡単に説明してください。
  • 回線交換とパケット交換について説明してください。
  • 回線交換でコネクションレスな例、およびパケット交換でコネクションオリエンテッドな例をあげてください。
  • LAN, WAN, MANといった分類の基準を述べて下さい。
  • OSI参照モデルが明確にした重要な概念に、サービス、インタフェース、プロトコルがあります。これらを説明し、その関係を図示して下さい。
  • プロトコルスタックとは何ですか? また、カプセル化という概念はプロトコルスタックでどのように用いられますか?
  • OSI参照モデルの各層の名前と役割を簡単にあげてください。
  • 実際のコンピュータネットワークでは5層のモデルがよく使われます。この5層モデルについて、各層の名称、各層で取り扱うデータの単位、各層で利用するアドレス、各層の役割をあげてください。
  • OSI参照モデルにおけるサービスプリミティブについて図を用いて説明してください。

コメントをかく


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

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

どなたでも編集できます