1
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ネットワークスペシャリスト 学習

Last updated at Posted at 2024-04-12

ネスペ試験受験用。

Netwaork Interface 層 (フレーム)

NIC等のハードウェアを、OSが操作できるようにするデバイスドライバとしての機能を持つプロトコル層。

近年デバイスドライバは、OSに内蔵されてるため意識されないこともあるが、ハードウェアを操作するためには必ず必要。

通信媒体には、ツイストペアケーブル、同軸ケーブル、光ファイバー、電波、赤外線などがある。

Network Interface 層では、転送するデータの単位はフレームと呼ばれる。

フレームという言葉には、データを2進数で表現した連続する「0」「1」を意味のある枠(frame)で区切るというニュアンスがある。

OSI_network_interface.png

network_interface_frame.png

FCS

Frame Check Sequence

データに誤りや破損がないかを確認するための、送信フレームの末尾に付与される符号。

フレームとして表現される電気信号は、通信経路上で発生した電気的なノイズによって変化してしまうことがある。

電気信号の変化はすなわち「0」「1」の並びの崩れであり、元のフレームが別のフレームに変化してしまった(破損した)ことを意味する。

FCSには「フレーム全体を特定のビット列で割った余り」が格納される。この時に使用される「特定のビット列」を生成多項式という。

受信側て算出されたFCSと受信したFCSが一致すればフレームが破損していないことがわかる。

ADSL / ISDN

ADSL

Asymmetric Digital Subscriber Line

Asymmetric=非対称

メタル線(銅線)による電話回線(アナログ回線)の高周波数帯を利用して高速データ通信を行う技術。

下りのダウンロードと上りのアップロードにおいて通信速度が異なる。

ADSLがアナログなのに対してISDNでは、デジタル回線が利用される。

ADSLとISDNはどちらも、光回線が主流になったため、2024年にサービスが終了する。

ISDN

Integrated Services Digital Network

一つの回線で、音声、FAX、動画などの異なるタイプの通信を統合的に提供するための技術。

デジタル回線を利用して通信を行う。ADSLを代表するいわゆるアナログ回線からの移行を目的に開発された。

ADSLブロードバンドの一つであるのに対して、ISDNはナローバンドの一つ。

ADSLとISDNはどちらも、光回線が主流になったため、2024年にサービスが終了する。

ATM

Asynchronous Transfer Mode

広域通信網で利用される、データリンク層のプロトコルの一つ。

音声、動画、画像などの異なる形式のデータを非同期的に転送することができる。

5byteのヘッダと48byteのATMセルの計53byteで構成されるデータ単位により転送を行う。

データを細かく区切って転送することにより、回線交換方式のように回線を占有しないため、効率的な通信を行うことができる。

一方でデータの単位は固定長であり、パケット交換方式のように変動させることはできないため、回線交換方式とパケット交換方式の中間のような位置付けにある。

コネクション型のプロトコルなので、通信前にはコネクションの確立が必要になる。

比較的古い技術であり、Ethernetで用いられるCSMA/CDのような制御が行われないため、輻輳が発生する。ATMでは、この輻輳を防ぐために、細かく帯域を制御する方法が取られている。

また、ATMでは1フレームが53byteの固定長なのに対して、Ethernetでは1フレーム最大1500byteの可変長データが転送できる。通常、フレームの中には、上位層で使用されるプロトコル情報なども格納しなければならず、ATMのフレームからヘッダを除いた48byteの中には、それらを格納しながら送りたいデータも格納するだけのスペースがない(上位層のヘッダだけで48byte程度になってしまう)。このため、ATMではAAL(ATM Adaption Layer)と呼ばれる、IPとATMの中間に位置するプロトコルが同時に利用される。

AALを利用してATMを使用する場合、IPのパケットは最大192個のセルに分割される。このセルのうち、一つでも欠落が発生すると、192個のセルは全て再送が必要となるなど非効率な面がある。

一方TCPでは、データはセグメントに分割され、各セグメントにはシーケンス番号が割り当てられる。このシーケンス番号によって、欠落したセグメントのみが再送されるといった再送制御が行われる。

これらの違いにより、ATMは現代ではEthernetなどに置き換わり、一部でしか利用されていない。

CSMA方式

Carrier Sense Multiple Access

データの送信権を早い者勝ちで奪い取る方式。

CSMA方式ではないものには、トークンパッシング方式などがある。

CSMA/CA

CSMA / Collision Avoidance

CSMA方式を改良した、無線通信時に使用される通信の衝突防止の仕組み。

フレームを送信して良い状態(アイドル状態)かどうかを確認し、ランダムな時間(バックオフ)だけ待機してから送信を開始することで、衝突を回避する。

CSMA/CD

CSMA / Collision Detection

Ethernet有線通信)で使用されている、CSMA方式を改良した通信の衝突検知の仕組み。

フレームを送信する前に他のフレームが流れていないかを確認する。

送信時に他のフレームが流れていない場合でも、もし途中でフレームの衝突が発生した場合、送信を一時中断してランダムな時間が経過後に再びフレーム送信をやり直す。

フレームの衝突は、電圧が規定範囲外になったことによって検知する。

トークンパッシング方式

トークンと呼ばれるパケットを巡回させて送信の権利を制御する方式。

トークンを持つステーションだけがデータを送信することができ、データを受信したステーションは、受信フラグを設定する。トークンが1周回って、受信フラグを受け取った送信ステーションは、トークンを手放す。

Data Channel

データの通り道のこと。

Ethernet

有線LANで広く使用されている、データ通信用の規格の一つ

OSI参照モデルにおける物理層とデータリンク層の仕様から構成される。

EthernetはLAN内でのコンピュータ同士の通信に使用され、光ファイバーや専用線、またはVPNなどの形態で広域ネットワークに接続されることもある。

1フレームで最大1500byteのデータ(MTU)を転送できる。

以下は Ethernet で決められているフレームの形式。

network_interface_frame.png

Fiber Channel

ファイバーチャネル。

光ファイバーによるData Channel。コンピュータとストレージを光ファイバーで接続するための規格の一つ。

SCSIに近い仕組みを持ち、主にSANを構築するために利用される。

SAN

Storage Area Network

主に業務用の大規模システムなどで使用される、ストレージ専用のネットワーク。

通常、1台のサーバには1台のストレージが接続されることがほとんどだが、SANでは複数のストレージが接続される。LANとは独立して管理されるため、余計な負荷がなく高速に伝送を行うことが可能。

クライアントからは直接接続されたハードディスクのように、SAN上のストレージにアクセスすることができる。

SCSI

Small Computer System Interface

スカジー。

コンピュータと周辺機器を接続するための古い規格の一つ。複数の規格の総称。

元々はSCSIではパラレル(並列)方式のみが用いられていたが、業界全体がシリアル(直列)方式による伝送が主流になるのに従い、SCSIでもシリアル方式を用いる規格が登場したため、現在では両者の規格の総称という位置付けなっている。(パラレルの方が速いように思えるが、高速になればなるほど複数の通信路間でタイミングを合わせることが困難になると言う技術的障壁が高くなる)

USBは一般家庭でよく見かけるのに対して、SCSIは商用、業務用途、サーバなどの機器周辺で利用されていることが多い。

USBはマウス、キーボード、外付けHDD等、さまざまなデバイスを接続できホットスワップ機能を持つのに対して、SCSIは接続できる機器がやや特化していて(主にストレージ)、ホットスワップ機能を持たない。また、USBよりも高速、高価という特徴がある。機器ごとにSCSI IDが割り振られている。

iSCSI

アイスカジー。

SCSIを TCP / IP ネットワーク上で利用するための規格。

ストレージとの物理的SCSI接続がネットワークを経由して行うことができる。

SCSIのコマンド、データをパケットに含めることで、これらを経由せずに直接、ストレージに接続することができるようになる。

ホットスワップ

機器の電源を入れたまま、ケーブルを抜き差しして交換することができる機能のこと。

ホットスワップ非対応の機器では、ケーブルの抜き差しを機器の電源を落としてから行わなければならない。

FTTH

Fiber To The Home

光ファイバーによる通信サービスのこと。

ONU(Optical Network Unit:光回線終端装置)によって、光を電気信号に変換して利用する。

HDMI

High-Definition Multimedia Intaeface

映像と音声をでデジタル信号で伝送できるインターフェース規格の一つ。

ディスプレイとの接続でよく用いられる。

IEEE1394

FireWire、i.Linkとも呼ばれる。

コンピュータと周辺機器を接続するための規格の一つ。

InfiniBand

インフィニバンド。

大規模システムで利用される、コンピュータとストレージ、サーバー同士の接続に用いられる超高速なインターフェース規格の一つ。

信頼性も高く、低遅延かつ低価格。

NIC

Network Interface Card

ネットワークに接続するためのインターフェースとしての機能を持つ物理的なハードウェア。

拡張カード型や、USB型があり、ネットワークアダプタ、LANアダプタ、Ethernetアダプタなどと呼ばれることもある。近年では、コンピュータに内蔵されて拡張カード型でなくなっていることが多い。

NIC.png

チャネルボンディング

Channel Bonding

複数の物理的なNICを論理的に束ねて扱うことによって、帯域幅を増やして通信の高速化を図る技術。

NICチーミング(teaming)、アダプタチーミングとも呼ばれる。

MAC address

Media Access Control address

データリンクに接続しているノードを識別するための48bitの識別番号。

複数のポートがある機器は複数のMACアドレスを保持する。また有線・無線を併せ持つ機器も、有線LANポート用・無線LAN用それぞれのNICごとに1つずつ割り当てられている。

世界中で重複しない一意の値を割り振るのが原則だが、技術的には書き換えることも可能。

また、1~24bit目まではOUI(Organizationally Unique Identifier。ベンダ識別子)と呼ばれる製造メーカーごとの数字が割り当てられている。OUIはIEEEが割り当てを行い、25~48bit目の機器コードは各製造メーカーが割り当てを行う。

Windowsではipconfig /all、MacではSystem Settings → Wi-Fi → Advanced → Wi-Fi MAC addressから確認することができる。

MTU

Maximum Transmission Unit

1度に転送できるデータサイズ。

PLC

Power Line Communications

電力線通信。電力線を通信回線として利用するための技術。

電気のコンセントとPCをPLCモデムに繋ぐことにより数百Mbps程度までのデータ通信が可能。

PoE

Power over Ethernet

LANケーブル(Ethernetケーブル)によって電源供給ができる機能。

ストレートケーブル / クロスケーブルの①〜⑧のピンのうち、使用されている①②③⑥番を使用するTypeAと、未使用の④⑤⑦⑧番のピンを使用して電源供給を行うTypeBがある。TypeBが広く普及している。

POS

Packet over SDH/SONET

光ファイバー上でSDHSONETなどの同期通信技術を利用して、パケットによる通信を実現する技術。

主にISPや通信事業者などのインフラで使用される。

SONET / SDH

Synchronous Optical Network / Synchronous Digital Hierarchy

同期光ネットワーク / 同期デジタル階層。

デジタル信号を多重化することで高速に通信するための規格の一つ。

ほとんどの長距離ネットワークで使用されている主要な技術。光ファイバーによる複数の光通信回線を束ねることで、1本の基準となる伝送速度を倍量(べき乗)にすることができる。これを多重化と言う。

米国で作られたSONETであり、国際的に標準化されたのがSDH。両者には互換性があり、また両方の技術をサポートした製品が多く、パッケージにはSONET / SDH と表記される。

PPP

Point to Point Protocol

2台の機器間で、仮想的な専用回線を確立して1対1で通信を行うためのデータリンク層のプロトコル。

古いプロトコルである SLIP(Serial Line Internet Protocol)の課題を克服したプロトコルで、通信相手をユーザ名とパスワードにより認証する機能、暗号化する機能などを持つ。認証にはCAPPAPが利用される。

ISPが提供するモデムを介したダイアルアップ接続FTTHなどの高速なブロードバンド接続まで、現在幅広く使われている。

PPPoE

PPP over Ethernet

PPPの機能を、Ethernetを通じて実現したもの。

一般家庭でインターネットを利用する際に、ブロードバンドルータとISP施設の機器間の通信で利用される。

Ethernetが持っていないコネクションの確立や切断、さらには認証機能を持つ。認証機能は、ISPへのユーザ認証として利用される。

CAP

Challenge Authentication Protocol

PPPなどで利用される認証方法の一つ。

パスワードが平文のままではなく、ハッシュ化された状態で転送される。

PAP

Password Authentication Protocol

PPPなどで利用される、ネットワークへの接続時に利用される認証プロトコルの一つ。

STP

Spannig Tree Protocol

spannig=広がる、及ぶ、横断する

スパニングツリープロトコル。

スイッチが円環状(リンク)に接続された構成が存在するセグメント上で、フレームがループする現象を回避するためのプロトコル。フレームがループする現象は、ブロードキャストストームとも呼ばれる。

スイッチのループ構成は設計ミスによって意図せず発生してしまうこともあれば、冗長性を高める目的であえて採用されることもある。この場合、通常時のループはSTPによって回避され、故障時は冗長化させておいた経路に迂回するように自動で切り替わるため、可用性が高まる。

ループの検出はBPDU(Bridge Protocol Data Unit)と呼ばれる特殊なフレームによって行われる。(ここでのブリッジ=スイッチと同じ意味。以降の説明でも同様)

スイッチのSTP設定が有効化されると、各スイッチは一定時間ごとにBPUDを送信するようになる。BPUDにはルートブリッジのIDや、BPUDを送信したスイッチのIDなどの情報が含まれている。

ルートブリッジとは、セグメントごとに1台のみ選ばれる特別なスイッチのことで、各スイッチの優先度によって自動選出される。優先度が等しいスイッチ同士の場合は、MACアドレスの小さい方がルートブリッジになる。

セグメント内のスイッチは、受信したBPDUを使用してネットワークのトポロジを計算する。トポロジが把握されるとルートブリッジと各ポートとの距離もわかるため、これによって各ポートには適切な状態が設定される。

スイッチのポートは以下の4つの状態の間を遷移している。

  • ブロッキング:フレームを転送しない(BPDUを除く)状態
  • リスニング:状態を確認中
  • ラーニングトポロジの計算中
  • フォワーディング:フレームを転送する状態

ネットワークに接続した直後は、トポロジの把握、各ポートへの状態設定処理に時間がかかる。これは、STPのデメリットとして挙げられる。

ループ構造の無いセグメントでは、ルートブリッジから届くBPDUは必ず一方向からの受信になる。一方ループ構造がある場合、ルートブリッジが送信したBPDUは複数の方向(ポート)から届くため、これによりループが発生していることを検知できる。ループが検知されると、スイッチは適切なポートをブロックする。

bpdu.png

STP : 帯域幅は増やせない。障害時にトポロジの再計算が必要。
リンクアグリゲーション : 帯域幅を増やせる。障害時の計算が必要ない。

トポロジ

Topology

ネットワークの構造、配置の形態のこと。

一般的なネットワークトポロジには以下のようなものがある。

toporogy.png

VLAN

Vertual LAN

スイッチングハブが持つ機能で、仮想的なLANを構成する仕組みのこと。

物理的な一つのセグメントを論理的な複数のセグメントに分割することができる。

ソフトウェアでセグメントを制御することができるため、ネットワーク構成に変更があっても、物理的な新たなスイッチングハブ、配線を行う必要がない。セキュリティやトラフィックの効率化のためにも使用される。

ポートをもとにグループ化を行うポートベースVLANと、フレームにタグIDを埋め込むことによってグループ化を行うタグVLANがある。タグVLANはIEEE802.1Qで規定されている。

ポートベースVLANでは一つのポートに対して一つのVLANグループしか紐付けできないのに対して、タグVLANでは一つのポートに対して複数のタグを設定できる。つまりタグVLANでは、1本の物理的接続から複数のVLANを構成することができる。

network_interface_frame_vlan.png

ダークファイバー

NTT東・西日本、鉄道会社、電力会社などが敷設した光ファイバーケーブルのうち、使用されていないものを借り受けて提供されるサービス。

ツイストペアケーブル

8本の銅線から構成される通信媒体の一つ。実際には2本ずつよじって4対にしてある。

伝送するのは電気信号

多くのLAN接続に利用されることから、LANケーブルと言えば、実際にはツイストケアケーブルを指していることが多い。

8本の動線は、コネクタ部分の8つのピンと繋がっている。

規格上、100メートルが最大ケーブル長とされ、それ以上の距離間ではリピータハブ(バカハブとも呼ばれる)などを中継して利用される。ちなみに光ファイバーケーブルの最大ケーブル長は数十キロメートルと言う距離感。

銅線がシールドに覆われているかどうかで、STPケーブルUTPケーブルに分類される。

また、コネクタ部分のピンに対して銅線がどのように接続されているかによって、ストレートケーブルクロスケーブルに分類される。

STPケーブル

Shielded Twisted Pair ケーブル

ツイストペアケーブルの一つで、2本の銅線がシールドに覆われているタイプ。

ノイズに強い。高価。

UTPケーブル

Unshielded Twisted Pair ケーブル

ツイストペアケーブルの一つで、銅線がシールドに覆われていないタイプ。

ノイズに弱い。安価。広く普及している。

ストレートケーブル / クロスケーブル

ツイストペアケーブルの分類の一つ。

ストレートケーブルは、ケーブルのコネクタ部分にある①〜⑧番までのピンが、内部で交差しない。

①〜⑧番の各ピンは、送信用、受信用、未使用のいずれかの目的で利用される。ストレートケーブルでは、送信側の①番から送られた信号は、受信側でも同じ①番に届く。

straight_cable.png

一方、クロスケーブルは内部で①〜⑧番の銅線が交差していて、①番から送信された信号は受信側の③番に届く。

cross_cable.png

ツイストペアケーブルが接続されるPC、プリンタ、ルータ、スイッチングハブは、ポート①〜⑧番の配置の違いによってMDI(Medium Dependent Interface)とMDI-X(MID Crossover)に分類される。

一般的に、PC、プリンタ、ルータはMDIに分類され、スイッチングハブはMDI-Xに分類される。

MDIとMDI-Xは下の図のように①〜⑧のポートの配置が異なる。異なる種類のポートを持つ機器同士の接続にはストレートケーブルが使用され、MDI-Xポートを持つ機器同士の接続や、MDIポートを持つ機器同士の接続にはクロスケーブルが使用される。

mdi_mdix.png

本来は接続する機器のポートがMDIなのか、MDI-Xなのかによって、ストレートケーブルとクロスケーブルを使い分けなければならないが、近年(2000年以降くらい)の機器(PC、ルーター、スイッチングハブ)のほとんどは自動的にそれらを切り替えることができる Auto MDI/MDI-X 機能 を持つため、特に意識されることがなくなった。ストレートケーブルでもクロスケーブルでも良いということになるが、一般的にはストレートケーブルが使われる。また、市販されているLANケーブルはストレートケーブルであることがほとんど。

光ファイバーケーブル

光ファイバーを使用して作られたケーブル。

ツイストペアケーブルでは電気信号を伝送していたのに対して、光ファイバーケーブルが伝送するのは光信号

ツイストペアケーブルに比べて高速で、長距離(最大40km)でも通信ができる。

コアと呼ばれるケーブル中央の光の通り道と、光が外に漏れないようするクラッドと呼ばれる覆いから構成される。

コアの太さの違いなどからシングルモードマルチモードに分類される。

シングルモードの光ファイバーは、コアが細く、光の通り道が一つ。安定した通信が可能で、長距離向きで海底ケーブルにも使用される。

一方、マルチモードの光ファイバーは、コアが太く、光の通り道が複数ある。シングルモードのような長距離向きではないものの、曲げに強く比較的安価であることから短距離・中距離間通信で広く使用される。

シングルモード : 光の通り道が一つ。安定していて高価。長距離向き。
マルチモード : 光の通り道が複数。まげに強くて安価。短・中距離向き。

同軸ケーブル

ツイストペアケーブルや光ファイバーなどと同じ目的で使用される通信媒体の一つ。

スイッチ / ハブ

ネットワークの中継装置。ブリッジとも呼ばれる。

ハブは受信したフレームをすべてのポートに転送するシェアードハブと、特定のポートにだけ転送を行うスイッチングハブに分類される。

スイッチングハブは単にスイッチとも呼ばれる。

シェアードハブは、機能が単純なことからバカハブリピータハブとも呼ばれる。

スイッチングハブは、特定のポートにだけ転送を行うために、どのポートがどの端末と接続されているかの情報をMACアドレステーブルとして保持している。

間違えやすい点
MACアドレステーブル:スイッチングハブのポート番号と、そのポートに接続された端末のMACアドレスの対応表
APRテーブルIPアドレスと、そのIPアドレスを持つ端末のMACアドレスの対応表

スタック

複数のスイッチングハブを仮想的に1台のように扱うこと。

複数のスイッチングハブがスタックケーブル、もしくは別の方法によって接続され、1つのIPアドレスを利用することによって実現する。

本来は足りなくなったポートを拡張するための技術だが、スイッチングハブの冗長化のためにも利用される。

リンクアグリゲーションと組み合わせて使用されることがある。

リンクアグリゲーション

aggregation=集約

複数の物理的回線を論理的に1本に束ねて扱う技術。

チャネルグループポートトランキングとも呼ばれる。(Cisco社製品ではFEC(Fast Ether Channel)、GEC(Gigabit Ether Channel)とも呼ばれる)

帯域が広くなり、回線の冗長化を行うことができる。

回線を冗長化するという意味ではSTPという選択肢もあるが、リンクアグリゲーションは帯域幅を増やして通信を高速化することができる点と、障害時の再計算処理が不要な点がSTPには無いメリットになるため、実際にはリンクアグリゲーションが採用されることが多い。

スタックと組み合わせて使用されることがある。

STP : 帯域幅は増やせない。障害時にトポロジの再計算が必要。
リンクアグリゲーション : 帯域幅を増やせる。障害時の計算が必要ない。

無線通信

無線通信は規格ごとに技術的な通信可能距離がある程度決まってしまう為、おおよその通信距離による分類ができる。

通信距離(およそ) 技術名称
数m RFID
10m Bluetooth
100m Wi-Fi
数km~100km WiMAX

このほかにも、技術世代による3G、4G(LTE)、5Gという分類もある。

Bluetoothでは、2.4GHz帯が使用される。

Wi-Fi

Wireless Fidelity

無線LAN技術を実装した製品やシステムのブランド名。ほぼ無線LANと同義で使われる。

Wi-Fi Allianceという業界団体によるテストに合格した製品だけがロゴマークが使用できる。この認証制度によって、異なるメーカーの製品同士の互換性が保証される。

IEEE802.11b、IEEE802.11g、IEEE802.11a、IEEE802.11n、IEEE802.11acなどの規格がある。これら規格同士には互換性が無い。

暗号化の方式にはWEPWPAなどがある。

WEP

Wired Equivalent Privacy

無線通信IEEE 802.11bにおける暗号化技術。

暗号の解読ツールが存在するため、現在では使用してはいけない。

WPA

Wi-Fi Protected Access

WEPの脆弱性を克服する暗号化の規格。

暗号化のアルゴリズムにTKIPを使用するWPAと、AESを使用するWPA2がある。

WPA-PSK、WPA2-PSKのPSKはPre Shared Key(事前共有鍵)のこと。

Hotspot

周囲に比べて、特に何かが集中して分布している地点を指し、転じて、無線LAN(Wi-Fi)に接続可能なエリアを指す。

SSID

Service Set Identifier

無線LAN(Wi-Fi)ネットワークにおいて、ユーザが接続しようとしているAP(無線アクセスポイント)を識別するための識別名。

ASCII文字によって構成され、最大32文字設定することができる。

MIMO

Multiple Input Multiple Output

複数のアンテナが同じ周波数で複数の信号を送受信することにより、無線通信の高速化を図る仕組み。

チャネルボンディングは帯域幅を束ねることで高速化を実現する。

Internet 層 (パケット)

Internet層は、ルーティング(経路制御)によってパケットを目的のホストまで送り届ける役割を持つ。

送信元や宛先の機器がEthernetATMPPPなど、それぞれ異なる種類のデータリンク層プロトコルで構成されていても、それらの違いを覆い隠して(ラップして、吸収して、もしくは抽象化して)パケットを送り届けることができる。

ルーティングにはStaticルーティングDynamicルーティングがある。

Staticルーティングでは人間が手動でルーティングテーブルを設定するのに対して、Dynamicルーティングでは設定しておいたプロトコル(RIPOSPFなど)に従って自動でルーティングテーブルが作成される。

また、ルーティングのためのプロトコルにはAS間のルーティングを行うEGPと、AS内のルーティングを行うIGPという分類がある。

ルーティングのアルゴリズムには、大きく分けてDistance Vector型Link State型がある。(Path Vector型というものもある)

Distance Vector型では、それぞれのルータが、自分自身から目的のIPアドレスまでの距離(distance)、方角(vector)を保持するのに対して、Link State型では、各ルータがネットワーク全体の状態(state)に関する同じ情報を保持している。

OSI_internet.png

internet_packet.png

IPパケットは最大 1500 byte

プロトコル番号 プロトコル名
1 ICMP
6 TCP
17 UDP
41 IPv6
50 ESP
89 OSPF
112 VRRP

ARP

Address Resolution Protocol

アープ。

IPアドレスを手がかりにMACアドレスを取得(解決:Resolution)するためのプロコトル。

通信したい相手の宛先IPアドレスまではわかるが、MACアドレスがわからないというシチュエーションで利用される。ARPが動的に行われることでMACアドレスを意識する必要がなくなる。

IPv4で使われるプロトコルであり、IPv6ではICMPv6が使用される。

ARPではまず、ARP要求と呼ばれるパケットが送信される。

ARP要求はブロードキャストで送信されるため関係のない端末にも届いてしまうが、その場合には受信後に破棄される。

目的のIPアドレスを持つホストがAPR要求を受け取った場合、MACアドレスを知らせる応答が返却される。

一度取得されたMACアドレス情報はARPテーブルにキャッシュされて再利用される。機器の入れ替えがあった際にも対応できるよう、キャッシュされたAPRテーブルは一定時間経過後に削除される。

ARPテーブルの情報は、arp -aコマンドで確認することができる。

間違えやすいポイント
MACアドレステーブル:ポート番号とMACアドレスの対応表(スイッチ
APRテーブル:IPアドレスとMACアドレスの対応表

RARP

Reverse ARP

ARPと逆で、MACアドレスからIPアドレスを取得するためのプロトコル。

DHCPに対応していない古い組み込み機器を使う際など、自身のIPアドレスを知らないホストがそれを取得するために利用する。

RARPサーバにIPアドレスとMACアドレスの対応を登録しておき、RARPサーバに問い合わせを行う。

Gratuitous ARP

gratuitous=余計な、根拠のない、無償の

自身のIPアドレスに紐づくMACアドレスを取得しようとするARP要求のこと。

自分の使用しているIPアドレスを他社も利用していないか、重複していないかを確認するために利用される。

Gratuitous ARP要求への回答があった場合、回答した端末とIPアドレスが重複していることになる。

また冗長化されたネットワーク構成において、バックアップ用の機器がスタンバイからアクティブに昇格した際に、周囲に自身のMACアドレスを通知してARPテーブルを更新させるためにも使用される。

Proxy ARP

リモートネットワークに存在する特定のホストに対して、ローカルネットワーク内のデバイスがARP要求に代理応答する機能。

ARPは通常、ブロードキャストを使用して同じセグメント内でIPアドレスとMACアドレスの名前解決を行う。

それに対して Proxy ARP は、異なるセグメント(リモートネットワーク)にある(ブロードキャストが届かない)ホストのMACアドレスを取得するために利用される。これによって異なるセグメント間での通信が可能になる。

通常、別セグメントへ送りたいパケットはスイッチが持つルーティングテーブルによって転送されるが、Proxy ARP を利用することでルーティングテーブルを使わずに通信することができるようになる。

Proxy ARPではセグメント間を中継するルータがARPを中継し、目的のホストのMACアドレスを代理回答する。

この動きによって、分断されていたセグメント同士で通信を行うことが可能になる。

AS

Autonomous System

直訳は「自律システム」。

各主体(国、地域、組織などのネットワーク管理者)が管理する、または管理できるネットワークの範囲や管理単位を表す概念

インターネットは国、宗教、言葉、文化の異なる地域・国または組織が共有して利用するネットワークであり、大きく俯瞰して観るとインターネット自体が一つのネットワークであるとも言える。

ただ実際には国ごとの運用・ルールが存在し、組織や会社ごとでも運用ルールが決められている(ある国では特定のサイトが見れないなど)。この時の運用・ルールを適用する範囲をAS、またはRouting Domain(経路制御ドメイン)と言う。ISPもASの一つ。

AS内では、管理者が独自のポリシー、設定に基づいて経路制御を行う。これによりインターネット全体でルーティングをするのではなく、階層的にルーティングを効率よく行うことができるようになる。

ASは自己完結型のネットワークなので、他のASとは独立して運用され、大規模なネットワークをより効率的に管理するためのBGPにおいて、経路情報を管理するためにも利用される。

AS番号はIANAによって割り振られる。

EGP

Exterior Gateway Protocol

異なるASで利用されるルーティングプロトコルの分類名。

具体的にはBGPというプロトコルがEGPに分類される。

IGP

Interior Gateway Protocol

ASで利用されるルーティングプロトコルの分類名。

具体的にはRIPOSPFなどのプロトコルがIGPに分類される。

EGP - AS間のルーティングで利用 - 具体的にはBGP
IGP - AS内のルーティングで使用 - 具体的にはRIPOSPF

NOC

Network Operation Center

ノック。ネットワークの監視、障害時の対応、管理を行うための施設。

インターネット上のある地域のネットワークと別の地域のネットワークはNOCによって接続される。

通常、ISPなどによって専門のスタッフが常駐して24時間稼働している。

IX

Internet Exchange

インターネット上にある複数の事業者の回線を、相互接続するためのハブ(スイッチ)のような役割を持つ施設。

一箇所の施設に複数の回線事業者が相互接続し合うことで、個々の回線事業者同士がそれぞれ契約したり物理的回線を敷設したりする手間を省くことができる。

全体像

AS_2 (1).png

BGP

Border Gateway Protocol

EGPに分類される、異なるAS間のルーティングを行うためのプロトコル。

Path Vector型のアルゴリムによりルーティングを行う。

ASとは概念のことで、具体的にはISPのことを指すため、ISP間の接続に利用されるルーティングプロトコルとも言える。

AS番号を利用したルーティングが行われる。目的地までに経由するAS番号の一覧は、AS Path Listと呼ばれる。

基本的には、経由するASの数がより少ない経路が選択され、このアルゴリズムはPath Vector型に分類される。AS Path Listに、もし自身のAS番号が含まれていたらループが発生していることになるので、RIPで発生するようなループを回避することができる。

物理的には回線が存在していても、目的地までに経由するAS同士が契約していない場合、目的地との通信が成立しないこともある。

EGP (1).png

EGPにおいて、ルーティング情報を交換するルータをBGPスピーカと言う。ルーティング情報交換のためにはBGPコネクションが使用される。

RIP

Routing Information Protocol

IGPに分類されるルーティングプロトコルの一つ。

Distance Vector型のアルゴリズムによってDynamicルーティングを行う。

RIPでは、30秒ごとに自身の知っている情報をブロードキャストで送信することで経路情報(ルーティングテーブル)が構築されていく。

ルーティングテーブルには、IPアドレスに加えてホップ数と呼ばれる経由するルータの数が記録され、ルーティング時には、より少ないホップ数で目的地まで辿り着こうとする。

  • 動的にルーディングを行う反面、経路の変更に時間がかかる
  • ホップ数が最大15と定められているため、大規模なネットワークに適さない
    • ルーティングテーブル構築後に接続が切断された場合、無限カウント(Couting to Infinity)と呼ばれる異常が発生してしまうため、上限数が決められている
    • 無限カウントを防ぐためにスプリットホライズン(Split Horizon)と呼ばれる、経路情報を教わったルータに対しては、逆に自身からは教えることをしないという制御もある
  • 経路上の回線速度を考慮できない(より速い方の回線を選択するというアルゴリズム的な判断ができない)

というデメリットにより、現実的にはほとんど利用されていない。実際の運用では、RIPではなくOSPFが利用されていることが多い。

RIP2

Routing Information Protocol version 2

RIPの改良版プロトコル。

RIPではブロードキャストで送信されていた情報が、RIP2ではマルチキャストで送信される。

RIPng

Routing Information Protocol next generation

IPv6で使用されるルーティングプロトコル。RIPのIPv6版。

OSPF

Open Shortest Path First

IGPに分類される、Dynamicルーティングを行うためのプロトコルの一つ。現在広く利用されている。

Link State型のアルゴリズムによってルーティングを行う。(同じくIGPに分類されるRIPはDistance Vector型)

OSPFでは、ネットワークはエリアと呼ばれる単位に分割される。

各エリア内のルータ(内部ルータ)は、基本的にはエリア内のルーティング情報しか持たず(エリア外の情報は最小限しか持たない)、エリアとエリアの境界に位置するルータ(ABR:Area Border Router)が各エリアに関するルーティング情報を保持している。

エリア内と、境界のルータがそれぞれ役割を持つことで、全体としては効率的なルーティングを行うことができ、大規模なネットワークにも利用することができる。

OSPFはAS内でルーティングを行うため、IGPに分類される。他のASと接しているルータをASBR(Autonomous System Boundary Router)と言う。

内部ルータ:エリア内のルータ
ABR:エリアの境界にあるルータ
ASBR:ASの境界にあるルータ

番号が0のエリアは必ず必要で、バックボーンエリアと呼ばれる。バックボーンエリアは、他の全てのエリアと隣接させる必要がある。

OSPF_1.png

OSPFでは、ルータはLSA:Link State Advertisementと呼ばれるルーティング情報を交換し合い、データベースに情報を集約させている。このデータベースは、LSDB(Link State Database)と呼ばれる。

LSA:ルーティングに必要な接続の状態(link state)情報
LSDB:LSA情報を集約したデータベース

LSAの交換は全てのルータが行っているわけではなく、他のルータを代表してDR(Designated Router)とBDR(Backup Designated Router)が行う(Designated=指定された、任命された)。

DRとBDRはエリア内に一つではなく、セグメントごとに一つ。エリアは複数のセグメントを含むこともあるため、エリア内にDRとBDRが複数存在することもある。

どのルータをDR、BDRにするか任命は、各ルータのPriority(優先度)を基に行われる。Priorityが最も高いルータがDR、次に高いルータがBDRとなる。一度任命された後に、任命されたDRよりもPriorityの高いルータが追加されてもDRは変更されない。

DR・BDR:他のルータを代表してLSAを交換するルータ

LSAには、

  • 隣接するルータ(Neightboring Router。別の文脈ではネクストホップ。)がどのネットワークに接続しているか
  • どのくらいのコストのルートなのか

などの情報が含まれる。

コストは、各接続(link)に対して自由に値を設定できる。

通常、回線速度が速い link に対しては小さいコストが設定され、遅い link に対しては大きいコストが設定される。ルーティングはコストの合計値が最も小さくなるようなアルゴリズムになっているので、このような設定によって、より速いルートを選択することができる(RIPではホップ数が小さくなるようにルーティングが行われる)。

ホップ数はルータを一つ経由する度に必ず「1」増えていくが、コストは任意の値を自由に設定することができるため、管理者にとってはRIPよりも柔軟な運用ができる。2台のルータにあえて同じコストを設定して負荷分散させることもある。

CIDR

Classless Inter Domain Routing

サイダー。ほぼサブネットマスクと同義。

IPv4において、クラスA・B・Cの区分にとらわれず、ネットワークアドレス部とホストアドレス部を任意のブロック単位に区切ること。

クラス分けは歴史的に古い方法であり、有限なIPアドレスを有効に割り振れていなかったことから、サブネットマスク、CIDRのような考え方が生まれた。

ICMP

Internet Control Message Protocol

pingコマンドに代表されるIPに関するトラブルシューティング用のプロトコル。

設定が正常に完了したかを知るためや、異常が発生したこと、異常の原因を調べるためなどに利用される。

tracertコマンド(Linux系OSではtracerouteコマンド)もある。

トランスポート層に分類されるプロトコルであるが、ネットワーク層で動作するやや特殊なプロトコル。ICMPパケットは、下位のネットワーク層のIPによって運ばれる。

L3ヘッダー(ネットワーク層で付与される)には、送信元IPアドレス、宛先IPアドレス、プロトコル番号等が格納されているが、その中のプロトコル番号には、ICMPの場合 1 が格納される。ちなみにTCPの場合は 6 、UDPの場合は 17 なので、このことからも、ICMPがTCPUDP同様にトランポート層のプロトコルであることがわかる。

しかし、ICMPは実際にはネットワーク層で動作する(非常にわかりづらく混乱する部分)。ICMPにはトランスポート層のTCPUDPのようなデータ転送機能がなく、ペイロードに格納されているのはICMPメッセージ。ICMPの目的はデータの転送ではなく、ネットワークの状態を知る、つまりネットワーク層の機能を補完することにことにある。これらのことから、ICMPは他のプロトコルと比べてやや特殊な位置付けにあると言える。

ICMPパケットにはタイプとコードと呼ばれるフィールドが存在する。

ICMP.png

タイプ 概要 詳細
0 Echo Replay
(エコー応答)
pingで利用される
3 Distination Unreachable
(到達不能)
コード0:Network Unreachable(宛先IPアドレスへの経路情報がない)
コード1:Host Unreachable:目的のホストがネットワークに接続されていない
コード4:Flagmentation Needed and Don't Fragment was Set(パケットの分割が必要だが、PMTUDによって分割禁止フラグが設定されている)
5 Redirect
(リダイレクト)
もっと良いルーティング経路があることを示す
8 Echo Request
(エコー要求)
pingで利用される
11 Time Exceeded
(時間超過)
TTLが0になったためにパケットが破棄されたことを示す

tracerouteの仕組み

tracerouteは、パケットが通過した経路上のIPアドレスを調べるためのコマンド。

TTLが1のパケットを流すと、隣接するルータからタイプ11(Time Exceeded)が返却される。TTLが2のパケットを流すと、隣接するルータのさらに隣接するルータからタイプ11(Time Exceeded)が返却される。これを繰り返すことで、経路を知ることができる。

traceroute.png

ICMPv6

ICMP for IPv6

IPv6向けのICMP。単にICMPといった場合、IPv4向けのICMPを指すことが多い。

ICMPが無くてもIPv4を使った通信が可能だが、ICMPv6がなければIPv6において通信を行うことはできない。

IPv4では、IPアドレスからMACアドレスを取得するプロトコルがARPだったのに対して、IPv6ではICMPv6に内包された。

タイプ0~127までがエラー情報、タイプ128~255までがエラー以外の情報となっている。

タイプ 概要 詳細
1 Destination Unreachable
終点到達不能
2 Packet Too big
パケット過大
3 Time Exceeded
時間超過
128 Echo Request
(エコー要求)
pingで利用される
129 Echo Replay
(エコー応答)
pingで利用される
133~137 近接探索メッセージ IPv6アドレスからMACアドレスを取得するために利用される

ICANN

Internte Corporation for Assigned Names and Numbers

アイキャン。IPアドレスを一元管理する組織。

日本国内ではJPINIC(Japan Network Information Center:ジェイピーニック)が管理している。

IPアドレスの申請はISPに対して行う。

IP

Internet Protocol

通信プロトコルの一つ。

転送データはパケットに分割され、それぞれのパケットが送信元・送信先IPアドレスを持つ。

データリンク層ではプロトコルごとにそれぞれ異なるMTUを持つが、それらの差異をインターネット層が吸収することで、上位層がMTUを意識せずデータを転送することができる。

個人的に、プロトコルとしてのIPは非常にふわっとしていて捉えどころがない印象。以下のキーワードを押さえておく。

  • IPアドレス
  • 経路制御(ルーティング)
  • パケットへの分割
  • PMTUD

IP datagram

インターネット層ではデータの転送単位はパケットと呼ぶが、正式には再送制御などが行われる信頼性の高いプロトコルにおける転送単位をパケット、制御が行われないプロトコルにおける転送単位をデータグラムと呼び分けることがある。

PMTUD

Path MTU Discovery

経路MTU探索。

送信元ホストから宛先ホストまでの経路上に存在するデータリンク層機器の全てにおける、最小のMTUのこと、もしくはそのMTUを調べること。

PMTUDでは、パケットへの分割処理がホストで行われ、近年多くのOSで実装されている(データ → パケット → データ)。

通常、データリンク層の機器には対応しているプロトコルそれぞれにMTUが存在する。MTU以上のサイズのデータを上位層(インターネット層)から送信した場合、データリンク層を通過するときにMTUへのパケット分割が必要になる。

しかし、パズルのように分割されたデータは、ピースの一つでも欠けてしまえばデータ全体が再構築できなくなるため、なるべく分割のせずに転送したい。

一方で、途中で分割が必要にならないように初めからMTUよりも大幅に小さな単位で送信することにした場合、データ全体を転送するためのパケット数が増えてしまうため転送効率が悪い。

そのため、通信経路上における最小のMTUを転送前に把握することが、一番効率の良いパケットサイズを決定する上で重要になる。

探索はIPヘッダに分割禁止フラグを設定したパケットを小さいサイズのMTU候補値から順に送信していくことによって行われる。

Routing Table

「このIPアドレス宛はこのルーター、このホスト」などという具合に、ルーターがパケットを転送するための経路制御表。

IPアドレスのうちのネットワーク部が利用される。

スタティックルーティングとダイナミックルーティングがある。

netstat -rもしくはnetstat -rnコマンドで確認することができる。

Mobile IP

スマホのように場所を移動しながら通信を行う際に、移動後の通信も同じIPアドレスを使用するための仕組み。

ホームエージェント外部エージェントが通信を中継することにより実現する。

ホームエージェントは非移動時に接続するネットワーク(ホームネットワーク)上で、移動するホストを監視する役割を持つ。

外部エージェントはホストが移動した先での通信をサポートする。

ホームネットワーク上で使用されるホストのIPアドレスはホームアドレスを呼ばれる。ホームアドレスは「戸籍」のように住所が変わっても変更されない。

スマホが通信を始めた送信時は

 通信相手 → インターネット → スマホ(移動前) 

という経路を辿るが、移動後の受信時は

 通信相手 → ホームエージェント → (インターネット) → 外部エージェント → スマホ 

というようにエージェントを経由して通信が行われる。インターネット上ではトンネリングが行われる。

この仕組みよって、通信相手側から見るとスマホは常におなじIPアドレス(ホームアドレス)を使っているように見える。

通信がエージェントを経由するため効率が悪い、外部エージェントが存在しない移動場所では利用できないなどの問題点もあり、これを克服したMobile IPv6というものがある。

MPLS

Multi-Protocol Label Switching

ルーティングに加えて、パケットにラベル(Label)を付与して経路制御を制御することで、通信を効率的に行うための技術。

MPLSにおける経路制御は、ラベルに基づいたフォワーディングテーブルが使用されるため、「ルーティング」ではなく、フォワーディングと表現される。

ただし、MPLS機能に対応したLSR(Label Switching Router)のみが処理を行えるため、インターネット全体で利用される技術ではない。

ラベルをつけ外しするルータをLER(Label Edge Router)と言う。

ラベルを用いて経路制御することで、制御が単純化されて高速になるという利点がある。

MPLS.png

NAT

Network Addess Translation

ナット。

プライベートIPアドレスとグローバルIPアドレスを1対1で変換する技術。IPv4におけるIPアドレスの枯渇問題へ対処するために開発された。

互換性がないIPv4とIPv6間で通信を行うために利用される事もある(NAT64/DNS64)。

異なるネットワーク間の境界にあるルータ、FW、ゲートウェイなどに実装され、インターネットとの境界でアドレス変換が行われる。(インターネット上の通信ではグローバルIPアドレスが必要)

サーバとして利用する端末が予備用、検証用、本番用など複数存在する場合、NATを使用することで、それぞれにプライベートIPアドレスを割り当てておき、外部公開されるグローバルIPアドレスは固定したままサーバを切り替ることができる。

外部からのアクセスは常に同じグローバルIPアドレスに対して行われるため、プライベートIPアドレスの変更が外部に対して影響を与えない。

プライベートIPアドレスとグローバルIPアドレスの対応表をNATテーブルという。

単にNATと言った場合、実際にはNAPTを指していることが多い。

ソースNAT

Source NAT、送信元NAT、SNAT

送信元IPアドレスをプライベートIPアドレスからグローバルIPアドレスへと変換する。

一般家庭などで、PCからインターネットへのアクセスなどで利用される(PCがグローバルIPアドレスを持たない場合)。

ディスティネーションNAT

Destination NAT、宛先NAT

宛先IPアドレスをグローバルIPアドレスからプライベートIPアドレスへと変換する。

インターネットからサーバへのアクセスで利用される。

NAPT

Network Address Port Translation

ナプト。

PAT、IPマスカレードと呼ばれる事もある。製品やメーカーによってはNAT+と表記されることがある。

アドレスの変換にポート番号を使用することで、グローバルIPアドレスを複数のプライベートIPアドレスに紐付けすることができる。ポート番号は 16 bit の整数で表現されるため、その範囲内で複数のプライベートアドレスを変換することができる。

プライベートIPアドレス、ポート番号、グローバルIPアドレスの対応表をNAPTテーブルという。

TCPの場合、コネクション確立のためのSYNパケットが転送されるタイミングでテーブルに追加され、コネクション切断のFINパケットが転送されるタイミングでテーブルから削除される。

会社では社員のPCはグローバルIPアドレスを持たず、プライベートIPアドレスしか持たないことが多い。このような場合に、社内ネットワークの各社員のPCからインターネットへの接続ではNAPTが利用されている。

モバイルルーターやスマホのデザリングでも利用される。

NAT64/DNS64

互換性がない IPv6 - IPv4 間で通信するための仕組み。

DNSNATの組み合わせにより動作する。

IPv6からIPv4に向けて通信する場合、IPv6を利用するホストからDNS64サーバへ問い合わせをすると、DNS64サーバからは特殊なIPv6アドレスが返却される。

このIPv6アドレスは64:ff9b::から始まり、末尾の4byteにはIPv4アドレスが埋め込まれている。

埋め込まれたIPv4アドレスはNAT64によって取得・変換され、実際のIPv4ホストに届けられる。

CGN

Carrier Grade NAT

一般家庭ではなく、ISPや通信キャリア級のレベル(Carrier Grade)で利用されるIPアドレスの変換技術。

LSN(Large Scale NAT)とも呼ばれる。IPv4からIPv6に移行するまでの繋ぎの技術として開発された。

 社員PC - 企業 - ISP - インターネット 

という構成で、社員PCだけでなく企業にもプライベートIPアドレスを使用させ、複数の企業間で一つのグローバルIPアドレスを共有させる。

プライベートIPアドレスは本来、重複の心配が要らないため自由に決めることができるが、ここで企業に割り当てることができるプライベートIPアドレスはREC6598によって定められている。これをシェアードIPアドレスと言う。

シェアードアドレスは重複が起こらないように範囲がRFC6598で決められている。日本には100.64.0.0/10が割り当てられている

この方式ではIPアドレスの変換が2段階で行われるため、NAT444とも呼ばれる。
 ISPのグローバルIPv4アドレス → 企業のIPv4プライベートアドレス → 社員PCのプライベートIPv4アドレス 

TTL

Time To Live

パケットの生存時間。ルータを経由するたびに1ずつ減っていく。

VRRP

Virtual Router Redundancy Protocol

複数のルータを論理的に1台に見せることで、ルータの冗長化をするためのプロトコル。

ルータ以外にもメールサーバの冗長化などにも使用されることがある。

デフォルトゲートウェイとして設定されたルーターなどは、1台が故障しただけで配下全てがインターネット接続できないなど、故障よる影響がとても大きい。VRRPはこのようなデフォルトゲートウェイの冗長化などに利用される。

常時稼働するマスタルータと非常時用のバックアップルータのIPアドレスが、共通の仮想IPアドレスと紐づくことで実現される。この時の紐付け情報にはマスタルータとバックアップルータを区別するための優先度情報が含まれる。

この場合、PCのデフォルトゲートウェイにルータの仮想IPアドレスを設定するだけで良い。

常時稼働するマスタルータからは、定期的(1秒に1回など)にバックアップルータに対して VRRP advertisement(VRRP 広告)がマルチキャストで送信される。

バックアップルータは、定期的な VRRP advertisement が3回分届かなくなった時点で、マスタルータが故障したと判断し、マスタルータに昇格する。

マスタルータとバックアップルータは共通の仮想IPアドレスを持つため、マスタルータ昇格時にはマスタルータと同じ仮想IPアドレスが引き継がれる。MACアドレスについても同様に、共通の仮想MACが引き継がれる。

ループバックアドレス

自分自身のアドレス、もしくはホスト名のこと。

127.0.0.1localhostなど。

Transport 層 (データグラム・セグメント)

Transport層はUDPTCPが主なプロトコルで、通信の信頼性などの制御を行う。

ポート番号により、Application層のプログラムを識別する(ポート番号だけでアプリケーションを特定するのではなく、宛先IPアドレス、送信元IPアドレス、宛先ポート番号、送信元ポート番号、プロトコル番号のセット情報を識別子として利用する。)。

脳内イメージ(あくまでもイメージです)
Data Link層 → MACアドレス でホストを識別
Internet層 → IPアドレス でネットワークデバイスを識別
Transport層 → ポート番号 でアプリケーションを識別

OSI_transport.png

transport_datagram.png

DCCP

Datagram Congestion Control Protocol

輻輳制御もできるUDPのようなプロトコル。

トランスポート層のプロトコルでコネクション型であるが、UDPとは別のプロトコル。

QUIC

Quick UDP Internet Connections

Google社が提案し、IETFが標準化を進めているTCPの次世代のプロトコルになるかもしれないと言われているトランスポート層のプロトコル。

TCPには無い暗号化機能を持つ。

SCTP

Stream Control Transmission Protocol
トランスポート層のプロトコル。マルチホーミングの機能を持つ。

TCP

Transmission Control Protocol

データの順番を並び替えたり、通信に矛盾がないかを確認するためのプロトコル。

  • 順序制御
    • パケットが順番に届かなくても並べ替えることができる
  • 再送制御
    • 届かなかったパケットを送り直してもらう
  • フロー制御
  • 輻輳制御
    • 回線が混雑してきたら送信を控える

を行う。

TCP : 低速。信頼性が高い。コネクション型。
UDP : 高速。信頼性が低い。コネクションレス型。

個人向けの動画のストリーミングでは、リアルタイムの動画の同時一斉配信などと違ってそこまで即時性が求められないため、TCPが利用される。

3ウェイハンドシェイク

TCPのコネクションは、3ウェイハンドシェイクによって確立される。

tcp_connection.png

コネクションの切断時にも丁寧なやり取りが行われる。

tcp_connection_fin.png

再送制御

コネクションが確立すると、そこから実際のデータが送受信されることになるが、TCPでは一つのセグメントを送信するごとに相手先に届いたかどうかを確認している。いちいち届いたかどうかを確認するので、効率は悪いがデータが欠けてしまうことがない。この制御方法は、TCPがUDPと比べて信頼性が高い一方で速度が遅いと言われる要因でもある。

相手にパケットが届いたかどうかは、相手から返送されるACK(確認応答)によって確認する。

TCP_window_1.png

送信側は、送信したパケットに対するACKが一定時間経っても返答されない時、パケットを再送する(再送制御)。パケットを送信した後、消失したと判断する時間を再送タイムアウト時間と言う。

通信は物理的には電波や電気、光なのでその速度は変えることができない。そのため通信にかかる時間は相手との物理的な距離に比例する。通信距離が長い場合は正常に通信できていたとしても時間はかかってしまうし、距離が短い場合には少ない時間で済む。そのため遠い距離間で通信を行う場合、タイムアウト時間は大きな値である必要があるし、近い距離間の通信では短い時間にした方がより早くパケットの消失を知ることができる。

TCPでは、効率的な再送タイムアウト時間を決定するためには、ラウンドトリップ時間(RTT:Roud Trip Time)と揺らぎ(分散。ラウンドトリップ時間が短くなったり長くなったりする揺らぎ)がまず計測されて、これらの合計より少し大きな値がタイムアウト時間とされる。

UNIX系OS、Windowsでは0.5秒単位でタイムアウト時間が制御されていて、初期値は6秒程度になっている。相手からACKが返送されず、パケットを再送する際には、タイムアウト時間は指数関数的に増やした値が再設定される。

一定回数だけ再送してもACKが返送されない場合には、コネクションは強制的に切断される。

シーケンス番号

TCPが行う多くの制御はシーケンス番号をもとに行われる。

各セグメントにシーケンス番号が振られることによって、順不同でセグメントを受信しても受信側で本来の順番に並び替えることができる(順序制御)。

シーケンス番号は、32ビットの符号なし整数で表現される。

シーケンス番号は、セグメントにつけられるIDと考えることもできるが、番号の振り方には一定のルールが存在する。

具体的には、シーケンス番号の「1」はデータ「1byte」を意味している。そのため、一つのデータ内のセグメントに振られるシーケンス番号には一定の連続性がある。ただし、TCPの仕様上、シーケンス番号はデータサイズを表す訳ではなく、データのインデックス(配列のインデックスのようなもの)を表す訳でもない。正確にはシーケンス番号は、データ1 byteごとの区切りに対して振られた番号であり、図にすると以下のようになる。

TCP_sequense.png

初期値は、3ウェイハンドシェイク時に乱数によって決められる。

受信側はACKの中に、ACK番号(確認応答番号)と呼ばれる次回送って欲しいシーケンス番号を格納する。この次回分として要求されるシーケンス番号は、届いたシーケンス番号にそのセグメントのデータ長を足すことで計算される。

シーケンス番号の初期値が乱数なのは、異常が発生してコネクションを再接続する時に切断前のコネクションで使用していたシーケンス番号と新しく発行するシーケンス番号が重複しないようにするため。

TCP_sequense_2.png

ウィンドウ

TCPでは原則、データの受信側は1セグメントを受信するたびにACKを送信し、送信側は、ACKを確認するまで次のセグメントを送信することができない。

TCP_window_1.png

ここでウィンドウという概念を用いることで、一つ一つのACKを待たずに複数のセグメントを連続して送信することができるようになる

TCP_window_2.png

ACKを確認せずに連続送信できるセグメント部分をウィンドウを言い、その合計サイズをウィンドウサイズと言う。

ウインドウは実体を持たない概念であり、その言葉の通り、セグメントを覗く「窓」のようなもの。ACKの返答があった時は、次のセグメントを送信することができるため、ウィンドウが移動してスライドしているように見える。

TCP_window_4.png

TCP_window_3.png

ウィンドウ内のセグメントは、送信が終了したとしてもACKを確認するまでは再送が必要になるかもしれないため、送信側では破棄することができない。このACK確認前のウィンドウ内のセグメントは、ACKを確認できるまでの間は送信側のバッファに格納されている。

MSS

Maximum Segment Size

コネクション確立時に決定されるTCP使用時の最大セグメント長。

具体的には、3ウェイハンドシェイク時にお互いがMSSを送り合い、より小さい方のMSSが採用される。

上位層のIPで分割されないサイズにすることで、オーバーヘッドを減らすことができる(参照:PMTUD)。

フロー制御

ウィンドウサイズは実は通信中、動的に値が変わり、ACKの度に受信側から通知されている。

受信側機器でセグメント受信以外のタスクを行っている場合、セグメントを受信したからといって解析処理(下位層プロトコルのヘッダを取り除いて、アプリケーション層のペイロードを取得する処理)までが完了している訳ではない。そのため受信したセグメントは一旦、受信側のバッファに保管される。この受信側でバッファ可能なセグメント量がウィンドウサイズ

バッファ領域は有限なので、ウィンドウサイズはセグメントを受信する度に減っていく。そのため送信側には現時点での受信・バッファ可能なセグメントの量、すなわちウィンドウサイズを知らせなくてはならない。ウィンドウサイズはセグメント内にあフィールドの一つとして格納されている。

受信側でバッファが減ってきたことを知った送信側は、次のセグメント送信を控える(一時停止する)フロー制御を行う。

TCP_window_flow.png

一時停止したセグメントの送信は、受信側から受信用バッファに空きができたことを知らせるウィンドウ更新通知を受け取ることで再開される。(このウィンドウ更新通知セグメントが通信途中で消失した場合に備えて、送信側ではセグメント送信を一時停止している間、ウィンドウプロープと呼ばれる「ペイロードが1byte」の特別なセグメントを時々送信することで再開可能なタイミングを検知しようとしている)

輻輳制御

フロー制御は、受信側のバッファの状態に応じた送信量の調節だったが、輻輳制御では、ネットワークの混雑状況に応じた送信側での送信量の調節が行われる。

輻輳制御もフロー制御同様に、ウィンドウサイズを増減させることにより行われる。

フロー制御では受信側主導でウィンドウサイズの調整が行われるのに対して、輻輳制御では送信側主導で制御が行われる。

輻輳制御では、スロースタートと呼ばれるアルゴリズムにより、コネクション確立直後は小さなウィンドウサイズ(1MSS分)から通信を開始することになっている。送信側では、ACKを受信する度にMSSは「1MSS分」だけ増やされる。

この時、ウィンドウサイズは指数関数的に増加する。

TCP_window_flow_2.png

そのため、スロースタート閾値を超えると増加量が指数関数的な増加から、直線的な比例になるように制御される。

スロースタート閾値はコネクション確立直後は設定されておらず、セグメントの再送処理が発生した際に初めて設定される。具体的にはセグメントが通信回路の輻輳によって失われ、再送処理が必要になった時その時点のウィンドウサイズの半分の大きさがスロースタート閾値として設定される。

UDP

User Datagram Prtotocol

コレクションレス型のトランスポート層の通信プロトコル。

TCPのようにパケットごとにACK応答、データの順序制御を行わない代わりに高速な通信が可能

IP電話や、不特定多数へ動画のリアルタイム配信するなどの即時性が求められる場面で使用される。

回線が混雑していても輻輳制御をしない。

TCP / UDP を利用する(アプリケーション層)プロトコル

TCP : HTTPPOP3SSHFTPTelnetDNSのゾーン転送
UDP : DNSの問い合わせ、SNMP
DHCPTFTPNTP

Application 層(メッセージ)

TCP / IP モデルでは最上位に位置するプロトコル。

下位層のような汎用性は無く、特定のアプリケーションや用途に特化したプロトコル層。広く普及したプロトコルを複数のアプリケーションが使用することもあれば、アプリケーションの開発者が独自のプロトコルを定義することもある。

OSI_application.png

電子メール

MIME

Multipurpose Internet Mail Extensions

電子メールで静止画、動画、音声などのテキスト以外の様々なメディアタイプ、ファイル形式を扱うための規格。

text/plainapplication/jsonなど。

SMTP

Simple Mail Transfer Protocol

メール送信時に使用されるプロトコル。

TCPポート番号25番が使用される。

メールサーバ同士でのメール転送でも利用される。

送信者を認証する仕組みがなく、なりすましや迷惑メールなどの攻撃を受けやすいため、
POP before SMTPSMTP AUTHSPFDKIMDMARCOP25Bなどの対策がとられる。

(昔はメールサーバにメールを溜めるのではなく、ホスト同士がSMTPでメールを送信し合っていた。単純に送り合うだけなので、POPというメールを取りに行く仕組みは無い。しかし、お互いのデバイスが起動していないといけないため、PCをシャットダウンした状態の相手には届けることができない。そのため、常時稼働するメールサーバにSMTPで送り、POPでPCを起動したタイミングで取りに行くという仕組みが生まれた。)

POP3

Post Office Protocol

メール受信時に利用されるプロトコル。

メールサーバのメールボックスからメールを取得する際に使用するプロトコル。

TCPコネクションを利用する。

受信に関するプロトコルのみで、送信機能は持たない。メール本文や、パスワードが平文のまま送信されるという問題がある。

IMAP

Internet Message Access Protocol

メール受信時に利用されるプロトコル。

POP3のように、メールサーバからダウンロードしたメールをクライアント側で管理するのではなく、サーバー上で保管、管理する

この仕組みにより、自宅や会社からなど複数の端末から同じ情報にアクセスしたり、特定の添付ファイルだけをダウンロードすることが可能になる。

POP3ではクライアントがメールの保管をするので、複数の端末(クライアント)が同じ情報を共有することはできない。

SMTP_POP_IMAP.png

SMTP:メール送信のプロトコル。
POP:メール受信のプロトコル。メールの管理をクライアントが行う。
IMAP:メール受信のプロトコル。メールの管理をサーバが行う。

電子メールのセキュリティ

電子メールのセキュリティ分野では、プロトコル名がいくつも登場するので目的別に整理して覚えたい。

送信者側の目線
目的:自身の正当性を証明したい。また、自身のドメインが不正利用されないようにしたい。
プロトコル:SMTP-AUTHPOP before SMTPDMARC

受信者側の目線
目的:送信者が正しい相手かどうかを検証したい。
プロトコル:SPFDKIM

POP before SMTP

POP3SMTPの組み合わせによって、メールサーバに対する認証を行う手法の一つ。

セキュリティ上の問題があるため、現在ではPOP before SMTPよりもSMTP AUTHが推奨されている。

通常、メールサーバーは、メール受信時にPOP3を使用し、メール送信時にSMTPを使用する。POP3が認証を必要とするプロトコルなのに対して、SMTPは認証を必要としていない。

POP before SMTPは、メール受信時にPOP3で認証が成功したら、一定時間だけメール送信時のSMTPを許可する。

POP3S

Post Office Protocol version 3 over SSL / TLS

POP3に通信そのものを暗号化する SSL / TLS を組み合わせたプロトコル。

POP3 と POP3S は、 HTTP と HTTPS のような関係。

SMTP AUTH

Simple Mail Transfer Protocol Authentication

ユーザー名、パスワードによる認証付きのメール転送プロトコル。

メールサーバがクライアントからメールの送信依頼を受け付けたときに、正当なクライアントかどうかを認証する。

具体的には、ユーザはクライアントソフトにおいて、アカウントに紐づくユーザ名、パスワードを入力し、その情報が送信側メールサーバに送信されることで、認証が行われる。

SPF

Sender Policy Framewwork

電子メールにおける送信元の偽装を防ぐための認証技術の一つ。

受信側のメールサーバとDNSサーバで、メール送信者のドメインが許可したものかどうかの認証が行われる。

具体的には受信側のメールサーバがDNSサーバに問い合わせを行い、DNSサーバは自身のゾーンファイル(設定ファイル)のSPFレコードを見て、許可して良いIPアドレスかどうかを確認する。確認結果はメールサーバに対して回答される。

DMARCDKIMと組み合わせて使用される。

SPFレコードとTXTレコードは同じものを指す。正確にはv=spf1から始まるTXTレコードがSPFレコードと呼ばれる。

SPFレコードでは以下の構文が使用される。

v=spf1 +許可するIPアドレス1 +許可するIPアドレス2 -all

spf1は使用するプロトコルのバージョンが「1」であることを示し、+は許可するIPアドレス、-は拒否するIPアドレスを示す。上のコマンドはIPアドレス1 、IPアドレス2以外は許可しないことを意味する。

DKIM

DomainKeys Identified Mail

電子メールが改ざんされていないことを検証するための認証技術の一つ。

電子署名を利用してメールの送信者のドメインが正当であること、メールの内容が改ざんされていないことを検証する。

電子署名は送信者側のメールサーバで行われる。署名情報はヘッダに追加され、それを受信側メールサーバで検証する。

送信者による署名は、送信者の秘密鍵によって行われる。受信側メールサーバによる署名の検証は、送信者の公開鍵によって行われる。送信者の公開鍵は、送信者のドメインのDNSのDKIMレコードで公開されている。

DMARC

Domain-based Message Authentication, Reporting and Conformance

DKIMSPFによる認証が失敗した時のメールをどのように取り扱うか(Policy)を、DNSサーバに登録しておき公開する仕組み。

メール送信者はDNSサーバのDMARCレコードを公開して、メールが認証されなかった場合の挙動を指定することができる。

認証に失敗したことを報告(Reporting)するためのメールアドレスを指定したり(攻撃者は、なりすましメールの送信行為を本物のドメイン所有者に報告されてしまう)、なりすましメールの送信を検知したら破棄させることなどができる。

OP25B

Outbound Port 25 Blocking

ISPが実施するメールセキュリティ対策の一つ。

ISPの外側に存在するメールサーバのTCPポート25番(SMTPで利用されるポート)に対して、ISPの管理しているメールサーバを経由せず送信されたメッセージを遮断(Blocking)する。(逆方向は制限しない)

これにより、迷惑メールの送信を防ぐことができる。

不正なメール送信を防ぐことができる一方で、複数のISPを利用しているユーザがメール送信をしようとする場合や、自身でメールサーバを構築したユーザが直接TCPポート25番を利用しようとしてOP25Bによって拒否されることがある。

このような場合はサブミッションポート587番を利用してブロッックを回避することがある。

サブミッションポートとは電子メールの送信(Submission)に使用される特定のポート(587)を指す用語。

「ブロックを回避する方法があるならOP25B自体意味あるの?」と思うが、ポート番号587ではTLSSSLがサポートされていて、さらに認証が必要になっている。悪意のある者が利用しようとした場合、認証時にアカウント名や自身の情報の痕跡が残ってしまうためこれが抑止力として働く。

APOP

Authentication Post Office Protocol

POP3で課題とされていた、パスワードが平文のまま送信される問題を解決するプロトコル。

実際にはあまり普及していない。

DHCP

Dynamic Host Configuration Protocol

ネットワーク上のデバイスに自動的にIPアドレスを設定したり、DNSサーバの設定などのネットワーク設定情報を割り当てるためのプロトコル。

IPv4だけでなくIPv6でも利用される。

自動的に設定を行うことができるため、デバイスごとに手動で設定を行う手間を大幅に省くことができる。

ノートPCやスマホなどの持ち運び型のデバイスは、固定のIPアドレスが設定されておらず、通信開始時にDHCPによって動的にIPアドレスが取得され、そのIPアドレスを基に通信を行っていることが多い。そのため、同じデバイスを利用していたとしても、デバイスが常に同じIPアドレスを使用しているとは限らない。

DHCPを利用するためには、クライアントと同じセグメント上にDHCPサーバを配置する必要がある。

クライアントはまず、ブロードキャストで DHCP Discover (DHCP要求)を送信する。DHCP要求を受信したDHCPサーバは、クライアントに割り当てるIPアドレスをDHCP Offerを通じて提案する。

DHCP Offerを受け取ったクライアントは、再びブロードキャストDHCP Request を送信し、提案されたIPアドレスを使用したいということを伝える。

これを受け取ったDHCPサーバは承諾したことを DHCP Acknowledgement によって返答する。

DHCP.png

DHCPサーバは通常、同じセグメントに複数配置される。また複数配置することが推奨されている。

ブロードキャストで送信された DHCP Discovery 、DHCP Request はこの複数配置されたDHCPサーバにも届くが、2段階でやり取りを行うことによって2台のサーバが重複してIPアドレスを払い出すことがない仕組みになっている。

クライアントが複数のDHCPサーバから DHCP Offer を受信した際は、基本的にはより応答が早かった方の DHCP Offer が採用される。

またDHCPサーバにはあらかじめ払い出し可能なIPアドレスの範囲、サブネットマスク、デフォルトゲートウェイを設定しておく必要がある。またクライアント側も、IPアドレスを自動で設定する機能を有効化しておかなければならない。

多くの家庭用のブロードバンドルータにはDHCPサーバの機能がある。また、 Windows Server などのサーバ用OSにも標準で搭載されてることがある。

プラグアンドプレイ(PnP)を実現するために使用されるプロトコルでもある。

DHCPリレーエージェント

クライアントからの DHCP Request 、 DHCP Discover がルータなどによって別のセグメントへ中継される機能、またはその設定がされた機器。

ブロードキャストによる DHCP Request 、 DHCP Discover は同じセグメント内にしか届かないが、ルータのDHCPリレーエージェントの設定を有効化しておくことで、異なるセグメントにも届くようになる(ルータがDHCPを中継するエージェントとして機能するようになる)。設定が有効化されたDHCPリレーエージェントには、DHCPサーバのIPアドレスが設定される

これによって、セグメントごとにDHCPサーバを配置するのではなく、複数のセグメントが一つのDHCPサーバを共有できるようになる。

DHCPスヌーピング

snooping=覗き見る

スイッチなどがDHCPのパケットを覗き見ることで、悪意のある者がDHCPサーバになりすますDHCPスプーフィング(spoofing=なりすます)などの攻撃を防ぐセキュリティ機能。

スイッチにはあらかじめ信頼できるDHCPサーバをポート番号を紐付けて登録しておき、登録されていないポートからのDHCPメッセージを破棄する。

また、DHCPメッセージによるIPアドレスの割り当てを監視し、割り当てられたIPアドレスとMACアドレスを記憶しておくことで、正規のDHCPサーバが割り当てていないIPアドレスからの通信を攻撃とみなして遮断する。

DNS

Dynamicynamic Name System

ドメインとIPアドレスを変換する(名前解決)ための仕組み。

インターネット上のDNSサーバは階層化されていて、下位の階層で名前解決できなかった時は、上位の階層のDNSサーバに再問い合わせが行われる。

DNSサーバにはリソースレコードと呼ばれる情報が保持されている。

FTP

File Transfer Protocol

ファイルを転送するためのプロトコル。

利用する場合にはFTPクライアントと呼ばれるソフトウェアを使う。

インターネット上には anonymous FTP と呼ばれる、誰でも利用できるFTPサーバが存在する。anonymous FTPでは、アカウント名「anonymous」または「ftp」でログインすることができる。

HTTPなどの通信方法とは異なり、データ制御用(21番)のコネクションと、データ転送用(20番)のコネクションが、ポート番号によって分けられている。制御用のコネクションでは、ログイン、ファイル名、転送方法などの情報を扱う。

データが平文で送信されるため、SSHによる暗号化を行うSFTPが利用されることもある。

SFTP

SSH File Transfer Protocol

FTP通信をSSHで暗号化したファイル転送プロトコル。

TFTP

Trival File Transfer Protocol

Trivial=些細な

簡易型のFTP

FTPではTCPが使用されるのに対して、TFTPではUDPが使用される。

FQDN

Fully Qualified Domain Name

完全修飾ドメイン名。

ホスト名とドメインで構成される。負荷分散などのために、一つのドメインに対して、複数のコンピュータが紐づけられることもある。

ホスト名は、インターネット上の特定のコンピュータに付けられる名前であり、慣習的にWebサーバにはwww(World Wide Web)、DNSサーバにはns(Name Server)、メールサーバにはmx(Mail Exchanger)などのホスト名をつける。これら以外の名前も当然つけることができる。

ドメインは、インターネット上で組織やネットワーク、個人を識別するための情報。ネット閲覧時にURLなどのwwwはよく目にするが、それぞれのドメインが持つwwwという名前がついたWebサーバを指し示している。

ドメインはインターネット上の住所、ホスト名はインターネット上の名前(住所を除いた)に相当する。

H.323

IPネットワーク上で音声や動画を交換するためのプロトコル体系。

HTTP

Hyper Text Transfer Protocol

HTML文書、画像、音声、動画の送受信で使用されるプロトコル。

クライアントとWebサーバ間で使用される。

認証方法にはBasic認証Digest認証がある。

Basic認証ではユーザIDとパスワードが平文のまま転送されるのに対して、Digest認証ではハッシュ化された状態で転送される。

LDAP

Lightweight Directory Access Protocol

エルダップ。

ディレクトリサービスにアクセスするためのプロトコルの一つ。

ディレクトリサービスとは、データ、リソース、ネットワーク上の資源を階層的に管理する仕組みやサービスのことを指す。
ディレクトリサービスにおける「ディレクトリ」は、Linuxのファイルシステムにおける「ディレクトリ」のことではない。元々ディレクトリには「directory=住所録、案内板」という意味があり、「Directory Service」は一般英語で何らかの案内サービスのことを指す。ネットワークにおけるディレクトリサービスが提供する情報は、実は定義されておらず、時と場合によって異なる。情報を一元管理するコンピュータをディレクトリサーバと言い、情報の取得や操作を行う側をディレクトリクライアントと言う。
クライアントはネットワーク上に点在する資源を一元管理しているディレクトリサーバを通じて各資源にアクセスを行うため、物理的な資源の場所を意識する必要がない。またサービスによっては、シングルサインオン、各資源へのアクセス制御機能(特定のユーザのみにアクセス権を与える)を提供するものもある。
ディレクトリサービスを提供する具体的なソフトウェアには、Active Directory(Windows Serverに内包)、OpenLDAP(OSS)などがある。
DNSもディレクトリサービスの一つであり、ドメイン名やIPアドレスなどが管理対象の「資源」に当たる。資源情報を保持するDNSサーバは、ディレクトリサービスにおけるディレクトリサーバに該当する。

NTP

Network Time Protocol

ネットワークに接続された機器の時刻を同期するためのプロトコル。

具体的には、マスターとして機能するNTPサーバがクライアントに時刻情報を提供することによって同期を行う。時刻情報の提供は、UDPポート123番が使用される。

クライアントは定期的にNTPサーバにリクエストを送信している。

NTPサーバはStratum(ストラタム)と呼ばれる階層構造を持っている。

Stratum LevelはNTPサーバの信頼性を示す指標であり、Stratum0は最も信頼性の高い原子時計やGPSなどを意味する。Stratum Levelの高いサーバが下位のサーバに時刻情報を配信している。

PAC

Proxy Auto Config

プロキシサーバの設定で使用する自動設定用のファイル(拡張子もpac)。JavaScriptの形式で記述されている。

PACを使用することでブラウザがプロキシをどう利用するかを条件設定したりして柔軟に設定することができる。

RR

Resource Record

リソースレコード。

DNSサーバが保持している、ドメインとIPアドレスの対応情報。Aレコード、MXレコード、NSレコード、SOAレコードなどの種類がある。

レコード名 役割
Aレコード Address Record
ドメインとIPv4アドレスを関連づける。
AAAAレコード IPv6 Address Record
ドメインとIPv6アドレスを関連づける。
CNAMEレコード Canonical Name Record
エイリアスを指定することで、1つのホストに複数のドメインを紐づける。(canonical=標準的、正規の)
MXレコード Mail Exchanger Record
メール送信時において、宛先メールアドレスに含まれるドメインと紐づくメールサーバを指定する。また、そのメールサーバの優先度も指定することができる。
NSレコード Name Server Record
ドメインの権威サーバ情報。
PTRレコード Pointer Record
逆引きルックアップのために使用される。IPアドレスからホスト名への逆引き情報を提供する。
SOAレコード Start Of Authority Record
そのDNSサーバが管理する領域(ゾーン)に関する情報。

SNMP

Simple Network Management Protocol

ルータやスイッチなどのネットワーク機器、サーバなどの遠隔監視、管理に使用されるプロトコル。

機器の異常や、パフォーマンスの低下を検知して監視システムに通知する、情報収集機能を持つ。

監視対象の機器に搭載されたソフトウェアをSNMPエージェント、SNMPエージェントと通信して情報収集、設定変更などを行うソフトウェアをSNMPマネージャという。

収集した情報はMIBと呼ばれるSNMPエージェントのデータベースに保存される(SNMPマネージャはエージェントのMIBを閲覧、編集することができる)。

MIB

Management Information Base

SNMPマネージャが収集した情報を保存するSNMPエージェントのデータベース。

階層構造を持ち、各ノードはOID(ObjectID)によって識別される。

ネットワークインターフェースのトラフィック統計、デバイスのハードウェア状態、システムのリソース利用状況など、さまざまな情報が含まれる。

SSH

Secure Shell

主に、リモートシステム(ネットワークを介した別のコンピュータへの操作)へのアクセス・ファイル転送・通信を暗号化によって安全に行うためのプロトコル。

似たものにTELNETがあるが、TELNETでは通信内容が暗号化されない。

ポートフォワード機能がある。

TELNET

テルネット。

ネットワークを通じて、遠隔地のコンピュータにログインして操作するためのプロトコルの一つ。似たものにSSHがある。

TCPコネクション上で、文字列によるコマンドを送信することで遠隔操作を行う。コマンドを送信する側のソフトウェアをTELNETクライアントと呼ぶ。

VoIP

Voice over Internet Protocol

インターネットを通じて音声通信をするためのプロトコル。伝統的な電話回線を使用しない。

インターネット用の回線を使用して音声通信ができるので、電話専用の回線をインターネット用とは別に敷設しなくても済むなどのメリットがある。

アナログ音声信号をデジタル音声信号に変換して(A/D変換)送受信を行う。

VoIPでやりとりするデータには、呼制御データ音声データの2種類がある。

通話セッションを開始、確立するための制御を呼制御と言う。電話をかける際に「プルルルル」という呼出音が聞こえたり、相手が通話中の場合「プープー」という音が聞こえるのは呼制御が行われているため。

呼制御には通話セッションの切断も含まれる。

呼制御データの通信ではSIPが使用され、音声データの通信ではUDPRTPが使用される。

SIP

Session Initiation Protocol

Initiation=開始

主にVoIPと併せて使用される、通話セッションを確立、変更、終了するためのプロトコル。

呼制御をするのみで、音声データの転送には関わらない。

テキストデータによって制御を行う。

通話を開始するときは、まずSIPサーバに対して通話セッションの確立リクエストが要求される。SIPサーバはDNSのように、電話番号から相手のIPアドレスを取得し、リクエストを相手のIPアドレス宛に転送する。

相手から再びSIPサーバを経由して応答が返された後は、SIPサーバを介さずに直接クライアント間で通話が開始できる。

RTP

Real-time Transfer Protocol

音声や動画などを伝送するためのプロコトル。

音声や動画はバイナリデータとして転送される。

音声データはUDPによって送信され、パケットの順序管理(シーケンス管理)が行われないため、タイムスタンプなどを使用して、RTPがシーケンス管理を行う。

ポートフォワード

特定のIPアドレス、ポート番号へのメッセージを別のIPアドレスやポート番号に転送すること。

セキュリティ

security.png

C&C Server

Command and Control Server

攻撃者が不正にシステムやネットワークを制御するために用意するサーバ。

C&Cサーバからコマンドが送信され、被害者の機器の操作が行われる。

FW

Firewall

Wirewall=防火壁

ファイアウォール。

インターネットなどを利用するネットワーク上で、不正なアクセスから自身のネットワークやシステムを守ることを目的として、外部ネットワーク(インターネット)と内部ネットワークの間に設置されるデバイスやソフトウェア。

特定のIPアドレスポート番号からの通信を許可または拒否する(フィルタリング)ように設定しておくことで防火壁に似た役割を果たす。

具体的な設定としては、例えば「外部からDMZに配置したWebサーバに対しては80番ポート(HTTP)、443番ポート(HTTPS)だけを許可する」、「内部への通信はDMZからだけにする」など。

設定情報はフィルタリングテーブルと呼ばれる。

許可するものを明示したホワイトリスト型、許可しないものを明示したブラックリスト型が存在する。実際には設定漏れがあっても意図していないアクセスが拒否されるホワイトリスト型が使用されることが多い。

ネットワークを外部ネットワーク(インターネット)、DMZ内部セグメントの3つに分ける役割もあり、さらにルーティング機能を持つことも多い。

ネットワークの構成図を見るとき、FWが以下の3つが分けていることを意識する。(FWが中継しているとも言える)

  • 外部ネットワーク
  • DMZ
  • 内部セグメント

DMZ

Demilitalized Zone

Demilitalized Zone=非武装地帯

外部ネットワークと内部ネットワークの間に作られた、外部と内部の両者がお互いにアクセスできる特定のネットワークセグメント。

外部ネットワークから内部ネットワークを守るために設置され、Webサーバやメールサーバなどの外部に公開するサーバが配置される。

外部と内部の通信を中継するサーバーやデバイスが設置されることもあれば、Webサーバやメールサーバなどの公開サーバが設置されるセグメントでもある。

WAF

Web Application Firewall

Webアプリケーション専用のFW

HA

High Availability

直訳は高可用性。

可用性とは、システムやサービスが障害時やデバイスの故障時に、どの程度停止することなく継続稼働できか、また利用可能であるかを示す指標のこと。

セキュリティの文脈では、冗長化という意味で使われることもある。

IEEE802.1X認証

ネットワークへのアクセスを制御するための認証プロトコル。

ユーザがネットワークへアクセスを要求した場合に身元確認が行われる。

802.1x認証1x認証とも呼ばれる。

正確には「IEEE802.1」が Port-Based Network Access Control と呼ばれる、ポートによってアクセスをコントロールする規格を指し、それと「認証」がセットになった言葉。

有線LANにおいては、ネットワークにアクセスする為には物理的な接続が必要なため、第三者が入り込むことは困難である一方で、無線LANは電波が届く範囲であれば誰でもアクセスができてしまう。

IEEE802.1X認証は有線か無線かに関わらず利用することができるが、特に強固なセキュリティが求められる無線LANに対して、アクセスしても良いユーザを限定する際に利用される。

LAN認証には他にもMACアドレスによる認証もあるが、MACアドレスは書き換えが可能であるなどセキュリティ面では弱い部分があるため、より強固な認証を行うためにIEEE802.1X認証が採用される。

IEEE802.1X認証は、認証にEAPが利用され、主に SupplicantAuthenticatorAuthentication Server の3つの要素から構成される。

Supplicant はネットワークへのアクセス要求者のことで、具体的にはPC、スマホなどのデバイス、またはクライアントにインストールされたソフトウェアのことを指す。OSに標準搭載されている。

Authenticator は認証者、または認証装置のことで、 Supplicant と Authentication Server を仲介する役割を持つ。具体的には Supplicant が有線接続するスイッチ(またはルータ)や、無線LANアクセスポイントとなるデバイスを指す。

Authentication Server は Supplicant の情報を保持して認証の検証を行う認証サーバーのことを指す。通常RADIUSサーバが使用される。

RADIUS

Remote Authentication Dial-In User Service

ネットワーク上でユーザの認証や権限の付与などを行うプロトコル。

ネットワークへのアクセスを要求するスイッチ(ルータ)、無線LANアクセスポイントとなるデバイスをRADIUSクライアントと呼び、認証を行うサーバ側をRADIUSサーバと言う。

EAP

Extensible Authentication Protocol

ネットワーク上でのユーザー認証を行うためのPPPを拡張したプロトコル、またはフレームワーク。

EAP自身が認証プロセスを提供するのではなく、他の認証プロトコルと組み合わせて使用される。

認証の方式には

  • EAP-TLS(Transport Layer Security)
  • EAP-TTLS(Tunneled Transport Layer Security)
  • PEAP(Protected Extensible Authentication Protocol)

などがあり、クライアント(Sapplicant)とサーバの両方が対応している方式が採用される。

EAP-TLSでは電子証明書を利用した端末認証が行われ、PEAPではサーバ証明書を使用したユーザ認証が行われる。

IDS / IPS

IDS

Intrusion Detection System

侵入検知システム。

FWではパケットのヘッダ情報のみが検証されるのに対して、IDSIPSではヘッダ部分だけでなくデータ部分も検証される。

  • NIDS(Network-Based IDS)
  • HIDS(Host-Based IDS)

がある。

NIDSでは、ネットワーク上で通信の監視が行われ、異常なパターン、シグネチャを検知する。

HIDSでは、個々のホスト、もしくはサーバ上で監視が行われ、そのホスト上での活動、システムの変更で不審なプロセスがあれば、これを検知する。

検知方法には

  • シグネチャ型 : 基地の攻撃パターンにマッチングを行うことで検知
  • アノマリ型 : 仕様を逸脱した異常なパケット、トラフィックから検知  anomaly=異常な

がある。

IPS

Intrusion Detection System

侵入防止システム。

FWではパケットのヘッダ情報のみが検証されるのに対して、IDSIPSではヘッダ部分だけでなくデータ部分も検証される。

False Negative

偽陰性、フォールスネガティブ

IDSIPSにおいて、異常な通信が誤って正常と判断されること。

False Positive

偽陽性、フォールスポジティブ

IDSIPSにおいて、正常な通信が誤って異常と判断されること。

IPsec

Security Architecture for Internet Protocol

主にVPNを確立する際に使用される暗号通信を行うためのプロトコルの一つ。

ネットワーク層で動作する。IPv6では標準機能となっている。

ESPAHIKEなどの複数の技術を組み合わせて使用することで実現する。このように、複数のプロトコルが組み合わさったものをプロトコルスイートという。

ESPには暗号化と認証の機能があり、AHは認証機能のみを提供する。そのため、ESPIKEのみでIPSecを構成することもできる。日本ではESPIKEのみの構成が一般的。

IPsecを使った通信では、双方の機器は同等(ピア)の関係となり、SAと呼ばれる単方向のコネクションが確立される。双方向で通信したい場合、2つのSAを確立させる必要がある。

トランスポートモードトンネルモードがある。

トランスポートモードでは、データとTCP / UDPヘッダのみが暗号化され、IPヘッダーは暗号化されない。末端同士の通信で使用される。

一方、トンネルモードでは通信全体(IPヘッダとペイロード)が暗号化される。ルータやFWを通過する際に暗号化と復号が行われる。

トランスポートモードでは個々のホストに設定が必要なのに対して、トンネルモードでは設定対象がルータのみで済む。

拠点間のVPNではトンネルモードが採用され、自宅から会社のネットワークにアクセスする際なとはトランスポートモードが採用されることが多い。

SA

Security Association

IPsecなどの暗号化通信において通信ノード間で確立されたセキュリティ情報、パラメータのセットのこと。

暗号化方式や暗号鍵などの情報を交換し、安全な通信路が確立されることをSAが確立されたと表現する。

ESP

Encapsulated Security Payload

プロトコルスイートであるIPsecの一部。

IPパケット内のペイロードを暗号化したり、認証するために使用されるプロトコル。

暗号化したパケットにESPヘッダを付与することでカプセル化を行う。送信側のペイロードの暗号化、ヘッダの付与、また受信側の復号、ヘッダの除去はそれぞれルータやスイッチが行う。

esp.png

ESPヘッダには、SAを識別するための情報が格納されている。

ESP認証データ部分には、パケットが改ざんされていないかを検証するための情報が格納されている。

ESPトレーラはパケット全体の長さを調節するためのパディング(詰め物)が格納されている。

AH

Authentication Header

プロトコルスイートであるIPsecの一部。

通信データに対する認証を行うことで、データに改ざんがないことを検証するために使用される。

データの暗号化などは行わない。

IKE

Internet Key Exchange

プロトコルスイートであるIPsecの一部で、IPsecによる暗号化通信を行うために共通鍵を交換を行うためのプロトコル。

IKEの手順にはフェーズ1とフェーズ2がある。

フェーズ1には MainモードAggressiveモード がある。

Mainモードでは接続先のIPアドレスも認証情報の一つとして扱われるため、固定IPアドレスでしか運用できない。

一方 Aggressive モードでは、接続先のIPアドレスを認証に使用しないため動的IPアドレスでも運用することができる。

Phishing(フィッシング攻撃)

悪意のある攻撃者が電子メール、Webサイト、SNSなどを通じて他人になりすまして個人情報を取得しようとする詐欺の形態の一つ。

PKI

Public Key Infrastructure

公開鍵基盤。

セキュリティで保護された通信を可能にするための仕組み。電子署名電子証明書、公開鍵と秘密鍵、CAという技術要素から構成される。

公開鍵暗号方式によって通信を行うためにはまず、相手方に公開鍵を配布する必要がある。ただし、この公開鍵を配布する際に、公開鍵自体が正当なものであることを検証できるように、第三者であるCA電子署名を付与した電子証明書を発行する。

繰り返しになってしまうが、電子証明書は公開鍵が正当なものであることを証明するために発行される。

電子証明書には公開鍵が含まれている。

公開鍵は電子証明書という形式で配布される

CA

Certificate Authority

認証局。

電子証明書を発行する機関。

ルート認証局中間認証局がある。

電子署名

元データのハッシュ値を、作成者の秘密鍵で暗号化したもの。

データ受信者は、作成者の公開鍵を使って復号することでハッシュ値(①)を取得する。

受信者はさらに受信した元データからハッシュ値(②)を生成し、①と②の両者を比較することによってデータが確かに正規の作成者によって作成されたものであることを検証できる。

またデータが改ざんされていた場合、データから生成されるハッシュ値も変わるため、完全性も担保される。

電子証明書

電子署名の復号で使用される公開鍵を配布するための電子的な書類のセット。

CAによって、暗号化された状態で発行される。

公開鍵を証明する役割を持つ。

ルート証明書(ルートCAの電子証明書):ルートCAの公開鍵を証明するための証明書。
サーバ証明書(サーバの電子証明書):サーバの公開鍵を証明するための証明書。
クライアント証明書(クライアントPCの電子証明書):クライアンドの公開鍵を証明するための証明書。

Spoofing(スプーフィング)

ネットワーク通信の中で、送信者の識別情報を偽装すること。なりすまし。

SSL

Secure Socket Layer

データを暗号化して転送することで、セキュアな通信を可能にするためのプロトコル。

データの暗号化に加えて、サーバ認証やクライアント認証によるなりすましの防止、MAC(Message Authentication Code)をメッセージに埋め込むことによる改ざんの検知ができる。

後継プロトコルとしてTSLがある。SSLとTSLには互換性がない。

SSLはNetscape社が開発したプロトコルであり、標準化されたものがTSLTSLのことを指してSSLと呼ばれることもある。

SSLには重大な脆弱性があるため、TSLの使用が推奨されている。

TSL

Transport Layer Security

SSLの後継版プロトコル。

データを暗号化して転送することで、セキュアな通信を可能にするためのプロトコル。SSLは、用語として広く普及しているため、SSLと表現されていても実際にはTSLを指していることもある。

HTTPと合わせてHTTPSとして利用される。

HTTPS

HTTP over SSL

UTM

Unified Threat Management

統合脅威管理。

複数のセキュリティ機能(FWIDSIPSなど)を一つのプラットフォームに統合し、ネットワーク全体から見た脅威に対する包括的なセキュリティ対策を実施すること。またはそれを実施するためのソフトウェアやデバイス。

複数のセキュリティ機能を集約させることで、コストを抑えたり、システム管理者の負担を軽減することができる。

VPN

Virtual Private Network

仮想プライベートネットワーク。

公共ネットワーク上でプライベートネットワークのようなセキュアな通信を行う技術、また仕組み。

仮想的ではないプライベートネットワークは、専用線で接続されたネットワーク。物理的に拠点と拠点を専用線で接続するため、セキュリティ面は安全な一方で、非常に高コスト。

OpenVPN、IPsec、L2TP、PPTPなどのプロトコルを利用して実装される。

以下の種類がある。

インターネットVPN

最も一般的なVPNとして知られる既存のインターネットを利用して構築されたVPN。

既存のインターネットを経由したアクセスが行われる。

低コストで構築できる反面、専用線では無いため一定のセキュリティリスクがある。

エントリーVPN

通信事業者の閉域網を利用したVPN。

低コストで構築でき、閉域網を利用しているためセキュリティが高い。

企業内の従業員がリモートから企業ネットワークにアクセスするためのVPN。

IP-VPN

ネットワーク層のVPNサービス。

ルータを介してVPNに接続する。帯域保証があるため、他のVPN方式に比べて通信が安定している一方で高コスト。セキュリティが高い。

MPLSを利用して、グループ分けを行う。

広域イーサネット

通信事業者が提供するVPNの一形態。データリンク層のVPNサービス。

スイッチングハブを介してVPNに接続を行う。地理的に離れたLAN同士をEthernetで接続した広域的なネットワーク。

IP-VPNは国内などの比較的近距離での通信に利用され、広域イーサネットは海外拠点を含む遠距離でのVPN構築で利用される。

VLANによってグループ分けを行う。

SSL-VPN

Secure Socket Layer Virtual Private Network

SSL / TSLプロトコルを利用したVPNの一つ。

Webブラウザ標準搭載のHTTPS機能が使用されるため、VPN専用のソフトウェアをインストールする必要がない。

その他

others.png

APN

Access Point Name

アクセスポイント名。

モバイル端末が無線でネットワークへ接続する際に使用される。

接続先の事業者やサービスを識別するための識別名であり、一般的には接続先プロバイダのドメイン名などが使用される。

端末やSIMカードに記録されていて、ユーザーが意識する必要のない場合もあれば、SIMフリー端末を利用していて、手動で入力する必要な場合もある。

CDN

Content Dilivery Network

オリジンサーバエッジサーバから構成される。

エッジサーバは、オリジンサーバからコピーしたコンテンツを保管している。

IaaS

Infrastructure as a Service

IANA

Internet Assingned Numvers Authrity

アイアナ。

ドメイン名、IPアドレス、AS番号、プロトコル名などを管理する組織。

IEEE

Institute of Electrical and Engineers

電気・電子分野における工業技術の標準化などを行う専門家組織。

MACアドレスの割り振りを行う。

IETF

Internet Engineering Task Force

インターネット技術の標準化を行う団体。

TCP / IP の標準化も行っている。TCP / IP はISOではなくIETFが標準化を行い、それを大学・研究機関・業界が中心となって発展させてきたデファクトスタンダード(事実上の標準)。

RFC

Request For Comments

IETFによって公開される標準化された技術仕様、プロトコル、手法などに関する情報、ドキュメント。

公開済みのRFCは改訂が許されていないため、プロトコルの仕様が拡張される場合、公開済みのRFC番号は廃止され、新たなRFC番号が振られる。

番号が変わるのは不便なので、主要なプロトコルに対してはSTD(Standard)番号が割り振られていて、RFC番号が変わっても、同じSTD番号でプロトコルを参照することができるようになっている。

ISO

International Organization for Standardization

国際標準化機構。

プロトコルの標準化を行う機関。OSI参照モデルを提唱した。

TCP / IP は、ISOではなく、IETFが標準化している。

ISP

Internet Service Provider

個人や企業に対して、主に高速で安定したインターネット接続を提供する事業者(NTT東日本・西日本など)。

インターネットへのAP(アクセスポイント)を提供する。

LAN

Local Area Network

OSI

Open System Interconnection

解放型システム間相互接続。

PaaS

Platform as a Service

PnP

Plug and Play

物理的に接続しただけで、ネットワークの設定が自動的に行われ、すぐに使える状態になること。

P2P

Peer To Peer

ピアツーピア。

クライアント/サーバ方式のような形態をとらずに、1対1で平等な関係で直接接続して通信を行う形態。それぞれのホストがクライアントにもなるし、サーバにもなるようなイメージ。

SaaS

Software as a Service

SDN

Software Defined Network

物理的なネットワークが持つ制約にとらわれず、ソフトウェアによって仮想的なネットワークを定義する技術の総称。

SIM

Subscriber Identify Module

加入者識別モジュール。

加入者の識別情報が記録されている。携帯端末とは独立して加入者情報が管理される。

SSO

Single Sign On

WAN

Wide Area Network

WWW

World Wide Web

インターネット上の情報をHyper Textによって公開、閲覧できる情報提供システム。単にWebとも言う。

Webブラウザを通して、URLによって文書を指定して閲覧、利用する。アプリケーション層のプロトコルにはHTTPが使用される。

基本型な情報の単位はHTMLやCSSによって構成されるWebページ(WWWページ)。

Envelope(エンベロープ)

Envelope

直訳は「封筒」。

ネットワーク用語としては、データパケットを包む外側の構造を指す。

データパケットは通常、ヘッダー(通信の制御情報)とペイロード(データの本体)から構成される。このとき、ヘッダーがエンベロープ(封筒)とみなされ、ペイロードが封筒の中身とみなされる。

オンプレミス

クラウドの反対の言葉。

物理的なサーバを自前で用意してサービスを稼働させている形態。

具体的にはサーバーを置くための土地、サーバールーム(空調付きの部屋)、サーバーなどの機器が必要。

オーバーヘッド

実際に送信するデータ以外に、通信制御のために送らなければならない情報や、それを処理するため時間などの、本来のデータ処理に付随する処理負荷のこと。

スタンドアロン

ネットワークに接続されず、コンピュータ単体で使用される利用形態。ネットワーク上のリソースやデータへのアクセスを必要としない。

ダイアルアップ接続

回線交換方式で、遠隔地の相手と回線を占有して通信を行うこと。

1990年代までは、一般家庭からインターネットへの接続は常時接続型ではなく、ダイアルアップ接続だった。この方式でインターネットに接続するには、まずISPの通信拠点に発呼による接続操作を行い、利用終了時に切断する操作が必要だった。

デーモン

UNIX系のサーバ上で常時稼働しているプログラム(のプロセス)。

Windsowsではサービスと呼ばれる。

メインメモリ上に常駐し、特定の機能をバックグラウンドで提供する。基本的にOSの起動時に自動で実行状態になるため、ユーザが直接実行したり起動する機会は無い。

HTTPのサーバプログラムはhttpd(HTTPデーモン)、SSHのサーバプログラムはsshd(SSHデーモン)と呼ばれる。

輻輳

通信回線が混雑すること。

プロトコルスタック(プロトコルスイート)

複数の階層のプロトコルを、下位から上位にスタック状に積み重ねて実装した全体像。

ブロードバンド / ナローバンド

Broad Band=広帯域
Narrow Band=狭帯域

1Mbps以上の、高速で大容量のデータ転送が可能な、回線や通信サービスをブロードバンド(broad=広い)と呼ぶ。

それに対して1Mbps未満の、低速で小容量のデータ転送しかできない回線や通信サービス低速な回線のことをナローバンド(narrow=狭い)という。

ブロードバンドの具体的なサービスには、ケーブルテレビ、ADSLFTTH(光ファイバー)、Wi-Fi、LTEなどがある。

ベストエフォート型

最善努力型。

最大限の努力はするが通信品質を保証しないとする通信方式。

IPはベストエフォート型で設計されている。

マルチホーミング

コンピュータやネットワークデバイスが複数のインターフェースに接続されている状態。

複数のNICを持つホスト。

複数のインターフェースを利用することにより、一方のネットワーク経路で異常があっても通信を継続して行うことができる(冗長性が高まる)。

モデム

modem

アナログ信号とデジタル信号を変換する機器。

デジタル信号 → アナログ信号 の変換を変調(modulation)と言い、
アナログ信号 → デジタル信号 の変換を復調(demodulation)と言う。

modulator / demodulator → modem

重要だと思った概念・個人的気づき

OSI参照モデル

OSI参照モデルで定義されているのは各階層の役割。プロトコルの中身は仕様。製品は仕様を準拠して作られる。

  • アプリケーション層:個々のアプリケーションが定義する部分
  • プレゼンテーション層:アプリケーションごとに異なるデータ形式を、ネットワーク全体で共通化されたデータ形式に変換。データの符号化。
  • セッション層:コネクションの管理。データ転送機能はない。
  • トランスポート層:データの信頼性。欠落したデータはないか?などの確認。
  • ネットワーク層:アドレス管理、複数のデータリンク層の機器を経由した経路の選択
  • データリンク層:一区間のデータ転送
  • 物理層:光と電気との変換や、電圧の高低とビット列との変換、またはコネクタ、ケーブルの形状

なぜか、アプリケーション層のデータが一番大きいイメージがあったが、実際はその逆OSI.png

ゲートウェイは、プロトコルの変換をする装置。トランスポート層。

TCP / IP という言葉は、それぞれ二つのプトロトコルを指しているのではなく、二つのプロトコルを中心としたプロトコルスイート(複数のプロトコルの集合体)を指している。また、実際に運用されているのはTCP / IP の方で、OSI参照モデルは実用化されていない。よく見る階層図は、TCP / IP をOSI参照モデルに当てはめたもの。

回線方式とパケット方式

回線方式は、一つの回線を一つの通信が占有する。

パケット方式では、複数の通信が一つの回線を共有する。

回線方式のアナログ電話では、通話中の相手に電話をかけても「通話中」となって通話できない(1対1でしかやり取りできないため)。

交換方式でのコネクションは交換機が管理する。

パケット方式のインターネットで、夜の時間帯など、みんながネットを使用する時間に繋がりにくくなったり、通信速度が遅くなるのは、回線を共有して使っているため。

IPアドレスとMACアドレス

IPアドレスには階層があり、MACアドレスには階層がない。

bps

bps=bits per second 

1秒あたりに送信できるデータのビット数。

bpsが大きくなっても、電気や光の速度自体は変わらないので、大きくなるのはデータ量の方。

「◯G」と言った時、通信速度の場合は bps、ファイルサイズの場合は byte

1K=1024の話

コンピュータの内部では、情報が二進数で表現される。そのため、データ量、データサイズなどには大文字のKが使用される。そのため、1KB=1024byteとなる。

一方で、1000メートル=1キロメートルのような、国際的な単位としては、小文字のkが使用される。そのため、1kB=1000byteとなる。

また、キロ以上のメガ、ギガ、テラについては大文字小文字の区別がされていない。

これを区別するための単位にKiBがある。キビバイトと読む。1KiB=1024byte。

一般消費者向けのパッケージなどでは、1kB=1000byteとして記載されている。

外付けストレージなどを買った時に、パッケージに記載された容量と、実際にPCで表示させた容量が異なるのはこのため。PCではKiBで表示されるため、1KiB=1KB=1024byteとして容量が計算され、単位が大きくなるにつれてその差は大きくなる。ただし、Linux系のOSでは国際単位系で表現されているとか。

1byte=8bitは、コンピュータによっては1byte=7bit、1byte=6bitという場合があり、厳密に8bitを表現したい場合、オクテットが使用される。1オクテットは、必ず8bitとなる。

片方向通信と半二重通信と全二重通信

片方向通信
一方向への通信。反対方向に通信できない。ラジオ

半二重通信
送信方向と受信方向の通信自体は可能であるが、それを同時に行うことができない。トランシーバー

全二重通信
送信方向と受信方向の通信を、同時に行うことができる。電話

ツイストペアケーブルは8本の銅線から構成される。

アナログ回線とデジタル回線

アナログ回線では、電流や電圧の変化によって、情報を波形でそのままやり取りする。

情報が波形のまま伝わるので、情報伝達において数字が使用されない。音は空気の振動によって伝わる。

デジタル回線では、電圧の変化に対して「0」「1」の意味づけ(符号化)を行い、情報(データ)がやり取りされる。音声も、ネット検索情報も同じデジタル情報なので、通話しながらネット検索できる。

モデムはアナログ信号とデジタル信号を変換する機器。

アナログ回線による電話通話では、メタル線と呼ばれる銅線を使って音声がそのまま送信される。

データ → パケット → データ 

IPプロトコルにおいて、上位層のデータをパケットに分割しているのは、ルーター。

分割されたパケット達は、それぞれに同じ識別子がIPヘッダ内に格納され、その識別子をもとに、宛先のホストにて再構築される(ルーターはデータの分割はするが、再構築はしない)。

ルータではなく、ホストが分割処理を行う場合もあるPMTUDも参照。

IPv6では、ルータではなくホストが分割処理を行うため、PMTUD機能が必須(組み込み等の一部の環境で実装しなくても良いとされている)。

IPプロトコルに含まれる知識領域

頭の整理のためのコメント。

プロトコルとしてのIPに含まれるのは、

  • IPアドレス
  • 経路制御(ルーティング)
  • パケットへの分割
  • PMTUD

インターネット層でのパケットが中継される時のイメージ

packat_relay_image.png

ブロードバンドルータとルータの違い

ルータは異なるセグメントをつなぐための機器。

ルータの中でも特に、一般家庭などで通信事業者のブロードバンド回線からインターネットに接続するためのルータをブロードバンドルータと言う。

ブロードバンドルータの中でも特に、Wi-Fiという規格を用いて無線接続するものをWi-Fiルータという。

L3スイッチとルータの違い

どちらもNetwork層で動作するが、ルータはインターネットとの境界で利用され、L3スイッチは企業内の部署間などの同じネットワーク内の異なるセグメント間で利用される。

L3スイッチはVLAN構築のためにも利用される。

一般的にL3スイッチはルータよりも多くのポートを持ち、また高機能・高速であることが多いため、比較的高価。
ルータが通常ポートを2〜数十個しか持たないのに対して、L3スイッチは標準的なものでも24個以上のポート数を持つ。

IPアドレスの発行

IPアドレスはICANNが一元管理していて、日本においてはJPNICが管理を行い、申請はISPに対して行う。

セグメントに対する考え方(!!重要!!)

セグメントは一つのネットワーク領域を指す言葉。

セグメントはネットワーク全体のから見た一部分のネットワークであり、通常は物理的に接続されたデバイスやノードのグループのことを指す。(VLANのように、論理的にグループ分けをすることもできる)

1台のスイッチやルータに接続された複数のホストは、通常、同じネットワークアドレス範囲の属することになる。

もし1台のスイッチが複数の異なるネットワークアドレスを持つホストに接続されている場合、同じセグメント内での通信は可能だが、セグメントを介したホスト間の通信は不可能。

segment.png

参考

キタミ式イラストIT塾 応用情報技術者
ストーリーで学ぶ ネットワークの基本
ネスペの基礎力 -プラス20点の午後対策
ネットワークスペシャリスト試験に出るところだけを厳選! 左門至峰による ネスペ教科書 改訂第2版
マスタリングTCP/IP―入門編―(第6版)
これならわかるTCP/IP入門の入門

1
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?