サイズ: 7193
コメント:
|
サイズ: 7279
コメント:
|
削除された箇所はこのように表示されます。 | 追加された箇所はこのように表示されます。 |
行 171: | 行 171: |
= OSI7層参照モデルとデータの流れ = * 絵を描いて説明します |
今回やること
- 前回の復習
- MACアドレス
- ARP
- ICMP
- OSI7層参照モデル
- ルーティングとスイッチング
前回の復習
- 小テストをやりましたが。。。
- サブネットマスクの理解が微妙だったので、もう一度説明します
ネットワークの構成要素
- NIC
- ブリッジ
- ルータ
- ゲートウェイ
データリンクとは
- 前回の話よりもっと物理的な部分に近い話をしましょう
- 有線通信の本質は、電気信号を相手に送信すること
- ここの話は今回はしない
- 電気信号を送信するという話と、ネットワークでの通信という話の間にあるもの
- 取り合えずコンピュータとコンピュータがまともに通信できる方法を確立する必要
- →データリンク
MACアドレス
- データリンクに接続しているコンピュータを識別するためのアドレス
- NICについている
MACアドレスの構造
- 48bitsの長さ
- 1bit...ブロードキャストアドレスかそうでないか
- 3~24bit...ベンダ識別子
- 25~48bit...ベンダ内での識別子
- 唯一性が保証されている
イーサネット
- データリンクを実現するための現在もっとも主流の方式
- IEEE802.3に規定されている
- 基本的にCSMA/CD方式を採用(一部では採用していない)
- データを送信したくなったら早い者勝ちでデータを送りつける
- 全二重通信と半二重通信
イーサネットのフレーム構造
- イーサネットではデータの一塊をフレームと呼ぶ
- 宛先MACアドレスと送信元MACアドレス
- SNAP
- プロトコルを表すためのもの
- FCS
- フレームが壊れているかどうかをチェックするためのbit
IPとデータリンクの関係
- IPは最終目的地までの通信を提供する
- データリンクは1区間(1ホップ)の通信を提供する
- IPはホップバイホップルーティングしている
- 1区間毎にルートが決定され、パケットが転送される
- こういった行き当たりばったりな方法をad hocという
- 1区間毎にルートが決定され、パケットが転送される
IPアドレスとMACアドレスの変換
- 宛先IPアドレスが分かっている状態で、次にパケットを送るべきコンピュータのMACアドレスを調べたい
- ARPと言うものを使う
ARP
- ARP要求パケットをブロードキャスト
- ARP応答パケットをそれに対して返す
- ARPによって得られたMACアドレスはキャッシュされる
RARP
- ARPの逆で、MACアドレスからIPアドレスを得る
ルーティング
- IPアドレスだけでは目的地にパケットを届けること派できない
- 「この宛先に送るためには、ここにおくればよい」という情報が必要
- こうした経路を決める制御をルーティングという
- IPで通信する機器は必ずこのルーティングのための表(ルーティングテーブル)を持っている
- ルーティングテーブルの作り方
- ダイナミックルーティングとスタティックルーティング
- 驚くことにIPそのものにはルーティングテーブルの作り方は決められていない!!
- ルーティングテーブルの作り方
IPアドレスとルーティング
- ルーティングテーブルにはネットワークアドレスと次にどのルータにパケットを送信するべきかがかかれている
- 一致するネットワークアドレスが複数ある時はより長いほうに送信する
デフォルトルート
- 一致するものがないときにはここにおくることにする
- 無駄な記述を減らせる
- 0.0.0.0/0 または defaultとかく
ホストルート
- IPアドレス/32
- IPアドレス全てを使ってルーティングを決める
ループバックアドレス
- 前回やったね!
ルーティングテーブルの集約
- より効率の良いルーティングテーブルを作るには
ルーティングを理解するためのコマンド
- netstat -r
- traceroute
スイッチング
- いちいち全部にデータを送るのは極めて無駄
- スイッチングハブというものがあってな
- つながっているコンピュータのMACアドレスを学習して、必要なポートにだけデータを出力する
IPアドレスとMACアドレス2つも必要?
- 別のデータリンクにつながっているコンピュータにデータを送ることを考えよう
- ルータを跨がなければいけないので、相手のMACアドレスが分かっていても直接データを送ることはできない
- どこのルータを経由して相手にデータを送るかという情報が必要
- ルータのMACアドレスを知る必要がある
- ARPが必要になる
- ルータのMACアドレスを知る必要がある
- MACアドレスしかないとどうなるか
- スイッチが学習するまではとりあえず世界中にパケットが流れていくことになる
- 想像してみるとおぞましい
- 両方が協調することが必要
ICMP
- パケットが届かなかったときにこのプロトコルを使って障害の通知が行われる
ICMPメッセージ
- おもにエラーを通知するためのものと診断を行うためのもの
ICMP Destination Unreachable Message
- 相手に到達不能であることを示す
ICMP Redirect Message
- 最適な経路ではなかったことを示す
ICMP Time Exceeded Message
- TTL
ICMP Echo Request Message
- pingはこれを使っている
VLAN
- ネットワークをつなぎかえずにネットワークの構造を変える技術
OSI7層参照モデル
- ネットワークは階層構造になっている
- ネットワークを利用したプログラムを作りたいとき、電気信号の挙動に気を配るのは嫌だ
- おのおの担当領域を決めて、それぞれがそれぞれの役割を果たすようにしている
- アプリケーション層
- プレゼンテーション層
- セッション層
- トランスポート層
- ネットワーク層
- データリンク層
- 物理層
- 上3つは一括りにしてしまうこと多数
- DNSやHTTPなどアプリケーションの実装に関わる層
- トランスポート層はデータをアプリケーション間でどう通信するかを規定している
- ネットワーク層はネットワークを構築する上で必要なルールを決めている
- データリンク層と物理層は最低限通信するために必要なルールを定めている
OSI7層参照モデルとデータの流れ
- 絵を描いて説明します