アプリケーション層プロトコルはライブラリルーチンの一部ですか?

アプリケーション層プロトコルはライブラリルーチンの一部ですか?

アプリケーション層プロトコルはどこにありますか? C、C++、Javaなどのライブラリルーチンの一部ですか?

〜のようにわかめの一種彼の答えで、彼はこれがアプリケーション層プロトコルの実装に関するものであると述べました。

ベストアンサー1

アプリケーション層プロトコルはどこにありますか?

プロトコルは抽象化なので、実際には仕様やその他の文書の外側のどこにも「常駐」しません。

では、その人はどこにいますか?実装、いくつかの一般的なパターンがあります。

  • まず、ネイティブCでライブラリとして実装することができます。これは、他の言語で使用するためにラップすることができます(他の言語の多くはCで実装され、Cインタフェースを持つため)。たとえば、暗号化プロトコルは通常次のようになります。

  • その言語(および/またはそれを実装する言語)のみを使用して、特定の言語で使用するためのライブラリまたはモジュールとして最初から実装できます。たとえば、高レベルのネットワークプロトコルがあります。

  • 特定のアプリケーションに対して最初から実装できます。

これは純粋にユーザー空間の実装ですが、低レベルのネットワーキングなどの一部のプロトコルはカーネルで実装できます。これには、対応するネイティブCユーザーゾーンライブラリ(ネットワークおよびファイルシステムと同様)を含めることができ、またはカーネル(スタンドアロンカーネルモジュールを含む)は/devprocfsなどを介して言語に依存しないインターフェースを提供できます。

おすすめ記事