プログラミング
 Computer >> コンピューター >  >> プログラミング >> プログラミング

コンピュータネットワークのサービスプリミティブとは?4つの種類と仕組みをわかりやすく解説

コンピュータネットワークにおける「サービス」とは、ユーザーがそのサービスへアクセスするために呼び出すことができるプリミティブ(primitive:基本操作)の一連の操作群を指します。選択されたプリミティブは、通信相手であるピアノードが実行すべきアクションをサービスに指示する役割を担います。

サービスプリミティブによる接続確立の流れ

実際に接続を確立する際、プリミティブは次のような順序でやり取りされます。

  • CONNECT.request の送出 ― 接続を確立したいノード(発信元)が接続要求を送ります。「Request」は、ノードが何らかの処理を実行したい、あるいはパケットを送信したいという意図を表します。

  • CONNECT.indication の受信 ― 受信側ノードはリクエストを受け入れ、「Indication」によって相手が接続を確立しようとしていることを検知します。

  • CONNECT.response の返信 ― 受信側は、提案された接続を受け入れるか拒否するかをこのプリミティブで伝えます。

  • CONNECT.confirm による結果確認 ― 最初に CONNECT.request を発行したノードは、このプリミティブによって接続が成立したかどうかの結果を把握します。

サービスプリミティブの4つの種類

サービスプリミティブは、一般的に以下の4つのクラスに分類されます。

  • Request(要求) ― サービスノードが隣接層に対して何らかのサービスを求め、要求内容を示すパラメータを渡します。

  • Indication(指示) ― 受信側のサービスノードが、隣接するサービスノードによって手続きが呼び出されたことを知らされます。

  • Response(応答) ― 受信側のサービスノードが、手続きの完了や承認を行います。

  • Confirm(確認) ― サービスノード同士で、接続が許可されたかどうかを相互に確認します。

各プリミティブの役割と具体例

プリミティブ説明と具体例
Indication(指示)ノードに対してイベントの発生を通知します。
例:受信側が接続要求を受信した直後。
Request(要求)ノードがサービスを要求します。
例:リモートコンピュータへの接続を要求する。
Response(応答)ノードがイベントに応答します。
例:受信側が接続の許可を送り返す。
Confirm(確認)ノードが自身の要求に対する応答を確認します。
例:受信側が送信者からデータを受け取った後に確認を返す。

サービスプリミティブのパラメータとサービスの分類

プリミティブには CONNECT(接続)DATA(データ)DISCONNECT(切断)といったパラメータが存在し、それぞれ接続の確立、データの送信、接続の解除に使用されます。

また、サービスは「確認の有無」によって大きく2つに分けられます。

  • 確認付きサービス(Confirmed service) ― 接続型サービスが該当します。要求に対して必ず確認応答が返されます。

  • 確認なしサービス(Unconfirmed service) ― コネクションレス型サービスが該当します。確認応答を伴わず、効率を重視します。

接続型サービス(Connection Oriented Service)のプリミティブ

接続型サービスでは、以下のようなプリミティブが使用されます。電話の通話に例えると理解しやすいでしょう。

  • CONNECT.request:接続の確立を要求する。

  • CONNECT.indication:被呼者に着信を知らせる(電話の呼び出し音に相当)。

  • CONNECT.response:呼び出しを受け入れるか拒否するかを決める。

  • CONNECT.confirm:発信者に、呼び出しが受け入れられたかどうかを通知する。

  • DATA.request:データの送信を要求する。

  • DATA.indication:データの到着を通知する。

  • DISCONNECT.request:接続の解放を要求する。

  • DISCONNECT.indication:相手側に切断要求を通知する。

  • 代表例:現代の電話サービスやインターネット上の各種サービス。

コネクションレス型サービス(Connectionless Service)のプリミティブ

コネクションレス型サービスでは、事前の接続確立を行わずにデータをやり取りします。

  • データ送信(SENDING.data) ― 送信側が一方的にデータを送るだけのシンプルな方式です。従来の普通郵便に近いイメージです。

  • 報告確認(REPORT.confirm) ― 送信したデータが宛先に確実に届いたことを確認・報告できます。書留郵便に近いイメージです。

まとめ

サービスプリミティブは、ネットワーク上の階層間でサービスを利用するための基本的な「約束事」です。Request・Indication・Response・Confirmという4種類のプリミティブを組み合わせることで、信頼性の高い接続型通信から、軽量なコネクションレス通信まで、さまざまな形態の通信サービスが実現されています。

  1. 空間データマイニングのプリミティブとは?ルールと主題図を徹底解説

    空間データマイニングとは空間データマイニングとは、データマイニングの手法を空間モデルに適用する技術です。アナリストは地理データや空間データを活用し、ビジネスインテリジェンスやその他の有益な成果を生み出します。地理データを分析に適した有用な形式へと変換するには、専用の手法やリソースが必要となります。空間データマイニングには、研究プロジェクトの目的に関連するパターンの認識やオブジェクトの発見など、いくつかの課題が伴います。アナリストは、GIS/GPSツールや類似のシステムを活用しながら、大規模なデータベースや膨大なデータセットの中から、目的に関連するデータのみを効率的に抽出します。空間データマイニ

  2. 情報セキュリティの種類とは?代表的な9つのセキュリティ対策を徹底解説

    現代のビジネス環境において、サイバー攻撃は年々巧妙化しており、企業や組織にとって情報セキュリティ対策は不可欠なものとなっています。情報セキュリティにはさまざまな種類があり、それぞれ異なる脅威に対処するために設計されています。本記事では、代表的な9つの情報セキュリティ対策について詳しく解説します。 1. アンチウイルス・アンチマルウェアソフトウェア アンチウイルス・アンチマルウェアソフトウェアは、スパイウェア、ランサムウェア、トロイの木馬、ワーム、ウイルスなどのマルウェアからシステムを守るための基本的なツールです。マルウェアは、ネットワークに侵入した後、数日から数週間にわたって潜伏し、静かに被害