p4 基于udp协议的程序设计

p4 基于udp协议的程序设计

ID:6131865

大小:1.31 MB

页数:34页

时间:2017-11-15

p4 基于udp协议的程序设计_第1页
p4 基于udp协议的程序设计_第2页
p4 基于udp协议的程序设计_第3页
p4 基于udp协议的程序设计_第4页
p4 基于udp协议的程序设计_第5页
资源描述:

《p4 基于udp协议的程序设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、计算机网络编程技术第4章基于UDP协议的程序设计6/12/20211引子----UDP协议的应用领域?实时传输:网络视频会议?IP电话:VOIP?网络信息分发:股票信息、航空信息部分应用层协议的基础6/12/20212本章的主要内容回顾UDP协议的基本特点学习使用UdpClient类进行单播通信编程广播通信编程技术多播通信编程技术6/12/202134.1UDP协议介绍(1)UDP协议提供服务的特点:①是无连接协议,可靠性不如TCP协议;②不需要维护连接状态,可同时向多个客户机发送相同的信息;③数据包的报头很短,适于快速传输;④

2、吞吐量不受拥挤控制算法调节;⑤广播和多播;6/12/20214(2)单播、广播和多播单播是端对端,能够穿透子网;广播限于子网内;多播向多个子网发送信息。单播和多播比较:6/12/20215(3)UDP协议的数据格式6/12/202164.2使用UdpClient类进行编程(1)回顾典型数据报套接字调用流程6/12/20217(2)UdpClient类的应用方法//第一阶段:创建UdpClient实例UdpClientudpClient=newUdpClient();IPAddressremoteAddress=IPAddress

3、.parse("127.0.0.1");IPEndPointiep=newIPEndPoint(remoteAddress,8000);//第二阶段:数据发送byte[]sendBytes=System.Text.Encoding.Unicode.GetBytes("注意休息!");udpClient.Send(sendBytes,sendBytes.Length,remoteAddress);//第二阶段:数据接收IPEndPointiep2=newIPEndPoint(IPAddress.Any,0);Byte[]recei

4、veBytes=udpClient.Receive(refiep2);stringgetData=System.Text.Encoding.Unicode.GetString(receiveBytes);...//第三阶段:关闭udpClient.Close();6/12/20218(2)UdpClient类的其他3种实例构造方法方法1:IPAddressremoteAddress=IPAddress.parse("127.0.0.1");UdpClientudpClient=newUdpClient("remoteAddres

5、s",8000);方法2:UdpClientudpClient=newUdpClient();udpClient.Connect("www.software.org",8000);方法3,最简单:UdpClientudpClient=newUdpClient("www.software.org",8000);此时,由于明确了远程主机上的进程,所以Send方法的调用更为简单:udpClient.Send(tmpBytes,tmpBytes.Length);6/12/20219(3)应用实例:P91-93是一个简单的控制台应用程序。

6、客户机界面服务器界面6/12/2021104.3网络广播程序设计(1)广播地址如何描述?广播地址分为:全球广播:255.255.255.255.被路由器过滤,只能在本地子网中广播;直接广播:A、B、C类IP地址中主机好为全1的地址为直接广播地址;6/12/202111直接广播地址的应用原理如果有多个进程都发送广播数据,则该子网将会阻塞,影响到网络性能,这是广播方式的缺点。6/12/202112(2)广播程序设计:P94-97为了实现广播通信,需要:指定广播地址;在套接字函数setSocketOption()中设置广播选项;使用r

7、ecvfrom和sendto等函数收发广播数据;6/12/2021131)程序运行界面:P95发送端:接收端:6/12/2021142)发送广播消息程序Socketsocket=newSocket(AddressFamily.InterNetwork,SocketType.Dgram,ProtocolType.Udp);IPEndPointiep=newIPEndPoint(IPAddress.Broadcast,8000);//设置Broadcast值为表示允许套接字发送广播信息,该值默认为(不允许)socket.SetSoc

8、ketOption(SocketOptionLevel.Socket,SocketOptionName.Broadcast,1);//将发送内容转换为字节数组byte[]sendBytes=System.Text.Encoding.Unicode.GetByte

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。