第3章 UDP应用编程.ppt
上传人:qw****27 上传时间:2024-09-12 格式:PPT 页数:30 大小:328KB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

第3章 UDP应用编程.ppt

第3章UDP应用编程.ppt

预览

免费试读已结束,剩余 20 页请下载文档后查看

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第3章UDP应用编程3.1UDP协议基础知识编写UDP应用程序时,有两种技术:直接使用Socket类使用UdpClient类UdpClient类对基础Socket进行了封装、发送和接收数据时不必考虑底层套接字收发时必须处理的一些细节问题,从而简化了UDP应用编程的难度,提高了编程效率。创建基于UDP协议的SocketSocketudpClient=newSocket(AddressFamily.InterNetwork,SocketType.Dgram,ProtocolType.Udp);绑定本地端点:目的是告诉socket对象在指定的端点上接收数据IPEndPointpoint=newIPEndPoint(localIp,port);udpClient.Bind(point);(3)接收数据EndPointremote=(EndPoint)newIPEndPoint(IPAddress.Any,0);intcount=udpSocket.ReceiveFrom(receiveByte,refremotePoint);创建基于UDP协议的Socket(4)发送数据可以另外创建一个新的socket,然后发送数据SockettempSocket=newSocket(AddressFamily.InterNetwork,SocketType.Dgram,ProtocolType.Udp);IPEndPointremote=newIPEndPoint(remoteIP,8000);tempSocket.SendTo(sendBytes,remote);(5)关闭socketudpSocket.Close();创建基于UDP协议的SocketSocketudpClient=newSocket(AddressFamily.InterNetwork,SocketType.Dgram,ProtocolType.Udp);绑定本地端点:目的是告诉socket对象在指定的端点上接收数据IPEndPointpoint=newIPEndPoint(localIp,port);udpClient.Bind(point);(3)接收数据EndPointremote=(EndPoint)newIPEndPoint(IPAddress.Any,0);intcount=udpSocket.ReceiveFrom(receiveByte,refremotePoint);UDP协议的另外一个重要用途是可以通过广播和组播实现一对多的通信模式,即可以把数据发送到一组远程主机中。利用广播实现群发功能所谓广播,就是指同时向子网中的多台计算机发送消息,并且所有子网中的计算机都可以接收到发送方发来的消息。每个广播消息包含一个特殊的IP地址。广播消息地址分为两种类型:本地广播和全球广播。通过本地广播向子网中的所有计算机发送广播消息时,其他网络不会受到本地广播的影响。在前面的学习中,我们已经知道了IP地址分为两部分,网络地址和主机地址,标准网络地址部分组成了本地网络地址的第一部分,字节地址中全部为1的部分用于主机地址部分(即十进制的255)。利用组播实现群发功能广播的通信模式虽然能够实现一对多的通信需要,但是,由于广播是向子网中的所有计算机用户发送消息,没有目的性,不但增加了网络传输负担,而且资源消耗较高。组播的出现,较好地解决了这个问题。组播也叫多路广播。所谓组播是将消息从一台计算机发送到本网或全网内选择的计算机子集上,即发送到那些加入指定组播组的计算机上。组播组是开放的,每台计算机都可以通过程序随时加入到组播组中,也可以随时离开。创建基于UDP协议的Socket(4)发送数据可以另外创建一个新的socket,然后发送数据SockettempSocket=newSocket(AddressFamily.InterNetwork,SocketType.Dgram,ProtocolType.Udp);IPEndPointremote=newIPEndPoint(remoteIP,8000);tempSocket.EnableBroadcast=true;//开启广播功能tempSocket.SendTo(sendBytes,remote);(5)关闭socketudpSocket.Close();UdpClient类的构造函数1)UdpClient()创建一个新的UdpClient对象,并自动分配合适的本地IPv4地址和端口号。例如:UdpClientudpClient=newUdpClient();//指定默认远程主机和端口号udpClient.Connect("www.