第7章 Internet Protocol (IP) コネクションを使わない Datagram Internet の階層 Internet は仮想ネットワークに見える. – 物理ネットワークの抽象化 階層化 – 他に影響を及ぼすことなく並行して各個の改 良が可 応用サービス 信頼度の高い transport コネクションを張らない packet 配送 コネクションのない配送システム Unreliable (配送の保証がない) – 紛失・2重・順不同の検知・通知をしない. Connectionless (各パケットは独立に配 送) Best effort (精一杯の配送努力をする) – かってに(気まぐれに)packetを廃棄しない. – Unreliable になるのは • 資源が尽きた • 基盤ネットワークのfail の時だけである. Internet Protocol (IP) – Packet の format – routing の方法 – packet の取り扱い方、エラーの処理 Internet Datagram – 物理ネット ・・・ – 仮想ネット ・・・ フレーム IP データグラム Datagram header Frame header Datagram data area Frame Data Area Datagram format Type-of-service フィールド /usr/include/netinet/ip.h IP header components vers バージョン番号 4=IPv4 – 次世代 IP … 6=IPv6 – 異なるバージョンのパケットは廃棄される. hlen ヘッダ長 (32ビット語長) – 最小5、最大15 service type – 優先度 0 ~ 7 • 0: 通常、7: 網制御 IP header components service type – サービスのタイプ •D •T •R 遅延を重視 (delay) スループットを重視 (throughput) 信頼性を重視 (reliability) – 要求ではなく、ヒント IP header components Total length – ヘッダ+データの長さ (octet) ident – datagram の識別番号 (プロトコルごとに設 定) – (src-addr, ident) が一意にデータグラムを決 める. Flag DF MF • DF don’t fragment • MF more fragment IP header components Offset – フラグメントが元のデータグラム・データ中に 占める位置 8 octet を単位とする数 元のデータグラム・データ Fragment 制御 Fragment 制御 MTU (maximum transfer unit) – ethernet 1500 octet – その他にたとえば 128 octet, 2044 octet など 共通の最大公約数がない → 1 frameで運べないものは、いく つかの fragment に分解する→ 任意の大きさのデータグラム を保証 Reassembly of fragments 組立て – どのルータで fragment されるか分からない. – 各フラグメントはみな同じデータグラム形式 – どこで組立てを行うのか?→ 最終地 欠点 – 一度小さなMTUのnetworkを通ると小さいまま – 一つでも未着だと全部が廃棄 (reassembly timer) 長所 – 途中のルータで蓄積再構成をしないですむ. – それぞれのフラグメントが独立に配送される. IP header components Time to live 生存時間 – 経路表が損傷 → パケットのループ – ループを断ち切る. – 時間をどう測るか? • 遅延の大きな通信路 • 広帯域幅の通信路 – forward するたびに1を引く – 0 になったら廃棄して誤りを通知 • traceroute IP header components protocol – data 部分の高位プロトコル番号 Hdr checksum – ヘッダだけの検査 (16ビット整数の加算) – 長所 • 処理時間を短くで切る • 高位プロトコルが独自の検査を持てる. – 短所 • 高位プロトコルで付けなければならない. • ダメなデータに気づかず送る. オプション オプション・コード – クラス • データグラム/ネットワークの制御 • デバグと計測 – 番号 0: option list 終了 1: NOP 2: security 3: loose src routing 9: strict src routing 7: record route 8: (stream id) 4: timestamp オプションの長さ、ポインタ (next avail) Record route – ルータを通るたびにIP addr レコードを追加 source routing – path (経路)の指定 • throughput の測定など – strict source routing – loose source routing この通りに この順に timestamp – 通過時刻の記録、ネットワークのモニタ
© Copyright 2024 ExpyDoc