失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 网络编程(part8)--传输层服务之TCP和UDP

网络编程(part8)--传输层服务之TCP和UDP

时间:2023-08-22 06:27:44

相关推荐

网络编程(part8)--传输层服务之TCP和UDP

鄙人学习笔记

文章目录

传输层服务面向连接的传输服务(基于TCP协议的数据传输)传输特征实现手段适用情况面向无连接的传输服务(基于UDP协议的数据传输)传输特点适用情况

传输层服务

面向连接的传输服务(基于TCP协议的数据传输)

传输特征

提供了可靠的数据传输(3次握手,4次挥手),可靠性指数据传输过程中无丢失,无失序,无差错,无重复。

实现手段

在通信前需要建立数据连接,通信结束要正常断开连接。

①三次握手(建立连接)

第1次握手:客户端向服务器发送消息报文,请求连接.第2次握手:服务器收到请求后,回复报文,同意建立连接(若不同意,则不会返回报文,则没有第2次和第3次握手).第3次握手:客户端收到回复,发送最终报文,连接建立.

②四次挥手(断开连接)

第1次挥手:主动方发送报文,请求断开连接第2次挥手:被动方收到请求后,立即回复,表示准备断开第3次挥手:被动方准备就绪,再次发送报文,表示可以断开第4次挥手:主动方收到确定,发送最终报文,完成断开

备注:断开连接,谁先断开?是客户端还是服务端呢?其实是两段都可以主动断开。所以,这里我们就写主动方和被动方。

适用情况

对数据传输准确性有明确要求,传数文件较大,需要确保可靠性的情况。比如:网页获取,文件下载,邮件收发。

面向无连接的传输服务(基于UDP协议的数据传输)

传输特点

不保证传输的可靠性,传输过程没有连接和断开,数据收发自由随意。

适用情况

网络较差,对传输可靠性要求不高。比如:网络视频,群聊,广播。

例如,在视频聊天时,我们的清晰度不是很高。如果要求清晰度很高,则需要在很短的时间内需要传递很多数据。但是,当我们网速不够时,这些数据在很短的时间内是传输不过去的,这时,视频聊天就会很卡,甚至会断开连接。所以,这时就会以视频不清晰(丢失数据)为代价,来保证连接的流畅性。故,此时就允许有数据的丢失,所以就不能用基于TCP协议的数据传输,而用基于UDP的数据传输.

备注:UDP传输效率比TCP高,因为TCP为了保证数据传输的可靠性,有3次握手(建立连接)和4次挥手(断开连接).

如果觉得《网络编程(part8)--传输层服务之TCP和UDP》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。