【職業訓練】【CCNA】【5日目】授業の流れと自習のタイミングがつかめていない
5日目です。
CCNAでは基本情報で得た知識の通信の部分をさらに細かく学んでいく感じです。
単語を覚えるのが結構楽しいです。
授業の進みと自習の進みとの具合が
つかみ切れていないので講義が聞きづらいです。
今日は
・TCPとUDP
・DHCP
・DNS
・FTP
です。
単語リスト
・TCP(Transmission Control Protocol)
データを送信する前に通信相手とコネクションを確立
コネクション型のプロトコル
トランスポート層
信頼性が高い
仮想のコネクション
3wayhandshake
順序制御
エラー制御
再送制御
ウィンドウ制御
輻輳制御
長さセグメント
+セグメンテーション
アプリケーション層からデータを受け取るとネットワーク層のMTUに適したサイズに分割しTCPセグメントを生成する。
+TCPセグメントのフォーマット
送信元ポート(16):送信元ポート番号
宛先ポート(16):宛先ポート番号
シーケンス番号(16):断片化(分割)されたデータを示す番号。順序制御に使用。
確認応答番号(32):データを受信したことを通知、次に受信したいシーケンス番号を通知
データオフセット(32):TCPヘッダは可変長。この値でヘッダの末尾を認識、位置を判断
予約(6):将来の拡張用。未使用のフィールド。通常は0
制御ビット/コードビット(6):各ビットをフラグと呼び、様々な制御を行う
ウィンドウ(16):受信側で受信可能なバッファの大きさを送信側に通知。オクテット単位
チェックサム(16):TCPヘッダとデータ部のエラーチェック
緊急ポインタ(16):緊急処理が必要なデータの場所を示す。URGビットを1にする
オプション(可変長):必要に応じてオプションを追加
パディング(可変長):32ビットの倍数になるように0を挿入する
+制御ビット
URG(Urgent Pointer):緊急に処理すべきデータを含んでいることを示す
ACK(Acknowledgment):確認応答番号フィールドが有効であることを示す
PSH(Push):受信したデータをすぐにアプリケーションに渡す
RST(Reset):何らかの異常を検出、コネクションの切断を要求
SYN(Synchronize):コネクションの確立を要求
FIN(Finish):これ以上送信データがないため、コネクションの終了を要求する
+チェックサム
送信側でデータと一緒にチェックサムを送信、受信側で送られてきたデータから同じ計算をしてチェックサムと比較することで誤り判断、再送処理を行う。
+3wayhandshake
コネクションの確立は3回
切断は4回
+順序制御と確認応答
信頼性の確保のための制御機能
MSS(Maximum Segment Size)
1つのTCPセグメントで運ぶことのできるデータ量
順序制御
3wayhandshakeでは送受信両者の小さいほうのMSSを採用する。送信されるデータはMSSに分割し、複数のTCPセグメントとして送信する。ばらばらに分割されたデータはシーケンス番号によって再構成する。
再送制御
セグメントの破損などの際にTCPでは再送タイマーを設定、ある一定時間内に確認応答がない場合データを再送信する
ウィンドウ制御(フロー制御)
コネクションの確立するときにSYNセグメントを相手に通知、送信側は相手からの確認応答を待たずにTCPセグメントを送信することが出来る。
スライディングウィンドウ
ウィンドウサイズ拡張(RFC1323)
オプションの終了
TCPオプション・リストの終了を表す
NO-OP(NO-OPeration)
特別な意味を持たず、32bit単位にそろえるために1~3個利用される
選択的受信確認(Selective Acknowledgment=SACKという)
受信確認の応答アルゴリズムを最適化するために利用される。連続した領域でなく、部分的にACKを返すことにより、無駄な再送を防ぎ、転送効率を向上させることができる。RFC2018で定義されている
TCPタイムスタンプ
パケット中にタイムスタンプ(送信時間)情報を埋め込むために利用される。タイムスタンプ情報からパケットの往復時間(Round Trip Time)を計測し、TCPの再送タイマ・アルゴリズムの最適化を行う
・UDP(User Datagram Protocol)
コネクションレス型
UDPはポート番号でアプリケーションを識別してデータを渡すだけ
送信する単位はデータグラム
+UDPのデータフォーマット
送信元ポート(16):送信元のポート番号
宛先ポート(16):宛先のポート番号
長さ(16):UDPヘッダとデータ部の長さを合わせた値をオクテットで表したもの
チェックサム(16):UDPヘッダとデータ部のエラーチェック
UDPではTCPと比べオーバーヘッドが小さい
データ回復機能なし
ストリーミングで使用
・DHCP(Dynamic Host Configuration Protocol)
IPアドレスの設定情報を自動で取得する
DHCPのポ-ト番号はサーバ側(67)とクライアント側(68)がある
IPアドレスの管理作業を簡素化できる
OS起動後に割り振られる
UDPで動作
DHCPサーバ:設定情報を管理してDHCPクライアントに情報を配信する
クライアントサーバモデル:分散処理を行うネットワーク形態のひとつ
クライアントがサーバにサービスの要求を行い、サーバがクライアントに処理結果を応答して返す
DHCPサーバからIPアドレスをリースする
リース期限がある
これはIPアドレスの占有を防ぐため
スイッチをDHCPサーバにすることもできるらしい
DHCPの動作
DHCP DISCOVER(ブロードキャスト):LAN内のDHCP SVを探す
DHCP OFFER(ユニキャスト):全DHCP SVが反応
DHCP REQUEST(ブロードキャスト):ここに決めたと全ノードに連絡
DHCP ACK(ユニキャスト):アドレスを提供する
ブロードキャストはルータを超えないが
DHCPリレーエージェントの設定を使用するとルータを超えてブロードキャストが可能となる
アドレスプールの範囲から割り当てられる
あらかじめ決まったアドレスを固定で割り当てる
DHCPはBOOTP(Bootstrap Protocol)を拡張したプロトコル
BOOTP(RFC951)
DHCP(RFC2131,2132)
・DNS(Domain Name Sysetem)
ホスト名(ドメイン名)からIPアドレスを検索する仕組み。名前解決を行うプロトコル
ドメイン名は「.」で区切られたラベルで構成され最大63文字、ドメイン名全体では255文字以下で中ればいけない。英字、数字、ハイフンが使用でき、大文字と小文字の区別はない
トップレベルドメイン(TLD)(第一レベルドメイン)
セカンドレベルドメイン(SLD)(第二レベルドメイン)
一番左はホスト名
ドメイン名を省略しない文字列のことをFQDN(Fully Qualified Domain Name:完全修飾ドメイン名)という
ICANN(Internet Corporation for Assigned Names and Numbers):アイキャン
によって認定された組織(レジストリ)によってドメインの管理は任されている
jpドメインはJPNIC(日本ネットワークインフォメーションセンター)とJPRS(日本レジストリサービス)がレジストリになる
hostsファイル hostsファイルにホスト名とIPアドレスのマッピング情報を登録しておくと優先的に処理される
DNSサーバ
ドメイン名とIPアドレスの対照表を格納している
リゾルバ
IPアドレス情報を検索するプログラム
スタブリゾルバ
DNS内で完結する検索
フルサービスリゾルバ(再帰問合せ)
全てのDNSに聞きに行くこと
ローカルDNSサーバ
自社のサーバもしくはISPの管理しているDNSサーバ
ルートサーバ
最上位のDNSサーバ
ワイドプロジェクトWIDE
日本のルートディレクトリの管理を行っているらしい
ゾーン情報
ドメイン情報のこと
DNSはUDP,TCP両方を使用し、ポート番号は53
クライアントとDNSサーバ間UDP
DNSサーバ間TCP
DNSは運用の際、正と複を用意する
マスターDNSとスレーブDNS
(linuxの場合はバインドDNS)
更新作業の時には
NOTIFY(ゾーン転送通知)
AXFR(Asynchronous xfer) IXFR(Incrememtal xfer) xferはtransferの略語
(ゾーン転送)
が行われる
耐障害性
負荷分散のため
・HTTP(Hypertext Transfer Protocol)
webブラウザとWebサーバでのデータのやり取りをするためのプロトコル
ポート番号80
HTMLを転送する
GET
HEAD
POST
PUT
DELETE
HTTPリクエスト
リクエスト行
メッセージヘッダ
メッセージボディ
HTTPレスポンス
ステータス行
メッセージヘッダ
メッセージボディ
スキーム
スキーム独自部分
HTTPS
FTP
ちょっと今日は集中力が切れてしまったので後半は途中です。