网络编程---UDP

 2024-01-25 03:03:51  阅读 0

什么是UDP?

UDP是UDP的缩写。 中文名称是用户数据报协议。 它是OSI(Open,开放系统互连)参考模型中的无连接传输层协议。 它提供简单且不可靠的面向事务的信息传输服务。 IETF 是UDP。 正式规格。 IP数据包中UDP的协议号是17。

在OSI模型中,UDP位于第四层——传输层,是IP协议的上层。 UDP的缺点是不提供数据包分组、组装,也无法对数据包进行排序。 也就是说,一条消息发出后,无法知道它是否已经安全、完整地到达。 UDP用于支持需要在计算机之间传输数据的网络应用程序。 许多客户端/服务器网络应用程序,包括网络视频会议系统,都需要使用UDP协议。 UDP协议自诞生以来已经使用了很多年。 尽管它最初的辉煌被一些类似的协议所掩盖,但直到今天UDP仍然是一个非常实用可行的网络传输层协议。

UDP和TCP的区别:UDP信息传输方式分为三类:

① 单播:是客户端和服务器之间的点对点连接。

②广播:主机之间“一对多”的通信方式。 广播者可以向网络中的所有主机发送信息。 禁止通过宽带网络进行广播传输(广播风暴)。

③ 组播:主机之间“一对一组”的通信模式,即加入同一组的主机可以接收该组内的所有数据。

这里需要注意的是,只有UDP有广播和组播传送方式; 而TCP是一对一的连接通信。 多播的重点是有效地将相同的数据包发送到尽可能多的不同的、甚至可能是未知的设备。 但 TCP 连接是一对一的显式连接。

UDP组播详解:

c 网络应用编程_网络应用编程课程设计_网络编程与应用

Java API中实现UDP编程,包括客户端网络编程和服务器端网络编程,主要由两个类实现,分别是:

(1)

该类实现“网络连接”,包括客户端网络连接和服务器端网络连接。 实现的是发送数据时的发射器角色,以及接收数据时的监听器角色。

该类可用于实现客户端和服务器端连接。

网络应用编程课程设计_网络编程与应用_c 网络应用编程

(2)

类实现封装了网络上传输的数据,也就是说该类的对象代表了网络上交换的数据。 在UDP网络编程中,无论是需要发送的数据还是需要接收的数据,都必须被处理成类型对象,其中包含要发送的地址、要发送的端口号以及内容将被寄出。

类的功能类似于现实生活中的字母。

UDP客户端分为三个步骤:建立连接、发送数据\接收数据、关闭连接。

关于这两个类,我们打个形象的比喻:使用UDP并没有像使用TCP那样明确指定“服务器-客户端”。 UDP通信的双方可以是服务器,也可以是客户端,都需要建立一个----“邮局”角色,可以封装一个数据报,即一个“信封”并发送出去; 您还可以使用“邮局”接收信件。 在接收信件之前,需要提前准备一个“空信封”(仅指定要接收的数据大小),接收数据后,将数据封装到空信封中。

UDP使用的详细示例:

标签: 发送 编程 协议

如本站内容信息有侵犯到您的权益请联系我们删除,谢谢!!


Copyright © 2020 All Rights Reserved 京ICP5741267-1号 统计代码