スポンサーリンク

【応用情報技術者試験】ネットワーク理解のためにまずはOSI基本参照モデルを理解しよう(ネットワーク層)

ネットワークとは、複数のコンピューターや機器を相互に接続し、情報やデータを共有する仕組みのことです。また、コンピューター同士で通信を行うためには、ケーブルの種類や、データの送信方法、伝送経路、データフォーマットといったように、様々な要素について取り決めをしておく必要があります。

画像参照:https://diamond.jp/articles/-/248953

そこで分野ごとにグループ分けを整理しているOSI基本参照モデルが使用されます。OSI基本参照モデルは、コンピューター間の通信ルールを7つの階層に分けて整理したモデルです。異なるメーカーの機器同士でも通信できるよう、通信機能を標準化するために制定されています。各階層が特定の役割を担っており、物理的なデータ伝送からアプリケーションのサービス提供までを段階的に定めています。現在、インターネットで広く使われているのはTCP/IPモデルですが、OSI基本参照モデルはネットワークの仕組みを理解するための基礎として広く参照されています。 

階層特徴プロトコル役割
アプリケーション層
(第7層)
通信を行う各種のアプリケーションの動作を定める①:HTTP
②:FTP
③:SMTP
④:SNMP
⑤:DNS
①:Webサービスの提供
②:ファイル転送サービスの提供
③:電子メールの配送
④:ネットワーク上の機器の動作情報集
⑤:ホスト名とIPドメイン名の変換
プレゼンテーション
(第6層)
各アプリケーションが送信するデータを共通の転送構文に変換する
セッション層
(第5層)
アプリケーション間で取り交わす会話を成立させる
トランスポート層
(第4層)
ネットワークごとの品質の差を吸収した透過的な伝送路を上位層に提供するTCP,UDP宛先/送信元アプリケーションプログラムの指定
ネットワーク層
(第3層)
データの中継や経路選択を行うIP宛先/送信元ホストの指定
データリンク層
(第2層)
隣接ノード間のデータ転送を行う
物理層
(第1層)
伝送を行う上での物理的な条件を規定する

ネットワーク層(第3層,L3)

ネットワーク層の役割は、データパケットを送信元から宛先まで最適な経路で転送することです。主な機能は、論理的な住所(IPアドレスなど)の割り当てと、経路選択(ルーティング)です。これにより、異なるネットワークを越えて、さまざまな機器間での通信を実現します。

主な役割

  • ルーティング(経路選択):データが宛先に到達するための最適な経路を決定し、転送します。
  • アドレッシング(論理的な住所の割り当て):IPアドレスなどの論理的なアドレスを使用して、データの送信元と宛先を識別します。
  • データパケットの転送:送信元から宛先までデータパケットを運びます。
  • 異なるネットワーク間の通信:複数のネットワークを横断する通信を可能にします。これは、異なる物理層やデータリンク層のネットワークを抽象化し、統一された方法で通信できるようにするためです。
  • フラグメンテーション(パケット分割):ネットワークの転送能力に合わせて、大きなデータを小さなパケットに分割します。

IP

IP(インターネットプロトコル)とは、インターネット上でデータを送受信するための基本的な「お約束事」(通信規約)です。IPは、データをパケットという小さな塊に分割し、各パケットに送信元と宛先のIPアドレスを付加して、パケットを正しくルーティング(転送)させる役割を担います。これにより、異なるデバイス間でも確実にデータ通信を行うことができます。 

バージョン 

  • IPv4: 現在でも広く使われているバージョンですが、アドレス数が有限であるため、枯渇問題があります。
  • IPv6: IPv4の後継規格で、約340澗個(3.4×10383.4 cross 10 to the 38th power3.4×1038個)という、ほぼ無限に近いアドレス数を管理できます。 
IPパケット

IPパケットとは、インターネット上でデータを送受信する際、データを分割して運ぶための「デジタル小包」です。データ本体と、送信元・宛先のIPアドレスなどの制御情報が書かれた「IPヘッダ」で構成されます。IPヘッダの情報をもとに、ルーターなどがパケットを正しい宛先に中継します。 

主な構成要素

  • IPヘッダ: パケットの先頭にあり、IPパケットを届けるために必要な情報が含まれています。
    • 送信元IPアドレス
    • 宛先IPアドレス
    • パケットの大きさ
    • パケットの寿命(TTL)
  • データ部: 運ばれるデータ本体です。画像、音声、動画などのアプリケーションデータが含まれます。 

役割と仕組み

  • 分割: ネットワークで一度に送れるデータサイズには上限があるため、大きなデータは複数のIPパケットに分割されて送信されます。
  • 宛先への到達: IPヘッダにあるIPアドレスを頼りに、ルーターがパケットを中継し、目的のコンピューターまで届けます。
  • 再構成: 受信側では、各パケットを元のデータに再構成します。 
IPアドレス

IPアドレスとは、インターネットなどのネットワーク上で各機器を識別するための「住所」のようなものです。この番号がなければ、インターネット上で通信相手を特定し、データを正しく送受信することができません。 

役割

  • 通信相手の特定: 手紙を送る際に宛先の住所が必要なのと同じように、ネットワーク上での通信には相手のIPアドレスが必要です。
  • データ送受信: 送受信するデータパケットには、送信元と宛先のIPアドレスが含まれており、これによりデータが正確に届きます。 

種類

  • グローバルIPアドレス: インターネット全体で一意に識別される、世界に一つしかないアドレスです。
  • プライベートIPアドレス: 家庭内や社内LANなどの閉じたネットワーク内で個々の機器に割り当てられるアドレスです。 

アドレス変換技術
NAT:プライベートIPアドレスとグローバルIPアドレスを1対1で変換する技術です。
NAPT(IPマスカレード):プライベートIPアドレスとグローバルIPアドレスを1対多で変換する技術です。1つのグローバルIPアドレスを複数のPCで共有できます。

画像参照:https://www.cman.jp/network/term/ip/

IPアドレスの体系

IPアドレスの体系は、主に「IPアドレスの種類(IPv4とIPv6)」と「IPアドレスの割り当て方法(クラスフルアドレスとクラスレスアドレス)」に分けられます。IPv4では、IPアドレスをネットワーク部とホスト部に分け、規模に応じてクラスA、B、Cなどのクラスに分類しました。現在では、より柔軟な管理が可能なクラスレスアドレスが主流です。また、用途によってグローバルIPアドレスとプライベートIPアドレスに分かれます。 

主な分類

  • クラスフルアドレスとクラスレスアドレス: IPアドレスの割り当て方です。
    • クラスフルアドレス: ネットワーク部とホスト部の境界がクラスによって固定されている方式です。
    • クラスレスアドレス: ネットワーク部とホスト部の境界を柔軟に移動できる方式で、現在主流です。CIDR(クラスレス・インタードメイン・ルーティング)などの技術が用いられます。 

クラスフルアドレスのクラス分類

  • クラスA: 大規模ネットワーク向けで、ネットワーク部に8ビット、ホスト部に24ビットが割り当てられます。
  • クラスB: 中規模ネットワーク向けで、ネットワーク部に16ビット、ホスト部に16ビットが割り当てられます。
  • クラスC: 小規模ネットワーク向けで、ネットワーク部に24ビット、ホスト部に8ビットが割り当てられます。
  • クラスD、E: multicast(マルチキャスト)用途や将来使用するために予約されているクラスです。 

ポイント
ネットワーク部:どのネットワークに属しているかを示します。
ホスト部:ネットワーク内のどのホストなのかを示します。
※下記はイメージ図になります。

画像参照:https://livra.geolocation.co.jp/iplearning/173/

サブネットマスク

サブネットマスクとは、IPアドレスの「ネットワーク部」と「ホスト部」を区別するための数値です。これにより、どのIPアドレスが同じネットワークに属するかを判断したり、ネットワークを複数のサブネットに分割したりできます。2進数で「1」が並ぶ部分がネットワーク部、「0」が並ぶ部分がホスト部となり、一般的には「255.255.255.0255.255 .255 .0255.255.255.0」のような10進数表記が用いられます。

画像参照:https://www.cman.jp/network/term/subnet/

特殊な用途のIPアドレス
ネットワークアドレス:ホスト部のビットをすべて”0″にしたアドレスを指します。
           →ネットワークそのものを表します。
ブロードキャストアドレス:ホスト部のビットをすべて”1″にしたアドレスを指します。
          →ネットワーク内の全ホストにパケット送付するアドレスです。

DHCP

DHCPとは「Dynamic Host Configuration Protocol」の略で、ネットワークに接続するデバイスに、IPアドレスなどの必要な設定情報を自動的に割り当てるプロトコルです。これにより、手動での設定作業が不要になり、ユーザーはネットワークに接続するだけでインターネットなどが利用できるようになります。

主な役割と仕組み

  • ネットワーク設定の自動化:デバイスがネットワークに接続されると、DHCPサーバーと通信し、IPアドレス、サブネットマスク、デフォルトゲートウェイ、DNSサーバーのアドレスなどの情報を自動で取得します。
  • IPアドレスの管理:DHCPサーバーがIPアドレスのプールを管理し、重複しないようにIPアドレスを割り当てます。IPアドレスには有効期限(リース期間)が設定されており、使用されなくなったIPアドレスは自動的にプールに戻され、別のデバイスに割り当てられます。
  • 手動設定の手間削減:多数のデバイスを接続する場合、個々のデバイスに手動で設定する手間と時間が大幅に削減されます。
  • 通信プロセス:
    1. DHCP DISCOVER:クライアントが、ネットワーク上のDHCPサーバーを探すためにブロードキャストでメッセージを送信します。
    2. DHCP OFFER:DHCPサーバーが、利用可能なIPアドレスなどの設定情報をクライアントに提案します。
    3. DHCP REQUEST:クライアントが提案を受け入れることをサーバーに通知します。
    4. DHCP ACK:DHCPサーバーがクライアントに設定情報の使用を最終的に承諾します。

ルーティング

ルーティングは、ルーターが「ルーティングテーブル」を参照して、ネットワーク上のデータ(パケット)が宛先に到達するための最適な経路を決定し、転送するプロセスです。パケットが持つ宛先のIPアドレスを基に、ルーティングテーブルに記載された転送先情報と照合することで、パケットを次の機器へと送り出します。 

基本的なルール
①:ルータ自身が直接接続されているネットワーク宛のパケットは、直接配送する。
②:①以外のパケットは、隣のルータに渡す。
  ※隣のルータ=「デフォルトルータ」や「ネクストホップルータ」を指します。

ルーティング方式

ルーティング方式には、ネットワーク管理者が手動で経路を設定するスタティックルーティングと、ルーター同士が経路情報を自動で交換して経路を決定するダイナミックルーティングの2種類があります。スタティックルーティングは小規模なネットワークや経路の変更が少ない場合に、ダイナミックルーティングは大規模で複雑なネットワークや、経路障害時の自動復旧が必要な場合に適しています。 

スタティックルーティング

  • 概要: ルーティングテーブルをネットワーク管理者が手動で設定する方法です。
  • 特徴:
    • 設定された経路は常に固定され、変更されません。
    • 小規模なネットワークや、経路が1つしかないような状況に適しています。
    • 設定ミスがネットワーク障害につながる可能性があります。 

ダイナミックルーティング

  • 概要: ルーター同士がルーティングプロトコルを用いて経路情報を交換し、ルーティングテーブルを自動的に作成・更新する方法です。
  • 特徴:
    • ネットワークの状況に応じて、最適な経路が動的に選択されます。
    • 経路に障害が発生した場合、自動的に迂回経路に切り替えることができます。
    • 大規模なネットワークや、経路の変動が大きい場合に適しています。
  • 主なルーティングプロトコル: RIPやOSPFなどがあります。 
プロトコル名概要
RIP経由するルータの台数(ホップ数)が最も少なくなる経路に中継する方式です。このような、アルゴリズムをデイスタンスベクタ型と言います。
OSPFホップ数以外にも、ネットワークの混雑度、回線速度などの様々な要素を考慮して、トータルのバランスの良い経路に中継する方式です。このようなアルゴリズムをリンクステート型と言います。

アプリケーションプログラムの送信

アプリケーションプログラムは、宛先IPアドレスを指定して、相手に送りたいデータをOSに渡します。OSは、これらの情報をもとにIPパケットを生成します。IPパケットはイーサネットフレームに格納されて送信されます。送信側では、まずアプリケーションのデータがTCPパケットとなり、それがIPパケットに、さらにそのIPパケットがイーサネットフレームに、というように、上位から順にデータがカプセル化されていきます。各層で、宛先と送信元の制御情報(IPヘッダー、MACヘッダーなど)が付加されます。 

カプセル化
IPパケットをそのままイーサネットフレームに箱詰めすることを言います。

画像参照:http://www2.nagano.ac.jp/hiraoka/BNS/2024/tcpip5.html

送信側の流れ

  1. データ作成: アプリケーション層からのデータは、まずTCPパケットに分割・カプセル化されます。
  2. IPパケットの作成: TCPパケットはIPパケットのデータ部となり、IPヘッダー(送信元と宛先のIPアドレスなど)が付加され、IPパケットが生成されます。
  3. イーサネットフレームの作成: IPパケットがイーサネットフレームのデータ部(ペイロード)となり、イーサネットヘッダー(送信元と宛先のMACアドレスなど)が付加され、イーサネットフレームが完成します。
  4. 物理層への送信: 完成したイーサネットフレームは、物理層で電気信号や光信号に変換され、LANに送信されます。 

受信側の流れ

  1. イーサネットフレームの受信: 物理層からの信号はイーサネットフレームとして受信されます。
  2. IPパケットの取り出し: イーサネットヘッダーの情報を見て、宛先のMACアドレスが一致するフレームを認識し、フレームのデータ部からIPパケットを取り出します。
  3. データの取り出し: IPヘッダーの宛先IPアドレスを確認し、自分のものと一致すれば、IPパケットのデータ部からTCPパケットなどの上位層のデータを取り出します。 

ARP
隣の機器のMACアドレスは、「ARP」というプロトコルを用いてIPアドレスから調べることが可能です。

LAN間接続装置の分類

ネットワークを相互に接続する装置は、機能によって下記のように分類することができます。

名称特徴
ゲートウェイ全階層のプロトコル変換機能を持つ
ルータ
(L3スイッチ)
ネットワーク層での中継を行います。
IPアドレスに基づいて経路の選択/中継を行います。
ブリッジ
(L2スイッチ)
(スイッチングハブ)
データリンク層での中継を行います。
MACアドレスに基づいてフレームを中継します。
リピータ物理層での動作を行います。
電気信号を増幅します。
柔軟なネットワーク構築

柔軟なネットワーク構築を実現する仕組みとして、SDNがあります。
SDNとは、「Software Defined Networking(ソフトウェア定義型ネットワーク)」の略で、ネットワークの制御とデータ転送を分離し、ネットワーク全体の管理と設定をソフトウェアで行う技術です。従来の物理的な機器ごとに設定を行う方法と異なり、SDNコントローラーを使って一元的に集中管理することで、設定変更が容易になり、ネットワークの柔軟性と効率性が大幅に向上します。 

SDNの仕組み

  • 機能の分離: ネットワーク機器(ルーターやスイッチなど)が担っていた「制御機能」と「データ転送機能」を分離します。
  • 一元管理: 分離された「制御機能」をソフトウェアに集約し、SDNコントローラーからネットワーク全体を一元管理します。
  • 柔軟な設定: SDNコントローラーを通じて、ネットワーク全体の構成やポリシーをソフトウェアで柔軟に動的に変更できます。
  • OpenFlow: SDNを実現するための標準的なプロトコルの一つにOpenFlowがあります。 

主なメリット

  • 管理の効率化: ネットワーク機器を個別に設定する必要がなくなり、管理者の負担を軽減します。
  • 設定変更の容易さ: ネットワーク全体の構成変更を迅速かつ容易に行えます。
  • 柔軟性と俊敏性の向上: アプリケーションの要求に応じて、ネットワーク設定を動的に調整できます。
  • 運用コストの削減: ネットワークの管理・運用が効率化されることで、コスト削減につながります。 

コメント