- 1、本文档共49页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
11.3 基于连接的套接字通信方式 并发服务器的原理是:客户方向服务器发送请求,服务器在接受请求后,立即调用一个线程,来实现服务器与客户方之间的交互,主程序则返回继续监听端口,等待下一个客户的连接请求。前一个线程在完成相应的交互过程后自动退出,连接也将自动关闭。 实现并发服务器的基本方法:在服务器的程序中首先创建单个ServerSocket,并调用accept()来等候一个新连接,一旦accept()返回,就取得获得结果的Socket,并用它新建一个线程,令其只为那个特定的客户提供服务;然后再调用accept(),等候下一个新的连接请求。 11.3 基于连接的套接字通信方式 【例11-4】一对多通信程序(服务端程序) 代码:11-4.txt 运行界面: 1号客户端运行界面: 2号客户端运行界面: 服务端运行界面: 11.4 基于无连接的数据报通信方式 11.4.1 数据报通信的概念 TCP和UDP的区别: 通信方式 协议 可靠性 数据量 是否需要连接 应用 流式通信 TCP 可靠,有序,无差错,无重复,不会丢失数据 大量数据 需要连接 http,telnet,ftp服务 数据报通信 UDP 不可靠, 会丢失数据 少量数据 无连接,每个数据报包括源地址和目标地址 时间服务,ping程序 数据报通信的表示方法: DatagramSocket和DatagramPacket也是在包中定义的,适用于在java中编写使用UDP协议通信的网络程序。两者的用途不相同: DatagramSocket :程序之间建立了一个通信连接,用来传送数据报。 DatagramPacket:用来表示一个数据报。 11.4 基于无连接的数据报通信方式 11.4 基于无连接的数据报通信方式 DatatgramSocket类的构造器和使用方法: 方法 描述 Public DatagramSocket() 创建一个DatagramSocket类的对象,并绑定到本地主机上的指定的可用端口 Public DatagramSocket(int port) 创建一个DatagramSocket类的对象,并绑定到本地主机上的某个可用端口 Public DatagramSocket(int port,InetAddress laddr) 创建一个与本地地址绑定的DatagramSocket类的对象 Public void disconnect() 断开连接 11.4 基于无连接的数据报通信方式 方法 描述 Public InetAddress getAddress() 连接的目的端的IP地址 Public InetAddress getLocalAddress() 本地的IP地址 Public int getLocalPort() 本地端口 Public int getPort() 连接目的端的端口 Public int getReceiveBufferSize() 接收端数据缓冲区的大小,对应还有setSendBufferSize(int) Public void receive(DatagramPacket p) 接收数据包并将数据保存在DatagramPacket中,实际是DatagramPacket指定了一个数据缓存 Public void send(DatagramPacket p) 发送数据包 Public void close() 关闭DatagramPacket 11.4 基于无连接的数据报通信方式 DatatgramPacket类的构造器和使用方法: 用于处理报文,它将Byte数组,目标地址,目标端口等数据包装成报文或者将报文拆卸成Byte数组。 方法 描述 Public DatagramPacket(byte ibuf[],int ilength) 创建一个带有指定长度为ilength的字节数组的数据包 Public DatagramPacket(byte ibuf[],int ilength,InetAddress iaddr,int iport) 创建一个用于发送的DatagramPacket类对象,它指定了发送数据的长度,接收端的IP地址和端口号 Public synchronized InetAddress getAddress() 返回发送数据包的主机IP地址 Public synchronized int getPort() 返回发送数据包的主机的端口号 11.4 基于无连接的数据报通信方式 11.4.1 数据报通信的概念 DatatgramPacket类的构造器和使用方法: 方法 描述 Public synchronized byte[] getData() 取得发送或者接收的数据包的数据信息,这个方法很重要
您可能关注的文档
最近下载
- 2019-2020学年重庆八中七年级(上)期末数学试卷.docx
- 02J331 地沟及盖板(标准图集).pdf VIP
- 第十一章 沟通——管理学(马工程).ppt
- 2020-2021学年重庆八中八年级(下)期中数学试卷.doc VIP
- 2020年重庆八中八年级(下)期中物理试卷 .doc VIP
- 某家具城进销存管理系统数据库课程设计.docx
- 生物柴油安全技术说明书.pdf
- 新疆地区输电线路工程冬季施工增加费用解析权威资料.doc VIP
- DB11-1624 2019 北京市电动自行车停放场所防火设计标准.docx
- 重庆市第八中学校2023-2024学年八年级上学期期末考试数学试卷(含解析).doc VIP
文档评论(0)