アプリケーション層プロトコルはどこにありますか? C、C++、Javaなどのライブラリルーチンの一部ですか?
〜のようにわかめの一種彼の答えで、彼はこれがアプリケーション層プロトコルの実装に関するものであると述べました。
ベストアンサー1
アプリケーション層プロトコルはどこにありますか?
プロトコルは抽象化なので、実際には仕様やその他の文書の外側のどこにも「常駐」しません。
では、その人はどこにいますか?実装、いくつかの一般的なパターンがあります。
まず、ネイティブCでライブラリとして実装することができます。これは、他の言語で使用するためにラップすることができます(他の言語の多くはCで実装され、Cインタフェースを持つため)。たとえば、暗号化プロトコルは通常次のようになります。
その言語(および/またはそれを実装する言語)のみを使用して、特定の言語で使用するためのライブラリまたはモジュールとして最初から実装できます。たとえば、高レベルのネットワークプロトコルがあります。
特定のアプリケーションに対して最初から実装できます。
これは純粋にユーザー空間の実装ですが、低レベルのネットワーキングなどの一部のプロトコルはカーネルで実装できます。これには、対応するネイティブCユーザーゾーンライブラリ(ネットワークおよびファイルシステムと同様)を含めることができ、またはカーネル(スタンドアロンカーネルモジュールを含む)は/dev
procfsなどを介して言語に依存しないインターフェースを提供できます。