网络编程的基础知识什么是计算机网络把分布在不同地理区域的计算机与专门的外部设备用通信线路互连成一个规模大的,功能强的网络系统,从而使众多的计算机可以方便地互相传递信息,共享硬件,软件,数据信息等资源。通俗地说,计算机网络就是通过电缆、电话线或无线通信设施等互连的计算机集合。计算机网络的主要功能:资源共享(如:文件服务器进行文件共享)信息传输与集中处理均衡负荷与分布处理综合信息服务(如:新闻的门户网站)网络通信协议人与人之间通过某种语言来交流,网络中的计算机之间也通过“语言”来交流,这种语言称为网络通信协议。计算机网络中实现通信必须有一些约定,即通信协议。对传输速率,传输代码,代码结构,传输控制步骤,出错控制制定标准。网络通信接口为了使两个结点之间能进对话,必须在它们之间建立通信工具(即接口),使彼此之间能进行信息交换。接口包括两部分:硬件装置:实现结点之间的信息传递(如:网卡、调制解调器的接口)软件装置:规定双方进行通信的约定协议(如:网络通信协议)通信协议分层的思想为什么要分层由于结点之间联系很复杂(比如,不同的计算机,不同的应用程序,不同的操作系统,不同的计算机硬件设备),在制定协议时,把复杂成分分解成一些简单的成分,再将它们复合起来。最常用的复合方式是层次方式,即同层间可以通信、上一层可以调用下一层,而与再下一层不发生关系。比如,日常生活中张三和李四进行通信,张三(第一层)写好信封(注明邮政编码、收件人及发件人姓名、地址等信息),委托给邮局(第二层),邮局将信件分类打包,交给运输部门(第三层)将信件运送到收件人所在地的邮局,再由当地邮局(第二层)将信件交给李四(第一层)。邮政系统通信协议的分层规定把用户应用程序作为最高层,把物理通信线路作为最低层,将其间的协议处理分为若干层,规定每层处理的任务,也规定每层的接口标准。通信协议参考模型在计算机网络产生之初,每个计算机厂商都有一套自己的网络体系结构,它们之间互不相容。为此,国际标准化组织(ISO)在1979年建立了一个分委员会,来专门研究一种用于开放系统互连(OpenSystemInterconnection,简称OSI)的体系结构,“开放”这个词意味着一个网络系统只要遵循OSI模型,就可以和位于世界上任何地方的、也遵循OSI模型的其他网络系统连接。这个分委会提出了OSI参考模型,它为各种异构系统互联提供了概念性的框架。OSI参考模型把网络分为7层,分别是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。如下图所示。OSI参考模型的分层结构每一层使用下层提供的服务,并为上层提供服务。不同主机之间的相同层称为对等层。OSI参考模型中各层的主要功能如下。物理层(PhysicalLayer)传输信息离不开物理介质,如双绞线和同轴电缆等,但物理介质并不在OSI的7层之内,有人把物理介质当做OSI的第0层。物理层的任务就是为它的上一层提供物理连接,以及规定通信节点之间的机械和电气等特性,如规定电缆和接头的类型,传送信号的电压等。在这一层,数据作为原始的比特(bit)流传输。本层的典型设备是Hub(集线器)。数据链路层(DataLinkLayer)数据链路层负责在两个相邻节点间的线路上,无差错地传送以帧为单位的数据。每一帧包括一定数量的数据和一些必要的控制信息。数据链路层要负责建立、维持和释放数据链路的连接。在传送数据时,如果接收方检测到所传数据中有差错,就要通知发送方重发这一帧。本层的典型设备是Switch(交换机)。workLayer)在计算机网络中进行通信的两个计算机之间可能会经过很多个数据链路,也可能还要经过很多通信子网。网络层的任务就是选择合适的网间路由和交换节点,确保数据及时传送到目标主机。网络层将数据链路层提供的帧组成数据包,包中封装有网络层包头,包头中含有逻辑地址信息——源主机和目标主机的网络地址。本层的典型是Router(路由器)。主机A主机B数据包节点1节点3节点2节点4网络从主机A到主机B的路由及数据链路如上图所示,主机A发送的数据先后经过节点1和节点4,最后到达主机B。相邻两个节点之间的线路称为数据链路,如主机A与节点1、节点1与节点4、以及节点4与主机B之间的线路都是数据链路。数据链路层负责数据链路上的数据传输。从主机A到主机B的整个路径称为路由,网络层负责选择合适的路由。传输层(TransportLayer)该层的任务是根据通信子网的特性最佳地利用网络资源,为两个端系统(也就是源主机和目标主机)的会话提供建立、维护和取消传输连接的功能,以可靠方式或不可靠方式传输数据。所谓可靠方式,是指保证把源主机发送的数据正确地送达目标主机;所谓不可靠方式,是指不保证把源主机发送的数据正确地送达目标主机,数据有可能丢失或出错。在这一层,信息的传送单位是报文。会话层(
JAVA网络编程 来自淘豆网www.taodocs.com转载请标明出处.