- 1、本文档共28页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
网络概述 姓名:康续 电话QQ: 1017984298 网络概述 网络编程就是在两个或两个以上的设备(例如计算机)之间传输数据。程序员所作的事情就是把数据发送到指定的位置,或者接收到指定的数据,这个就是狭义的网络编程范畴。在发送和接收数据时,大部分的程序设计语言都设计了专门的API实现这些功能,程序员只需要调用即可。 网络概述 按照计算机网络的定义,通过一定的物理设备将处于不同位置的计算机连接起来组成的网络,这个网络中包含的设备有:计算机、路由器、交换机等等。 路由器和交换机组成了核心的计算机网络,计算机只是这个网络上的节点以及控制等,通过光纤、网线等连接将设备连接起来,从而形成了一张巨大的计算机网络。 网络通讯基于“请求-响应”模型 网络中的“请求-响应”模型,也就是通讯的一端发送数据,另外一端反馈数据,网络通讯都基于该模型。 在网络通讯中,第一次主动发起通讯的程序被称作客户端(Client)程序,简称客户端,而在第一次通讯中等待连接的程序被称作服务器端(Server)程序,简称服务器。 协议(Protocol)。 实际进行数据交换时,为了让接收端理解该数据,需要规定该数据的格式,这个数据的格式就是协议。 协议的编写,只要按照这种协议格式能够生成唯一的编码,按照该编码可以唯一的解析出发送数据的内容即可。 在现有的网络中,网络通讯的方式主要有两种: 1、?TCP(传输控制协议)方式 TCP需要建立专门的虚拟连接,然后进行可靠的数据传输,如果数据发送失败,则客户端会自动重发该数据。 2、?UDP(用户数据报协议)方式 UDP使用这种方式进行网络通讯时,不需要建立专门的虚拟连接,传输也不是很可靠,如果发送失败则客户端无法获得。 1、?监听端口。服务器端属于被动等待连接,所以服务器端启动以后,不需要发起连接,而只需要监听本地计算机的某个固定端口即可。 2、?获得连接。当客户端连接到服务器端时,服务器端就可以获得一个连接,这个连接包含客户端的信息。服务器端编程中,当获得连接时,需要开启专门的线程处理该连接,每个连接都由独立的线程实现。 3、?交换数据。服务器端的数据交换步骤是首先接收客户端发送过来的数据,然后进行逻辑处理,再把处理以后的结果数据发送给客户端。简单来说,就是先接收再发送,这个和客户端的数据交换数序不同。 4、?关闭连接。通过关闭服务器端使得服务器监听的端口以及占用的内存可以释放出来,实现了连接的关闭。 Java网络实现(TCP) 以.Socket类代表客户端连接,以.ServerSocket类代表服务器端连接。 创建Socket类型的对象,该对象代表客户端网络连接,示例如下: ???????? Socket socket1 = new Socket(“03”,10000); ???????? Socket socket2 = new Socket(“”,80); 紧接着的步骤就是按照“请求-响应”模型进行网络数据交换,在Java语言中,数据传输功能由Java IO实现,也就是说只需要从连接中获得输入流和输出流即可,然后将需要发送的数据写入连接对象的输出流中,在发送完成以后从输入流中读取数据即可。 这样就完成了一次数据交换过程。 当数据交换完成以后,关闭网络连接 。s.close(); 服务器端程序编程中,由于服务器端实现的是被动等待连接,所以服务器端编程的第一个步骤是监听端口,也就是监听是否有客户端连接到达。实现服务器端监听的代码为: ServerSocket ss = new ServerSocket(10000); 第二个步骤是获得连接 Socket socket = ss.accept(); 第三个步骤:服务器端需要首先读取发送过来的数据,然后进行逻辑处理以后再发送给客户端,也就是交换数据的顺序和客户端交换数据的步骤刚好相反 Service(socket).start(); 服务器端通信完成以后,关闭服务器端连接。 ss.close(); 如何复用Socket连接 。 建立连接以后,将数据交换的逻辑写到一个循环中就可以了。这样只要循环(while)不结束则连接就不会被关闭。 如何使服务器端支持多个客户端同时工作 当服务器端接收到一个连接时,启动一个专门的线程处理和该客户端的通讯。 (Service就是一个线程类) * * 为了能够方便的识别网络上的每个设备,网络中的每个设备都会有一个唯一的数字标识,这个就是IP地址。在计算机网络中,现在命名IP地址的规定是IPv4协议,该协议规定每个IP地址由4个0-255之间的数字组成,例如4。每个接入网络的计算机都拥有唯一的IP地址,这个IP地址可能是固定的,例如网络上各种各样的服务器,也可以是动态的
您可能关注的文档
- 检察系统新手入门指南1.doc
- 生活纪要.doc
- 数控机床故障浅谈2.doc
- 晋安区百成家电合同样本.doc
- 邮电费管理办法.doc
- 数控机床维修技术简述1.doc
- 精美英语口语一百句1.doc
- 数控技术课程设计任务书 - 副本1.doc
- 李阳疯狂英语--口语速成1.doc
- 数控直流电流源毕业设计日记1.doc
- 2024年USB电话商务管理系统项目可行性研究报告.docx
- [白城]2024年吉林白城市通榆县事业单位面向下半年应征入伍高校毕业生招聘笔试历年参考题库(频考点试.docx
- [甘肃]2024年甘肃省地质矿产勘查开发局第一地质矿产勘查院招聘52人笔试历年参考题库(频考点试卷).docx
- 2024年端子机刀片刀模项目可行性研究报告.docx
- 2024年情侣相框项目可行性研究报告.docx
- [玉溪]2024下半年云南玉溪市事业单位招聘工作人员189人笔试历年参考题库(频考点试卷)解题思路附.docx
- 2024至2030年双面脚轮项目投资价值分析报告.docx
- [湖南]2024年湖南劳动人事职业学院招聘32人笔试历年参考题库(频考点试卷)解题思路附带答案详解.docx
- [湖南]2024年湖南建筑高级技工学校(湖南建设中等职业学校)招聘17人笔试历年参考题库(频考点试卷.docx
- [烟台]2024年山东烟台市市场监督管理局所属事业单位招聘19人笔试历年参考题库(频考点试卷)解题思.docx
文档评论(0)