IPP 待機サービスの実装 (サーバー側のサポート) は、Apache Web サーバーの下に組み込まれています。Web サーバーは、HTTP POST 要求によって IPP 操作を受信します。この HTTP POST 要求は、受信されたあと、Apache IPP モジュール (mod_ipp.so) に渡されます。Apache Web サービスはまた、設定に基づいて、認証サービスを提供したり、印刷クライアントと印刷サーバーの間の暗号化のために使用したりすることもできます。待機サービスは、待機専用の Apache インスタンスとして実行されます。
このプロセスは次のとおりです。
クライアントからサーバーに対して IPP 要求が発行されます。
Apache Web サーバーが接続を受け付けます。
Apache Web サーバーは次に、その接続を mod_ipp に渡します。
mod_ipp は、その接続と設定データを libipp-listener に渡します。
libipp-listener は、lipipp-core を使用して要求を読み取ります。
libipp-listener は、その要求を lipipp-listener にある操作ハンドラに振り分けます。
操作ハンドラは、その要求を PAPI 呼び出しに変換してから呼び出しを実行します。
この PAPI 呼び出しは、psm-lpsched を使用して印刷サービス固有の要求に変換されます。
印刷サービスが要求に応答します。
psm-lpsched コマンドは、その応答を PAPI 結果に変換します。
libpapi 操作により、libipp-listener 操作ハンドラに戻ります。
libipp-listener 操作ハンドラは、結果をディスパッチャーに渡します。
libipp-listener ディスパッチャーは、libipp-core ライブラリを使用して結果をクライアントに書き込みます。
このディスパッチャーは戻り値として、mod_ipp のエントリポイントを戻します。