收藏文章 楼主
版块:软件测试培训   类型:普通   作者:多测师   查看:9653   回复:0   获赞:0   时间:2021-08-26 10:15:33

我们经常浏览网页,网络聊天等,这些都是通过TCP协议以及UDP协议进行传输的TCPUDP协议都工作在传输层,都是在程序之间以二进制数进行数据的传输

那么TCPUDP协议他们之间具体有什么区别呢?

答:一个基于链接,一个基于非链接

例:如果将人与人之间的通信比喻成进程与进程之间的通信

1.基于非链接可以比喻成写信:

1.对方是否能收到信息

2.内容是否完整

3.如果有两封信是否按照先后顺序进行接

2.基于链接可以比喻成打电话:

        打电话则不同于写信的操作,电话接通相互通话结束挂断等操作流程,都可以得到对方确认

总结:打电话是基于链接的就是TCP协议写信是基于非链接的也就是UDP协议

                  

多测师教育培训之什么是三次握手?:

答:三次握手是建立通讯链接的过程。

1.发送端(客户端)发送一个数据包给接端(服务器)询问我是否可以与你建立链接,这个数据包我们称为SYN包,同时SYN包里会生成序列号

2.如果服务端同意链接就会回复客户端,发送数据包SYN加上ACK+1包

注意:ACK包(ACK包有自己的固定格式,长度大小,由接方发送给请求方,表示发送的SYN信息确认无误,1表示数据确认有效)

3.客户端收到了服务端的确认信息(SYN+ACK)包后,向服务端发送ACK包,建立链接成功

 

总结:这个交互的过程分为三次,发送了3数据包,所以我们称次握手

upfile1629940790053.jpg

为什么是次握手而不是两次握手呢?

答:是为了防止已失效的报文信息突然又传到服务端引起错误

假如采用两次握手建立链接:

       客户端向服务端发送一请求数据包(SYN包),如果因为一些未知原因(网络等)导致没有到达服务器,就会在传输过程中某个节点产生滞留。

为了建立链接客户端会再次发送一个请求(SYN包)给服务端,这次的包正常送达,服务端回复SYN+ACK从而建立链接然而,当阻塞的第一个数据包突然恢复,第一SYN包也送达到服务器,那么这个时候客户端会误认为客户端又发起了一个新的请求,服务端就会认为是两个链接状态,而客户端会认为是一个链接从而导致两个端状态不一致

 

总结采用三次握手进行确认,往往就是为了解决网络信不稳定


    如需了解更多测试技术信息请关注:http://www.duoceshi.cn/ 深圳多测师软件与技术服务有限公司


全站外链: TEC传感器 | 猫掌外链
 
回复列表
默认   热门   正序   倒序

回复:多测师浅谈TCP与UDP三次握手的原理

网站公告

近期本站被人为恶意注册及发布垃圾帖,每一个发帖都会经过审核,一经发现违法或垃圾帖的用户,帖子将被删除或封号,请大家共同维护互联网环境,共创美好互联网未来。

详细的发帖规则请阅读:

《小猪外链网发帖规则》

《小猪外链网最新金币规则》

注:本站严禁发布灰色违禁违法内容,如发现立刻永久封号,如开通会员的概不退款。

Powered by 小猪外链网 8.3.15

©2015 - 2025 小猪SEO外链平台

备案号:浙ICP备17015142号

免责申明:本网站内容由平台入驻会员撰写,除创始人账号外,其他观点仅代表作者本人,不代表小猪外链网立场。如果内容涉及侵犯其他公司、团体的利益、请联系小猪SEO外链网客服举证删除

您的IP:18.222.178.70,2025-05-01 11:18:26,Processed in 1.55897 second(s).

各位站长请准守小猪SEO外链网的发帖规则,文明理性发言

外链优化

用户名:

粉丝数:

签名:

资料 关注 好友 消息
分享
已有0次打赏