このページでは自宅サーバーLinuxでの構築に必要な知識であるTCP/IPの仕様と階層モデルについて初心者/ビギナー向けに解説します。
お便利サーバー.com+相互リンクサイト内をキーワードで検索
通信とネットワークの基礎知識

通信とネットワーク

TCP/IPとは

TCPとUDP

上位プロトコルとポート番号

IPアドレスとは〜その1

IPアドレスとは〜その2

IPアドレスとは〜その3

回線の種類について

ISPの選択

ネットワークの構築

ルーターの設定〜その1

ルーターの設定〜その2

ドメイン名について

名前解決とネームサーバー

ダイナミックDNS


TCP/IPはネットワークの世界標準です

パソコンをある程度使い込んでくると、必ずどこかで見かけるのが TCP/IP というキーワードです。

雑誌やインターネット上だけではなくパソコンの通信設定画面の ダイアログ でもしばしば登場するので、このサイトをご覧の方であれば少なからず目にしたことはあるでしょう。

ところが、よく見かける割には意味がよく解らないIT用語の代表例ともいえるでしょう。

コンピュータの通信を理解するには、まずはこのTCP/IPについての基本をマスターする必要があります。

ここではまず、このTCP/IPを感覚的に理解していただくために、パソコンの通信の基本的な部分から説明します。

例えば、二台の ホスト機 が通信を行う場合には、お互いの所在を確認する手段が必要なだけでなく、やり取りするデータの形式が同じでなければなりせん。

その他にも、例えば通信途中にパソコンの電源が切れた場合の処置とか、エラーが起こったりしたときにどう収拾するだとか、通信にはそういう細かいところまで約束事が必要です。

インターネットが普及するより以前、まだパソコン通信やパソコンネットワークが一般的なものと認知されていなかった頃は、この約束事に統一性がなくて様々な プロトコル が乱立していました。

プロトコルが違えばデータ通信は成立しませんから、例えば WindowsOS MacintoshOS UNIX は、プロトコルがそれぞれNetBEUI、AppleTalk、 NFS という具合に異なっていたために相互のデータ通信が行えませんでした。

その後、 パケット 通信を基本としたTCP/IPがインターネットの通信規格として登場し、UNIX系 OS に標準採用された頃から急速に普及しました。そして現在ではインターネットを利用するOS全てに最も普及している通信規格となっています。

従って、よく雑誌で目にする、「TCP/IP プロトコル」という表現は明らかに誤りです。TCP/IPは「色々なプロトコルを集めて作られた約束事」なのであって、プロトコルそのもを指すのではありません。

つまりTCP/IPを正しく表現すると、「コンピュータ通信のあらゆるケースに対応できるように、沢山の種類のプロトコルが統合され、定められた形式。」となるでしょうか。

TCP/IPは、それまでの通信規格と比較すると、様々な用途、目的に利用できるように制約が少なくなっているのが特徴です。それだけ柔軟性のある規格ともいえるわけですが、逆に考えると設定や制御に必要な項目が多くなりがちで、それだけ煩雑だともいえるでしょう。

このことは例えば、ハードディスク内蔵DVDレコーダーとかカメラ付きケータイとか、「あれもできます。これもできます。」的な自由度の高い製品が、初心者にはかえってとっつき難いものであるのとよく似ています。

もちろん、パソコンをパソコンとしてごく普通に楽しむだけなら、TCP/IPを意識しなければならないことはほとんどありません。しかし自宅で サーバー の運用をもくろんでいるのであれば、これは避けて通れませんので、まずは概念だけでも覚えていきましょう。

このページの先頭へ↑

パケット通信について

TCP/IPは パケット 単位で通信を行うことが前提になっています。

パケット通信の場合、送信元の ホスト から送られるデータは、まず送信元でバラバラに分割され、その一つ一つに送信元、送信先などの情報が付けられてパケットとなり、送信されます。一方の受信側のホストは、すべてのパケットを集め、繋ぎ合わせて元のデータを再構築します。

それは例えば、丸ごとでは送ることのできない大きな家具を別の場所に送りたいとき、

1.宅配便で送れるサイズでバラバラのパーツに分解する。

2.パーツごとに番号を付け、それぞれに荷札を貼って同じ場所に宅配便で送る。

3.すべてのパーツを現地で受け取り、番号順に元の家具に組み立てなおす。

という作業をイメージしていただければわかりやすいと思います。

という訳で、パケット通信は ホスト機 にとっては結構面倒な作業です。一見すると、

「分割したり、組み立てたりせずに、一度に丸ごと送ってしまえばいいじゃないか。」

と思われるかもしれません。確かにそのほうが通信速度も断然速くなり、ホスト機も余分な仕事をせずにすむはずです。

ただ、パケット通信には大きな利点があります。

もし通信速度を優先して、

「一度送受信が開始されたら、最後まで通信データが途切れなく送られる。」

というような仕組みになっていたとします。すると、回線を共用している他のホストは、その通信が終了するまで一切通信できないことになります。

データをパケットにして送ることで、例えば大きなデータの送受信が行われている最中でも、パケットとパケットの間に他のパケットを割り込ませて送ることが出来るため、全体としての通信速度は遅くなっても、「通信の順番待ち」はなくなるというわけです。

また、大きなデータを一度に送受信すると、その一部にエラーが起こってしまうだけで最初から全部やり直しになってしまいますが、パケットで細切れにして送受信すればエラーを起こしたパケットだけを送受信しなおせば良いわけです。

これらがパケット通信の最大のメリットといえます。

このページの先頭へ↑

OSI参照モデルの考え方とTCP/IP

TCP/IP は、 プロトコル の種類を整理しただけの規格ではありません。

TCP/IPでは、実際に電気信号を送るためのケーブルや制御機器などの ハードウェア や、そこを流れる電気信号の波形や電圧、更に信号のパターンから送受信の開始、終了の手続きといった ソフトウェア 的な面まで、非常に幅広く規格が決められています。

OSI :"Open Systems Interconnection"和訳で「開放型システム間相互接続」。これではよく意味がわかりませんが、とにかく1977年にISO「国際標準化機構」が制定しました。

TCP/IPはその前提として、データ通信の整合性を維持するために、古くから一般的な通信規格のガイドラインとして提唱されている OSI参照モデル または OSI階層モデル と呼ばれるものに準じて構成されています。

OSI参照モデルの アーキテクチャ は、データ通信を七つの階層に分けて通信の規格を定め、

「どこかの単一の階層で仕様の変更や追加を行っても、他の階層の仕様をそれに合わせなくても良いようにしましょう。」

というもので、機能や性能の段階的な向上が行い易いように合理的に考えられています。

ただ、その説明はあまりにも煩雑なので、ここで敢えて七階層モデルについては説明しません。TCP/IPは、その七階層モデルに準拠する形で作られているわけですが、一般的な解説書で取り上げられている四階層モデルとして説明します。

この階層モデルは、 公開サーバー を試行錯誤で立ち上げ、色々勉強していくうちに自然と理解できるようになりますので、今は詳しく解らなくても心配はいりません。今は概念をイメージ的に捉えてもらえれば大丈夫です。

さて、TCP/IPは、最もハードウェアに近いところから次のような階層で構成されています。

1. ネットワークインターフェース層

これは例えばケーブルのコネクタの形や、データを送るときの電圧や信号の形、全体的な接続の形態などを定めた階層です。

2. インターネット層

ホスト ルーター などの通信機器の所在地情報や、基本的な通信手続きの段取りなどを定めた階層です。

3. トランスポート層

実際に通信されるデータの形式や、通信の開始、終了の形式などを定めた階層です。

4. アプリケーション層

特定の目的をもったプロトコルの種類などを定めた階層です。

これだけではちょっと解り難いと思いますので、「郵便」を例にとって説明しましょう。

1.は、郵政事業の基本的な取り決めに相当します。つまり「郵便とは、国の機関(今のところは)が有料で文書などを集配するサービスである。」などの原則的な取り決めです。

管理人おススメの
ネットワーク解説書です

2.は郵便番号や配達先の住所の表記方法などです。これが地方によっては「番地から先に書く」みたいになっていては困りますよね。

3.は郵便物の輸送の手段。例えばトラックで運ぶとかバイクで配るとかの取り決めですね。

4.は扱う郵便の内容。ハガキや封書、書留、小包などのルールと思ってください。

アプリケーション層 目的別通信形式 配送する物品の種類
トランスポート層 基本的な通信手段 輸送手段
インターネット層 ホストの識別情報など 住所や配送ルールの取り決め
ネットワークインターフェース層 物理的な仕様など 郵政事業の取り決め

TCP/IPの階層モデルの考え方と郵便の仕組み

よくよく考えてみると、これらのうちどれかが変更になっても、他に階層には影響を与えることがない、ということがお解りでしょうか。

例えば郵便番号が5桁から7桁に変更になっても、取り扱う郵便物の種類や運送方法を変更しなければならないわけではありませんし、小包の基準サイズを変更したからといって郵政事業を民営化しなければならないということもありません。

ネットワークにおける階層モデルの役割は、この郵便事業の例えのように、ネットワーク全体の構成を互いに影響を与えないレベルで切り分けることで、新しい通信手段やサービスなどを導入しやすくすることにあります。

例えば、1.のネットワーク層についていえば、一般に イーサネット 上での、 UTPケーブル 及び RJ-45 コネクタによる接続が基本ですが、その方法は常に進化していて、無線や光ファイバーを利用した新しい高速な伝送方法が開発されていきます。

しかしながら、そういった物理的伝送方法が変化し、混在することがあっても、 IPアドレス の取り扱い方を変えなければならないとか、ホームページを見るのに特別な アプリケーション が必要になるとか、そういった他の3階層の仕組みや取り扱いには影響を与えることはない、という構造になっている訳です。

という訳で、

1.のネットワークインターフェース層については、 ハードウェアとしてのルーターの説明 ハードウェアとしてのNICの説明 などで解説していますので参考にしてください。

2.のインターネット層については、 IPアドレス のセクションに詳しい解説があります。

3.のトランスポート層については、次のパート TCPとUDPの説明 を参考にしてください。

Linuxとネットワークの初心者にオススメです!

4.のアプリケーション層については、更にその次のパート 上位のプロトコルの説明 を参考にしてください。

Next>> TCPとUDP
このサイトは既に更新を終了していますが、今のところ店じまいの予定はありません。 リンクフリー ですので、趣味や勉強のためでしたら、引用、転用、コピー、朗読、その他OKです。このサイトへのリンクについては こちら をご覧ください。
Powered by Apache
”Linux”は、Linus Torvalds 氏の各国における登録商標です。”Red Hat”及びRed Hatのロゴおよび Red Hat をベースとしたすべての商標とロゴは、各国におけるRed Hat, Inc. 社の商標または登録商標です。その他のプログラム名、システム名、製品名などは各メーカー、ベンダの各国における登録商標又は商標です。
www.centos.org - The Community ENTerprise Operating System