Acknowledgement (data networks)

提供: tezos-wiki
移動先: 案内検索

データネットワーキング、電気通信、およびコンピュータバスにおいて、肯定応答(ACK)は、通信プロトコルの一部として、肯定応答またはメッセージの受信を示すために通信するプロセス、コンピュータ、またはデバイス間を通過する信号である。 否定応答(NAKまたはNACK)信号は、以前に受信したメッセージを拒否するか、または何らかの種類のエラーを示すために送信されます。 肯定応答と否定応答は、受信者の状態を送信者に通知し、それに応じて自身の状態を調整することができる。

確認文字[編集]

ASCIIコードを使用してコンピュータ端末間で通信する場合、各端末は照会文字を送信して、他の端末の状態を要求することができる。 この文字の受信者は、正常に動作していることを示すACK(0000110)、またはエラー状態を示すNAK(0010101)で応答することができます。 Unicodeでは、これらの文字には、U + 2406(␆)とU + 2415 (␕)。

プロトコル使用率[編集]

多くのプロトコルは、肯定応答(ACK)ベースであり、メッセージの受信を確実に確認することを意味します。 インターネットの[Transmission] Control Protocol(TCP)は、ACKベースのプロトコルの一例です。 コンピュータがTCPを介して通信する場合、受信したパケット(接続要求と終端を含む)は確認ビットが設定されたパケットを返信することによって確認応答されます。 TCPプロトコルは、これらの肯定応答を、反対方向に送信されるデータに含めることを可能にする。 それらのうちのいくつかは各networkパケットの終わりまで待ってから、各パケットを確認します。

一部のプロトコルは、1パケットの情報につき1つの確認応答を送信します。 TCPおよびZMODEMのような他のプロトコルは一般に、飛行中の多数のバイトを有する高帯域幅遅延製品リンクを満たすために必要な、それらのどれかを確認する前に多くのパケットを送信することを可能にする。

他のプロトコルはNAKベースです。つまり、問題が発生した場合にのみメッセージに応答します。 例には、レシーバが欠落したパケットを検出したときにNAKを送信する最も信頼できるマルチキャストプロトコルが含まれます。 さらに他のプロトコルは、NAKおよびACKの両方を利用する。 バイナリ同期通信(Bisync)とアダプティブリンクレート(エネルギー効率のよいイーサネット用)の例です。

RC-5、UDP(User Datagram Protocol)、およびX10プロトコルなどの他のプロトコルは、肯定応答なしでブラインド送信を実行し、メッセージの少なくとも1つのコピーが通過することを期待して同じメッセージを複数回送信することが多い。

確認応答機能は、自動再送要求(ARQ)機能で使用されます。 肯定応答フレームは、受信されたフレームと連動して番号が付けられ、次に送信機に送信される。 これにより、トランスミッタはバッファのオーバーフローまたはアンダーランを回避し、欠落したフレームを認識することができます。

Bisyncでは、NAKを使用して、前に受信したブロックで送信エラーが検出されたこと、および受信者がそのブロックの再送信を受け入れる準備ができていることを示します。 Bisyncは単一のACK文字を使用しませんが、交互の偶数/奇数ブロック確認応答のための2つの制御シーケンスを持っています。

ポイントツーマルチポイント通信では、NAKはポーリングに対するノットレディ応答として使用されます。

ハードウェア認識[編集]

いくつかのコンピュータバスは、ISA DMAに使用される各書き込みデータ肯定応答DACKを確認するために使用される制御バス内の専用肯定応答線を有する。 Data Acknowledge STACKに使用されるDATACK、DTACKのタイトルに影響を与えたモトローラ68000のデータ転送確認ピンなど

I²Cシリアルバスには、各バイトの後にアクノリッジビット用のタイムスロットがあります。

コンピュータバスの中には、すべての書き込みを常に認識するとは限らないものもあります。書き込みの一部または全部が書き込みを使用します。

関連項目[編集]

http://wikipedia.org/