TCP/IPの基礎知識
TCP/IP
コンピュータネットワークで広く用いられている通信プロトコル。TCP(Transmission Control Protocol)とIP(Internet Protocol)と呼ばれるプロトコルのセット。
TCP/IPのレイヤー構成
アプリケーション層 ... 具体的な通信サービスを実現する トランスポート層 ... 高信頼性など目的に応じた通信品質を実現する(TCPが含まれる) インターネット層 ... 中継などにより任意の機器同士の通信を実現する (IPが含まれる) ネットワークインタフェース層 ... 直接接続された機器同士の通信を実現する
ある層で実現する機能は上位の層から利用される。
ネットワークインタフェース層の役割
ハードウェアで直接繋がっているコンピュータ同士が、相互に通信できるようにするための機能を実現する。
この層を構成する代表的なプロトコル
プロトコル | 説明 |
---|---|
イーサネット | 有線LANで最も主流なネットワークの規格 |
Wi-F | 無線を使いLANに接続するための規格 |
PPPoE | イーサネットの上で1対1の接続を行うプロトコル |
PPP | PPPoEの元となったプロトコル |
ARP/RARP | IPアドレスからMACアドレスを得る/その逆(MACアドレスからIPアドレスを得る) |
インターネット層の役割
複数のネットワークを繋いで、相互にパケットをやり取りする機能を実現する。
下位にあるネットワークインタフェース層は直接繋がったコンピュータ同士の通信を提供するが、インターネット層を用いることで、直接繋がっていないコンピュータ同士でも、相互に通信ができるようになる。
ルーティング
このそうで大きな役割を果たすのがパケットの中継機能。パケットを中継し、所定の方向に転送することをルーティングという。ルーティングによって任意の相手にデータを届ける事を可能にしている。
この層を構成する代表的なプロトコル
プロトコル | 説明 |
---|---|
IP | 直接つながっていないネットワーク間で、パケットをルーティングする機能を提供するプロトコル。 |
IPはIPアドレスというコンピュータを識別するためのアドレスを用いてルーティングする。
トランスポート層の役割
インターネット層が作り出す任意のコンピュータ同士の通信接続をベースにして、ネットワークの使用目的に応じた特性をもつ通信を実現する。 具体的には、より信頼性の高い通信を可能にしたり、信頼性は低くても素早くパケットを送れるようにしたりする。
この層を構成する代表的なプロトコル
プロトコル | 説明 |
---|---|
TCP | コンピュータ同士が行う通信にm信頼性の高さを付け加えたるプロトコル。最初に接続を作り、通信を終えたら接続を切る。再送や順序の入れ替えをするので、リアルタイム性には欠ける。 |
UDP | インターネット層の機能をほぼそのまま使い、事前準備が不要で身軽な通信を実現するプロトコル。必要な時にすぐに相手にデータを送れ、到着しデータはすぐにアプリケーションに届く。 |
アプリケーション層の役割
個別のアプリケーション層が保つ機能を実現する層。 下位にあるトランスポート層が作り出す「目的に応じた通信機能」の中から、アプリケーションに適したものを選びmそれを使ってアプリケーション同士がデータをやり取りする。
この層を構成する代表的なプロトコル
プロトコル | 説明 |
---|---|
HTTP | Webへアクセスする。サーバーに対して情報取得を指示するリクエストや、その結果をサーバーが返すレスポンスなどの順序や書式が定められている |
SMTP | メールの送信やサーバー間の転送をする |
DNS | ドメイン名とIPアドレスを相互に交換する |
IPアドレス
IPアドレスとは、IPと呼ばれるプロトコルを使うネットワークにおいて、各コンピュータを識別するために、コンピュータへ付与する番号の列。
ポート番号
ポート番号とは、コンピュータのどの機能を使用するか指定するための番号。トランスポート層にあたるTCPまたはUDPが提供する機能。 1台のコンピュータが複数の機能を持つ場合、IPアドレスを指定するだけでは複数ある機能のうちどれを使うかを示すことができない。IPドレスとポート番号の両方を指定することで、どのコンピュータのどの機能、といった指定が可能となる。
代表的なポート番号
ポート番号 | プロトコル | 用途 |
---|---|---|
80 | HTTP | Webへのアクセス |
443 | HTTPS | 暗号化したWebへのアクセス |
20 | FTP data | ファイル転送 |
グローバルIPとプライベートIP
IPアドレスは以下の2つに分けることができる
- グローバルIP
- プライベートIP
グローバルIP
コンピュータを識別するために、世界で唯一となるように割り振られる。
プライベートIP
組織の内でネットワークで使用するもので、組織内で被っていなければ他の組織のプライベートIPと重複しても良い。
IPアドレスのクラスとネットマスク
IPアドレスは、左側のネットワーク部と右側のホスト部の2つによって構成されている。
ネットワーク部
あるネットワークを特定する情報。
ホスト部
そのネットワーク内のコンピュータを特定する情報。
また、IPアドレスにはクラスと言う概念がある。
IPアドレスにおけるクラス
クラスはA〜Eまであり、基本的にはA〜Cを使用する。それぞれの違いは、1つのネットワークアドレスの中で、何台のコンピュータを区別できるか、つまりネットワークの規模の違い。
クラス | 用途 |
---|---|
クラスA | 大規模ネットワーク用。ネットワーク部が8ビットなので、残りのホスト部は24ビット。多くのコンピュータを区別できる。 |
クラスB | 中規模ネットワーク用。ネットワーク部が16ビット |
クラスC | 小規模ネットワーク用。ネットワーク部が24ビット |
ネットワーク部を知るためには、ネットマスクを使用する。 ネットワーク部に当たる部分を1にしたビット列をネットマスクと呼び、これとIPアドレスをAND演算するとネットワークを取り出せる。
サブネット化とサブネットマスク
サブネット化とは、規模の大きなネットワークを構築する際、1つのネットワークを小さなネットワークに分けること。
サブネット化のメリット
- ブロードキャストが届く範囲を限定する
- 故障が波及する範囲を最小限に抑える
ブロードキャストとは、ネットワーク内の全コンピュータへ一斉送信すること。個別に送ることによって生じる付加を軽減させることができるが、不必要なコンピュータに無駄な処理をさせ、ネットワークの通信能力を浪費してしまう。このブロードキャストが届く範囲を限定することで、浪費を抑えることができる。
サブネット化する方法
サブネット化する場合、IPアドレスの中のネットワーク部をさらに延ばして、サブネットを特定するための番号を確保する。その分ホスト部は短くなるので、サブネット内で使用できるコンピュータの数はその分少なくなるので注意。
また、サブネット化した時のネットワマスクを特にサブネットマスクと呼ぶ。
ブロードキャストとマルチキャスト
IPプロトコルを使った通信は1対1で行うものや1対多で行うものがある。
通信の種類 | 説明 |
---|---|
ユニキャスト | 1対1で行う通信 |
ブロードキャスト | 同じイーサネットに接続している全てのコンピュータに対してデータを届ける通信。ネットワーク内で行うため、他のネットワーク内のコンピュータには通信されない。 |
マルチキャスト | あるグループに含まれる特定のコンピュータに足してデータを届ける通信 |
ルータの役割と機能
ルータは、相互に独立しているイーサネットワークの間に入って、両者の間でパケットを中継するもの。