-
ACK
鎖定
ACK (Acknowledge character)即是確認字符,在數據通信中,接收站發給發送站的一種傳輸類
控制字符。表示發來的數據已確認接收無誤。
在
TCP/IP協議中,如果接收方成功的接收到數據,那麼會回覆一個ACK數據。通常ACK信號有自己固定的格式,長度大小,由接收方回覆給發送方。
- 中文名
-
ACK
- 外文名
-
Acknowledge character
- 中文譯名
-
確認字符
- 分 類
-
傳輸與接入
- 應 用
-
數據通信
- 協議支持
-
TCP/IP協議
- 定 義
-
在數據通信中,接收站發給發送站的一種傳輸類控制字符
ACK簡介
ACK的全稱為Acknowledge character,即確認字符,表示接收到的字符無錯誤。
[1]
接收站對所收到的報文進行檢查,若未發現錯誤,便向發送站發出確認回答ACK,表明信息已被正確接收,並準備好接收下一份報文。該控制字符可由中心結點發送,也可由遠地結點發送。
[2]
其格式取決於採取的網絡協議。當發送方接收到ACK信號時,就可以發送下一個數據。如果發送方沒有收到信號,那麼發送方可能會重發當前的
數據包,也可能停止傳送數據。具體情況取決於所採用的
網絡協議。
1、TCP
報文格式中的控制位由6個標誌比特構成,其中一個就是ACK,ACK為1表示確認號有效,為0表示報文中不包含確認信息,忽略確認號字段。
2、ACK也可用於AT24cxx這一系列的EEPROM中。
3、在USB傳輸中,ACK事務包用來向主機/設備報告包正確的傳輸。
ACK相關簡介
ACK否認字符
否認字符
NAK( Negative Acknowledge)的含義為接收站對所收到的報文進行檢查,若發現錯誤,便向發送站發送否認回答NAK,表示
報文有錯,並要求重發。
ACK同步字符
同步字符
SYN( Synchronousidle)表示無論是中心結點還是遠地
結點,在發送信息或回答之前,都要先發送同步字符,用以實現或保持發送站和接收站之間的同步。
[2]
ACK轉義字符
轉義字符DLE( Data Link Escape)用於改變緊隨其後的有限個字符的意義,以提供附加的
數據鏈路控制字符。
ACK應用
圖1:三次握手圖
ACK在三次握手中用到,三次握手的過程(如圖1:三次握手圖)所示。
第一次
第一次握手:建立連接時,
客户端發送
syn包(seq=j)到
服務器,並進入SYN_SENT狀態,等待服務器確認;SYN:同步序列編號(
Synchronize Sequence Numbers)。
第二次
第二次握手:
服務器收到
syn包,必須確認客户的SYN(
ack=j+1),同時自己也發送一個SYN包(seq=k),即SYN+ACK包,此時服務器進入SYN_RECV狀態。
第三次
- 參考資料
-
-
1.
汪自雲.計算機與現代教育技術:湖北教育出版社,2000:213
-
2.
湯子瀛.計算機網絡技術及其應用:電子科技大學出版社,1996:67-68
-
3.
三次握手
.百度百科[引用日期2019-06-24]