2020-09-16:谈谈TCP的控制位?
福哥答案2020-09-16:#福大大架构师每日一题#
福哥口诀法:紧确推和复同终(紧急位URG,确认位ACK,推送位PSH,复位位RST,同步位SYN,终止位FIN)。
1 FLAG - 紧急指针(URGENT POINTER)
第一个标志是紧急指针标志,此标志用于将输入数据标识为“紧急”。这样的进入段不必等待(直到先前段被接收端消耗),而是直接发送并立即处理。
在数据传输流中,主机正在向远程机器上运行的应用程序发送数据,可以使用紧急指针。如果出现问题,主机需要中止数据传输,并在另一端停止数据处理。在正常情况下,中止信号将在远程机器发送和排队,直到所有先前发送的数据都被处理,但是在这种情况下,我们需要立即处理中止信号。
通过将中止信号的段紧急指针标志设置为“1”,远程机器将不会等待所有排队的数据被处理,然后执行中止。相反,它会给出特定的段优先级,立即处理它,并停止进一步的数据处理。
2 确认(ACKNOWLEDGEMENT)
确认标志用于确认数据包的成功接收。
3 PUSH
在数据包到达接收端以后,立即传送给应用程序,而不是在缓冲区中排队。
4 复位标志RST
这个标志表示连接复位请求。用来复位那些产生错误的连接,也被用来拒绝错误和非法的数据包。
5 同步标志(syn)
该标志仅在三次握手建立TCP连接时有效。在三次握手期间,随着文件的交换和新连接的创建,可以看到更多的SYN标志被发送和接收。
6 FIN断开标志
带有该标志置位的数据包用来结束一个TCP回话,但对应端口仍处于开放状态,准备接收后续数据。
福大大架构师每日一题 文章被收录于专栏
最新面试题,针对高级开发人员和架构师。内容是后端、大数据和人工智能。