网站大量收购独家精品文档,联系QQ:2885784924

chapter13网络技术及应用开发.pptVIP

  1. 1、本文档共62页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
chapter13网络技术及应用开发

第13章 网络技术和应用开发 本章知识点 网络编程基础知识 基于流套接字(socket)的服务器/客户端通信 Socket类 ServerSocket类 基于流套接字的服务器/客户端通信实例(单向、双向、多线程) 多用户聊天室 基于数据报套接字(datagram)的服务器/客户端通信 DatagramPacket类 DatagramSocket类 基于数据报套接字的服务器/客户端的通信实例 13.1 网络基础知识 13.1 网络基础知识 TCP协议 TCP(Transmission Control Protocol):有连接的可靠的传输协议。 传输数据的过程:设两台机器A和B使用TCP协议传输数据,A发给B的数据包,B收到后会给A一个确认收到的回复。如果A一直未收到回复,则A断定网络故障。A端发送的数据不会出现不可预知的丢失。 TCP传输协议的特点 建立连接,安全,但效率低。 TCP将要传送的内容以流的形式传输。 TCP传输数据的过程相当于打电话,有问有答。 13.1 网络基础知识 UDP协议 UDP(User Datagram Protocol):无连接的不可靠的传输协议。 传输数据的过程:设两台机器A和B使用UDP协议传输数据, A发送数据后不需要得到B机器的回复,A只管发,B只管收。B到底收到多少数据A并不知情。 UDP的特点 无连接的,不安全,但效率高。 UDP协议将要传输的内容分隔成一个一个的数据报进行传输。 UDP传输数据相当于写信。 UDP也可以保证可靠传输,如信件双方事先约好一定回信,即由上层的约定保证可靠性,也就是说UDP可靠传输需要程序员自己写程序保证。 13.1 网络基础知识 TCP和UDP的使用 TCP用于可靠性要求高的场合。使用比较广泛。 UDP 用在对实时性要求比较高的场合。例如:视频传输,要求效率高,允许少量数据丢失(数据包丢失后对视频效果影响不大)。 13.1 网络基础知识 思考:两台机器的数据交换如何被应用程序读到? 首先,需要知道对方机器的IP地址。 其次,要知道应用程序的端口号。 IP地址决定找的机器是谁,端口号决定和该机器的哪个应用程序通信。 IP地址:主机在网络中的唯一标识,是一个逻辑地址。(或用”localhost”表示) 表示本机地址(即使没有网卡该地址仍然可以用)。 13.1 网络基础知识 端口(port):端口是一个软件抽象的概念。如果把IP地址看作是一部电话,端口就相当于分机。 端口号:在某台机器上为某个应用程序分配的可以与外部进行通信的编号。端口号占两个字节(0-65535)。比如HTTP的端口号为80,FTP服务的端口号为21等。 网络应用程序一定要和某个端口绑定监听关系。 例如,一个机器有多个网络应用程序被打开:QQ聊天、网络视频、使用IE浏览网页、迅雷下载。而该机器的网卡只有一个,这些应用程序的数据传递给网卡后,网卡需要将数据解包分发给应用层。为此,发送端发送的信息既包括了数据也包括端口号。接收端收到数据包后,根据传递的数据包中的端口号,将数据包交给与该端口号绑定的应用程序处理。 13.2 基于socket的网络通信(TCP方式) 13.2.1 服务器端开发 服务器端开发步骤 (1)创建ServerSocket对象,建立新的服务器端应用程序,并与端口绑定。 (2)使用ServerSocket 的accept方法等待客户端的连接。 accept()方法是一个阻塞线程方法,执行到accept后会等待,直到客户端有申请连接过来,成功连接后返回一个socket对象。该Socket对象绑定了客户程序的IP地址或端口号。 (3)使用socket的getInputStream(),getOutputStream()方法得到对方的输入字节流或自己的输出字节流。 (4)对输入、输出字节流进行上层包装,根据需要封装为欲读写的字符、基本类型或对象等。 (5)对包装好的流对象进行读写操作。 (6)关闭资源:包括输入输出流、socket、serverSocket。 (2)-(5)循环,双方利用建立起来的socket进行通信。 13.2.1 服务器端开发 服务器程序需要创建一个ServerSocket对象,用于在指定端口上监听客户端连接请求。 ServerSocket类的构造方法 (1)ServerSocket(int port) 在指定端口上创建一个ServerSocket对象。服务器应用使用ServerSocket监听指定的端口,端口建议使用大于1024。 (2)ServerSocket(int port,int queueLength) Server在指定端口上监听客户端连接请求,并指定允许连接的客户最大数目。 13.2.1 服务器

文档评论(0)

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

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档