偶是菜鸟一点都不明白是在说什么,请问老手们什么是tcp三次握手?什么是ack?这两个之间又有什么关系呢?
答案:2 悬赏:30 手机版
解决时间 2021-05-16 18:03
- 提问者网友:末路
- 2021-05-15 23:46
偶是菜鸟一点都不明白是在说什么,请问老手们什么是tcp三次握手?什么是ack?这两个之间又有什么关系呢?请了解的朋友仔细说一下!越详细越好!主要是他们之间是什么关系,我要的是tcp三次握手与ack的关系!谢谢大家了!
最佳答案
- 五星知识达人网友:神的生死簿
- 2021-05-16 00:47
第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认;
第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态;
第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。
ack就是应答信号,你说他们什么关系:
你打个电话吧?这就是三次应答
首先你拨号:拨通以后,滴的一声,或者对放说:喂,你知道你接通了(这是第一次握手,第一次确认)
然后你说:喂,能听到吗?我开始说话了,然后对方如果听到就回你:我能听到,你说吧?(这是第二次握手,第二次确认)
然后你开始说话,说道最后,你说:我说完了,然后对方说:好,我知道了,再见(这是第三次握手,第三次确认)
通过上面,我想你应该可以明白为什么需要三次握手,而不是两次或者四次,每次握手就是一次确认
所以说TCP是面向连接的,UDP是就不需要握手,接通就开始传数据,所有UDP是面向无连接的
各有各的好处:TCP的更安全,也能保证数据的有效性,正确性,如果接电话的不是你想通话的人,你就不会传数据,对吧?
好了自己理解吧
全部回答
- 1楼网友:三千妖杀
- 2021-05-16 02:04
第一次是客户端发起连接;第二次表示服务器收到了客户端的请求;第三次表示客户端收到了服务器的反馈。
ACK的意思是TCP首部中的确认标志,对已接受到的TCP报文进行确认。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯