トレンド解説

OSI基本参照モデルとは? 役割をわかりやすく解説

アイキャッチ
目次

「OSI(基本)参照モデル」は、コンピューターが相互に通信するための手順、機能などを7つの階層に分類して整理したモデルです。

OSI参照モデルと似ているものに、より実用的な「TCP/IP 階層モデル」があります。OSIは概念に留まりTCP/IPのように実際の機能実装に利用されることが少なかったため、ネットワークを学ぶ際の前提知識として取り上げられるケースが多いようです。 

この記事では、OSI参照モデルの概要から特徴、各層の役割、各層におけるセキュリティ強化について解説します。

OSI基本参照モデルとは

OSI(基本)参照モデルは、「Open Systems Interconnection Reference Model」の略で、日本語に訳すと「開放型システム間相互接続参照モデル」となります。このモデルの目的は、異なるシステム間でデータ通信をスムーズに行うための共通の枠組みを提供することです。

OSI参照モデルは7つの層から構成されています。この階層ごとの役割を理解することで、ネットワークの問題を特定しやすくしたり、新しい技術の検討を始める際の基準にしたり出来ます。ただし、現在リリースされている情報技術製品が完全にこのモデルに準拠しているわけではない点には注意も必要です。 

OSI参照モデルと並んでよく知られているのがTCP/IP参照モデルです。

TCP/IP参照モデルは、TCP/IP参照モデルは4層で表現されます。インターネットの基礎となるプロトコルを定義しており、より現実のネットワーク技術に即したモデルとされています。OSI参照モデルが理想的な通信モデルを提示するのに対し、TCP/IP参照モデルは実際のインターネット通信の動作を反映しているためです。しかし、両モデルは互いに補完する存在でもあり、通信の仕組みを理解するための有用なアプローチと言えるでしょう。

OSI参照モデルが生まれた背景

20世紀の後半、情報化社会の到来とともに、コンピューター間での相互通信が一般的になり始めました。しかし、初期では各々のネットワークが独自規格で動作していたため、異なる種類のコンピューター同士が通信することは困難でした。

1970年代に入ると、情報技術の進歩とともに、複数のコンピューターが連携し1つのシステムを構成する場面も増えました。それと同時にさまざまなネットワーク技術が次々と登場し、ネットワーク間で互換性を持つ必要性も高まってきました。このような背景のもと、国際標準化機構(ISO)が、異なるネットワーク技術間での通信を可能にする標準モデルとして、OSI参照モデルを提唱しました。

OSI参照モデルは、通信を行うための手順を7つの層に分けて整理し、それぞれの層で行うべき機能を明確に定義しました。

OSI参照モデルは、コンピューター間通信の標準規格にも大きな影響を与えてきました。

RFC(Request For Comments)というインターネット関連技術の標準化を目指す文書にもOSI参照モデルの概念が取り入れられ、TCP/IPのプロトコルスタック設計においてもその影響が見られます。

電子技術や情報技術に関する標準規格を策定しているIEEE(Institute of Electrical and Electronics Engineers)でも、OSI参照モデルをベースにして多くの規格を策定してきました。

ネットワーク技術者にとっては馴染み深いEthernet(IEEE 802.3)やWi-Fi(IEEE 802.11)などの規格は、物理層とデータリンク層に相当します。

これらの標準規格がOSI参照モデルに基づいて策定されたことにより、各々のネットワーク技術が一定の互換性と一貫性を持つことになり、全世界で広く利用される巨大ネットワーク「インターネット」実現の一助となりました。


ネットワークとは? 用途や仕組みなど詳しく解説 | ネットアテスト

普段、ネットワークという単語を耳にする機会はあっても、その概要を正しく理解していると自信を持っていえる人はあまり少ないのではないでしょうか。この記事では、インターネットをはじめとするネットワークの用途や仕組みなどについて、わかりやすく解説します。ネットワークとはネットワークとは本...

netattest.com

og_img

OSI参照モデルの特徴

OSI参照モデルの7つの階層について、どのような機能を持つのか概要を示しておきます。

階層名称概要
第1層物理層物理的な接続方法を定める
第2層データリンク層隣接する機器同士の通信を定める
第3層ネットワーク層エンドツーエンドの通信を定める
第4層 トランスポート層  データ通信の信頼性を確保する
第5層セッション層データ通信の開始・終了を定める
第6層プレゼンテーション層データの表現形式を定める
第7層アプリケーション層 サービスの通信方法を定める

実際にネットワークを通じてコンピューター同士が通信をするためには、物理的な通信方法からデータの形式、手段、制御方法などさまざまな取り決めが必要です。これらをOSI参照モデルでは7つの階層に分け、各層で利用するプロトコル(規約)を定めてルール化しています。 

OSI基本参照モデルの各階層の役割

OSI参照モデルの各階層の役割について簡単に解説します。

OSI参照モデルは、通信の手順や機能を7つの階層に分けて整理します。各階層は、特定の役割を担いながら上位と下位の階層と連携し、ネットワーク通信を実現します。

第1層:物理層

物理層はネットワークデータの物理的な送受信を担当します。これは電気信号、光信号、無線信号など、具体的な媒体を通じてデータを送信します。物理層は、データリンク層(第2層)からのデータを物理的な信号に変換し、ネットワークを通じて送信します。逆に、受信した信号をデジタルデータに変換し、それをデータリンク層に送信します。

「物理層」をレストランに例えると

物理層はレストランの建物自体、つまり具体的な物理的な場所に例えられます。客が店に来て、食事をして、去るという一連の行動はすべてこの場所で行われます。

第2層:データリンク層

データリンク層は物理的な接続を介してデータを転送します。エラーチェックとフレームの同期もこの層で行われます。ネットワーク層(第3層)からのデータパケットを物理的に伝送するために、物理層(第1層)に送信します。また、物理層から送られてきた信号を解析し、それをフレームに変換してネットワーク層に送信します。

「データリンク層」のプロトコル

  • Ethernet: 有線LAN接続の規格です。
  • Wi-Fi: 無線LAN接続の規格です。
  • PPP (Point-to-Point Protocol): ネットワークプロトコルの一つで、2点間の直接接続を可能にします。

「データリンク層」をレストランに例えると

データリンク層はレストラン内での物理的な移動を管理します。これはウェイターが厨房とテーブル間を行き来することに例えられます。

第3層:ネットワーク層

ネットワーク層はデータパケットの送受信を管理し、データのルーティングと送信を行います。トランスポート層(第4層)からのデータをパケットに分割し、それらを最適な経路を通じて下位のデータリンク層(第3層)に送信します。また、データリンク層から送られてきたパケットを再構成し、それをトランスポート層に送信します。

「ネットワーク層」のプロトコル

  • IP (Internet Protocol): ネットワーク間でデータを伝送するためのプロトコルです。
  • ARP (Address Resolution Protocol): IPアドレスから対応するハードウェアアドレスを取得します。
  • ICMP (Internet Control Message Protocol): ネットワーク上のエラーレポートや通知を行います。

「ネットワーク層」をレストランに例えると

ネットワーク層はレストランの案内係の役割に例えられます。お客さまが来店したとき、案内係は最適なテーブルに案内します。これは、ネットワーク層がデータを正しい目的地にルーティングするプロセスに似ています。

第4層:トランスポート層

トランスポート層はエンドツーエンドのデータ転送を提供し、必要に応じてデータの再送、フロー制御、エラー検出と修正を行います。セッション層(第5層)から送られてきたデータを分割し、各部分に番号を割り当てて、下位のネットワーク層(第3層)に送信します。一方で、ネットワーク層から送られてきたデータを再構成し、それをセッション層に送信します。

「トランスポート層」のプロトコル

  • TCP (Transmission Control Protocol): 信頼性のある通信を確保し、パケット配送を保証します。
  • UDP (User Datagram Protocol): 信頼性を必要としない通信に使用され、パケット配送の保証は行いません。

「トランスポート層」をレストランに例えると

トランスポート層はウェイターが料理を運ぶときの一連の行動に例えられます。注文を受け取り、それを一つずつ処理し、注文した料理を正しい順序で適切なテーブルに運びます。

第5層:セッション層

セッション層は通信セッションの設定、維持、終了を管理します。これには、セッションの同期と通信の制御が含まれます。プレゼンテーション層(第6層)から送られてきたデータを、一定の間隔(セッション)で分割し、下位のトランスポート層(第4層)に送信します。また、トランスポート層から送られてきたデータを再構成し、それをプレゼンテーション層に送信します。

「セッション層」のプロトコル

  • NetBIOS (Network Basic Input/Output System): ネットワーク上での名前解決やセッションサービスを提供します。
  • TLS/SSL (Transport Layer Security/Secure Sockets Layer): インターネット上でのデータの暗号化と認証に使用されます。

「セッション層」をレストランに例えると

セッション層はレストランでお客様の予約管理を担当している人と考えると良いでしょう。彼らは顧客が来店する時間を管理し、席を確保し、顧客が去るまでの一連の流れを管理します。

第6層:プレゼンテーション層

プレゼンテーション層はアプリケーション層(第7層)からのデータを受け取り、ネットワークの他の部分で理解できる形式に変換します。データ圧縮、暗号化、または他の変換がこの層で行われます。この層は、上位のアプリケーション層から送られてきたデータの圧縮や暗号化などを行い、一方で、下位のセッション層から送られてきたデータを解読し、アプリケーション層が理解できる形に変換します。

「プレゼンテーション層」のフォーマット

  • JPEG (Joint Photographic Experts Group): 画像の圧縮とエンコードに使用されます。
  • PNG (Portable Network Graphics): 画像の圧縮とエンコードに使用されます。
  • MPEG (Moving Picture Experts Group): 動画の圧縮とエンコードに使用されます。

「プレゼンテーション層」をレストランに例えると

プレゼンテーション層は、多言語でメニュー説明をする通訳のような役割を果たします。顧客が外国の料理を頼むとき、料理をお客様が理解できる言葉で説明し、それを厨房が理解できるように変換します。

第7層:アプリケーション層

アプリケーション層は最上位の層で、ユーザーの目に直接触れます。この層の主な役割は、エンドユーザーがネットワークリソースと効率的に通信できるようにすることです。ユーザーからの要求をプレゼンテーション層(第6層)に送り、ユーザーに返されるデータを受け取ります。そしてユーザーがプレゼンテーション層から送られてきたデータをユーザーが理解できる形式に変換します。

「アプリケーション層」のプロトコル

  • HTTP (Hypertext Transfer Protocol): ウェブブラウザとサーバー間の通信に使用されます。
  • FTP (File Transfer Protocol): ファイルの転送に使用されます。
  • SMTP (Simple Mail Transfer Protocol): メールの送信に使用されます。
  • POP3 (Post Office Protocol version 3): メールの受信に使用されます。
  • IMAP (Internet Message Access Protocol): メールの受信と管理に使用されます。
  • DNS (Domain Name System): ドメイン名とIPアドレスの対応付けを行います。

「アプリケーション層」をレストランに例えると

アプリケーション層はレストランのウェイターに例えられます。彼らは客の注文を受け、その要求を理解して厨房へ伝えます。また、厨房から料理が運ばれてきたら、それを客に提供します。


以上がOSI参照モデルの各層の役割や関係性、代表的なプロトコルの一部の説明です。これらの階層とプロトコルは、コンピューターネットワークの設計やトラブルシューティング、セキュリティ対策などにおいて重要な役割を果たします。

OSI参照モデルにおける各階層のセキュリティ強化

OSI参照モデルにおける各階層には、セキュリティを強化するための基本的なアプローチがあります。以下にそれぞれの階層のセキュリティアプローチの概要を説明し、その後に具体的なソリューションや対策方法を示します。

各階層における可能な攻撃手法とその目的、それに対する防御策やセキュリティ強化のアプローチを以下に詳述します。

第1層:物理層

物理層では、攻撃者がネットワークの物理的な接続を妨害したり、ネットワーク機器に不正にアクセスしたりする可能性があります。目的は、情報の窃取やネットワークの運用を妨害することです。

物理的なセキュリティによるアクセス制限、機器の物理的な保護(鍵付きのラックやケージなど)。また、冗長化(例えば、データセンターの冗長化)によって物理的な障害から復旧できるようにすることも重要です。

第2層:データリンク層

MACアドレススプーフィングやARPスプーフィングなどの攻撃手法があります。これにより攻撃者は、ネットワーク上の通信を傍受したり、他のデバイスになりすましたりすることが可能になります。

MACアドレスフィルタリング、ポートセキュリティ、VLANセグメンテーション、Dynamic ARP Inspection(DAI)やDHCPスヌーピングなどで不正なアクセスを検出・防止します。また、IEEE 802.1Xプロトコルを使用してネットワークアクセスを制御します。

第3層:ネットワーク層

IPスプーフィングやルーティングテーブルの毒性、DoS攻撃などがあります。これにより、攻撃者はネットワークの通信を乗っ取ったり、ネットワークを混乱させたり、サービスを利用できなくさせることが可能になります。

IPソースガードやRP(Router Advertisement)ガード、ACL(アクセス制御リスト)によるIPアドレスのフィルタリング、Ingress/Egressフィルタリング、ルート認証プロトコル(RIP、OSPFなど)の使用があります。また、パケットフィルタリングファイアウォールを使用して特定のトラフィックをブロックします。

第4層:トランスポート層

SYNフラッド攻撃やセッションハイジャックなどの攻撃手法があります。これにより、攻撃者はネットワーク接続を飽和させたり、他のユーザーのセッションを乗っ取ってそのユーザーになりすましたりすることが可能になります。

ファイアウォールやIPS(侵入防止システム)を使用して攻撃を検出・防止します。SYN CookieやSYN Proxyを使用してSYNフラッド攻撃を軽減します。

第5層:セッション層

セッションハイジャックやReplay攻撃などがあります。これにより攻撃者はユーザーのセッションを盗んで、そのユーザーになりすまし、ユーザーが認証を済ませた後のリソースや情報にアクセスすることが可能になります。

TLS(Transport Layer Security)を用いてセッションデータを暗号化し、セッションを盗まれても攻撃者が読み取れないようにします。また、セッションIDの生成アルゴリズムを強化し、予測できないようにします。

第6層:プレゼンテーション層

データ変換中の攻撃や暗号解読などがあります。これにより、攻撃者は情報を盗み出したり、情報の完全性や秘匿性を損なったりすることが可能になります。

データの暗号化と検証(ハッシュ関数、デジタル署名など)を行います。また、SSL/TLSなどを使用してデータの送受信を保護します。

第7層:アプリケーション層

XSS(Cross-Site Scripting)、SQLインジェクション、DDoS攻撃などがあります。これにより攻撃者はユーザーデータを盗んだり、アプリケーションを利用不可能にしたり、ユーザーを偽のサイトに誘導したりすることが可能になります。

入力値の検証やサニタイゼーション、プリペアドステートメントの使用、ウェブアプリケーションファイアウォール(WAF)の導入などを行います。また、DDoS攻撃への対策としては、負荷分散やレートリミティング、ブラックリスト制御などがあります。


以上が、OSIの各階層で考えられる攻撃手法とその目的、それに対する防御策やセキュリティ強化アプローチです。

OSI参照モデルを理解するメリット・目的

 OSI参照モデルは、ネットワーク通信の理論的な枠組みです。しかし、この理論的な枠組みを「現実の業務には役に立たない」と考えてしまうエンジニアも少なくないかもしれませんが、このモデルを理解することは、日々の業務の中で、実際に多くのメリットが得られます。

新製品の開発を効率的に行える

例えば、あなたが新しいネットワークスイッチを開発する任務を任されたとしましょう。ここでOSI参照モデルを理解していると、スイッチが主にデータリンク層(第2層)で動作し、MACアドレスに基づいてフレームの転送を行うことを把握できます。結果、開発の方向性が明確になり、全体の開発スケジュールを短縮できるかもしれません。逆に、この理解がなければ、役割の不明確なハードウェア開発に時間を取られる恐れがあります。

注意点としては、実際のネットワーク機器はモデルに完全に一致しないことがあるということです。スイッチでも一部の高機能なものはネットワーク層(第3層)の機能も持つなど、開発する製品の全ての機能を把握することが重要です。

トラブルシューティングを効率的に行える

例えば、ある日ネットワークに接続できないトラブルが発生したとしましょう。この時、OSI参照モデルを理解していれば、物理層(第1層)から上の層へと順に確認を進め、問題を迅速に特定することができます。逆にこの理解がなければ、どの層から確認を始めるべきか、何を確認すべきかがわからず、問題解決に時間がかかる可能性があります。

注意点として、トラブルは複数の層にまたがって発生することもあるため、各層を独立したものとして考えるのではなく、全体的な視点で捉えることが求められます。

IT知識を効率的に習得できる

OSI参照モデルを理解していると、ネットワーク技術だけでなく、プロトコルやアプリケーションの動作原理についても学ぶ手がかりとなります。これがなければ、ITの各領域がバラバラに見えてしまい、全体像を掴むのに時間がかかるかもしれません。

ここでの注意点は、OSI参照モデルは一部のネットワークプロトコル(例えばTCP/IP)とは完全に一致しない点です。具体的なプロトコルや技術の学習を進める際には、モデルと実際の動作の違いを理解することが重要です。

OSI参照モデルの理解は、新製品開発、トラブルシューティング、そしてIT知識の効率的な学習に大いに役立ちます。ただし、同時に、モデルの限界も認識し、現実の技術と理論のギャップを埋めるためには具体的な学習も必要であることを忘れないでください。

この記事のまとめ

ネットワークのしくみを理解するにあたって、今回紹介したOSI参照モデルが参考になります。

ネットワーク関係でトラブルが生じた際にはどの部分に問題があるかの把握や、セキュリティ対策を実施する際にはどこにどのようなセキュリティを施すべきかの整理にも役立つでしょう。

記事を書いた人

ソリトンシステムズ・マーケティングチーム