文档详情

java基础之网络编程.docx

发布:2018-01-31约1.06万字共18页下载文档
文本预览下载声明
(一)网络编程和网站编程区分开网站编程是建立在网络编程之上,对网页和动态网页的编写。网络编程更底层一些,server服务器端和客户端都需要自己编写,网络的协议需要自己来确定。其中:qq,微信,魔兽这是网络编程。(二)网络基础概念1、计算机网络把分布在不同地理区域的计算机和专门的外部设备用通信线路互连成一个网络系统,使众多计算机可以方便的相互专递信息,共享资源。2、网络通信协议计算机网络中实现通信必须有一些约定即通信协议,对速率,传输代码,出错控制等制定标准。3、网络通信接口为了使两个结点之间能进行对话,必须在它们之间建立通信工具(即接口),使彼此之间能进行信息交换。接口包括两部分:硬件装置:实现结点之间的信息传送 ? ? ? ? 软件装置:规定双方进行通信的约定协议(三)通信协议分层的思想1、为什么要分层底层的通信比较复杂,需要进行抽离,采用分层的模式,更加利于开发和扩展。由于结点之间联系很复杂,在制定协议时,把复杂成份分解成一些简单的成份,再将他们复合起来。最常用的复合方式是层次方式,即同层间可以通信、上一层可以调用下一层,而与再一层不发生关系。各层互不影响,利于系统的开发和扩展。2、通信协议的分层规定把用户应用程序作为最高层,把物理通信线路作为最底层,将其间的协议处理分为若干层,规定每层处理的任务,也规定每层的接口标准。(四)两个重要的参考模型OSI(open ?system interconnection?):开放系统互联TCP/IP参考模型?应用层 ? ------------ ? ? Telnet(Internet远程登录服务的标准协议和主要方式)、FTP(文本传输协议)、HTTP(超文本传送协议)?传输层 ? ------------ ? ? TCP(传输控制协议)、UDP(用户数据报协议)?网络层 ? ------------ ? ? IP(网络之间的互联协议)数据的传输过程:应用层将数据编码包装,发给传输层,同样在发给网络层,网络层再发费数据链路层,最后包装发给物理层进行传输,传输到目标地址,将数据一层一层解码。(五)IP协议(推荐书:TCP/IP协议)IP协议是网络层的主要协议,支持网间互连的数据包通信,是一个32位的地址,地址有两部分组成,一部分为网络地址,另一部分为主机地址。作用:为每台机器提供了独一无二的IP地址。IP提供不可靠的,无连接的数据传送服务。不可靠指它不能保证IP数据报能成功到达目的地。没有找到目标地址,数据报将会丢失。注意:IP地址是用4个字节表示的,每个字节最大的数就到255即(2的8次方-1)弄明白:网关和子网掩码1、子网掩码子网掩码也是一个32位地址,只有一个作用:就是将某个IP地址划分为网络位和主机位两部分。主机位就是多少台设备。转换成二进制位数,二者相加等于32.一般我们知道需要N个主机,把N换算成二进制,看其所占位数,用32减去该位数,结果就是网络位。转换成十进制就是子网掩码。注意:子网的划分是通过改变子网掩码的位数来实现的。例子:100大于2的6次方,小于2的7次方,所以主机位数取7位。那么网络位数就是32-7=25位。25位的子网掩1111111110000000 换算成10进制的就是255. 255. 255. 128,这就是第一个子网的子网掩码,网络号为/25,网络地址,主机地址~26,广播地址27ip地址是否在同一网段,IP地址和子网掩码做与运算,如果结果相同就是在同一网段,同一网段就可以自由通信。网关就相当于小区看门的大爷,同一网段就是指小区内的住户大家都认识,可以自由交流,但是小区内的要和小区外的人交流就只能通过大爷来传话。2、网关网关(Gateway)就是一个网络连接到另一个网络的“关口”。本质就是:一个网络通向其他网络的IP地址。不同体系结构或者协议的网络之间在进行通信时,网关对收到的信息要重新打包,以适应目的系统的需求。网关:就是外网和内网的一个关口,控制着外网和内网的信息交互。(六)TCP协议和UDP协议(重点)通过IP为每台机器建立地址,将每台机器连接成网络,就可以建立连接进行信息传输。TCP(transmission ? control ?protocol):是一种面向连接的协议,提供可靠的字节流通信的协议。注意:数据不能丢失,每个数据必须发送到,第一个数据没有发送到,第二个数据不会发送,必须等到第一个数据发送完成。安全可靠但是速度比较慢。UDP(user ?data protocol):向相应程序提供了一种发送封装的原始IP数据报 的方法,发送时不需要建立连接,是一种不可靠的连接。注意:数据可以丢失,速度快。例如:英雄联盟在游戏中就是采用的UDP传输协议,游戏中出现卡顿现象就是数据包丢失导致的,保证
显示全部
相似文档