ネットワーク---TCP/IPプロトコルの仕組み

『ネットワーク』とは

  • ネットワーク
    コンピュータとコンピュータを繋ぐこと。
    生産性を高めるのが目的です。
  • ネットワークの種類
    • LAN(Local Area Network)
      社内や自宅などで構成される、小規模ネットワークのこと。
    • WAN(Wide Area Netowork)
      LANとLANを結ぶネットワークのこと。

IPアドレス

  • IPアドレス
    コンピュータ毎に割り当てられる、ネットワーク上の住所のこと。
    本来32bitで表されるものですが、実際は、8bit毎に区切られた10進数で表記します。(0〜255のうち、4つの数字の組み合わせ)
    ネットワークにおいては、相手先のIPアドレス&ポート番号(後述)を指定することで、初めて通信が可能となります。
    • ホスト
      IPアドレスが設定されたコンピュータのこと。
    • ネットワーク・アドレス
      コンピュータの所属ネットワークで共通の番号。IPアドレスのうち、最初の8×3bit。
    • ホスト・アドレス
      同ネットワーク内でも、コンピュータごとに割り振られる番号。IPアドレスのうち、最後の8bit。
      例: 123.45.67.89(123.45.67がネットワーク番号 / 89がホスト番号)
    • ローカルIPアドレス
      LANにおけるIPアドレスのこと。
      LAN内で重複しなければよいもので、他のLAN内で同一アドレスが使われていることもあります。

TCP/IPプロトコル

  • TCP/IPプロトコル
    プロトコル』とは、送信者 / 受信者間におけるデータの送り方の約束事(=データ形式を揃えること)。
    コンピュータ同士が繋がるためには、統一された規格、すなわちプロトコルが必要です。
    国際的指標として『OSI参照モデル』がありますが、これをさらに実用的にしたものが『TCP/IPプロトコル』です。
    もともとUNIXのネットワークだけで使われていたものが、インターネットの普及によって、WindowsMacOSにも実装されるようになりました。
    TCP/IPプロトコルでは、通信に必要な機能を、大きく4つの階層に分けています。
    • パケット
      データ送信の際、データが分割される単位のこと。
      ネットワーク機器は、パケット内部の情報を参照することがないため、転送中にパケットの順番が替わってしまうことがあります。
      また、パケットには有効期限が与えられる(何らかの事故で同一箇所をループしてしまうのを防ぐため)ので、失くなってしまうこともあります。
    • ソケット
      TCP/IPソフト内部にあるメモリ領域。
      通信に必要な情報(使用プロトコルの種類・通信の進行状況・ポート番号etc.)を記憶します。
  • アプリケーション層
    アプリケーションで扱う情報のデータ形式と、通信時のデータ形式とを変換し、データの転送方法を管理する層です。
    例: HTTP・SMTPFTPTelnet
  • トランスポート層
    コンピュータ内部の、どのアプリケーションとどのアプリケーションが通信しているのか識別する層です。
    • ポート番号
      上位アプリケーションを識別する番号。
      これにより、同一IPアドレスにて、複数のサービスを扱うことができます。
主なサービス ポート番号
FTP(data) 20
Telnet 23
SMTP 25
HTTP 80
プロトコル プロトコル番号
TCP 6
UDP 17
      • TCP(Transmission Control Protocol)
        信頼性のあるプロトコル
        順番の代わってしまったパケットの整理や、ロストしてしまったパケットの再送など、データが確実に送り届けられたかどうか管理してくれます。
        データ転送の信頼性を保障する代わりに、時間がかかります。
        メールなど、一対一の通信に向いています。
      • UDP(User Datagram Protocol)
        信頼性のないプロトコル
        パケットの順番やロストを保障しないため、通信に時間がかかりません。
        ビデオ配信など、一対多の通信・速度を重視する通信に向いています。
  • インターネット層
    IPアドレスをもとに、データを運ぶルート・宛先を決定し、データを送り届ける層です。
    送信元のIPアドレスも把握し、セキュリティ上の判断に必要な材料を提供します。
  • ネットワークインターフェース層
    データをパケット化し、直接接続された機器同士のデータのやり取りを制御する層です。
    bitの列を電圧や光に変換します。

サーバの種類

  • Webサーバ
    HTTP(HyperText Transfer Protocol:ハイパーテキスト転送プロトコル)を利用して、コンテンツ(HTML・画像etc.)の送受信を行うコンピュータ / ソフトウェアのこと。
    • Webサーバの仕組み
      ブラウザからページ取得要求があると、WebサーバはHTMLコンテンツをブラウザに返します。
      ブラウザはHTML言語を読解し、その命令に従ってページを表示します。
  • FTPサーバ
    FTP(File Transfer Protocol:ファイル転送プロトコル)を利用して、ファイルの送受信を行うコンピュータ / ソフトウェアのこと。
    • FTPサーバの仕組み
      ファイル転送命令を受け付けるポート・ファイルを転送するポートを分け、スムーズなデータ転送を実現しています。
  • DNS(Domain Name System)サーバ
    名前解決(【ホスト名 / ドメイン名 ⇔ IPアドレス】の対応を管理・変換)するコンピュータのこと。
    LANごとに配置され、世界中のDNSサーバ同士が連携しています。
    • 名前解決の仕組み
      DNSサーバには、ゾーン(担当する名前解決の範囲)が設定されています。
      ルートドメインのゾーン、トップレベルドメインのゾーン、サブドメインのゾーン、ドメイン名のゾーンを担当するサーバが連携して名前解決します。
    • 名前解決が必要な理由
      人間にとっては、数字(IPアドレス)よりも文字列(ホスト名 / ドメイン名)の方が判りやすく、便利です。
      一方で、データの転送先をコントロールするのは『ルータ』という機器なので、文字列よりも数字の方がデータ量が少なくて済みます。
      人間・機械の双方にメリットをもたらすため、DNSという仕組みが必要なのです。

【参考書籍】