高校「情報Ⅰ」単語帳 - 数研出版「高等学校 情報Ⅰ」 - 情報通信ネットワークの仕組みと役割
通信速度 【回線速度】
通信回線が単位時間あたりに送受信できるデータ量。通信速度が高いほど短時間に大量のデータを送ることができ、快適に通信を行うことができる。
主に1秒間に伝送できるビット数である「ビット毎秒」(bps:bits per second)、1秒間に伝送できるバイト数である「バイト毎秒」(B/s:Bytes per second)の二種類が用いられる。ビット毎秒はコンピュータ間の通信に、バイト毎秒はコンピュータ内部の通信に用いられることが多い。
現在では1バイトは8ビットであるため、1バイト毎秒は8ビット毎秒に相当する。1バイトのビット数がシステムごとに様々だった時代の名残りで、正式な規格書などでは誤解の余地が無いようにバイト毎秒の代わりに「オクテット毎秒」(octet per second)を用いる場合もある。
現代のコンピュータや通信回線は高速にデータを伝送できるため、ビット毎秒やバイト毎秒をそのまま使うと値が大きくなりすぎる。このため、重さや長さなどと同じようにSI単位系の接頭辞(1000倍を表す「キロ」など)を先頭につけて大きな単位を構成する。
それぞれの1000倍を「キロビット毎秒」(kbps)「キロバイト毎秒」(kB/s)、100万倍を「メガビット毎秒」(Mbps)「メガバイト毎秒」(MB/s)、10億倍を「ギガビット毎秒」(Gbps)「ギガバイト毎秒」(GB/s)、1兆倍を「テラビット毎秒」(Tbps)「テラバイト毎秒」(TB/s)という。
通信の実効速度や体感速度は通信速度に最も大きく影響を受けるが、送信側が伝送を開始してから(あるいは、受信側が送信要求を送ってから)受信側に最初のデータが到着するまでの待ち時間(レイテンシ/遅延時間)にも影響され、大陸間や衛星を介した通信など極めて遠距離間の通信では特に大きく影響する。
回線交換 ⭐⭐
通信回線の利用方式の一つで、通信を行っている間、通信相手までの物理的あるいは論理的な伝送路を占有する方式。いわゆるアナログ電話などがこの方式である。
最も古くから存在する方式の一つであり、比較的単純な設備で安定した通信が可能で、回線を占有するため品質の保証がしやすい(ギャランティ型)という特徴がある。
その後生まれた方式に比べると、回線の利用効率が悪い、複数の相手との交信や動的な経路選択などができない、通信の集中・混雑(輻輳)が生じるとほとんどの端末が接続不能に陥ってしまうといった難点がある。
一方、回線交換方式によらない通信方式として、信号やデータを中継局が一旦蓄えて順に送り出す方式があり、「蓄積交換」(store and forward:ストアアンドフォワード)、あるいは「パケット通信」「パケット交換方式」などと呼ばれる。
パケット通信 【パケット交換方式】 ⭐⭐
通信ネットワークにおけるデータの伝送方式の一つで、データを小さな単位に分割して個別に送受信する方式。通信を行う二者が伝送経路を占有せずに通信できる。
一定の大きさに分割されたデータのことを「パケット」(packet:小包)という。パケットには送りたいデータ本体(ペイロード)の他に、送信元や宛先の所在を表すアドレスなどの制御情報が付加される。
送信側の機器は送りたいデータを通信規格などで定められた長さごとに分割し、制御情報を付加して順番に送信する。通信経路上の中継機器は受け取ったパケットをいったん自身の記憶装置に格納し、次の中継装置へ順次送り出す。
これを繰り返して受信側の機器までパケット群を届け、受信側ではパケットからデータ取り出して順番に連結し、元のデータに復元する。このような伝送方式は「蓄積交換」(store and forward:ストアアンドフォワード)とも呼ばれる。
一方、回線網上の二地点間を結ぶ経路を交換機で中継し、両端の機器が通信中はこれを独占的に利用する通信方式を「回線交換方式」(circuit switching)という。歴史的には通信システムはアナログ電話回線など回線交換方式から発展したが、コンピュータネットワークやデータ通信の普及とともにパケット交換方式が一般的になっている。
主な特徴
パケット交換方式は回線交換のように通信中に伝送経路上の資源を占有しないため、中継機器などの設備、通信回線・電波などの伝送媒体を効率よく利用できる。中継時にデータを通信機器内に蓄積してから送り出すため、異なる通信速度や通信方式の機器間を接続しやすい。
制御情報に誤り検出符号や誤り訂正符号を付加して、伝送途上で生じたデータの破損・欠落を受信側で検知して修復したり、送信側へ再送要求を送ることもできる。制御情報で優先度を指定して、音声通話などリアルタイム性の高いデータを優先的に転送するといった制御もできる。
複数の経路から一つを選択したり別の経路に変更することも容易で、障害発生時に問題箇所を迂回して通信を続行するといった制御を行いやすい。経路の途中で混雑する機器や回線があると通信が遅延したり中断することがあり、通信速度や遅延時間の保証などは行いにくい。
応用
1960年代にインターネットの原型となる研究用コンピュータネットワークの通信方式として考案された。1990年代に構内ネットワーク(LAN)やインターネットが普及すると、コンピュータを始めとするデジタル機器の通信方式として浸透した。
一方、電話網などは伝統的に回線交換方式で運用されてきており、携帯電話では同じ無線ネットワークを用いて音声通話を回線交換、データ通信を蓄積交換で提供していた。このため、携帯電話では「パケット交換方式」という用語を(音声通話と対比して)データ通信を指す用語として用いる。
現代では、回線交換方式の通信網や通信方式は徐々に廃止され、音声通話などもパケット交換方式で実現するようになっている。例えば、メタル回線によるアナログ電話は光ファイバー回線によるIP電話(光電話)に、スマートフォンの通話機能は回線交換からVoLTEのようなパケット通信方式に移行が進んでいる。
パケット通信 【パケット交換方式】
通信ネットワークにおけるデータの伝送方式の一つで、データを小さな単位に分割して個別に送受信する方式。通信を行う二者が伝送経路を占有せずに通信できる。
一定の大きさに分割されたデータのことを「パケット」(packet:小包)という。パケットには送りたいデータ本体(ペイロード)の他に、送信元や宛先の所在を表すアドレスなどの制御情報が付加される。
送信側の機器は送りたいデータを通信規格などで定められた長さごとに分割し、制御情報を付加して順番に送信する。通信経路上の中継機器は受け取ったパケットをいったん自身の記憶装置に格納し、次の中継装置へ順次送り出す。
これを繰り返して受信側の機器までパケット群を届け、受信側ではパケットからデータ取り出して順番に連結し、元のデータに復元する。このような伝送方式は「蓄積交換」(store and forward:ストアアンドフォワード)とも呼ばれる。
一方、回線網上の二地点間を結ぶ経路を交換機で中継し、両端の機器が通信中はこれを独占的に利用する通信方式を「回線交換方式」(circuit switching)という。歴史的には通信システムはアナログ電話回線など回線交換方式から発展したが、コンピュータネットワークやデータ通信の普及とともにパケット通信が一般的になっている。
主な特徴
パケット通信は回線交換のように通信中に伝送経路上の資源を占有しないため、中継機器などの設備、通信回線・電波などの伝送媒体を効率よく利用できる。中継時にデータを通信機器内に蓄積してから送り出すため、異なる通信速度や通信方式の機器間を接続しやすい。
制御情報に誤り検出符号や誤り訂正符号を付加して、伝送途上で生じたデータの破損・欠落を受信側で検知して修復したり、送信側へ再送要求を送ることもできる。制御情報で優先度を指定して、音声通話などリアルタイム性の高いデータを優先的に転送するといった制御もできる。
複数の経路から一つを選択したり別の経路に変更することも容易で、障害発生時に問題箇所を迂回して通信を続行するといった制御を行いやすい。経路の途中で混雑する機器や回線があると通信が遅延したり中断することがあり、通信速度や遅延時間の保証などは行いにくい。
応用
1960年代にインターネットの原型となる研究用コンピュータネットワークの通信方式として考案された。1990年代に構内ネットワーク(LAN)やインターネットが普及すると、コンピュータを始めとするデジタル機器の通信方式として浸透した。
一方、電話網などは伝統的に回線交換方式で運用されてきており、携帯電話では同じ無線ネットワークを用いて音声通話を回線交換、データ通信を蓄積交換で提供していた。このため、携帯電話では「パケット通信」という用語を(音声通話と対比して)データ通信を指す用語として用いる。
現代では、回線交換方式の通信網や通信方式は徐々に廃止され、音声通話などもパケット通信で実現するようになっている。例えば、メタル回線によるアナログ電話は光ファイバー回線によるIP電話(光電話)に、スマートフォンの通話機能は回線交換からVoLTEのようなパケット通信方式に移行が進んでいる。
ヘッダ 【ヘッダー】 ⭐⭐
データや文書の本体の先頭に付け加えられる、そのデータや文書自体についての情報を記述した部分のこと。
通信プロトコル(通信規約)の仕様ではデータの送受信単位(フレームやデータグラム、パケットなど)のデータ形式を定義しているが、多くの場合、その先頭部分に決まった記述形式や長さで制御情報を記載するよう定めており、この部分をヘッダという。送りたいデータの本体はヘッダに続く領域に格納され、これをペイロード(payload)あるいはボディ(body)などという。
例えば、電子メールのヘッダ領域には、差出人のメールアドレスや宛先アドレス、発信日時、件名、本文の文字コードなどが記載され、送受信や転送、表示を行うソフトウェアはこの部分を見て様々な処理や判断を行う。
ファイル形式の規格などでも、先頭部分をデータ自体についての属性や設定などのデータを格納するヘッダ領域と定めており、後続の領域にデータ本体を格納する。例えば、画像ファイルであれば、先頭に縦横のピクセル数や解像度、色情報、撮影日時、圧縮方式のパラメータなど、個々の画素や部分ではなくデータ全体に関わる情報が格納される。
ヘッダはプロトコルやファイル形式ごとに定められており、階層型のプロトコルを用いて通信を行うと、実際に送受信されるデータの塊は例えば、Ethernetヘッダ+(Ethernetペイロード:IPヘッダ+(IPペイロード:TCPヘッダ+(TCPペイロード:HTTPヘッダ+(HTTPボディ:HTMLヘッダ+HTMLボディ)))) といった多重の入れ子構造となり、それぞれの階層についてヘッダが記述される。
文書や印刷物のヘッダー領域
ワープロ文書などで、各ページの本文より上のページ上端に設けられた短冊状の領域をヘッダーという。本文とは別に各ページに共通する項目を文書全体に渡って指定することができる。
具体的な内容は利用者が指定・選択することができ、文書名や章題、日付、ロゴ画像などを固定的に表示するのに使われることが多い。ソフトウェアによって、文書の属性の一部として指定する場合(文書作成ソフトなど)と、印刷時に印刷設定として指定する場合(Webブラウザの印刷機能など)がある。
同様に、本文より下のページ下端に設けられた短冊状の領域を「フッター」(footer/「フッタ」とも表記される)と呼び、ページ数や著作権表示、脚注などが記載されることが多い。
パリティビット 【パリティデータ】 ⭐⭐
データの伝送や記録の際に生じる誤りを検知できるように算出・付加される符号の一つで、ビット列中に含まれる「1」の数が偶数か奇数かを表すもの。これを利用した誤り検出方式を「パリティチェック」(parity check)という。
データを0と1が並んだビット列で表したときに、各ビットの値を足し合わせた値が奇数であるか偶数であるか(「1」の数が奇数か偶数か)を1ビットの値として表す。
和が奇数のときに1とする(偶数なら0)ものを「偶数パリティ」(even parity)、偶数のときに1とするものを「奇数パリティ」(odd parity)という。パリティを足すことでどのビット列も偶奇性が同じになる(偶数パリティを含めた全ビットの和は常に偶数)という意味でこのように呼ばれる。
データの送り手(送信者や書き込み時)は元のデータに対して一定の長さごとにパリティビットを算出して付加する。受け手(受信者や読み込み時)は受け取ったデータから同じようにパリティビットを算出し、付加されたパリティビットと比較する。
両者のパリティビットが一致すれば、パリティを含めたビット列中には誤りが存在しないか偶数個存在し、一致しなければ奇数個の誤りが生じていることが分かる。一つのパリティビットだけではどの位置に誤りがあるかは分からず、正しい値に訂正することはできない。
バースト誤りのような特殊な状況を除き、通常の用途では短いビット列中に同時に複数の誤りが生じる可能性は低いため、実用上はパリティビットが一致しなければ1ビットの誤りが含まれ、一致すれば誤りが生じていないとみなすことが多い。
パリティチェック 【奇偶検査】 ⭐
データの誤り検出方式の一つで、ビット列中に含まれる「1」の数が偶数か奇数かを表す符号を算出してデータに付加する手法。最も単純な誤り訂正符号で、1ビットの誤り検出しかできないが算出や検証が容易で高速なため広く普及している。
データはコンピュータ上では「0」と「1」が並んだビット列として表されるが、これを一定の長さのブロックごとに区切り、各ビットの値を足し合わせた値が奇数であるか偶数であるか(「1」の数が奇数か偶数か)を表す1ビットの値(パリティビット)を末尾に付加する。
パリティを含むデータを受け取った側は、各ブロックごとに同じようにパリティを算出し、付加されたものと比較する。両者が一致すれば、そのブロックには誤りが存在しないか偶数個あることが分かり、一致しなければ奇数個の誤りがあることが分かる。
実用上、短く区切られたブロック中に同時に複数の誤りが生じる確率は低いため、パリティが一致すれば誤りが無く、一致しなければ1ビットの誤りが生じたとみなしてデータの再送や破棄などの制御を行う。
偶数パリティと奇数パリティ
パリティビットの値は、ブロックの各ビットとパリティを足し合わせた時、その偶奇性が常に同じになるように設定される。
全体の和が偶数になるように決められる(ブロック中の1の数が奇数なら1、偶数なら0)ものを「偶数パリティ」(even parity)、奇数になるように決められる(1の数が奇数なら0、偶数なら1)ものを「奇数パリティ」(odd parity)という。
水平パリティと垂直パリティ
一定の長さのブロックごとにパリティを算出して末尾に付加する方式を「垂直パリティ」(vertical parity)と呼び、単にパリティチェックといった場合はこの方式を指すことが多い。
一方、連続する数ブロックごとに、各ブロックの同じ位置にあるビット群をグループ化してパリティを算出・付与する方式を「水平パリティ」(horizontal parity)という。
両者を併用した「垂直水平パリティ」が用いられる場合もあり、パリティ用の記憶容量は約2倍必要になるが、同じブロック中の偶数個の誤りを検出したり、1ビットの誤りの訂正を行うことができる。
bps 【ビット毎秒】 ⭐
通信回線などのデータ伝送速度の単位で、1秒間に伝送できるデータのビット数のこと。1bpsは毎秒1ビットのデータを伝送できることを表す。
コンピュータなどのデジタル機器では、ありとあらゆる情報を2進数の「0」と「1」の羅列であるデジタルデータとして表現し、2進数の1桁にあたる「0」または「1」で表される情報量を「ビット」(bit)と呼ぶ。デジタル信号を送受信できる伝送路で、1秒間に送ることができるビット数をbpsという単位で表す。
大きな値を表す場合には1000倍ごとに接頭辞を付加し、1000bpsを「1kbps」(キロbps)、100万bpsを「1Mbps」(メガbps)、10億bpsを「1Gbps」(ギガbps)、1兆bpsを「1Tbps」(テラbps)といったように表記する。
1kbpsを1024bps、1Mbpsを1024kbps…のように1024(2の10乗)倍ごとに区切る場合や、「k」と小文字で書いた場合は1000倍、「K」と大文字で書いた場合は1024倍などとする場合もあったが、IEC(国際電気標準会議)は1024倍を表す場合は「Ki」(キビ)、「Mi」(メビ、ミービ)など専用の接頭辞を用いて表記するよう勧告しており、このような混乱や使い分けは収束しつつある。
同じデジタル回線の伝送速度の単位に「Bytes/s」(B/s、バイト毎秒)があるが、1バイトは8ビットなので、1Byte/sは8bpsに相当する。厳密な使い分けの基準があるわけではないが、主にネットワーク回線など機器間を結ぶ比較的距離の長い通信ではbpsが、機器内部の回路間や装置間、コンピュータと周辺機器間など短距離の伝送路ではバイト毎秒がよく用いられる。
移動体通信 【モバイル通信】
電波などを用いる無線通信のうち、端末の一方あるいは両方を、特定の固定局の通信範囲を越える広い範囲で移動することができるもの。
無線通信でも無線LAN(Wi-Fi)やFWA(固定無線アクセス)、コードレス電話のように端末の位置が狭い範囲で固定的な(広域的な移動を前提とした仕組みのない)ものは含まれない。
広義には、警察無線やタクシー無線のような業務用無線、トランシーバーやワイヤレスマイク/インカムなどの特定小電力無線、アマチュア無線などを含むが、狭義には、通信事業者が加入者に提供する公衆無線通信サービス、すなわち携帯電話や移動体データ通信、衛星電話などを指す。
日本では1968年に当時の日本電信電話公社(電電公社)がページャ(サービス名は「ポケットベル」)を開始したのが始まりで、1979年に自動車電話、1982年に衛星電話(インマルサット)、1985年に携帯電話(サービス自体は自動車電話と同一だが初の非車載端末が登場)がそれぞれ開始された。2010年代には携帯電話の人口普及率が9割を超え、国民的な通信インフラとして浸透した。
セルラー方式 【セルラーネットワーク】
限られた周波数帯で広範囲をカバーすることができる無線通信の方式の一つで、地域を一定の広さの小さな区画に分割し、それぞれの中心に基地局を設けて範囲内の端末と通信させるもの。基地局を核に隙間なく並んだ通信エリアを細胞(cell)になぞらえた名称である。
地形や障害物の影響を無視すれば基地局からの電波は同心円状に減衰するため、各基地局は自らを中心とする一定の半径の円の範囲内にある端末と通信することができる。この円形の通信エリアを「セル」(cell)と呼び、これを隙間なく敷き詰めることで、その地域全体に同一の通信サービスを一定の品質で提供することができる。
各セルの辺縁部は近隣のセルの基地局の電波も届くため、隣接する基地局同士は別の周波数帯を用いる必要がある。十分離れたセル同士は干渉しないため、実際には一つおきに同じ周波数を繰り返し再利用することができ、数種類の周波数帯を用意すれば広範囲をカバーすることができる。
セルラー方式は携帯電話(移動体通信)を実現する有力な方式として広く普及したため、アメリカ英語では携帯電話のことを “cellular phone” あるいは “cell phone” という(イギリス英語では “mobile phone” )。
「セルラー」の語は日本でも携帯電話を指す言葉として用いられることがあり、例えばタブレット端末のモデル名でWi-Fiモデルと対比して移動体通信対応のものを「セルラーモデル」と呼んだり、移動体通信事業者の社名などで「○○セルラー」などの名称が採用されることがある。
ネットワーク 【ネット】 ⭐⭐
「網」という意味の英単語。網そのものを指す用法の他に、複数の要素が互いに接続された網状の構造のことを比喩的にネットワークという。
ネットワーク状の構造を構成する各要素のことを「ノード」(node)、ノード間の繋がりのことを「リンク」(link)あるいは「エッジ」(edge)と言う。
ITの分野では、複数のコンピュータや電子機器などを繋いで信号やデータ、情報をやりとりすることができるコンピュータネットワークあるいは通信ネットワークのことを意味することが多い。
一般の外来語としては、人間関係の広がりのことや、組織や集団、拠点などの間の繋がりや体系、交通機関や道路などの地理的な構造(交通網)などをネットワークと呼ぶ。
コンピュータネットワーク ⭐
コンピュータネットワークとは、複数のコンピュータを信号線や無線で接続し、互いにデータの送受信ができるようにした通信網。通常は3台以上の機器が結ばれたものを指す。
規模や通信範囲の違いによって、WAN(Wide Area Network:広域ネットワーク)やLAN(Local Area Network:構内ネットワーク)に分類される。MAN(Metropolitan Area Network)やCAN(Campus Area Network)、PAN(Personal Area Network)など、より詳細な分類が用いられることもある。
また、伝送媒体や通信規格、通信規約(プロトコル)など技術的な仕様の違いに着目して分類することもある。イーサネット(Ethernet)、無線LAN(Wi-Fi)、光ファイバー(FTTH)、移動体データ通信(モバイルデータ通信)などである。
現代では世界中の様々な異なる主体の運営するネットワークを同一の通信規約(IP:Internet Protocol)に基づいて相互接続した「インターネット」(the Internet)が普及しており、これと対比して組織内のネットワークを「ローカルネットワーク」「プライベートネットワーク」「イントラネット」などと呼ぶこともある。
WAN 【Wide Area Network】 ⭐⭐⭐
地理的に離れた地点間を結ぶ広域的な通信ネットワーク。建物内や敷地内を構内ネットワークと対比される用語で、通信事業者が設置・運用する回線網のことを指すことが多い。
また、通信事業者の回線網を通じて複数の拠点間のLANを相互に結び、全体として一つの大きなネットワークとした企業内ネットワークのことをWANと呼ぶこともある。
文脈によっては、世界の通信事業者、企業、各種組織などのネットワークを相互に結んだものという意味合いから、インターネットのことをWANと呼ぶ場合もある。
MAN (Metropolitan Area Network)
広域的な回線網のうち、一つの都市や市街地の内部を繋ぐ高速・高密度な回線網をMAN(マン/Metropolitan Area Network:メトロポリタンエリアネットワーク)と呼ぶことがある。
WANとLANの中間規模のネットワークの類型の一つで、通信拠点や施設間を光ファイバー回線などで結ぶ中長距離の高速な通信ネットワークと、建物内で末端のコンピュータや通信機器を結ぶLANを組み合わせて構築される。前者の拠点間ネットワークのみを指す場合もある。
CAN (Campus Area Network)
企業の大規模拠点や工場、大学、基地などで、広大な敷地内の建物や施設をまたいで敷設される構内ネットワークをCAN(キャン/Campus Area Network:キャンパスエリアネットワーク)と呼ぶことがある。
WANとLANの中間規模のネットワークの類型の一つで、複数の施設内のLANを地中などに敷設した高速な光ファイバー回線などで相互接続し、一体的に運用したものを指す。
概ね、単一の主体が所有・管理する地理的に連続した用地に敷設されたコンピュータネットワークをこのように呼ぶが、MANとの区別は必ずしも明確ではない。一つの街のように広大なアメリカの総合大学や大企業本社などでは構内ネットワークをMANと呼ぶ例も見られる。
プロトコル 【通信規約】 ⭐⭐⭐
手順、手続き、外交儀礼、議定書、協定などの意味を持つ英単語。IT分野では、複数の主体が滞りなく信号やデータ、情報を相互に伝送できるように定められた約束事や手順である「通信プロトコル」を指すことが多い。他分野や一般の外来語としては「規定の手順」などの意味で用いられることもある。
コンピュータ内部で回路や装置の間で信号を送受信する際や、通信回線やネットワークを介してコンピュータや通信機器がデータを送受信する際に、それぞれの分野で定められたプロトコルを用いて通信を行う。英語しか使えない人と日本語しか使えない人では会話ができないように、対応しているプロトコルが異なると通信することができない。
機器やソフトウェアの開発元が独自に仕様を策定し、自社製品のみで使用されるクローズドなプロトコルと、業界団体や標準化機関などが仕様を標準化して公開し、異なる開発主体の製品間で横断的に使用できるオープンなプロトコルがある。インターネットなどで用いられるプロトコルの多くは、IETF(Internet Engineering Task Force)などが公開している標準プロトコルである。
プロトコルの階層化
<$Img:TCP-IP-Layer-Model.png|right|TCP/IP階層モデル[PD]>人間同士が意思疎通を行う場合に、どの言語を使うか(日本語か英語か)、どんな媒体を使って伝達するか(電話か手紙か)、というように伝達の仕方をいくつかの異なる階層に分けて考えることができるが、コンピュータ通信においても、プロトコルの役割を複数の階層に分けて考える。
階層化することによって、上位のプロトコル(を実装したソフトウェア)は自分のすぐ下のプロトコルの使い方(インターフェース)さえ知っていれば、それより下で何が起きているかを気にせずに通信を行うことができる。電話機の操作法さえ知っていれば、地中の通信ケーブルや通信会社の施設で何が起きているか知らなくても通話できるのに似ている。
各階層のプロトコル群の機能や役割の範囲はモデル化して整理することがある。現在広く普及しているのはインターネット通信などで一般的な「TCP/IP階層モデル」(DARPAモデル)で、物理的な装置や伝送媒体に近い側から順に「リンク層」「インターネット層」「トランスポート層」「アプリケーション層」の4階層に分類している。
OSI参照モデル 【OSI reference model】 ⭐
コンピュータネットワークで様々な種類のデータ通信を行うために機器やソフトウェア、通信規約(プロトコル)などが持つべき機能や仕様を複数の階層に分割・整理したモデルの一つ。1980年代にCCITT(現在のITU-T)が策定した標準規格。
異機種間のデータ通信を実現するためのネットワーク構造の設計方針「OSI」(Open Systems Interconnection)に基づき、通信機能を7階層に分けて各層ごとに標準的な機能モジュールを定義している。
1984年にISO(国際標準化機構)と当時のCCITT(国際電信電話諮問委員会/現在のITU-T)が共同で策定した規格で、ISO側ではISO 7498として、CCITT側ではX.200として発行された。現代ではOSIを参照しないTCP/IPが事実上の標準として広く普及しているため、OSI参照モデルはほぼ有名無実化している。
第1層(L1:Layer 1)は「物理層」(physical layer)とも呼ばれ、データを通信回線に送出するための物理的な変換や機械的な作業を受け持つ。ピンの形状やケーブルの特性、電気信号や光信号、無線電波の形式などの仕様が含まれる。
第2層(L2:Layer 2)は「データリンク層」(data link layer)とも呼ばれ、回線やネットワークで物理的に繋がれた二台の機器の間でデータの受け渡しを行う。通信相手の識別や認識、伝送路上の信号の衝突の検知や回避、データの送受信単位(フレーム)への分割や組み立て、伝送途上での誤り検知・訂正などの仕様が含まれる。
第3層(L3:Layer 3)は「ネットワーク層」(network layer)とも呼ばれ、物理的な複数のネットワークを接続し、全体を一つのネットワークとして相互に通信可能な状態にする。ネットワーク内のアドレス(識別符号)の形式や割当の方式、ネットワークをまたいで相手方までデータを届けるための伝送経路の選択などの仕様が含まれる。
第4層(L4:Layer 4)は「トランスポート層」(transport layer)とも呼ばれ、データの送信元と送信先の間での制御や通知、交渉などを担う。相手方まで確実に効率よくデータを届けるためのコネクション(仮想的な専用伝送路)の確立や切断、データ圧縮、誤り検出・訂正、再送制御などの仕様が含まれる。
第5層(L5:Layer 5)は「セッション層」(session layer)とも呼ばれ、連続する対話的な通信の開始や終了、同一性の維持などを行う。アプリケーション間が連携して状態を共有し、一連の処理を一つのまとまり(セッション)として管理する機能を実現するもので、利用者の認証やログイン、ログアウトなどの状態管理を行う。
第6層(L6:Layer 6)は「プレゼンテーション層」(presentation layer)とも呼ばれ、アプリケーション間でやり取りされるデータの表現形式を定義する。通信に用いられるデータのファイル形式やデータ形式、暗号化や圧縮、文字コードの定義や形式間の変換などの仕様が含まれる。
第7層(L7:Layer 7)は「アプリケーション層」(application layer)とも呼ばれ、具体的なシステムやサービスに必要な機能を実装する。最上位の階層で、利用者が操作するソフトウェアが提供する具体的な機能や通信手順、データ形式などの仕様が含まれる。
クライアント ⭐⭐⭐
顧客、依頼人、得意先、施主などの意味を持つ英単語。ITの分野では、他のコンピュータやソフトウェアから機能や情報の提供を受けるコンピュータやソフトウェアのことをクライアントという。
コンピュータシステムの構成のうち、機能や情報を提供する側である「サーバ」(server)と、機能や情報の提供を受けて利用する側である「クライアント」(client)に役割を分けた方式を「クライアントサーバシステム」(client-server model)という。
クライアントはサーバの機能や情報の提供を受け、自らは利用者への情報の提示や入力・操作の受け付けなどを担当することが多い。クライアントがサーバに処理要求(リクエスト)を送り、サーバがこれに応じて処理を行い、結果を返答(レスポンス)する、という形で一連の処理が進められる。
コンピュータ(ハードウェア)のことを明示的に指し示す場合は「クライアントコンピュータ」「クライアントマシン」「クライアント機」などと呼ばれ、ソフトウェアのことを指す場合は「クライアントソフト」「クライアントソフトウェア」「クライアントプログラム」などと呼ばれる。また、「メールクライアント」「DHCPクライアント」のように、システムや通信方式などの種類を冠して「○○クライアント」と称することも多い。
ファットクライアントとシンクライアント
企業の情報システムなどのクライアントコンピュータのうち、パソコンなど単体でも利用される汎用コンピュータを流用したものを「ファットクライアント」(fat client)、独立したコンピュータとしては機能せず、サーバへ接続して利用することに特化した特殊なクライアント専用機を「シンクライアント」(thin client)という。
シンクライアントは企業などで多数のクライアントが必要な場合に、管理コスト低減やセキュリティ向上のために導入される。自らはデータの処理・保存などの能力をほとんどまったく持たず、通信・入出力機能のみの構成としたものは「ゼロクライアント」(zero client)と呼ばれることもある。
ターミナルとの違い
大型コンピュータ(メインフレーム)などの分野では、コンピュータ本体など集中的に処理を行う機械を「ホスト」(host)、利用者が操作する端末装置を「ターミナル」(terminal)と呼ぶことがある。
これらはサーバとクライアントの役割分担に似ているが、ターミナルにはコンピュータとしての機能が(ほとんど)なく本質的には入出力装置のセットに過ぎない一方、クライアントは独立した一台のコンピュータとして、サーバから受信したデータを用いて複雑な処理や表示、操作などを利用者に提供することができる。
サーバ 【サーバー】 ⭐⭐⭐
コンピュータネットワークにおいて、他のコンピュータに対し、自身の持っている機能やサービス、データなどを提供するコンピュータのこと。また、そのような機能を持ったソフトウェア。
コンピュータ(ハードウェア)のことを明示的に指し示す場合は「サーバコンピュータ」「サーバマシン」「サーバ機」などと呼ばれ、ソフトウェアのことを指す場合は「サーバソフト」「サーバソフトウェア」「サーバプログラム」などと呼ばれる。「SV」「srv」「srv」などの略号で示されることもある。
一方、ネットワークを通じてサーバにアクセスし、その機能やサービス、データなどを受信したり利用したりするコンピュータやソフトウェアは「クライアント」(client)と呼ばれる。WebサーバにアクセスするためのWebブラウザなどが該当する。サーバとクライアントを組み合わせて構成するシステム「クライアントサーバシステム」という。
いわゆる大型汎用機(メインフレーム)などの分野では、実際の処理を担うコンピュータ本体や内部で動作するソフトウェアを「ホスト」(host)、ホストへ接続してデータ入力や画面出力を行なう装置やソフトウェアを「ターミナル」(terminal)と呼ぶ。
一般の外来語としては「ウォーターサーバー」のように末尾に長音記号「ー」を付す表記・発音が一般的だが、ITの分野では歴史的に3音以上の末尾にある “-r” 音の長音記号を省略する慣例があり、「サーバ」と表記することが多い。近年では一般的な表記にならって「サーバー」と表記する例も増えている。
サーバの種類
通常、個々のサーバ機やサーバソフトは外部に提供する機能やサービス、対応しているデータ形式やプロトコル(通信規約)が決まっており、「データベースサーバ」「Webサーバ」「ファイルサーバ」のように、提供する機能などの種類を冠して「○○サーバ」と呼ぶ。
サーバコンピュータは多数のクライアントからの処理要求に応えるため、内部の装置に高性能・大容量のものを搭載することが多い。タワー型サーバなどパソコンと同じような形態の機種と、ブレードサーバやラックマウントサーバなどサーバ専用の形態で提供される製品がある。
企業などの情報システムでサーバをクライアントと同じ建物に設置して自社運用する方式を「オンプレミス」(on-premise)という。一方、専門の事業者が運用するデータセンターに設置されたサーバを間借りしてインターネットや専用回線を通じて利用する方式を「クラウド」(cloud)という。
LAN 【Local Area Network】 ⭐⭐⭐
限られた範囲内にあるコンピュータや通信機器、情報機器などをケーブルや無線電波などで接続し、相互にデータ通信できるようにしたネットワークのこと。概ね室内あるいは建物内程度の広さで構築されるものを指す。
銅線や光ファイバーなどを用いた通信ケーブルで機器間を接続するものを「有線LAN」(wired LAN)、電波などを用いた無線通信で接続するものを「無線LAN」(wireless LAN)という。
有線LANの通信方式としては「イーサネット」(Ethernet/IEEE 802.3)系諸規格が、無線LANの通信方式としては「Wi-Fi」(ワイファイ/IEEE 802.11)系諸規格がそれぞれ標準として普及しており、単にLANといった場合はこれらの方式を用いたネットワークを指すことが多い。他にも建物内に電気を供給するために張り巡らされた電力線を流用して通信する方式などがある。
主な用途
1980年代頃から企業や公的機関、大学、研究機関などで普及し始め、施設内にあるコンピュータを相互に接続し、高機能・高性能なサーバコンピュータでファイルなどの情報資源を一元的に管理したり、プリンタなどの機器を複数のコンピュータで共有するのに用いられてきた。
インターネットの一般への普及が始まると、構内の機器を外部への回線に接続する中継手段としても広く用いられるようになった。近年では一般家庭でもパソコンやスマートフォン、デジタル家電などを相互に接続したり、インターネットに接続するための通信ネットワークとして「家庭内LAN」が普及している。
他の分類
これに対し、通信事業者の回線網などを通じて地理的に離れた機器や施設間を広域的に結ぶネットワークを「WAN」(Wide Area Network:広域通信網、ワイドエリアネットワーク)と呼び、LANの対義語として用いられる。
LANとWANの中間規模のネットワークとして、一都市内などに収まる範囲の「MAN」(Metropolitan Area Network:メトロポリタンエリアネットワーク)や、大学のキャンパスや工場などで敷地内の複数の建物のLANを一つのネットワークに結んだ「CAN」(Campus Area Network:キャンパスエリアネットワーク)などの概念を用いることもある。
また、LANに似た概念として、個人の所有・利用するコンピュータや携帯機器、周辺機器などを無線通信などで相互に結ぶネットワークを「PAN」(Personal Area Network:パーソナルエリアネットワーク)、自動車などの(大型の)機器の内部で装置間を結ぶネットワークを「CAN」(Controller Area Network:コントローラエリアネットワーク)、これらをLANの一種に分類することもある。
有線LAN 【wired LAN】 ⭐
室内や建物内、敷地内の機器を結ぶ構内ネットワークのうち、信号の伝送媒体として通信ケーブルを用いるもの。ケーブルの敷設や取り回しが必須だが、伝送速度が高速でセキュリティを高めやすい。
構内に通信ケーブルを配線し、コンピュータや通信機器、電子機器などを繋いで相互に通信を行う。大きく分けて、銅線などでできたメタルケーブルに電気信号を流す方式と、ガラスや透明なプラスチックでできた光ファイバーに光信号を流す方式がある。
1980年代頃までは様々な方式が開発され機種や用途により使い分けられていたが、現在では概ね「イーサネット」(Ethernet)と総称される規格が事実上の標準として広く普及している。
中でもRJ45コネクタのUTPケーブル(非シールドより対線ケーブル)を用いて100Mbps(メガビット毎秒)で通信できる100BASE-TX(Fast Ethernet)や1Gbps(ギガビット毎秒)で通信できる1000BASE-T(Gigabit Ethernet)などの規格が有名で、単に有線LANと言えばこれらの方式を指すことが多い。
一方、電波による無線通信でネットワークを構築する方式は「無線LAN」(wireless LAN)という。有線LANは配線の手間がかかり機器の配置や移動の自由度は低いが、機密性を確保しやすく同一空間内での機器や回線の密度を高めやすいという特徴があり、同じ世代の技術で比較すると通信速度が高速である。
パソコンやスマートフォンなどにWi-Fi接続が広く浸透した現在でも、施設内に固定的に設置されるサーバコンピュータや通信機器などは有線LANで接続するのが一般的である。
イーサネット 【Ethernet】 ⭐
主に室内や建物内でコンピュータや電子機器をケーブルで繋いで通信する有線LAN(構内ネットワーク)の標準の一つで、最も普及している規格。同じイーサネット規格に対応した機器同士ならメーカーや機器の種類などが異なっていても接続して通信することができる。
通信ケーブルを用いてコンピュータや通信機器などを相互に接続する構内ネットワーク(LAN)の標準規格の一つで、ネットワークスイッチなどの集線装置を介して3台以上の機器が相互に通信できるようにする。企業などの組織内や家庭内のネットワーク、データセンターや通信事業者のネットワークで広く普及している。
金属線ケーブル(ツイストペアケーブル)に電気信号を流す方式と、光ファイバーケーブルに光信号を流す方式がある。一般に広く普及しているのは前者で、ケーブルが取り回しやすく装置が安価という特徴がある。光ファイバー規格は長距離を高速に通信することができ、通信事業者の内部ネットワークなど事業用途で普及している。
「イーサネット」という名称は、狭義には最も初期に策定された通信速度10Mbps(メガビット毎秒)の諸規格(10BASE-Tなど)を指すが、現代では、その後に登場した100Mbpsの「Fast Ethernet」、1Gbps(ギガビット毎秒)の「Gigabit Ethernet」、10Gbpsの「10Gigabit Ethernet」などの後継規格の総称を意味するのが一般的である。
接続形態
<$Img:Ethernet3.jpg|right|Bru-nO|https://pixabay.com/photos/switch-network-data-processing-it-2064090/>初期には一本の通信ケーブルに複数の端末を接続するバス型なども用いられたが、ほとんどの規格では各端末に接続されたケーブルを「ハブ」(hub)や「ネットワークスイッチ」(network switch)などの集線装置で相互に接続するスター型を採用している。
最も単純な構造の集線装置は「リピータハブ」(repeater hub)と呼ばれ、接続された端末から送られてきた信号をすべての端末に機械的に送り返す。このため、物理的にはスター型だが論理的な接続形態はバス型となっている。
現在一般的に使われるのはネットワークスイッチあるいは「スイッチングハブ」(switching hub)と呼ばれる集線装置で、端末から送られてきたフレームの制御情報に記載された宛先を見て関係のあるポートにのみ転送するという処理を行う。不要な通信が流れないため通信効率が高い。
送受信単位
イーサネットではデータを「フレーム」(Ethernet frame)と呼ばれる一定のデータ量の送信単位に分割して送受信する。一つの端末がデータを送信し終えるまで他の端末が待つ必要がなく、多数の機器が同じネットワークで並行して送受信処理を進めることができる。
フレームの先頭には宛先や送信元などを記した「ヘッダ」(header)と呼ばれる制御情報が記載され、続いて送りたいデータ本体を格納した可変長の「ペイロード」(payload)、末尾に4バイト(32ビット)の誤り訂正符号(FCS:Frame Check Sequence)が格納される。
ヘッダは通信制御のための情報が記載された領域で、先頭から順に宛先MACアドレス(6バイト)、送信元MACアドレス(6バイト)、VLANタグ(4バイト/オプションのため省略可)、データ長(2バイト/古い規格では通信タイプ)となっている。
ペイロードは通常1500バイトまでと規定されており、これを超える長さのデータを送りたい場合は複数のフレームに分割して送信し、受信側で元のデータに組み立てる処理を行う。時代が下り通信速度が高まるに連れて1500バイトでは非効率になってきたため、ギガビットイーサネット以降は数千バイトを一度に送れる「ジャンボフレーム」技術が採用されている。
初期の規格
最初のイーサネット仕様は1980年に米ゼロックス(Xerox)社(当時)と米ディジタル・イクイップメント(DEC:Digital Equitment Corporation)社(当時)によって考案され、1983年に電気通信の標準化団体の一つであるIEEEの802.3委員会によって標準化された。最も狭義には(あるいは歴史的な文書などでは)これを指してイーサネットと呼ぶ。
この初期の標準では、非シールド撚り対線(UTPケーブル)を用いる規格として「1BASE5」と「10BASE-T」の二つが、同軸ケーブルを用いる規格として「10BASE5」「10BASE2」「10BROAD36」の三つが、光ファイバーを用いる規格として「10BASE-F」(FL/FB/FP)が策定された。1BASE5は通信速度1Mbps、他は10Mbpsである。実際に普及したのはほぼ10BASE-Tのみだった。
ハブ ⭐⭐⭐
車輪やプロペラなどの中心にある部品や構造のこと。転じて、中心地、結節点、集線装置などの意味で用いられる。IT分野では構内ネットワークなどで用いられる集線装置を指すことが多い。
電気通信や光通信では、機器間をケーブルで結んで通信する際に、複数のケーブルを接続して相互に通信できるようにする集線装置、中継装置のことをハブという。用途や通信方式の違いにより「イーサネットハブ」「USBハブ」など様々な種類がある。
ネットワークハブ
有線LAN(構内ネットワーク)の標準であるイーサネット(Ethernet)では、各機器からケーブルをハブに接続し、ハブが信号の中継・転送を行うことによって機器間の通信を行う。このような接続形態を「スター型ネットワーク」という。
ハブには銅線ケーブル(UTPケーブル)を差し込むためのRJ45ポートや光ファイバーケーブルを差し込むための光ポートが並んでおり、各機器から通じるケーブルを接続する。あるケーブルから流れてきた信号を他のケーブルに流すことで相互に通信できるようにする。
単純に受信したすべての信号を増幅してすべてのケーブルに再送出するハブを「リピータハブ」(repeater hub)、信号からイーサネットフレームを復元し、宛先のMACアドレスを解析して関係するケーブルにだけ選択的に転送するハブを「スイッチングハブ」(switching hub)という。
現在ではスイッチングハブが一般的になったため、ハブと呼ばずに「ネットワークスイッチ」(network switch)「イーサネットスイッチ」(Ethernet switch)「LANスイッチ」(LAN switch)「L2スイッチ」(Layer 2 switch)あるいは単にスイッチと呼ぶことが多い。
USBハブ
コンピュータと周辺機器や携帯機器の接続に用いられるUSBでは、複数の機器からの接続を受け入れてコンピュータ側に一つのUSBケーブルで接続する集線装置を「USBハブ」という。コンピュータ側は一つのUSBポートで複数の機器を接続することができる。
コンピュータ側のUSBポートに接続するためのUSBケーブルと、数個のUSBポートを備えた小型の機器で、ポートの数だけUSB機器を接続し、コンピュータへ信号を中継する。液晶ディスプレイなどにUSBハブの機能が埋め込まれて提供される場合もある。
データハブ
情報システムやソフトウェアの分野では、システム間でやり取りするデータを集積・中継する専門のシステムを「データハブ」あるいは単にハブと呼ぶことがある。SOA(サービス指向アーキテクチャ)などで用いられるミドルウェアで、データの出し手からデータを受け取って保管し、そのデータを必要とする受け手へ引き渡す役割を果たす。
無線LAN 【wireless Local Area Network】 ⭐⭐⭐
電波による無線通信により複数の機器間でデータの送受信を行なう構内ネットワークのこと。狭義にはIEEE 802.11規格に準拠した方式を指し、「Wi-Fi」(ワイファイ)の愛称で親しまれる。
LAN(Local Area Network)は室内や建物内、あるいはそれに準じる屋外の比較的狭い範囲内の機器を相互に接続するコンピュータネットワークで、機器間を通信ケーブルで繋いで電気信号や光信号を伝送するものを「有線LAN」(wired LAN)、直接繋がっていない機器間で電波などをやり取りするものを無線LANという。
通信ケーブルの取り回しがないことが最大のメリットで、同世代の技術や製品で比較すると有線LANに比べ通信速度や安定性、機密性などで劣ることが多いが、オフィスや家庭での日常的なネットワーク利用には十分な性能があるため、急速に普及が進んでいる。
単に無線LANと言えばほとんどの場合にIEEE 802.11シリーズの標準規格に準拠した機器で構成されるネットワークを指し、業界団体の推進する「Wi-Fi」の名称で普及している。広義にはBluetoothやZigBeeなど他方式によるネットワークを含むが、これらはWi-Fiよりも狭い範囲の通信が主な用途であるため無線PAN(Wireless Personal Area Network)と呼ばれることもある。
一方、同じ無線通信網でも通信事業者などが運用する広域的なネットワークは無線WAN(Wide Area Network)という。携帯電話網やそれを応用した移動体データ通信網などが該当する。スマートフォンは無線LANと無線WANの両方に対応しているのが一般的で、環境に応じて切り替えたり、両ネットワーク間を中継(テザリング/モバイルルータ)することができる。
Wi-Fi ⭐⭐
電波を用いた無線通信により近くにある機器間を相互に接続し、構内ネットワーク(LAN)を構築する技術。本来は無線LAN規格のIEEE 802.11シリーズの認証プログラムの名称だが、「無線LAN」の同義語のように扱われることが多い。
LAN(Local Area Network)は室内や建物内、あるいは屋外でそれに準じる数十メートル程度までの比較的狭い範囲内の機器を相互に接続するコンピュータネットワークで、屋内のコンピュータとインターネットの接続、オフィス内のコンピュータ間の接続、家庭内のデジタル機器間の接続などで広く普及している。
従来は集線装置を介して各機器を通信ケーブルで接続するイーサネット(Ethernet)などの有線LANが主流だったが、同じ機能を無線通信で実現する無縁LANが登場し、ケーブルを取り回す必要のない手軽さから広く受け入れられた。また、スマートフォンやタブレット端末など携帯型の情報機器のネットワーク接続手段の一つとしても標準的に用いられている。
無線LANの標準規格としてIEEE 802.11および後継の諸規格が発行されているが、機器の相互運用性を確保・保証するため、業界団体の「Wi-Fi Alliance」が接続試験を行い、認定された機器に「Wi-Fi」ブランドの利用を許可している。「Wi-Fi CERTIFIED」マークのある機器はメーカーが異なっても相互に通信することができる。
接続形態
<$Img:Wi-Fi-Access-Point.png|right|>Wi-Fiの通信は「アクセスポイント」(AP:Access Point)と呼ばれる据え置き型の中継装置を中心に各機器が接続され、機器間の通信はAPを介して行う接続形態が一般的となっている。これを「インフラストラクチャーモード」という。
無線はケーブル接続と異なり送受信対象を物理的に指定したり制限することが難しいため、周囲の機器は各APに設定されたSSIDと呼ばれる固有の識別名を用いてAPを識別する。利用者は近隣にあるAPのSSIDの一覧の中から適切なものを選択して(あるいはSSIDを直接入力・指定して)接続を申請する。
また、APが無くても少数の機器(通常は二台)間であれば相対で通信することができる「アドホックモード」および、改良版の「Wi-Fi Direct」も用意されており、携帯機器と周辺機器の接続などで用いられることがある。
屋内設置用のAPはWi-Fi通信機能の他にイーサネットケーブルの差込口(ポート)を持っているものもあり、インターネットなどに有線で接続することができる。APにルータ機能を統合した「Wi-Fiルータ」もあり、家庭用やモバイル回線中継用(モバイルルータ)としてよく用いられる。
伝送規格
<$Fig:wi-fi|right|true>無線によるデータ伝送の方式を規定した伝送規格には、標準化団体IEEEの802.11委員会が策定した規格が用いられている。これまで数年おきにより高速な新しい規格が発表されてきた。
1997年に発表された最初のIEEE 802.11標準は、2.4GHz(ギガヘルツ)帯の電波で2Mbps(メガビット毎秒)をデータ通信が可能だったが、本格的な普及が始まったのは1999年に発表されたIEEE 802.11a(5GHz/54Mbps)およびIEEE 802.11b(2.4GHz/11Mbps)からである。
2003年にはIEEE 802.11g(2.4GHz/54Mbps)、2009年にはIEEE 802.11n(2.4および5GHz/600Mbps)、2014年にはIEEE 802.11ac(5GHz/6.93Gbps)、2019年にはIEEE 802.11ax(2.4および5GHz/9.6Gbps)が策定され、近年は急激に通信速度が向上している。
実際の機器はこれらのうち前後数世代に対応しているものが主流で、製品パッケージの「Wi-Fi CERTIFIED」ロゴに「a/b」「b/g」「a/b/g/n」のように対応規格が記載されている。「ac」規格からは番号が導入され、「ac」が「Wi-Fi 5」、一世代前の「n」が「Wi-Fi 4」、一世代後の「ax」が「Wi-Fi 6」などとなっている。
セキュリティ
<$Img:Wi-Fi-Security.png|right|>機器や回線に物理的に接触する必要がある有線通信と異なり、無線では電波が壁を透過するなどして利用場所の外にまで広がり、それを誰が受信しているか直接知る手段は無いため、一般的な使用法でも傍受や不正接続への備えが不可欠となる。
Wi-Fiでは利用者の認証や通信の暗号化についての技術仕様として「WPA」(Wi-Fi Protected Access)および後継の「WPA2」「WPA3」を定めており、多くの機器が標準で対応している。家庭など小規模環境向けの「WPA-Personal」と、企業や学校など大規模環境向けの「WPA-Enterprise」がある。
接続時の認証方式としては、事前にAPと機器の間で同じパスフレーズ(長いパスワード)を設定して照合する「WPA-PSK」(Pre-Shared Key)方式がよく用いられるが、WPA-EnterpriseではIEEE 802.1X標準に基づくRADIUS認証サーバを利用する方式なども選択できる。通信の暗号化には共通鍵暗号の有力な標準規格である「AES」(Advanced Encryption Standard)を採用し、一定の通信量ごとに暗号鍵を切り替えるなどして盗聴を防止する。
「無線LAN」と「Wi-Fi」
一般に利用されている無線LANのほとんどはWi-Fiだが、本来「無線LAN」とは無線通信を用いて構築されたLANの総称であり、Wi-Fi以外にもBluetoothやZigBeeなど他方式により構築されたネットワークも形式的には含まれると考えることもできる。
また、本来「Wi-Fi」は無線LAN機器がIEEE 802.11シリーズ規格に準拠していることを示すブランド名で、Wi-Fi Allianceの登録商標だが、一般には「無線LAN」「IEEE 802.11シリーズ規格」「Wi-Fi」はほとんど同義語のように捉えられている。
なお、IEEE 802.11シリーズの仕様を採用していてもWi-Fi Allianceによる認定を受けていない機器もあり、規格の完全な準拠や他メーカー製品との相互接続などは保証されない。著名な例では任天堂の携帯ゲーム機「ニンテンドーDS」などが知られる。
アクセスポイント 【AP】 ⭐⭐
通信ネットワークの末端でコンピュータなどからの接続要求を受け付け、ネットワークへの通信を仲介する施設や機器のこと。現代では無線LANの中継機器を指すことが多い。
無線LANアクセスポイント
無線LAN(Wi-Fi)を構成する機器の一種で、ネットワーク内の機器間の通信を中継したり、有線ネットワークや有線通信の機器へ接続するための装置を無線LANアクセスポイント(無線アクセスポイント/Wi-Fiアクセスポイント)という。現代では単にアクセスポイントといった場合はこれを指すことが多い。
Wi-Fiの通常の通信モードでは、ネットワーク内の各機器はアクセスポイントと一対一で通信し、他の機器への通信はアクセスポイントが中継・転送する形で行われる。また、アクセスポイントにはイーサネット(Ethernet)や光ファイバーなどの通信ケーブルの接続口があり、これを通じて他のネットワークやインターネットなどに通信を中継することができる。
通信サービスのアクセスポイント
通信サービス事業者などが運用する施設や設備で、契約者が公衆回線などを通じて事業者のネットワークへ接続するための中継拠点のことをアクセスポイントという。00年代前半頃まではアクセスポイントといえばこれを指していた。
特に、インターネットサービスプロバイダ(ISP)やパソコン通信ネットワークに電話回線やISDN回線を通じてダイヤルアップ接続を行なう際、ダイヤル先の通信拠点のことをこのように呼んだ。
アクセスポイントにはパソコン通信のホストコンピュータやインターネットと常時接続された回線が用意されており、利用者からの接続を受け付けて通信サービスを提供する窓口となっていた。常時接続が一般的になった今日では利用者が機器に最寄りのアクセスポイントの設定などをする必要がなくなり、意識されることもなくなった。
VPN 【Virtual Private Network】 ⭐
通信事業者の公衆回線を経由して構築された仮想的な組織内ネットワーク。また、そのようなネットワークを構築できる通信サービス。企業内ネットワークの拠点間接続などに使われ、あたかも自社ネットワーク内部の通信のように遠隔地の拠点との通信が行える。
古くは電話回線(音声通話サービス)で提供されていたもので、全国に拠点を持つ大企業の内線電話などを公衆網を中継して接続するサービスだった。最近ではもっぱらデータ通信の拠点間接続サービスのことを指し、企業内LANを通信キャリアの持つバックボーンネットワークを通じて相互に接続するサービスをいう。
かつては各拠点の間に専用線を導入して直接通信していたが、キャリアのバックボーンに「相乗り」することにより低コストで拠点間接続が可能となる。バックボーンでは様々な企業のデータが混在して流れることになるが、データは認証や暗号化で厳重に保護・管理されるため、混信や漏洩、盗聴などの危険性は低い。
最近ではバックボーンにインターネットを利用する「インターネットVPN」も登場しており、通常のVPNサービスよりもさらに低コストでの利用が可能だが、インターネットの特性上、セキュリティや通信品質の確保はキャリアの通信網を利用するよりも難しくなる。
VPNルータ (VPN router)
インターネットなどの通信の中継を行うルータ製品の分類の一つで、VPN(Virtual Private Network:仮想専用ネットワーク)構築のための機能を持ったもののこと。
IPネットワーク上で経路選択やパケットの中継・転送を行う通常のルータとしての機能の他にVPNゲートウェイとしての機能を持ち、ネットワークを介して他のVPN機器との間で暗号化された専用の通信路を形成することができる。
プライベートネットワークとインターネットなどの広域通信網の境界に設置すれば、遠隔にある他のネットワークとの間でVPNを構築することができる。製品により対応している暗号化プロトコルなどに違いがあり、同じプロトコルに対応しているもの同士の間でしかVPNを構築することはできない。
ISP 【Internet Services Provider】 ⭐⭐⭐
公衆通信回線などを経由して契約者にインターネットへの接続を提供する事業者。インターネットを利用するには物理的な通信回線とは別に契約を結ぶ必要があるが、一部の通信サービスでは回線事業者が兼ねている場合もある。
大容量の通信回線でインターネットに接続された拠点施設を運用しており、サービス地域内の個人・法人と契約を結んでインターネットへの接続を請け負う。顧客との間の通信には通信会社が敷設・運用する光ファイバー回線や無線基地局などを利用する。
通信会社系や電機メーカー系などの全国をカバーする大手事業者と、特定の地域でのみ営業している地域系ISP(専業の小規模事業者やケーブルテレビ局、電力系通信会社など)がある。サービス提供は有償の場合がほとんどであり、月額固定料金制を採用している事業者が多い。
回線事業者との役割分担
ISP専業の事業者の場合、加入者宅への接続回線(アクセス回線)にはNTT東日本・西日本の「フレッツ」光ファイバー回線など、通信会社の通信サービスを利用する。契約者は通信会社との回線契約とISPとのインターネット接続契約をそれぞれ別に結ぶ必要がある。
これに対し、携帯電話事業者(移動体通信事業者)やケーブルテレビ事業者のように、回線事業者とISPを兼ね、音声通話(電話)や映像配信などと組み合わせた総合的な通信サービスの一環としてインターネット接続を提供している事業者もある。
付加サービス
多くのISP事業者は接続サービス以外にも会員向けに様々な付加サービスを提供している。例えば、専用の電子メールアドレス、Webサイトを開設できるサーバ上の専用スペース、コンピュータウイルスや迷惑メールの防除、映像や音楽などの配信サービス、オンライン決済サービス、ドメイン名の登録受付、法人向けの拠点間接続(VPN)、パソコンの接続設定などの出張代行サービス、独自のポータルサイトなどである。
こうした付加サービスには、電子メールのように接続サービスとセットで契約者全員に提供されるものと、申込制で追加料金を徴収するものがある。ポータルサイトなどはインターネットを通じて会員以外にも開放している事業者が多い。
専用線
通信事業者が顧客の拠点間接続などのために貸与する、専用の通信回線および回線網のこと。様々な顧客が共用する公衆回線・公衆網と異なり、借り受けた企業などが自社の通信のために回線を独占的に使用することができる。
相手先を指定して切り替えて接続する公衆回線と異なり、あらかじめ契約した複数の拠点間が専用の回線で常に接続され、常時通信可能な状態になる。公衆網の混雑などに影響されず安定して通信でき、また、盗聴や改竄などの危険も小さい。大企業などで複数の拠点をまたぐ内線電話網の構築や、コンピュータネットワーク(LAN)の相互接続、インターネット接続などに利用される。
料金は距離や通信容量・速度、通信品質などに応じて期間ごとの定額となっていることが多く、拠点間の通信頻度・通信量が多い場合には公衆回線を経由するより割安になる場合もある。最も安いメニューでも数十万円単位の額となるため、個人や小規模事業者の利用は一般的ではない。
類似する概念
単に専用線といった場合は、広域の回線網を保有・運用する通信会社(電気通信事業者)が顧客に提供するサービスを指すのが一般的だが、行政機関やインフラ事業者などが自身が利用するために敷設・運用している回線(私設線)を含めることもある。
専用線を使う代わりに、暗号技術を用いて公衆網やインターネット上に拠点間を結ぶ専用のネットワークを構築する手法を「VPN」(Virtual Private Network:仮想プライベートネットワーク)という。専用線ほどの信頼性や安全性は得られないが、圧倒的に安価に専用網を利用することができる。
HSD (High Super Digital/ハイスーパーディジタル)
NTTコミュニケーションズが提供していたデジタル専用線サービス。1990年に分割前の旧NTTが開始したもので、2016年3月末で終了した。
企業内ネットワークの拠点間接続などのために提供された法人向けの通信サービスで、同社の広域通信網を介して二地点間を専用回線で結んだ。帯域保証や24時間監視、障害時の回線自動切り替えなど、高い通信品質や信頼性を備えていた。伝送速度に応じて64kbps~6Mbpsまで12種類の品目が用意され、接続する拠点間の距離と速度によって月額料金が決まる定額制の料金体系となっていた。
NTTでは1984年に独自のYインターフェースによるデジタル専用線サービス(SD:Super Digital)を開始したが、ISDNの標準規格の策定などを受けて1990年にIインターフェースを採用した専用線が開始された。
公専接続
企業などが保有・占用する専用回線を、片方の端点でNTT(分割前の旧NTTおよび現NTT地域会社)の一般公衆回線と接続すること。1995年4月に自由化された。
例えば、東京と大阪に拠点を持つ企業が両者を専用回線で結んでいる場合、東京の拠点を公専接続しておけば、大阪から東京の顧客に電話をかける際、自社回線を経由することで加入電話の料金を東京からの分のみにすることができる。
公専公接続
企業などが保有・占用する専用回線を、両端でNTT(分割前の旧NTTおよび現NTT地域会社)の一般公衆回線と接続すること。1996年10月に自由化された。
加入者回線からの接続を受けて自社専用線で遠隔地へ中継し、接続先で再び加入者回線へ乗り入れるという接続形態が可能となった。これにより、いわゆる新電電(NCC)がNTT(当時)の加入者回線網を利用して低額な長距離通話サービスを開始した。顧客が長距離の通話をする場合、最寄りのNCC拠点までNTT回線で接続し(公)、相手先の最寄り拠点までNCC回線(専)、通話先へは再びNTT加入者回線(公)、という経路をたどる。
ARPANET 【Advanced Research Projects Agency Network】 ⭐
1969年に米国防総省の高等研究計画局(ARPA、現在のDARPA)が導入したコンピュータネットワーク。各地に分散した大型コンピュータ同士を通信回線で相互接続したもので、後のインターネットの原型となった。
当初は米国内の4つの大学や研究機関(カルフォルニア大学ロサンゼルス校、スタンフォード研究所、カルフォルニア大学サンタバーバラ校、ユタ大学)を繋いで開通し、その後徐々に接続拠点を増やしていった。
データを一定の長さに区切って制御情報を付してそれぞれ独立に伝送するパケット通信方式や、異なるネットワークを共通のアドレス体系や通信方式で結び、拠点間・機器間でバケツリレー式に転送を繰り返して宛先まで届ける仕組み(IPやルーティングに相当)、データの受信確認や再送制御により伝送の確実性を確保するコネクションの仕組み(TCPに相当)など、現在では当たり前に利用されている多くの技術の開発や実装、検証に用いられた。
1983年に米軍関係機関のネットワークがMILNETとして分離され、1986年には全米科学財団(NSF)が学術機関向けにNSFNETを開設、大学や研究機関などはそちらに移っていった。ARPANETからは徐々に接続拠点数が減っていき、1990年に正式に廃止された。
目的を巡る議論
ARPANETの目的について、「主要拠点が核攻撃を受けても全体が停止しない堅牢な分散型通信ネットワークを米軍が必要としていた」とする説明がよく行われるが、当時の関係者の多くは、当時の限られた大型コンピュータを地理的に離れた研究者も利用できるようにするためで核戦争に備える目的は無かったと証言している。
このような誤解が生まれたのは、当時のARPAの上級管理者の中に同趣旨の説明をする者がいたことや、ARPANETプロジェクトの直前に米軍事系シンクタンクのランド研究所がこの目的で研究を行い、ARPANETに似たパケット通信による分散ネットワークを提唱していたためとされる(ARPANET関係者は同プロジェクトとの関連を否定している)。
DARPA (ARPA)
<$Img:DARPA.jpg|right|DARPAロゴ>DARPA(Defence Advanced Research Projects Agency/国防高等研究計画局)は米連邦政府機関の一つで、国防総省の傘下で軍事技術や軍事に役立つ可能性のある科学技術の研究・開発を行う機関である。
自前の研究施設などは持たず、大学や企業、研究機関などへの委託や助成、研究プロジェクトの公募、先端技術を応用した競技会の開催などが主な事業となる。陸海空軍、海兵隊など軍そのものからは独立しており、各軍の利害や戦略などに囚われず軍事転用可能な先端的な科学技術の研究・開発を推進している。
IT分野では、現在のインターネットの原型となる広域的なパケット通信ネットワークであるARPANETでよく知られ、その名残りはネットワーク制御用データの交換に用いられる「.arpa」ドメインなどに残っている。
1958年に設立された際の名称は「ARPA」(Advanced Research Projects Agency、アーパ)だったが、1972年にDARPA(ダーパ)に改称、1993年にARPAに戻り、1996年に再びDARPAに改称され現在に至る。
TCP/IP 【Transmission Control Protocol/Internet Protocol】 ⭐⭐⭐
インターネットなどで標準的に用いられる通信プロトコル(通信手順)で、TCP(Transmission Control Protocol)とIP(Internet Protocol)を組み合わせたもの。また、TCPとIPを含む、インターネット標準のプロトコル群全体の総称。
IPは複数のネットワークを繋ぎ合わせて同じ識別番号の体系(IPアドレス)により相互に通信可能にするプロトコルで、これを用いて世界的に様々な組織の管理するネットワークを相互接続してできたオープンなネットワークを「インターネット」(Internet)と呼んでいる。
プロトコル階層
IPではプロトコル群を役割に応じて階層化して整理しており、下位プロトコルのデータ送受信単位(パケットやフレーム、データグラムなど)の中に上位プロトコルの送受信単位を入れ子状に埋め込んで運ぶ仕組み(カプセル化という)になっている。
例えば、HTTPメッセージはTCPセグメントに格納されて運搬され、TCPセグメントはIPデータグラムに格納されて運搬され、IPデータグラムはイーサネットフレームやPPPフレームなどに格納されて運搬される。上位プロトコルは下位プロトコルに運搬を依頼するだけでよく、下層で何が起きているか詳細を知る必要がない。
階層は物理的な装置や回線に近い側からリンク層、インターネット層、トランスポート層、アプリケーション層となっており、IPはインターネット層、TCPはトランスポート層のプロトコルである。リンク層はIPの関連規格群では規定せず、イーサネットやWi-Fiなど各機器が対応している通信手段を利用する。
アプリケーション層は用途やシステムの種類ごとに多種多様なプロトコルが定義されている。例えば、Webコンテンツの伝送にはHTTP(Hypertext Transfer Protocol)、電子メールの送受信にはSMTP(Simple Mail Transfer Protocol)やPOP3(Post Office Protocol)、IMAP4(Internet Mail Access Protocol)などが用いられる。
総称としての「TCP/IP」
IPネットワーク上ではIPと組み合わせてTCPではなくUDP(User Datagram Protocol)や他のプロトコルを用いることもあるが、「TCP/IP」という呼称はTCPとそれ以外を区別するという意味合いは薄く(UDPを使う場合を「UDP/IP」とはあまり呼ばない)、「IPを中心とする標準的な通信プロトコルの総称」を表すことが多い。
歴史的な経緯からそのような意味合いが定着しているが、今日ではそのような総称的な意味は「インターネットプロトコルスイート」(Internet Protocol Suite)のような用語で表すか、「IP接続」「IPネットワーク」のように単に「IP」一語で代表させるようになってきている。
TCP/IP 【Transmission Control Protocol/Internet Protocol】
インターネットなどで標準的に用いられる通信プロトコル(通信手順)で、TCP(Transmission Control Protocol)とIP(Internet Protocol)を組み合わせたもの。また、TCPとIPを含む、インターネット標準のプロトコル群全体の総称。
IPは複数のネットワークを繋ぎ合わせて同じ識別番号の体系(IPアドレス)により相互に通信可能にするプロトコルで、これを用いて世界的に様々な組織の管理するネットワークを相互接続してできたオープンなネットワークを「インターネット」(Internet)と呼んでいる。
プロトコル階層
IPではプロトコル群を役割に応じて階層化して整理しており、下位プロトコルのデータ送受信単位(パケットやフレーム、データグラムなど)の中に上位プロトコルの送受信単位を入れ子状に埋め込んで運ぶ仕組み(カプセル化という)になっている。
例えば、HTTPメッセージはTCPセグメントに格納されて運搬され、TCPセグメントはIPデータグラムに格納されて運搬され、IPデータグラムはイーサネットフレームやPPPフレームなどに格納されて運搬される。上位プロトコルは下位プロトコルに運搬を依頼するだけでよく、下層で何が起きているか詳細を知る必要がない。
階層は物理的な装置や回線に近い側からリンク層、インターネット層、トランスポート層、アプリケーション層となっており、IPはインターネット層、TCPはトランスポート層のプロトコルである。リンク層はIPの関連規格群では規定せず、イーサネットやWi-Fiなど各機器が対応している通信手段を利用する。
アプリケーション層は用途やシステムの種類ごとに多種多様なプロトコルが定義されている。例えば、Webコンテンツの伝送にはHTTP(Hypertext Transfer Protocol)、電子メールの送受信にはSMTP(Simple Mail Transfer Protocol)やPOP3(Post Office Protocol)、IMAP4(Internet Mail Access Protocol)などが用いられる。
総称としての「TCP/IP」
IPネットワーク上ではIPと組み合わせてTCPではなくUDP(User Datagram Protocol)や他のプロトコルを用いることもあるが、「インターネットプロトコルスイート」という呼称はTCPとそれ以外を区別するという意味合いは薄く(UDPを使う場合を「UDP/IP」とはあまり呼ばない)、「IPを中心とする標準的な通信プロトコルの総称」を表すことが多い。
歴史的な経緯からそのような意味合いが定着しているが、今日ではそのような総称的な意味は「インターネットプロトコルスイート」(Internet Protocol Suite)のような用語で表すか、「IP接続」「IPネットワーク」のように単に「IP」一語で代表させるようになってきている。
IPデータグラム 【IP datagram】
IP(Internet Protocol)で送受信されるデータの単位。送りたいデータ本体に、宛先などの制御情報を付加した一定の長さのデータのまとまり。
先頭部分は送信元アドレスや宛先アドレスなどの制御情報を格納したヘッダ部(IPヘッダ)となっており、続くペイロード部に送りたいデータ本体が格納される。
ペイロードの内部は上位のプロトコル(TCPやUDPなど)の送受信単位(UDPデータグラムやTCPパケット)となっており、そのペイロードの内部には、さらに上位のプロトコル(HTTPなど)のデータが積載されている。入れ子構造で上位のプロトコルのデータを運んでいる。
ヘッダには発信元IPアドレスや宛先IPアドレス、データ長、優先順位などを示すフラグなどで構成される。IPv4とIPv6では形式が異なるため、ネットワーク機器やソフトウェアはそれぞれに個別に対応している必要がある。アドレスの指定はIPv4では32ビットのIPv4アドレスで、IPv6では128ビットのIPv6アドレスで記載する。
サイズの制約とフラグメンテーション
IPの仕様上はデータグラム全体で最長65565バイトまでというサイズの制約があるが、イーサネット(Ethernet)やWi-FiなどIPパケットを伝送する下位の通信規格は1500バイトなどより短い制約が課されることが多い。
相手方までの通信経路上にある各機器が一度に送信できるサイズのうち、最も短いものを「パスMTU」という。長いデータを送りたいときは、その機器の送信できる上限もしくはパスMTUに合わせたサイズにデータを分割してIPパケットを構成する。
パケットとデータグラム
慣用的に「IPパケット」とも呼ばれるが、TCP/IPでは再送制御や受信順の保証などが行われる信頼性の高い通信プロトコルにおけるデータの送受信単位のことを「パケット」(packet)、そのような制御が行われない単純なプロトコルにおけるデータの送受信単位のことを「データグラム」(datagram)と呼ぶため、IPにおける送受信単位はIPパケットと呼ぶのが正式とされる。
IPアドレス 【Internet Protocol Address】 ⭐⭐⭐
インターネットなどのIPネットワークに接続された、個別のネットワークや機器を識別するための識別番号。インターネット上で通信するには重複した番号を使うことはできないため、管理団体に申請して割り当てを受ける必要がある。
インターネットなどのネットワークでは機器間の通信をIP(Internet Protocol)と呼ばれる共通のプロトコル(通信規約)によって行う。IPアドレスはこのIPネットワークにおける個々の機器を識別するための番号で、データの宛先の指定や送信元の特定などに用いられる。
現在インターネットなどで広く普及しているIPは「IPv4」(IPバージョン4)で、アドレスを32ビットの値として表す。書き表す場合には先頭から順に8ビットごとに区切り、それぞれを十進数の値として「.」(ピリオド/ドット)で区切って表記する。例えば、「11000110 00110011 01100100 00000001」というアドレスは「198.51.100.1」のように表記する。
IPアドレスとドメイン名
IPアドレス自体は数字の羅列で人間には覚えたり書き表したりしにくく、読み間違いや入力ミスも起こりやすいため、「www.example.com」のようにアルファベットや記号を組み合わせた分かりやすい識別名をつけられる仕組みが考案された。
これをDNS(Domain Name System)と呼び、IPアドレスの代わりとしてネットワーク上で用いることができる識別名をドメイン名という。ドメイン名には特定のIPアドレスに対応し、個別の機器を指し示す完全修飾ドメイン名(FQDN:Fully Qualified Domain Name)あるいはホスト名(host name)と、複数の機器や領域を包含する領域の識別名がある。
IPアドレスとドメイン名の対応関係は各組織が設置・運用するDNSサーバによって管理・提供される。人間が指定したドメイン名の指し示す機器に接続するにはDNSサーバへ問い合わせて対応するIPアドレスを得る必要があり、通常はソフトウェアが内部的にこの処理を行う。
機器が通信処理を行うのに必須なのはIPアドレスのみであるため、すべてのIPアドレスに対応するドメイン名が設定されているわけではない。通常必要なのはドメイン名からIPアドレスへの変換(正引き)であるため、逆にIPアドレスから対応するドメイン名を割り出す変換(逆引き)は常に可能とは限らない。また、IPアドレスとドメイン名は常に一対一に対応している必要はなく、一つのIPアドレスに複数(場合によっては多数)のドメイン名が対応付けられていることもある。
グローバルIPアドレス
インターネット上で使用するアドレスをグローバルIPアドレス(global IP address)、特定の組織内ネットワークのみで通用するアドレスをプライベートIPアドレス(private IP address)あるいはローカルIPアドレス(local IP address)という。
グローバルアドレスはインターネット全体で一意に特定できなければならず、複数の組織や端末で重複があってはならないため、勝手に設定して名乗ることはできず、アドレス発行組織に申請を行って割り当てを受けなければならない。
インターネット上のIPアドレスについて全世界で一元的に割り当ての調整を行う機関としてICANN(Internet Corporation for Assigned Names and Numbers)が設置されている。そこから世界を5つに分けた各地域を管轄するRIR(Regional Internet Registry)に大きなアドレスブロック単位で割り当てが行われ、RIRから域内の各国・地域をそれぞれ管轄するNIR(National Internet Registry)へ小さなブロック単位で割り当て行われる。
インターネットへの接続を希望する各組織・個人からの申請を受けてアドレスを割り当てるのはNIRの担当となる。日本を管轄するRIRはAPNIC(Asia Pacific Network Information Centre)、NIRはJPNIC(Japan Network Information Center)である。
プライベートIPアドレス
プライベートアドレスは各組織ごとに設置・運用されているLAN(構内ネットワーク)などのネットワーク上で用いられるアドレスで、申請などは不要で自由に機器に設定して使用してよい。ただし、各アドレスがそのネットワークの内部で重複してはならない点はグローバルアドレスと変わらない。
プライベートアドレスしか持たない機器はインターネットに直接接続して通信することはできないため、ネットワーク境界にゲートウェイやルータ、プロキシサーバなどを設置してアドレス変換やデータの中継などを行い、一定の制約(インターネット側から接続を開始できないなど)の元で通信できるようにすることが多い。
IPv4アドレスではプライベートアドレス用の領域として、10.0.0.0~10.255.255.255(最大約1677万台)、172.16.0.0~172.31.255.255(最大65535台)、192.168.0.0~192.168.255.255(最大255台×256ネットワーク)の3つが予約されており、ネットワークの規模に応じていずれかを使用することができる。これらはグローバルアドレスとしては割り当てられないことが決まっている。
IPv4アドレスの枯渇
現在インターネットで用いられるIPv4アドレスは32ビットの値であるため、2の32乗の42億9496万7296個のアドレスしか使用することができず、インターネットの爆発的に普及に伴い2000年代後半頃からは逼迫するようになった。
これは、IPv4が設計された1980年頃にはインターネットに限られた機関しか接続されておらず、現在のような爆発的な普及を想定していなかったためこのアドレス数で十分であると考えられていたのと、当時の通信回線が低速で伝送容量が限られており、少しでも通信制御用のデータを短くしたかったという事情がある。
2015年までには各地域のRIRおよび各国のNIRが確保・用意しているIPv4アドレスブロックの「在庫」は枯渇してしまい、既存の割り当て先から接続廃止で返却されてくる分以外には、まとまった数のアドレスを新規に発行することはできなくなってしまっている。
IPv6アドレス
IPv4の後継として設計されたIPv6(IPバージョン6)では、IPアドレスが128ビットの値となり、2の128乗=約3.40×1038、すなわち、340澗2823溝6692穣0938𥝱4634垓6337京4607兆4317億6821万1456個の広大なアドレス空間を使用できるようになった。
IPv4と同じ表記法だと長過ぎるため、16ビットずつ「:」(コロン)で区切って16進数で表記し、0が連続する区間は省略するという記法を採用している。例えば、「2001 : 0db8 : 0000 : 0000 : 0000 : 0123 : 0000 : 00ab」は「2001 : db8 :: 123 : 0 : ab」のように表記する。
IPv6アドレスのグローバルでの割り当ても始まっており、一部の通信事業者やインターネットサービスプロバイダ(ISP)などがIPv6によるインターネット接続に対応しているが、既存のIPv4と共存しつつ移行するのは様々な事情が重なって難しく、なかなかIPv6の普及が進まない状況が10年以上続いている。
ルータ ⭐⭐⭐
コンピュータネットワークの中継・転送機器の一つで、データの転送経路を選択・制御する機能を持ち、複数の異なるネットワーク間の接続・中継に用いられるもの。
ルータはプロトコル階層のうちネットワーク層(インターネット層、第3層)の情報を解析してデータの転送の可否や転送先の決定などを行う機器で、主にインターネットなどのTCP/IPネットワークにおける主要な中継機器として用いられる。
接続先から受信したデータ(パケット)を解析し、IP(Internet Protocol)の制御情報を元に様々な転送制御を行う。中でも最も重要な処理は「ルーティング」(routing)で、パケットの宛先IPアドレスから適切な転送経路を選択し、隣接する機器の中から次に転送すべき相手を決定してパケットを送信する。
インターネットなど大規模なネットワークでは、ルータ間でこのような転送をバケツリレー式に繰り返し、送信元から宛先へ複数のネットワークを通過してパケットが運ばれていく。
ルータが経路選択を行う際には一般に、「ルーティングテーブル」(routing table、経路表)と呼ばれるデータ集合が参照される。宛先のネットワーク(のアドレス)ごとにどの機器に中継を依頼すべきかが列挙されており、宛先アドレスに対応する転送先を見つけてその機器にパケットを転送する。
静的ルーティングと動的ルーティング
小規模なネットワークでは、ルータのルーティングテーブルを管理者などが固定的に入力・設定する「スタティックルーティング」(static routing:静的ルーティング)が用いられることが多い。
一方、異なる管理主体のネットワーク間の接続や、大規模なネットワーク、頻繁に構成が変更されるネットワークなどでは、ルータ間で定期的に経路情報を交換してルーティングテーブルを作成・更新する「ダイナミックルーティング」(dynamic routing:動的ルーティング)が用いられる。
ルーティングプロトコル
ルータ間の経路情報の交換には専用の通信規約(プロトコル)が用いられ、これを「ルーティングプロトコル」(routing protocol)という。
同一の管理主体の運営するネットワーク(AS:Autonomous System、自律システム)内で用いられるルーティングプロトコルをIGP(Interior Gateway Protocol)と呼び、RIPやOSPF、IGRP、EIGRPなどが用いられる。一方、異なるAS間の接続ではEGP(Exterior Gateway Protocol)と呼ばれるルーティングプロトコルが用いられ、インターネット上では一般にBGPが用いられる。
他の機能
ルータは経路制御だけでなく、アドレス体系の異なるネットワーク間(WANとLAN、プライベートネットワークとインターネットなど)でアドレス変換を行って相互に通信できるようにするNAT/NAPT機能や、ネットワークに新たに接続した機器にDHCPなどで自動的にIPアドレスを割り当てる機能、指定されたルールに従って接続や中継の許可や拒否を行うパケットフィルタリング機能、通信の種類ごとに転送の優先度に差をつけたり、上限の帯域幅を超えないよう制御するQoS制御機能など、様々な機能を持っていることが多い。
他の中継機器
プロトコル階層のうちデータリンク層(リンク層、第2層)の情報を元に転送制御を行う機器にはブリッジ(bridge)やネットワークスイッチ(network switch、単にスイッチとも)、スイッチングハブ(switching hub)などがあり、ルータはこれらの機能も内包している。
また、転送制御を行わず物理層(第1層)の単純な中継のみを行う機器にはリピータ(repeater)やリピータハブ(repeater hub)などがある。こうした様々な機器をルータと組み合わせてネットワークが構築される。
コアルータとエッジルータ
ルータの役割や製品分類で、主に通信事業者などの基幹ネットワークの中心部で用いられるものを「コアルータ」(core router)という。
広域回線網の主要拠点間を繋ぐコアネットワーク(バックボーンネットワーク)などの大規模ネットワーク内部の転送・中継に用いられるルータ製品で、高い性能や信頼性、多数の回線を収容する拡張性、筐体や回線の高密度化が容易なデザインなどが求められる。
一方、基幹ネットワーク末端で外部の回線やネットワークとの接続に用いられるルータは「エッジルータ」(edge router)と呼ばれる。広域回線網の終端などに設置され、大規模ネットワークの末端部と小規模でローカルなネットワーク(特定の拠点の構内ネットワークなど)の接続・中継に用いられる。
遠距離回線を挟んで中心側と末端側の両方の装置をエッジルータと呼ぶ場合と、中心側を「センタールータ」(center router)と呼び、末端側のみをエッジルータと呼ぶ場合がある。また、VPNサービスなどで中心側が通信事業者、末端側が加入者の場合には、中心側を「PEルータ」(Provider Edge router)、末端側を「CEルータ」(Customer Edge router)と呼ぶ場合がある。
ルーティングテーブル 【経路制御表】 ⭐
IPネットワークにおいてルータがパケットの転送先を決定するために記録しているネットワークの経路情報のリスト。宛先と次の転送先を一組にした経路を列挙したもの。
大規模なネットワークでは、パケットを中継機器が次々に転送し、送信元から宛先までバケツリレー式に運ばれていく。ルータは中継機器の一種で、ネットワークの繋がり具合に関する情報を収集し、パケットの伝送経路を決定する機能を持っている。
ルーティングテーブルはルータがパケットの宛先を見て適切な転送先の判断を行う際に参照される経路表で、周囲のルータから得た経路情報を集積して作成される。ルータ同士が経路情報を交換するプロトコル(通信規約)を「ルーティングプロトコル」(routing protocol)という。
テーブルの内容
記載されるデータの種類や形式は機種やルーティングプロトコルによって異なるが、基本的な情報として、宛先として指定される目的地のネットワークアドレスおよびサブネットマスクと、そこへパケットを送りたい場合に次に転送すべき隣接ルータのアドレスである「ネクストホップ」、その経路を利用する場合にかかるコスト(途中で中継する機器の台数など)を表す「メトリック」が記載される。
これに加えて、その経路がどのように設定されたか表す識別符号(経路の情報源)、複数の情報源から同じ宛先への経路が示されている場合に比較するための信頼度(AD値:アドミニストレーティブディスタンス)、複数のネットワークインターフェースを搭載している場合にパケットを送信するインターフェースの指定、経路情報が設定されてからの経過時間などの情報が記載されることもある。
ルーティングテーブルに記録された経路のうち、ルータと直に接続している(隣接)ネットワークへの経路を「コネクテッドルート」(connected route)あるいは「ダイレクトルート」(direct route)、管理者が固定的に指定したものを「スタティックルート」(static route/静的ルート)、隣接ルータなどと情報を交換しあって機器が動的に経路情報を生成・更新するものを「ダイナミックルート」(dynamic route/動的ルート)という。
DNS 【Domain Name System】 ⭐⭐
インターネットなどのIPネットワーク上でドメイン名(ホスト名)とIPアドレスの対応関係を管理するシステム。利用者が単なる番号列であるIPアドレスではなく、日常使っている言語の文字を組み合わせた認識しやすいドメイン名でネットワーク上の資源にアクセスできるようにする。
IPネットワークでは「IPアドレス」と呼ばれる数値列で個々のコンピュータやネットワークを識別するが、DNSを使えば人間にとって親しみやすい文字や記号を組み合わせて「ドメイン名」(domain name)と呼ばれる別名をつけることができる。ドメイン名が単一の機器を指し示す場合は「ホスト名」(host name)とも呼ばれる。
各ドメイン名について、ホスト名とIPアドレスの対応関係や管理情報などを記録し、一定の通信手順に基づいてどこからでも容易に参照できるようにした世界規模の分散型データベースがDNSである。そのための通信規約(プロトコル)や交換データ形式などの仕様を定めた標準規格のこともDNSという。
IPアドレスとドメイン名
例えば、ある企業が「198.51.100.1」というIPアドレスの割り当てを受けてWebサーバと電子メールサーバを運用する場合、WebサイトのURLは「https://198.51.100.1/」のように、代表メールアドレスは「info@198.51.100.1」のような表記になる。
これは人間にとっては覚えたり伝達したり入力したりしにくく、接続事業者を切り替えるなどしてIPアドレスが替わるとこれらのアドレスもすべて変更となり、記録物を書き直したり関係者に改めて通知・告知しなおさなければならなくなってしまう。
そこで、「example.co.jp」というドメイン名を取得し、ホスト名として「www.example.co.jp」を「198.51.100.1」に、「~@example.co.jp」のメールアドレスを管理するメールサーバのアドレスを「198.51.100.1」に対応付けておけば、Webサイトを「https://www.example.co.jp/」のように、メールアドレスを「info@example.co.jp」のように表記することができるようになる。
DNSサーバとクライアント
ドメイン名の情報を管理し、外部からの問い合わせに応答するコンピュータやソフトウェアのことを「DNSサーバ」(DNS server)、サーバへの問い合わせを行いDNS情報を参照・利用する側のコンピュータやソフトウェアを「DNSクライアント」(DNS client)あるいは「DNSリゾルバ」(DNS resolver)という。
ドメイン名とIPアドレスの対応関係をサーバへの問い合わせによって明らかにすることを「名前解決」(name resolution)と呼び、ドメイン名から対応するIPアドレスを求めることを「正引き」(forward lookup)、逆にIPアドレスからドメイン名を割り出すことを「逆引き」(reverse lookup)という。
ドメイン名の階層構造
ドメイン名は実世界の住所表示のように広い領域を指す名前から順に範囲を狭めていく階層構造になっており、「www.example.co.jp」のように各階層の識別名を「.」(ドット)で区切って表記する。あるドメイン名の配下に設けられた下位のドメイン名を「サブドメイン」(subdomain)という。
上の例の「jp」のように一番右が最上位階層の「トップレベルドメイン」(TLD)で、以下、左に向かって「co」を「セカンドレベルドメイン」(SLD:Second Level Domain)、「example」を「サードレベルドメイン」(3LD:Third Level Domain)のように呼び、順に指し示す範囲が狭くなっていく。
権威DNSサーバと権限委譲
あるドメイン名についての情報を管理するDNSサーバを「権威DNSサーバ」あるいは「DNSコンテンツサーバ」という。権威サーバはそのドメイン名についての情報の発信元で、外部からの問い合わせに応答してホスト名に対応するIPアドレスなどを回答する。
上位ドメインの権威サーバは配下のすべてのドメイン名の情報を一元管理しているわけではなく、下位ドメインの権威サーバに管理権限を委譲し、自身はその所在(IPアドレス)のみを把握している。下位ドメインについての問い合わせには「このアドレスのサーバに聞くように」という回答を返す。
再帰問い合わせによる名前解決
「www.example.co.jp」の名前解決を行うためには、まず全世界に十数か所あるDNS全体を統括する「ルートサーバ」(root server)に「jp」ドメインの権威サーバの所在を訪ね、そのサーバに「co.jp」ドメインの権威サーバの所在を訪ね、そのサーバに「example.co.jp」の権威サーバの所在を…という具合に左端のホスト名が解決されるまで問い合わせを再帰的に繰り返す必要がある。
この問い合わせ手順を末端のDNSクライアントが毎回行っていたのではサーバとクライアント、途中のネットワークの負荷や無駄が大きすぎるため、通常はインターネット接続事業者(ISP)などが用意した「DNSキャッシュサーバ」が各クライアントからの問い合わせを代行し、結果を一定期間保存して同じ問い合わせに代理で応答するという運用が行われる。
一般の利用者がコンピュータのネットワーク設定などで指定する「DNSサーバ」(プライマリDNSサーバ、セカンダリDNSサーバ)は、各ドメイン名を管理している権威サーバではなく、このDNSキャッシュサーバである。なお、キャッシュサーバに頼らずクライアントソフトが自ら再帰問い合わせを行って名前解決することも差し支えなく、ネットワーク管理者などが調査のために行うことがある。
ドメイン名 【ドメインネーム】 ⭐⭐⭐
インターネット上に存在するコンピュータやネットワークを識別し、階層的に管理するために登録された名前のこと。インターネット上の機器やネットワークの識別名で、URLやメールアドレスなど他の識別情報の一部としても用いられる。
インターネット上の機器やネットワークを一意に識別するため、重複が生じないよう全世界的に一元的に発行する体制が構築されている。登録される識別名はアルファベットと数字、ハイフン「-」の組み合わせだが、近年では、日本語など各国独自の言語・文字でドメイン名を登録できる「国際化ドメイン名」(IDN:Internationalized Domain Name)も利用できるようになっている。
IPアドレスとDNS(Domain Name System)
インターネットなどIP(Internet Protocol)で接続されたネットワークでは機器同士は「IPアドレス」という番号によってお互いを識別し、相手方の所在を知ることができる。数字の羅列であるIPアドレスは人間にとっては扱いにくいため、別名としてドメイン名を運用するようになった。
ドメイン名とIPアドレスを対応させるシステムは「DNS」(Domain Name System:ドメインネームシステム)と呼ばれ、全世界のDNSサーバが連携して運用されている。一つのドメイン名に複数のIPアドレスを対応させたり、一つのIPアドレスに複数のドメイン名を対応させることもできる。
ドメインの階層構造
ドメイン名は実世界の住所表示のように広い領域を指す名前から順に範囲を狭めていく階層構造になっており、「www.example.com」のように各階層のラベルを「.」で区切って表記する。あるドメインの配下に設けられた下位のドメイン名を「サブドメイン」(subdomain)という。
一番右のラベルが最上位階層の「トップレベルドメイン」(TLD)で、以下、左に向かって「セカンドレベルドメイン」(SLD:Second Level Domain)、「サードレベルドメイン」(3LD:Third Level Domain)…と指し示す範囲が狭くなっていく。
左端で個別の機器を指し示すラベルのことを「ホスト名」という。トップレベルからホスト名まで省略せずにすべて書き下したドメイン名表記のことを「FQDN」(Fully Qualified Domain Name:完全修飾ドメイン名)と呼ぶことがある。
トップレベルドメインには、日本を表す「.jp」のように世界の国・地域ごとに割り当てられる「ccTLD」(country code TLD)と、商用を表す「.com」のように地理的範囲とは無関係に全世界から登録を受け付ける「gTLD」(generic TLD)、国際機関向けの「.int」など他の特殊なTLDがある。
ドメイン名の衝突を防ぐため、「ICANN」(Internet Corporation for Assigned Names and Numbers)という国際機関がTLDを一元管理しており、ICANNから委任を受けた各TLDの管理団体(「レジストリ」と呼ばれる)が、そのTLDにおける識別名のデータベースの管理、登録の受付を行っている。例えば、日本のccTLDである.jpドメインはJPRS(日本レジストリサービス)が管理している。
電子メール 【eメール】 ⭐⭐⭐
通信ネットワークを介してコンピュータなどの機器の間で文字を中心とするメッセージを送受信するシステム。郵便に似た仕組みを電子的な手段で実現したものであることからこのように呼ばれる。
広義には、電子的な手段でメッセージを交換するシステムやサービス、ソフトウェア全般を指し、携帯電話のSMSや、各種のネットサービスやアプリ内で提供される利用者間のメッセージ交換機能などを含む。
狭義には、SMTPやPOP3、IMAP4、MIMEなどインターネット標準の様々なプロトコル(通信規約)やデータ形式を組み合わせて構築されたメッセージ交換システムを指し、現代では単に電子メールといえば一般にこちらを表すことが多い。
メールアドレス
電子メールの送信元や宛先は住所や氏名の代わりに「メールアドレス」(email address)と呼ばれる統一された書式の文字列が用いられる。これは「JohnDoe@example.com」のように「アカウント名@ドメイン名」の形式で表され、ドメイン名の部分が利用者が所属・加入している組織の管理するネットワークの識別名を表し、アカウント名がその中での個人の識別名となる。
企業や行政機関、大学などがメールサーバを運用して所属者にメールアドレスを発行しているほか、インターネットサービスプロバイダ(ISP)や携帯電話事業者などがインターネット接続サービスの一環として加入者にメールアドレスを発行している。
また、ネットサービス事業者などが誰でも自由に無料でメールアドレスを取得して利用できる「フリーメール」(free email)サービスを提供している。一人の人物が立場ごとに複数のアドレスを使い分けたり、企業の代表アドレスのように特定の個人に紐付けられず組織や集団などで共有されるアドレスもある。
メールサーバとメールクライアント
インターネットに接続されたネットワークには「メールサーバ」(mail server)と呼ばれるコンピュータが設置され、利用者からの要請により外部のネットワークに向けてメールを送信したり、外部から利用者に宛てて送られてきたメールを受信し、本人の使うコンピュータに送り届ける。利用者や他のサーバに対する窓口であり、郵便制度における郵便局のような役割を果たす。
メールサーバ内には利用者ごとに私書箱に相当する受信メールの保管領域(メールボックス)が用意され、外部から着信したメールを一時的に保管する。利用者が手元で操作するメールソフト(メールクライアント、メーラーなどと呼ばれる)は通信回線を介してメールサーバに問い合わせ、メールボックス内のメールを受信して画面に表示する。
Webメール
利用者の操作画面をWebアプリケーションとして実装し、Webブラウザからアクセスしてメールの作成や送信、受信、閲覧、添付ファイルのダウンロードなどをできるようにしたシステムを「Webメール」(webmail)という。
フリーメールサービスの多くは標準の操作画面をWebメールの形で提供しており、メールクライアントなどを導入・設定しなくてもWebブラウザのみでメールの送受信を行うことができるようになっている。企業などの組織で運用されるメールシステムでもWebメールを提供する場合があり、自宅や出先のコンピュータなどからアクセスできるようになっている。
メッセージの形式
電子メールには原則として文字(テキスト)データのみを記載することができる。特別な記法や書式を用いずに素の状態の文字データのみが記されたメールを「テキストメール」という。WebページのようにHTMLやCSSなどの言語を用いて書式や装飾、レイアウトなどの指定が埋め込まれたものは「HTMLメール」という。
また、画像や音声、動画、データファイル、プログラムファイルなどテキスト形式ではないデータ(バイナリデータ)を一定の手順でテキストデータに変換して文字メッセージと一緒に送ることができる。こうしたデータをメッセージ中に埋め込む方式の標準として「MIME」(Multipurpose Internet Mail Extension/マイム)が規定されており、これを利用してメールに埋め込んだファイルを「添付ファイル」(attachment file)という。
電子メールの普及と応用
電子メールはWeb(WWW)と共にインターネットの主要な応用サービスとして広く普及し、情報機器間でメッセージを伝達する社会インフラとして機能している。現在ではパソコンやスマートフォン、タブレット端末などのオペレーティングシステム(OS)の多くは標準でメールクライアントを内蔵しており、誰でもすぐに利用できるようになっている。
電子メールシステムでは一通のメールを複数の宛先へ同時に送信する同報送信・一斉配信も容易なため、グループ共通のアドレスを用意してメンバー間の連絡や議論などに用いる「メーリングリスト」(mailing list)や、発行者が購読者に定期的にメールで情報を届ける「メールマガジン」(mail magazine)などの応用システムも活発に利用されている。
一方、広告メールを多数のメールアドレスに宛て無差別に送信する「スパムメール」(spam mail)や、添付ファイルの仕組みをコンピュータウイルスの感染経路に悪用する「ウイルスメール」(virus mail)、送信元を偽って受信者を騙し秘密の情報を詐取する「フィッシング」(phishing)など、電子メールを悪用した迷惑行為や犯罪なども起きており、社会問題ともなっている。
メールサーバ ⭐⭐
電子メール(eメール)の送受信や配送を行うため、ネットワークに接続され常に稼働しているサーバコンピュータ。また、そのための機能を実装したサーバソフトウェア。
主に、発信者からの送信受付や宛先のサーバへの転送を担うサーバ(SMTPサーバなど)と、管理対象のメールアドレス向けのメールを外部から受信して保管し、受信者へ配達するサーバ(POP3サーバやIMAP4サーバなど)に分かれる。
いずれもメールサーバの一種だが、利用者の操作する電子メールクライアント(メールソフト、メーラー)の設定画面などでは、前者を「メール送信サーバ」、後者を「メール受信サーバ」などと呼ぶこともある。
メールアドレスを作成して外部と送受信するにはこの両方が必要となるが、これらはソフトウェアとしては通常別々に提供されている。小規模なシステムでは一台に両方を導入して送受信兼用のメールサーバとする場合もあるが、それぞれを運用するコンピュータを別々に用意して一体的に運用することもある。
SMTPサーバ
SMTP(Simple Mail Transfer Protocol)と呼ばれるインターネット標準の通信規約(プロトコル)に基づいてメールの送信や配送を行うメールサーバである。利用者の操作するクライアントからメッセージの送信依頼を受け付け、宛先に記載されたドメイン名を管轄するメールサーバを探し出してメールを配送する。
元来、送信と配達には同じ技術仕様と手順を用いていたが、不正にメッセージを送信する悪用事例が広まってしまったため、送信の受け付けには伝送路の暗号化(SMTPS)や正規利用者であることを示す認証(SMTP認証)が課されるのが一般的である。
POP3サーバ
POP3(Post Office Protocol 3)と呼ばれるインターネット標準の通信規約(プロトコル)に基づいて、外部から受信したメールを利用者に配達するメールサーバである。利用者のメールアドレスへの外部からの配送を受け付け、受信したメールを保管しておいてくれる。
個々人の使用するコンピュータは常にインターネットに繋がれているとは限らないため、外部から送信されたメッセージは一旦、当該ドメイン名を管轄するメール受信サーバが受け取り、利用者ごとに用意された記憶領域に一時保管される。
メールサーバはそのようなメール受信サーバの一つで、クライアントからのアクセスを受け付け、認証を行い本人であると確認すると、一時保管していたメッセージをまとめてクライアントに送信する。引き渡したメッセージは一時保管場所からは削除される。
IMAP4サーバ
IMAP4(Internet Mail Access Protocol 4)と呼ばれるインターネット標準の通信規約(プロトコル)に基づいて、外部から受信したメールを利用者に配達するメールサーバである。POP3サーバと役割は同じだが、メッセージの引き渡しや保管のルールが異なっている。
IMAP4サーバはPOP3サーバと同じように受信したメールを一時保管し、クライアントからアクセスを受け付けて引き渡すが、原則としてメッセージはサーバ側で管理される。クライアントへは各メッセージの表題や送信者、受信日時の一覧を渡し、利用者が指示したメッセージのみを送信する。
POP3とは異なりメッセージはサーバに残っているため、複数のコンピュータからメールにアクセスしたい場合などに便利だが、サーバ側には保管容量の制限が課されることが多く、満杯になって受信拒否されてしまわないよう、古いメッセージを削除する等の適切な管理が必要となる。
Web 【ウェブ】 ⭐⭐
インターネット上で標準的に用いられている文書の公開・閲覧システム。文字や図表、画像、動画などを組み合わせた文書を配布することができる。現代では様々なサービスやアプリケーションの運用基盤としても広く用いられる。
文書内の要素に別の文書を指し示す参照情報(ハイパーリンク)を埋め込むことができる「ハイパーテキスト」(hypertext)と呼ばれるシステムの一種である。“web” (ウェブ)とは「蜘蛛の巣」を意味する英単語で、多数の文書が互いにリンクを介して複雑に繋がり合っている様子を蜘蛛の巣の網目状の構造になぞらえている。
WebサーバとWebブラウザ
WWWで情報を提供するコンピュータやソフトウェアを「WWWサーバ」(web server)、利用者の操作によりサーバから情報を受信して表示や処理を行うコンピュータやソフトウェアを「Webクライアント」(web client)という。
Webクライアントのうち、受信したページの内容を整形して画面に表示し、人間が閲覧するために用いるものを特に「Webブラウザ」(web browser:ウェブブラウザ)という。サーバとクライアントの間の通信には「HTTP」(Hypertext Transfer Protocol)と呼ばれる通信規約(プロトコル)が標準的に用いられる。
WWW上の情報資源の所在の指定には、「https://www.example.co.jp/index.html」といった形式の「URL」(Uniform Resource Locator)という表記法が用いられる。Webサーバを表すドメイン名(ホスト名)と、Webサーバ上での資源の位置を指し示すパス(階層的なディレクトリ名とファイル名の組み合わせ)を繋げた形式になっている。
WebページとWebサイト
WWWにおける情報の基礎的な単位は「Webページ」(web page)で、見出しや文章などの文字情報をもとにHTML(Hypertext Markup Language)やCSS(Cascading Style Sheet)などのコンピュータ言語で構造や体裁、見栄えを記述する。
HTMLは記述された文字情報の中にソフトウェアへの制御情報を埋め込むことができる「マークアップ言語」(markup language)と呼ばれる言語で、「この部分が見出し」「本文はここからここまで」「段落の区切りはここ」といった指示を文書中に埋め込む形で記述することができる。
Webブラウザはこの制御情報に基づいて、タイトルを中央揃えにしたり、小見出しを太い大きな文字で表示したり、段落の間に空白を差し込むなど指定された整形や装飾を行い、閲覧者が文書の構造を把握しやすいように表示してくれる。
ページ内には文章だけでなく箇条書き(リスト)や表(テーブル)、図形、画像、動画、入力要素(フォーム)などを掲載することができる。画像や動画など文字で書き表せない要素は外部のファイルをURLで指定して埋め込むことができる。
要素のページ内での配置や大きさ、枠線や罫線、文字の字形(フォント)や色といった具体的な見栄えに関する指定項目(スタイルという)は、当初はHTMLで構造とともに記述していたが、CSSという専用の言語で構造とは別に指定する方式が主流となっている。
ページ内の要素には外部の他の資源(多くの場合は他のWebページ)のURLを指し示すリンクを設定することができ、ブラウザ画面に表示されたリンクを指定して開くよう指示(クリックやタップなど)すると、表示がリンク中のURLで指定されたページに切り替わる。簡単な操作でリンクをたどって次々に文書から文書へ表示を切り替えていくことができる。
このリンク機能を利用して、書籍のように複数のページ群をまとめた単位を「Webサイト」(web site)という。サイト内のページからは外部のサイトのページへリンクを張ることもでき、Web全体がリンクを介して連結された巨大な地球規模の文書データベースとなっている。
Webアプリケーション・Webサービス
Webサーバには静的なファイルの送信だけでなく、ブラウザからの要求に基づいて動的にコンピュータプログラムを実行し、何らかのデータ処理を行って結果をブラウザに応答することもできる。
また、Webブラウザにはページ上に記述された簡易なプログラム(スクリプトという)を実行し、サーバと任意のタイミングで通信したり、利用者の操作に応じて表示内容を変化させたりすることができる。
このような動的な仕組みを組み合わせ、サーバとブラウザが連携して利用者が対話的に操作することができるアプリケーションソフトを構築することができ、これを「Webアプリケーション」(web application)あるいは「Webサービス」(web service)という。著名な応用例として、ブラウザで買い物ができるオンラインショップ(ECサイト)や、利用者同士がコミュニケーションできるSNSなどのネットサービスがある。
歴史と名称
WWWはインターネットがまだ学術機関を中心に利用されていた頃、1989年に欧州核物理学研究所(CERN)のティム・バーナーズ・リー(Tim Berners-Lee)氏が所内の論文公開・閲覧システムとして考案したものが基礎となっている。
1990年代にインターネットが一般に開放され普及していく過程で、電子メールなどと共にネットの代表的な応用システムとして広く利用されるようになった。2000年代中頃には主に日本を含む先進国で欠かすことのできない重要な情報インフラの一つに成長している。
もとは “World Wide Web”、略して “WWW” が正式名称で、現在も「https://www.example.jp/」のようにWebサーバのホスト名などにこの名が残っているもの。英語では次第に “the Web” (固有名詞のWeb)のように略されるようになり、さらに進んで現在では一般名詞の “web” がインターネットのWebを指すことが増えている。日本では当初「ホームページ」の名称で紹介され、現在も初心者向けの説明などで多用されるが、「ウェブ」「Web」の呼称が浸透しつつある。
HTTP 【Hypertext Transfer Protocol】 ⭐⭐⭐
WebサーバとWebクライアントの間でデータの送受信を行うために用いられるプロトコル(通信規約)。Webページを構成するHTMLファイルや、ページに関連付けられたスタイルシート、スクリプト、画像、音声、動画などのファイルを、データ形式などのメタ情報を含めてやり取りすることができる。
HTTPはクライアントから要求(HTTPリクエスト)を送り、サーバが応答(HTTPレスポンス)を返すプル型(リクエスト/レスポンス型)の通信を基本としており、WebブラウザやWebクローラなどのクライアントから送信する要求の形式や、Webサーバからの応答の形式などを定めている。
HTTPリクエストおよびレスポンスは要求や返答の内容、資源の種類や形式などの情報、および関連する情報を記述した「ヘッダ部」(header)と、送受信する資源(ファイルなど)の本体である「ボディ部」(body)で構成される。ボディは基本的にはレスポンスに存在するが、クライアント側からデータを送信する際にはリクエストにも付加される。
HTTPは下位(トランスポート層)のプロトコルとして標準ではTCPを利用することが多いが、SSL/TLSを用いて暗号化されて伝送されることもある。この通信手順は「HTTP over SSL/TLS」と呼ばれ、URL/URIのスキーム名として通常の「http:」に代えて「https:」を用いる。
Cookieによるセッション管理
HTTPそのものは複数回の通信をまたぐ状態の保存・管理を行わないステートレス型のシンプルなプロトコルだが、「Cookie」(クッキー)と呼ばれる拡張仕様により状態管理ができるようになっている。
Cookieはサーバがレスポンスヘッダの一部としてクライアントに送付する短い文字データで、クライアントはこれをストレージなどに恒久的(ただし有効期限が切れると消滅する)に保存する。次回サーバへリクエストを送付する際にはヘッダに前回受信したCookieの内容を書き入れて送信する。
サーバはCookieを参照することで個々のクライアントを識別・同定することができる。サーバとクライアントの間で何往復も繰り返しやり取りが必要な複雑な処理(セッション)を容易に実装することができ、間が空いてから再アクセスしてもサーバは相手がどのクライアントなのか見分けることができる。
認証方式
HTTPではクライアントを用いてアクセスしてきた利用者を識別・認証し、アクセス権限に応じたサービスを提供するため、認証手順(HTTP認証)についても定めている。当初規定されたのは単純にユーザー名とパスワードをやり取りする「基本認証」(BASIC認証)だが、パスワードが通信途上で盗聴される危険性に対処するためにチャレンジ/レスポンス認証の一種である「ダイジェスト認証」(Digest認証)が追加された。
現在では利用者の認証が必要な用途ではHTTP通信自体を丸ごと暗号化するSSL/TLSを用いるのが一般的となっており、認証機能もアプリケーション側で実装するようになったため、HTTP自体の認証機能はあまり使われなくなっている。
歴史
HTTPの最初のバージョン(HTTP/0.9)は、Webを考案したティム・バーナーズ・リー(Timothy J. Berners-Lee)氏らによって1991年に公表された。その後、インターネット関連技術の標準化を推進するIETF(Internet Engineering Task Force)によって標準化が進められ、1996年にHTTP/1.0(RFC 1945)が、1997年に改良版のHTTP/1.1(RFC 2068)が発行された。
現在最も普及しているのはこのHTTP/1.1で、2014年にRFC 7230~7235として改訂された。2015年には互換性を維持しつつ大幅な機能強化を図ったHTTP/2が、2022年にはトランスポート層にQUICを統合したHTTP/3が標準化され、一部の仕様が大きく変更されている。
Cookie 【クッキー】
WebサーバがWebブラウザに送信する制御情報の一種で、ブラウザが動作しているコンピュータに永続的に記録・保管されるもの。閲覧者の識別などに利用される。
CookieはWebサーバがWebブラウザにコンテンツを送信する際に制御情報の一部として一緒に送信する短いデータで、ブラウザは次にサーバにリクエストを送る際に前回受け取ったCookieの内容を申告する。ブラウザは受信したCookieを所定の期限までストレージ上で永続的に保管する。
Cookieには任意の文字列が記録でき、利用者の識別や属性に関する情報や、最後にサイトを訪れた日時などを記録しておくことが多い。ネットサービスなどで利用者のIDなどを保存しておけば、次にアクセスしたときに自動的に利用者を識別・同定することができ、前回の続きからサービスを提供することができる。
1つのCookieには4096バイトまでのデータを記録でき、1台のサーバが同じコンピュータに対して発行できるCookieの数は20個に制限されている。Cookieの総数は300個までで、これを超えると古い方から削除される。個々のCookieには有効期限が設定されており、期限を過ぎたものは破棄される。
Cookieの送受信
Cookieの送受信はWebコンテンツの送受信に標準的に用いられるプロトコル(通信規約)であるHTTPにより行われる。コンテンツ本体とは異なり、通信や送受信データに関する制御情報を記載する「HTTPヘッダ」と呼ばれる領域に記載されるため、閲覧者が直に目にする機会はほとんどない。
WebサーバからWebブラウザへのCookieの送信はHTTPレスポンスヘッダ中の「Set-Cookie」フィールドを利用し、「Set-Cookie: クッキー名1=値1; クッキー名2=値2; …」という形式で複数の属性値の指定を一行に連結して送信する。ブラウザからサーバへは、HTTPリクエストヘッダ中の「Cookie」フィールドを用い、同じ書式で送信する。
Set-CookieフィールドにはPath属性(例:path=/example/;)やDomain属性(例:domain=www.example.com;)を用いてそのCookieを参照・書き換えできる範囲を指定したり、Max-Age属性(例:max-age=3600;)やExpire属性(例:expire=Tue, 19 Jan 2038 03:14:07 UTC;)で有効期限を指定することもできる。
Secure属性を指定するとSSL/TLSで暗号化されたHTTPS通信時にしか読み取れないよう制限することができる。通常のCookieはWebページ上で動作するJavaScriptなどから読み書きすることもできるが、HttpOnly属性を指定するとスクリプトによるアクセスを禁止できる。
ファーストパーティCookieとサードパーティCookie
WebページにはHTMLのimg要素やiframeHTTPなどを用いてページ本体(HTMLファイル)を送信したサーバとは異なる外部のWebサーバからコンテンツを呼び出して埋め込み表示する機能がある。その際、埋め込みコンテンツに付随して外部サーバからCookieが送られてくることがある。
その場合、ページ本体に付随して送られてくるCookieを「ファーストパーティCookie」(first-party Cookie)、埋め込みコンテンツに付随して外部サーバから送られてくるCookieを「サードパーティCookie」(third-party Cookie)という。
サードパーティCookieは「トラッキングCookie」とも呼ばれ、アクセス解析サービスなどにページ閲覧が行われたことを報告・記録するために用いられたり、広告配信サービスでサイトを横断して閲覧者を追跡・同定し、個々人に最適な広告を配信するために利用されることがある。
サードパーティCookieは個人のインターネット上での活動を本人の意志によらず継続的に追跡することができるため、プライバシーの侵害であるとの批判が根強くある。米アップル(Apple)社のWebブラウザ「Safari」では利用者が明示的に許可しない限り無効となっており、今後はGoogle Chromeなど他のブラウザでもデフォルト設定では無効に切り替えていく予定となっている。
URL 【Uniform Resource Locator】 ⭐⭐⭐
インターネット上に存在するデータやサービスなどの情報資源の位置を記述する標準的な記法の一つ。Webページの所在を書き表す方式として広く普及している。
様々な資源の所在地にあたる情報の記述の仕方を定めたもので、資源の取得方法(種類)や、ネット上での当該資源の存在するコンピュータの識別名や識別番号、コンピュータ内部での資源の位置などで構成される。
先頭には「http:」「ftp:」のように必ず資源の取得方法を記述する決まりで、これを「スキーム名」という。スキーム名はデータの送受信を行うプロトコル(通信規約)名であることが多いが、ローカルファイルの所在を記述する「file:」のようなスキーム名もある。
スキーム名に続く識別情報の記述形式はスキーム毎に異なるが、プロトコル系のスキームではサーバのドメイン名(ホスト名)やIPアドレス、ポート番号、ディレクトリ名、ファイル名を区切り記号を挟んで順番に記述する形式が一般的である。
Web上の資源を表すhttpスキームでは「http://e-words.jp:80/w/URL.html」のような構成となり、「http:」がスキーム名、「e-words.jp」がコンピュータのドメイン名、「:80」が通信に用いるポート番号、「/w/」がWebサーバ上での目的のディレクトリ、「URL.html」が取得したいファイル名である。
URLの標準規格は1994年にIETFによってRFC 1738として策定された。その後、1998年に資源の(所在から独立した)識別名の記法である「URN」(Universal Resource Name)を含む、より汎用的な規格として「URI」(Universal Resource Identifier)が策定された。現在は正式にはURLはURI仕様の一部となっている。
ハイパーテキスト ⭐
コンピュータを利用した文書作成・閲覧システムの一つで、文書内の任意の位置や要素に、他の文書への参照(所在情報や識別情報)を埋め込み、複数の文書を相互に結びつけたもの。そのような他の文書への参照情報を「ハイパーリンク」(hyperlink)あるいは単にリンクという。
専用の表示ソフトウェアを用いて文書を開くと、文書内のリンクが設定された箇所を閲覧者の操作により選択することができ、参照先の文書を自動的に読み込んで表示することができる。ハイパーテキストを拡張し、文書に留まらず画像や図表、音声、動画、3次元グラフィックスなど様々な情報資源間で相互に関連付けや参照などが行えるようにしたものを「ハイパーメディア」(hypermedia)という。
ハイパーテキストシステムは電子辞書や百科事典ソフトのように一つのソフトウェアやコンピュータの内部で完結しているものと、通信ネットワークなどを介して複数のコンピュータに分散する文書データにまたがって構築されるものがある。その最も有名な応用例は、インターネット上に分散する膨大な文書群をハイパーリンクによって結んだ世界規模の開放型ハイパーテキストシステムである「Web」(ウェブ、WWW:World Wide Web)である。
暗号 ⭐
ある情報を特定の決まった人しか読めないように一定の手順に基づいて無意味な文字や符号の列に置き換えたもの。情報の伝送や記録、保存の際、第三者に盗み見られたり改竄されないようにするために作成される。
通信や記録の内容を秘匿する手法には様々な種類があり、内容を記録した媒体の存在自体を隠す方法などもあるが、暗号は記録内容が読み取られても何が書かれているのか分からないようにする手法を指す。
歴史的には、暗号表などを事前に作成・共有し、単語やフレーズ単位で無関係な別の文字などに置き換える「コード」(code)と、文字単位で置き換えや位置の入れ替えを行う「サイファー」(cipher)に分類される。現代のコンピュータなどが利用する暗号は後者の一種とみなされる。
暗号にまつわる用語
暗号によって秘匿したい情報のことを「平文」(ひらぶん/plain text)、これを暗号に変換する操作を「暗号化」(encryption)、出来上がった無意味な符号列を「暗号文」(cipher text)という。現代のコンピュータによる暗号化は一定の数学的な計算手順「暗号アルゴリズム」(encryption algorithm)によってビット列を操作することによって行われる。
同じ平文を同じアルゴリズムで暗号化しても毎回異なる暗号文が得られるように、平文の他に毎回異なる「暗号鍵」(cipher key)を生成し、計算手順に加える。平文が同じでも暗号鍵が異なれば暗号文も異なり、アルゴリズムが分かっていても暗号鍵が分からなければ読み解くことはできない。
正規の権限を持つ人が、暗号鍵を用いて暗号文を平文に戻すことを「復号」(decryption / decode / decipher)、権限の無い第三者が内容を盗み見るため暗号鍵の割り出しや他の方法による平文の復元を試みることを「解読」(cryptanalysis)あるいは「攻撃」(attack)という。
共通鍵暗号と公開鍵暗号
暗号化と復号に同じ暗号鍵を用いる暗号方式を「共通鍵暗号」(common key cryptosystem/共有鍵暗号)あるいは「秘密鍵暗号」(secret key cryptosystem)という。情報の送信者と受信者は安全な方法で鍵を共有する必要がある。
一方、対になる二つの鍵を用いて片方で暗号化、もう一方で復号を行う方式を「公開鍵暗号」(public key cryptosystem)という。暗号化に用いた鍵では復号できず、一方の鍵からもう一方を割り出すことも困難という性質があり、片方は所有者の元で秘匿され、対になるもう片方は公開されるためこのように呼ばれる。
暗号に似た変換処理
暗号は平文への復元を前提とした(情報の欠損を伴わない)変換を行う手法を指すが、情報を秘匿するために行われる変換処理の中には、元の状態に戻せない不可逆な変換を行う手法もある。データのハッシュ化やプログラムコードの難読化などである。逆に、映像伝送のスクランブル化などは伝送符号を乱雑化するが、情報を秘匿する目的は無いため一定の手順で誰でも元の情報を復元できる(暗号化を兼ねる場合もある)。
復号 【復号化】 ⭐⭐⭐
暗号化やデータ圧縮など何らかの変換処理によって得られた符号列から、元のデータを復元すること。
データや信号などを、何らかの目的のために符号化(encode)することがある。盗聴を防ぐための暗号化やデータ量を削減するための圧縮、伝送中の信号の誤りに備えた誤り訂正符号の付与などである。
このように元の状態から変換された符号列から、符号化とは逆方向の変換処理を行い、元のデータに復元する処理や工程を復号という。暗号の場合には、暗号化に用いた秘密の情報(暗号鍵)を用いて元のデータを得ることを意味し、これを用いずに元の情報を復元することは「解読」という。
「暗号」が暗号文の意味を持ち、変換過程のことを「暗号化」というため、同じように「復号化」と表記する例も見られるが、一般には符号の逆変換工程のことを「復号」と呼び、得られたデータを「復号」とは呼ばないため、復号化という表記は誤りであるとみなされることが多い。
英語では “decode” (動詞) “decoding” (名詞)というが、特に暗号の復号のことは “decrypt” / “decryption” あるいは “decipher” ということが多い。(暗号鍵を用いない)解読のことは “attack” “break” “crack” などのように表現することが多い。
平文 【クリアテキスト】 ⭐⭐⭐
暗号化されていない状態のデータ。暗号技術に基づく復号、解読などの操作を行わなくても、そのままで内容を取り扱うことができる状態のデータのことを指す。
「文」(text)という語が充てられ、「パスワードを平文で送る」といったように、実際、多くの場面で文字(テキスト)を指すが、暗号化されていないデータ全般を含む概念であり、文脈によっては画像、音声、動画、実行形式のコンピュータプログラムなどのバイナリ形式のデータを指す場合もある。
平文のことを「プレーンテキスト」(plaintext)と呼ぶこともあるが、これは暗号以外の分野ではバイナリデータの対義語(文字コードに規定された符号のみからなる、文字列として入出力可能なデータ列)であり、必ずしも「暗号化されていない」という意味とは限らない。
慣用的に「ひらぶん」と湯桶読みすることが多いが、例えばJIS規格(JIS X 0008 情報処理用語)では「ひらぶん」と「へいぶん」が併記されており、「へいぶん」が誤りというわけではない。
平文認証 (クリアテキスト認証/プレーンテキスト認証)
利用者認証などで、認証に必要な情報を暗号化などせずにそのままの形で送受信することを平文認証、プレーンテキスト認証(plaintext authentication)、クリアテキスト認証(cleartext authentication)などという。
認証情報の伝送方式として最も単純なもので、データの暗号化やハッシュ化などを行わず、利用者などの識別子(ID、ユーザ名など)や本人であることを確認する秘密の情報(パスワード、パスコード、パスフレーズ、暗証番号など)をそのままやり取りする。
通信回線やネットワークを介して認証を行う際に、信用できない通信経路上で平文認証を行うと途中で悪意の第三者による盗聴や改竄、なりすましなどの被害にあう危険性があるため、暗号化などに対応した認証方式を用いる必要がある。
公開鍵 【パブリックキー】 ⭐⭐
公開鍵暗号で使用される一対の暗号鍵の組のうち、相手方に渡したり一般に公開する鍵。もう一方の鍵は所有者が管理して秘匿する必要があり、「秘密鍵」(secret key)と呼ばれる。
公開鍵暗号では一対の対応関係にある暗号鍵のペアを用い、公開鍵で暗号化した暗号文は秘密鍵でしか復号できないという仕組みになっている。通信を暗号化する場合は相手の公開鍵を入手して送信データを暗号化することにより、対になる秘密鍵を知る相手本人しか復号できないようにする。
代表的な公開鍵暗号のRSA方式ではこの逆も可能で、秘密鍵で暗号化(に相当する変換処理)を行い、対になる公開鍵で復号する、といった使い方もできる。このような対称性を持つ方式は珍しく、公開鍵暗号一般に見られる性質ではない。
また、メッセージを送信する際に、本文をハッシュ関数で要約した短いデータと秘密鍵、公開鍵を元に一定の手順で計算したデジタル署名を添付することにより、受信側が送信元を確認したり、改竄やすり替えを検知することができる。
公開鍵暗号を利用するには事前に相手方の公開鍵を入手しておく必要があるが、実用上は相手方との間にインターネットなど必ずしも信用できない経路を含む伝送手段しかない場合が多く、攻撃者によるすり替えなどの危険がある。
このため、送信者と受信者の双方が信頼する第三者が電子署名した特殊なメッセージによって公開鍵を運び、受信者が送信元や鍵の真正性の確認を行うことができるようにすることが多い。この公開鍵を含む署名されたメッセージをデジタル証明書(電子証明書/公開鍵証明書)と呼ぶ。
秘密鍵 【シークレットキー】 ⭐⭐
公開鍵暗号で使用される一対の暗号鍵の組のうち、相手方に渡したり一般に公開せず、所有者が管理下に置いて秘匿する必要がある鍵。もう一方の鍵は公開して相手方が利用するもので「公開鍵」(public key)と呼ばれる。
公開鍵暗号では一対の対応関係にある暗号鍵のペアを用い、公開鍵で暗号化した暗号文は秘密鍵でしか復号できないという仕組みになっている。代表的な公開鍵暗号のRSAではこの逆も可能で、秘密鍵で暗号化(に相当する変換処理)を行い、対になる公開鍵で復号する、といった使い方もできる(このような対称性を持つ公開鍵暗号は珍しい)。
通信を暗号化する場合は相手の公開鍵を入手して送信データを暗号化することにより、対になる秘密鍵を知る相手本人しか復号できないようにすることができる。また、メッセージを送信する際に、本文をハッシュ関数で要約した短いデータと秘密鍵、公開鍵を元に一定の手順で計算したデジタル署名を添付することにより、受信側が送信元を確認したり、改竄やすり替えを検知することができる。
秘密鍵が漏洩すると自分宛ての暗号文を攻撃者に解読されたり、攻撃者が自分になりすまして署名したりできるようになってしまう。このため、秘密鍵が漏洩したり漏洩の疑いがある場合には対になる公開鍵と共にこれを失効させ、新たな鍵ペアを生成して使用する。
また、稀に秘密鍵暗号(共通鍵暗号)で暗号化と復号の両方に用いられる単一の暗号鍵を秘密鍵と呼ぶこともあるが、一つしかないため一般的には単に暗号鍵と呼ぶことが多い。
共通鍵 【共有鍵】
データの暗号化や復号に用いる暗号鍵のうち、暗号文の送信者と受信者の間で共有するもの。共有鍵暗号における唯一の暗号鍵を指すことが多い。
暗号鍵は暗号を算出する計算手順に与える短い符号で、暗号方式が同じでも鍵が異なれば暗号文は異なる。暗号化や復号の計算方式が分かっていても、鍵が分からなければ解読することは困難となる。
暗号方式のうち「共有鍵暗号」(共通鍵暗号/秘密鍵暗号)と呼ばれる方式では暗号化と復号に同じ暗号鍵を用い、これを共通鍵という。暗号の受信者は送信者が用いた共通鍵を安全に入手する必要がある。
一方、「公開鍵暗号」と呼ばれる方式では対になる二つの暗号鍵の一方を本人しか知らない秘密鍵、もう一方を公開してよい「公開鍵」として運用する。共有鍵暗号における共通鍵を第三者に知られてはならないという意味で「秘密鍵」と呼ぶことがあるが、公開鍵暗号における秘密鍵と紛らわしいため共有鍵あるいは共通鍵と呼ぶのが一般的である。
シーザー暗号 【Caesar cipher】 ⭐⭐
古代ローマのカエサル(Caesar:シーザー)が用いたされる、最も単純で著名な暗号方式の一つ。各文字をアルファベット順で決まった数だけずらす手法。
暗号化したい平文の各文字について、アルファベットの順序(ABC…XYZ)に基づいて決まった数だけ移動させたものを暗号文とする。アルファベット列の末端では、Aの手前はZ、Zの次はAという具合に循環させる(循環シフト/ローテーション)。
例えば、3文字手前(左に3文字)にずらすシーザー暗号の場合、平文の「CAESAR」を暗号化すると、「C」が「Z」に、「A」が「X」に、「E」が「B」に…という具合にずれていき、「ZXCPXO」という暗号文に置き換えられる。
カエサル自身は各文字を3つ手前にずらしたものを使用したと伝えられており、狭義にはこの方式を指すが、ずらす方向と文字数(「左に2文字」「右に4文字」など)を一種の暗号鍵とみなす一般化された手法を指す場合もある。
現代の暗号学では換字式暗号の一種である単一換字式暗号(単換字式暗号)に分類され、コンピュータを用いれば容易に解読できるため実用的な暗号方式とはみなされないが、人間による発見や探索を避ける簡易な符丁などとして、ROT13(右に13字ずらす)などのシーザー暗号が用いられることがある。
SSL 【Secure Sockets Layer】 ⭐
インターネットなどのIPネットワークでデータを暗号化して送受信するプロトコル(通信手順)の一つ。データを送受信する一対の機器間で通信を暗号化し、中継装置などネットワーク上の他の機器から通信内容を覗き見たりすり替えたりできないようにする。
SSLは公開鍵暗号を応用したデジタル証明書による通信相手の認証(一般的にはサーバの認証)と、共通鍵暗号(秘密鍵暗号)による通信の暗号化、ハッシュ関数による改竄検知などの機能を提供する。Webアクセスに使われるHTTPと組み合わせ、Webサイトで認証情報や個人情報、決済情報などの送受信を安全に行う手段として広く普及している。
認証局と証明書
SSLでは、一対の秘密鍵と公開鍵を組み合わせて用いる「公開鍵暗号」により通信相手の確認や通信の暗号化に用いる暗号鍵の交換を行う。そのためには相手方(クライアント側ソフトウェアにとってサーバ側)の公開鍵をすり替えや改竄ができない方法で入手する必要がある。
SSLを利用するクライアント(Webブラウザなど)が、アクセス先のすべてのサーバの公開鍵を個別に安全に入手することは現実的ではないため、信頼できる「認証局」(CA:Certificate Authority)と呼ばれる機関が発行したデジタル証明書によって公開鍵の受け渡しを行う。
Webブラウザなどには著名な大手CAの公開鍵が記録された「ルート証明書」があらかじめ格納されており、これを用いてサーバから送られてきた証明書を検証することにより、途中ですり替えや改竄が行われていないことを確認することができる。この仕組みを「PKI」(Public Key Infrastructure:公開鍵基盤)という。
サーバ側ではSSLに対応するために大手CAやその認証を受けた下位CAの発行(通常は販売)する証明書を導入する必要がある。仕組みの上ではCAなど外部機関の認証を受けず自らが発行した証明書を使うこともできるが、クライアント側では「発行元の検証ができない」警告メッセージが表示される。
プロトコルとポート番号
SSLはプロトコル階層ではIP(Internet Protocol)の一段階上位で、TCPやUDPと同じトランスポート層のプロトコルである。TCPの代替として利用することができるため、HTTPに限らず様々な上位層(アプリケーション層)のプロトコルと組み合わせて使用され、インターネットにおける汎用的な通信の暗号化方式として定着している。
組み合わせるプロトコル応じて「○○ over SSL」(○○S)という名称で呼ばれ、HTTPであれば「HTTPS」、SMTPであれば「SMTPS」、POP3であれば「POP3S」などと呼ばれる。これらは元のプロトコルとは別に標準のポート番号が与えられており、HTTPは標準ではTCPの80番を使用するが、HTTPSは443番を使う。同様にSMTPSは465番(SMTPは25番)、POP3Sは995番(POP3は110番)が割り当てられている。
SSLとTLS
初期のSSLの仕様は1990年代半ばに当時のWebブラウザ大手、米ネットスケープ・コミュニケーションズ(Netscape Communications)社が開発した。SSL 1.0は欠陥が見つかったため公式発表前に破棄され、最初に公開されたのは1994年のSSL 2.0である。翌1995年にSSL 3.0が発表された。これらは現在では深刻な脆弱性が発見されており、利用を中止して後継版へ移行することが推奨されている。
SSL 3.0の次のバージョンから名称が「TLS」(Transport Layer Security)に変更されたため、現在広く利用されているのは正確にはTLSの方だが、「SSL」という名称が既に広く定着していたため、実際にはTLSを指していてもSSLと表記したり、「SSL/TLS」「TLS/SSL」などと両者を併記することが多い。
ユーザー認証
あるシステムへの利用を申し出た人物が、あらかじめ登録された利用者本人であるかを確かめること。ユーザー名などでどの登録利用者かを識別・同定し、パスワードなどで本人であることを確認する。
現代のコンピュータシステムでは、利用者ごとに適切な権限で機能やデータの利用させ、勝手に第三者が使用することができないよう、利用者の資格情報をシステムに登録し、利用時には本人確認をする仕組みが整備されている。
認証に先立って、システムへの利用者の登録が行われ、ユーザー名やIDなど利用者を識別するための符号と、パスワードなど確認のために用いる秘密の情報をセットで登録する。利用時には自分の識別符号を申し出て、本人であることを証明する情報を提示する。
分類
本人確認に何を用いるかによっていくつかの手法に分類される。最もよく知られ、また普及しているのは、パスワードやパスフレーズ、暗証番号(PIN)といった本人しか知らないはずの符号の入力を求める方式で「WYK」(What You Know)認証という。
一方、USBトークンや認証番号カード、スマートフォンなど本人しか持っていないはずの物理的なモノの所有を確認する方式を「WYH」(What You Have)認証、指紋や眼球の虹彩など本人の身体から固有のパターンを符号化して登録する方式を「WYA」(What You Are)認証あるいは生体認証(バイオメトリクス認証)という。
最も普及しているのはパスワード認証だが、パスワードが盗み取られると第三者が勝手に本人に「なりすまし」てシステムの操作や情報への接触ができてしまう難点があるため、ネットサービスなどではパスワードの確認後にSMS認証など別の認証手段を組み合わせる「多要素認証」(MFA:Multi-Factor Authentication)あるいは「二段階認証」が普及している。
バイオメトリクス認証 【生体認証】 ⭐⭐
指紋など固有性の高い人間の身体的特徴をデータ化して本人確認に用いる認証方式。暗証番号のように本人の記憶を用いる方式に比べ、原理的に他人による「なりすまし」が難しいが、生体は状態が安定しないことがあり本人の認識に失敗する場合がある。
古来より指紋は本人固有の生体的特徴として利用されてきたが、コンピュータによる指紋認証ではセンサーで表面の模様を読み取って一定の手順で図形的な特徴を符号化し、記録された本人のものと照合する。
指紋以外にも、眼球の黒目部分の皺の模様を用いる虹彩認証や、手のひらや指先の静脈の形状を赤外線センサーなどで読み取る静脈認証、声の特徴を用いる音声認証(声紋認証/声認証)、顔の特徴を用いる顔認証などが実用化されている。ペン型の入力機器で署名させ、その形状や筆圧、速度の変化などを符号化して照合する電子サインも生体認証の一種と言える。
パスワードなど単純な文字列や数字の比較に比べ、センサーを備えた特殊な機器が必要だったり、画像処理などで大量の計算をしなければならないなど仕組みが大掛かりなため、出入国管理や金融機関など業務用の機器やシステムから普及が始まった。
2010年代には装置の小型化やコンピュータの性能向上などが進み、スマートフォンやノートパソコンなどの携帯情報端末での利用者認証などにも利用が広がっている。パスワードなどと組み合わせて二段階認証を構成し、より高いセキュリティを実現する用途にも用いられる。
二段階認証 【2ステップ認証】 ⭐
情報システムなどで利用者の認証を行う際に、異なる二つの情報や方式を用いた認証を組み合わせる方式。二回続けて認証を行い、両方にパスしたときのみ確かに本人であると確認される。
最初にパスワードによる認証を行い、これにパスすると本人のスマートフォンへSMSで番号を送って入力させるSMS認証を行う、といったように二段階に分けて認証を実施する。この場合は攻撃者がパスワードを知っているだけではSMS認証を突破できないため本人になりすますことはできない。
二段階認証の多くは、本人の知っている情報(暗証番号やパスワードなど)による認証と、本人の持っているもの(スマートフォンや番号表、セキュリティトークンなど)による認証、本人の身体的特徴(指紋や虹彩、顔貌など)による認証(生体認証)の3種類から2種類を組み合わせるのが一般的である。
このように、認証に用いる要素が異なる方式を二種類組み合わせることを「二要素認証」(two-factor authentication)という。単に二段階の認証を行うだけなら、本人の知っている情報による認証を二回続けて行う構成(PINコードとパスワードなど)なども可能だが、同じ仕組みの認証を繰り返しても安全性を高める効果は限られるため、二段階認証を行う場合は二要素認証とするのが一般的である。
多段階認証
複数回の認証を連続して行い、すべてにパスすると認証成功とする方式を総称して「多段階認証」(multi-step authentication)という。極めて高いセキュリティ水準が要求される場合などに、3段階や4段階などの認証を行う場合がある。
UID 【User Identifier】 ⭐⭐⭐
複数の利用者を一意に識別するための識別子。または、一意の識別子。具体的な仕様や規約はシステムの種類によって異なる。
アカウントのUID
システムやサービスに利用者登録(アカウント作成)を行う際に設定する利用者名(ユーザー名/アカウント名)のことをユーザーIDということがある。氏名やメールアドレス、ニックネーム、本人が任意に設定する英数字の組み合わせなどが使われることが多い。
UNIXのUID
UNIX系OSで登録利用者を一意に識別するために割り振られた識別番号をUIDあるいは「ユーザー識別子」という。16ビットあるいは32ビットの整数値が用いられ、0は必ずスーパーユーザー(rootユーザー)を表し、1から100(OSによって異なる)はシステムによって予約されている。
携帯電話のUID
携帯電話事業者が個々の契約者に割り当てた契約者固有識別子や、個々の端末に割り当てた端末固有識別子などをUIDということがある。
文脈により、SIMカードなどに記録された契約者ごとに固有の識別番号(端末が変わっても引き継がれる)などを指す場合と、端末内部に記録された個体ごとに固有の製造番号(利用者が変わっても引き継がれる)などを指す場合がある。
パスワード ⭐⭐⭐
利用者が名乗った本人であるか確認する際などに用いられる秘密の合言葉。事前に登録したものと、認証時に入力したものが一致すれば本人であるとみなされる。
利用者の登録・識別を必要とするシステムでは、利用者の登録(アカウント作成など)の際に識別名(ユーザーID/アカウント名)とセットでパスワードを登録する。その識別名を名乗る利用者が使用開始(ログイン)を申請すると、システムはパスワードの入力を求め、登録されたものと一致すれば本人とみなして使用を許可する。
利用できる文字の種類や長さは個々のシステムによって定められているが、(半角の)ラテンアルファベット(大文字・小文字の区別あり)、数字、一部の記号の組み合わせで8文字以上と規定されている場合が多い。
パスワードと同じ秘密の情報を入力させる仕組みのものには、数桁の数字を入力させる暗証番号(PIN:Personal Identification Number)や、いくつかの単語の組み合わせを入力させるパスフレーズ(passphrase)などがある。
パスワードの割り出し
パスワードを他人に知られてしまうと自分になりすましてシステムを利用されてしまうため、誰にも知らせてはならない。ただし、攻撃者が不正にシステムを利用するためにパスワードの割り出しを試みる場合があり、直接知られなくても入手されてしまうことがある。
パスワードへの攻撃は、何らかの手法で候補を大量に生成し、実際にログインを試みることにより行われることが多い。主な手法として、すべての文字の組み合わせを片っ端から試す「総当たり攻撃」(ブルートフォースアタック)や、人間が覚えやすい既存の単語や文字の並びのリストを作り、それらを組み合わせて候補を作成する「辞書攻撃」(ディクショナリアタック)などがある。
これらの攻撃手法では短く覚えやすいものほど割り出しやすいため、パスワードは覚えられる範囲でなるべく長く、様々な文字種(大文字・小文字・数字・記号)を組み合わせて作成し、意味のある単語や覚えやすい単純な文字の並び(「password」「123456」など)などは避けるべきとされる。
また、本人や家族の氏名、生年月日、電話番号、居住地、出身地など、何らかの方法で入手した本人についての様々な情報から候補を作成する手法もあるため、自分や家族に関連する単語や番号などは含めないことが望ましい。
電子署名 【デジタル署名】 ⭐⭐
文書やメッセージなどのデータの真正性を証明するために付加される短いデータ。作成者を証明し、改竄やすり替えが行われていないことを保証する。欧米で紙の文書に記されるサイン(signature)に似た働きをするためこのように呼ばれる。
対になる2つの暗号鍵を用いる公開鍵暗号の原理と暗号学的ハッシュ関数を組み合わせた仕組みで、メッセージの送信者は本人しか知らない秘密鍵と本文を元に一定の手順で算出した固定長の符号をメッセージに添付し、相手方に送る。
受信者は受け取った本文と、秘密鍵と対になる送信者の公開鍵などを用いて一定の手順で同様の符号の算出を試み、添付されたものと照合する。両者が一致すれば、メッセージが確かに送信者本人のものであり、かつ伝送途上で第三者による改竄やすり替えが行われていないことが確認できる。
デジタル署名はインターネットなど信頼できない経路を通じたメッセージの送受信でよく用いられるが、文書の安全な保管などにも用いられる。作成者が後になって自分が作成したことを否定するのを防ぐ(否認防止)証拠として用いられる場合もある。
公開鍵証明書とPKI
受信者が署名を検証するには送信者の公開鍵が必要だが、インターネットなど信頼できない経路で伝送すると攻撃者によるすり替えの危険があるため、公開鍵データに送信者と受信者の双方が信用する第三者のデジタル署名を添付するという手法が考案された。これをデジタル証明書(公開鍵証明書)と呼び、信頼できる第三者を認証局(CA:Certificate Authority)という。
証明書の真正性を確認するには認証局の公開鍵が必要であり、これは上位の認証局によって署名されたデジタル証明書によって配布される。このような信頼の連鎖の起点となる最上位の認証局はルート認証局(Root CA)と呼ばれ、実用上は送信者と受信者が同じルート認証局の証明書(ルート証明書)を持っていれば、それに連なる任意の認証局の証明書を用いて鍵を配送することができる。
このような安全な公開鍵配送のための社会的なインフラのことをPKI(Public Key Infrastructure)と呼び、インターネットなどで電子署名を利用するソフトウェアにはあらかじめ世界的に有力なルート認証局の証明書が組み込まれている。
電子署名とデジタル署名の違い
「電子署名」(electoronic signature)とは本来、紙の文書における押印やサインに相当する証明手段を電子的な手段で実現したもの全般を表す総称であり、「デジタル署名」(digital signature)は公開鍵暗号の原理に基づく電子署名の一方式である。
電子署名の方式としては他に、ペン型の入力機器で文書にサインを書き入れる電子サインなどがあるが、最も有力で普及しているデジタル署名を電子署名の同義語のように用いることが多い。
電子署名法
電子署名と認証業務に関する規定を定め、電子署名が手書き署名や押印と同等に通用することを定めた日本の法律。2000(平成12)年5月成立、2001年4月施行。正式名称は「電子署名及び認証業務に関する法律」。
有効な電子署名について一定の要件を定め、これを満たす電子署名が付された電子データに対して紙の文書に署名・捺印されたものと同等の法的な証拠性を認めている。具体的な技術要件は総務省・経済産業省・法務省が共同で告示しており、1024ビットRSAや1024ビットDSA、160ビットECDSAが挙げられている。このうちRSAについては危殆化の懸念から2019年までに2048ビットへの移行が予定され、同時にこれらの署名方式に用いるハッシュ関数もSHA-1からSHA-2へ移行される。
また、署名が本人のものであることを証明する認証業務について、一定の基準を満たした認証局がデジタル証明書を発行する業務を特定認証業務としている。その中で、さらに厳しい基準を満たし、国や指定検査機関の審査を経て認定された認証局の業務を認定認証業務という。認定認証局は全国で十社程度が認定されている。
デジタル証明書 【電子証明書】
暗号化やデジタル署名に用いる公開鍵暗号の公開鍵を配送する際に、受信者が鍵の所有者を確認するために添付される一連のデータセットのこと。一般的には認証局(CA:Certificate Authority)と呼ばれる機関が発行する。
公開鍵暗号では一対の暗号鍵の組を用い、一方は自分しか知らない秘密鍵として、もう一方は通信の相手方に渡して使ってもらう公開鍵として用いる。相手と安全な受け渡し手段がある場合は事前に公開鍵を渡しておくことができるが、そうでない場合はインターネットなど信用できない経路を含む通信手段で鍵を配送しなければならない。
そこで、公開鍵が通信途上で攻撃者による改竄・すり替えに遭っておらず、確かに送信者本人のものであると受信者が確認できるようにするために、公開鍵データに送信者と受信者の双方が信用する第三者(認証局)のデジタル署名を添付するという手法が考案された。
送信者は認証局に自らの識別(身元)情報や公開鍵を申請し、認証局の秘密鍵でデジタル署名されたデジタル証明書を作成してもらい、これを受信者に渡す。受信者は証明書から公開鍵を取り出し署名を検証することで、認証局がその公開鍵が送信者本人のものであると主張していることを確かめることができる。
現在広く普及しているデジタル証明書の規格はITU-Tの定めたX.509で、公開鍵自体の他に、証明書発行者(認証局など)の識別情報、証明書の識別情報(シリアル番号など)、証明書の有効期間(開始日・終了日)、鍵の所有者の識別情報、公開鍵の暗号アルゴリズムの種類、発行者によるデジタル署名などの情報が記載される。
認証局の鍵配送問題とルート認証局
証明書のデジタル署名を検証するには認証局の公開鍵が必要となるため、受信者は送信者が利用する認証局の公開鍵を安全に入手しなければならない。しかし、世の中のすべての認証局の公開鍵をあらかじめ揃えておくことは現実的ではなく、また、インターネットなどで公開鍵をそのまま配送するのは送信者の鍵を送る場合と同じ危険がある。
この問題を回避するため、Webブラウザなど公開鍵暗号を利用するソフトウェアには世界的に有力な少数の認証局の公開鍵が安全な方法であらかじめ組み込まれており、そのような認証局をルート認証局(ルートCA)という。
各認証局は自らの公開鍵を上位の認証局に署名してもらって公開し、上位認証局はさらに上位の認証局に署名してもらって鍵を公開し…というプロセスを繰り返し、最終的にルート認証局の署名が得られれば、利用者は安全に各認証局の公開鍵を入手することができる。ルート認証局は利用者側でも追加できるようになっているため、必ずしも著名な機関を頂点とする証明書しか使用できないわけではない。
電子署名 【デジタル署名】
文書やメッセージなどのデータの真正性を証明するために付加される短いデータ。作成者を証明し、改竄やすり替えが行われていないことを保証する。欧米で紙の文書に記されるサイン(signature)に似た働きをするためこのように呼ばれる。
対になる2つの暗号鍵を用いる公開鍵暗号の原理と暗号学的ハッシュ関数を組み合わせた仕組みで、メッセージの送信者は本人しか知らない秘密鍵と本文を元に一定の手順で算出した固定長の符号をメッセージに添付し、相手方に送る。
受信者は受け取った本文と、秘密鍵と対になる送信者の公開鍵などを用いて一定の手順で同様の符号の算出を試み、添付されたものと照合する。両者が一致すれば、メッセージが確かに送信者本人のものであり、かつ伝送途上で第三者による改竄やすり替えが行われていないことが確認できる。
電子署名法はインターネットなど信頼できない経路を通じたメッセージの送受信でよく用いられるが、文書の安全な保管などにも用いられる。作成者が後になって自分が作成したことを否定するのを防ぐ(否認防止)証拠として用いられる場合もある。
公開鍵証明書とPKI
受信者が署名を検証するには送信者の公開鍵が必要だが、インターネットなど信頼できない経路で伝送すると攻撃者によるすり替えの危険があるため、公開鍵データに送信者と受信者の双方が信用する第三者のデジタル署名を添付するという手法が考案された。これをデジタル証明書(公開鍵証明書)と呼び、信頼できる第三者を認証局(CA:Certificate Authority)という。
証明書の真正性を確認するには認証局の公開鍵が必要であり、これは上位の認証局によって署名されたデジタル証明書によって配布される。このような信頼の連鎖の起点となる最上位の認証局はルート認証局(Root CA)と呼ばれ、実用上は送信者と受信者が同じルート認証局の証明書(ルート証明書)を持っていれば、それに連なる任意の認証局の証明書を用いて鍵を配送することができる。
このような安全な公開鍵配送のための社会的なインフラのことをPKI(Public Key Infrastructure)と呼び、インターネットなどで電子署名を利用するソフトウェアにはあらかじめ世界的に有力なルート認証局の証明書が組み込まれている。
電子署名とデジタル署名の違い
「電子署名」(electoronic signature)とは本来、紙の文書における押印やサインに相当する証明手段を電子的な手段で実現したもの全般を表す総称であり、「デジタル署名」(digital signature)は公開鍵暗号の原理に基づく電子署名の一方式である。
電子署名の方式としては他に、ペン型の入力機器で文書にサインを書き入れる電子サインなどがあるが、最も有力で普及しているデジタル署名を電子署名の同義語のように用いることが多い。
電子署名法
電子署名と認証業務に関する規定を定め、電子署名が手書き署名や押印と同等に通用することを定めた日本の法律。2000(平成12)年5月成立、2001年4月施行。正式名称は「電子署名及び認証業務に関する法律」。
有効な電子署名について一定の要件を定め、これを満たす電子署名が付された電子データに対して紙の文書に署名・捺印されたものと同等の法的な証拠性を認めている。具体的な技術要件は総務省・経済産業省・法務省が共同で告示しており、1024ビットRSAや1024ビットDSA、160ビットECDSAが挙げられている。このうちRSAについては危殆化の懸念から2019年までに2048ビットへの移行が予定され、同時にこれらの署名方式に用いるハッシュ関数もSHA-1からSHA-2へ移行される。
また、署名が本人のものであることを証明する認証業務について、一定の基準を満たした認証局がデジタル証明書を発行する業務を特定認証業務としている。その中で、さらに厳しい基準を満たし、国や指定検査機関の審査を経て認定された認証局の業務を認定認証業務という。認定認証局は全国で十社程度が認定されている。