ACK (一般)
読み:アック
外語:ACK: ACKnowledge
情報通信における信号の一つで、肯定応答。
目次
概要
特徴
重要性
複数機能を兼ねるもの
手法
レガシーな通信媒体
インターネット
他の世界
概要
通信における肯定的な応答で、一般には、通信がエラーなく到達したことを示す信号である。
通知方法も様々あるが、
物理層
に近い層では
信号線
のHI/LOWで表現することが多く、上位層に近い層では専用に用意された
制御コード
や通信手段によって実現する。
例えば、制御コードを用いる方法では、
ASCII
では0/6(0x06)を、
EBCDIC
では2/14(0x2e)を使うのが一般的である。
また専用に用意された通信手段による例としては、
TCPヘッダー
の
ACKフラグ
などがある。このように何らかのプロトコルにおいて肯定的な返答を単にACKと呼ぶことがあり、そういった物も含めてACKの返信が戻ることを「ACKが返る」のように表現する。
特徴
重要性
通信プロトコル
において、ACKの送受信は重要なものである。要求が正常に受け付けられたかどうかを判断せねば、安定した動作は期待できないからである。
このため多くのプロトコルではACK返信の機能を持っている。単にACKの意味だけをもったパケットを返信する場合と、要求への対応完了応答などをACKとするものとがある。
複数機能を兼ねるもの
I〓C
などは、ACKを複数の目的に用いているものの一つといえる。
送信の際にACKが返るが、シンプルな実装では無視されることが多い残念な信号である。
受信(スレーブ→マスター)の場合は、マスター側がACKかNACKを送信するが、これは正常な受信の通知というだけでなく、続けてデータを要求するか否かという機能も兼ねている。
手法
レガシーな通信媒体
レガシー
な通信媒体ではACK文字を返信することでACKとする実装が多い。RS-232Cや類する媒体を用い、ほぼ
物理層
の規定のみで使われるような世界では、この方式が採用される。
また、仮にプロトコルを用いていても、インターネット用プロトコルのような複雑なものは当時殆どなかった。このため、次のプロトコルはACK文字をACKに採用している。
XMODEM
YMODEM
また、
パラレルインターフェイス
(プリンターポートや
IEEE 1284
など)では、ACK信号を送るための線を1本以上用意することで、これを実現することもある。
インターネット
インターネットの世界では、TCPがヘッダー内にACKフラグを持ち、同時にデータを返信することができる。このことから、ここで使われる多くのプロトコルも同様に設計されることが多い。
次のプロトコルは、ACKとして情報が返信される代表的な例である。
DHCP
、
DNS
、
NTP
など、要求に応じて返信されるプロトコルは、その返信が一般にACKとして扱われる。
他の世界
通信以外の世界でも、ACKは様々な表現として使われている。
こくこく
(首を縦に振る擬態語)
はちみつクマさん
(
Kanon
)
再検索