营销型网站建设方案演讲ppt,常用网站搜索引擎,seo0577,hyip网站开发UDP和TCP
前几节我们提到了计算机网络编程中的TCP编程#xff0c;TCP和UDP都是计算机机网络通信的传输层中的传输协议#xff0c;今天我们来学习计算机网络编程中的基于UDP传输协议的网络编程
首先我们要了解TCP和UDP的区别
它们是同属于计算机网络传输层的传输协议
TCPTCP和UDP都是计算机机网络通信的传输层中的传输协议今天我们来学习计算机网络编程中的基于UDP传输协议的网络编程
首先我们要了解TCP和UDP的区别
它们是同属于计算机网络传输层的传输协议
TCP传输控制协议全称 Transmission Control Protocol 是面向连接、可靠的、基于字节流的传输层协议。
UDP支持无连接的一个传输协议全称用户数据报协议User Datagram Protocol。UDP为应用程序提供了一种无需建立连接就可发送封装的数据包的方法。它不提供复杂的机制只是利用IP来提供面向无连接的一种通信协议。
TCP是面向连接的通过三次握手建立连接四次挥手解除连接而UDP是面向无连接的它发送数据是不需要建立连接的这样大大的提高了它的传输效率但是不能确保数据是否完整的传输。 TCP是一种可靠的通信方式TCP通过超时重传、确认应答、拥塞控制等机制来确保数据无差错、不丢包、不重复且有序而UDP由于是无连接的它会以最大的传输效率进行数据的传输但不能保证数据传输的可靠交付所以就会出现数据的丢失、重复等问题。 TCP首部开销大占20个字节而UDP的首部才占8个字节开销小 TCP协议提供可靠的、面向连接的传输服务一般用于文件的传输、邮件的发送以及远程设备的控制而UDP无需建立连接传输效率高不需要接收任何确认回复可以用于即时的通信例如QQ或WeChat的语言、视频通话以及抖音、斗鱼等平台的直播 TCP因需要建立连接所以消耗资源大、而UDP不需要建立连接所以消耗资源小 每一条TCP连接只能是点到点的而UDP不建立连接所以可以支持一对一一对多多对一和多对多的交互通信也就是可以同时接受多个人的包。
我们可以回顾一下之前TCP编程的流程 需要客户端和服务器端双向的通过三次握手建立连接 通过四次挥手解除连接 整个过程是非常严谨的 所以他本身是可靠的
今天我们学习的UDP编程 它是不需要连接 直接通过ip来传输数据 因此它是不可靠的
TCP编程流程 UDP协议的编程流程 UDP服务器端 UDP客户端 编译运行后我们发现可以正常通信
然后我们关闭服务器端 再开启 然后再发送数据 查看是否可以接收 这是为什么呢 因为我们前面提到了UDP协议中客户端和服务器并不会建立所谓的连接
发送数据的形式就是 如果我发送了 然后如果你是开启的 那么就可以发送成功
并不会和使用TCP编程时一样发生阻塞
接下来 我们开启第二个客户端给服务器发送数据 可以看到我们也可以正常发送
那么UDP就不存在TCP那种需要处理并发的情况
UDP这里处理这种情况的方式就是 只要你开着 我给你发就可以 并不需要确保成功
那么到这里 我们就学习完成了UDP和TCP传输协议的网络编程
这两种协议各有利弊 我们可以根据情况选择使用