网络与通信程序设计(唐小煜)第15章 运输层编程.pptVIP

网络与通信程序设计(唐小煜)第15章 运输层编程.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
客户端协议解释流程 主要线程及方法 UI主线程 数据发送方法(在UI线程或者独立线程) 数据接收及处理线程 其它配合线程 任务15-1:基于TCP的多用户聊天软件 协议要求如上述 要求实现客户端与老师的服务器通信,并接受服务器数据 可自行设计服务器,实现完整的聊天软件 15.3 UDP编程 UDP特点 UDP不需要建立连接,可以向网络中的任何主机发送UDP数据包 UDP没有缓冲机制和窗口机制 接收数据时,要保证字节数组足够大 可以利用UDP实现广播和组播 .NET对UDP的支持:UdpClient类 UdpClient类是基于Socket类的较高级别抽象 UdpClient类 属性及方法 描述 Available 获取从网络接收的可读取的数据量 Client 获取或设置基础网络Socket DontFragment 获取或设置指定UdpClient实例是否允许对IP协议数据报进行分段的标志 EnableBroadcast 获取或设置指定UdpClient实例是否可以发送或接收广播数据包的标志 ExclusiveAddressUse 获取或设置指定UdpClient是否只允许一个客户端使用端口的标志 MulticastLoopback 获取或设置是否将输出多播数据包传递给发送应用程序的标志 Ttl 获取或设置指定由UdpClient发送的IP协议数据包的生存时间TTL的值 BeginReceive() 从远程主机异步接收数据报 BeginSend() 将数据报异步发送到远程主机 Close() 关闭UDP连接 Connect() 指定发送数据的默认远程主机 DropMulticastGroup() 退出多播组 EndReceive() 结束挂起的异步接收 EndSend() 结束挂起的异步发送 JoinMulticastGroup() 将当前的UdpClient实例添加到多播组 Receive() 接收已由远程主机发送的UDP数据报,同时返回远程主机信息 Send() 将UDP数据报发送到远程主机 单播(Unicast)与多播(Multicast) 单播(Unicast) 指网络中从源向目的地转发单播流量的过程。 单播流量地址唯一,只有一个发送方和一个接收方。 多播/组播(Multicast) 允许一个或多个发送者(多播源)将单一的数据包同时发送到多个接收者的网络技术 单播编程 发送端 UdpClient server = new UdpClient(); //可指定发送端口 //指定接收地址及端口 //IPEndPoint ipb =new IPEndPoint(IPAddress.Parse(“3”),520); server.Send(bytes, bytes.Length,“3”,520); 接收端 UdpClient client = new UdpClient(520); IPEndPoint myhost = null; byte[] bytes = client.Receive(ref myhost); 广播(Broadcast) 网络广播 指一个节点同时向相同域中的其它所有节点传输数据包的过程。 广播消息地址包括:本地广播、全球广播 IP: 掩码: 本地广播地址:55 全球广播地址:55 广播编程实例 发送端 UdpClient server = new UdpClient(); //指定广播地址及端口 IPEndPoint ipb =new IPEndPoint(IPAddress.Parse(“55”),521); server.Send(bytes, bytes.Length, ipb); 接收端 UdpClient client = new UdpClient(521); IPEndPoint myhost = null; byte[] bytes = client.Receive(ref myhost); 多播/组播 概述 一个多播组由若干个主机构成,当某源主机要将数据发送给某个多播组上的所有主机时,首先需要构造一个能够标识该多播组的IP数据报,然后以尽力而为方式转发给对应多播组中的各个主机。 为了标识多播组,在TCP/IP中引入了IP多播地址,每个多播组都需要一个IP多播地址来标识。 类别 地址范围 描述 局部链接地址 ~55 用于局域网,路由器不转发属于此范围的IP包 预留多播地址 ~55 用于全球范围或网络协议 管理权限地址 ~55 组织内部使用,用于限制多播范围 多播编程实例 发送端 UdpClient server = new UdpClient

文档评论(0)

1243595614 + 关注
实名认证
文档贡献者

文档有任何问题,请私信留言,会第一时间解决。

版权声明书
用户编号:7043023136000000

1亿VIP精品文档

相关文档