《计算机网络技术基础教程》课件-第3章_第1页
《计算机网络技术基础教程》课件-第3章_第2页
《计算机网络技术基础教程》课件-第3章_第3页
《计算机网络技术基础教程》课件-第3章_第4页
《计算机网络技术基础教程》课件-第3章_第5页
已阅读5页,还剩65页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第3章计算机网络体系结构与协议3.1网络体系结构的几个概念3.2OSI参考模型3.3TCP/IP参考模型3.1网络体系结构的几个概念

3.1.1协议的概念

计算机网络最基本的功能就是资源共享和信息交换。为了实现这些功能,网络中各实体之间经常要进行各种通信和对话。这些通信实体的情况千差万别,如果没有统一的约定,就好比一个城市的交通系统没有任何交通规则,大家为所欲为,各行其是,其结果肯定是乱作一团。人们常把国际互联网络叫做信息高速公路,要想在上面实现共享资源和交换信息,必须遵循一些事先制定好的规则标准,这些规则标准就是协议。计算机网络中,协议的定义是计算机网络中实体之间有关通信规则约定的集合。协议主要由以下三个要素组成:

(1)语法(Syntax):数据与控制信息的格式、数据编码等。

(2)语义(Semantics):控制信息的内容,需要做出的动作及响应。

(3)时序(Timing):事件先后顺序和速度匹配。

这三个要素看起来十分抽象,但通过一个简单的例子,就很容易对它们有一个清晰的认识。下面以两个人打电话为例来说明协议的概念。甲要打电话给北京的乙。首先,甲拨通乙的电话号码,对方电话振铃;乙拿起电话,甲乙开始通话;通话完毕后,双方挂断电话。在这个过程中,甲乙双方都遵守了打电话的协议。

(1)甲在拨打乙的八位电话号码前要加区号“010”,这就是“语法”。

(2)甲拨通乙的电话后,乙的电话会振铃,振铃是一个信号,表示有电话打进,乙选择接电话。这一系列的动作包括了控制信号、响应动作等,这就是“语义”的例子。

(3)因为甲拨了乙的电话,乙的电话才会响;乙听到电话响铃后才会考虑要不要接。这一系列事件的因果关系十分明确,不可能没有人拨乙的电话而乙的电话会响,也不可能在电话铃没响的情况下,乙拿起电话却从话筒里传出甲的声音。这就是“时序”的概念。设计协议不是功能越强大越好、越全面越好,重要的是要兼顾协议的效率和灵活性,要考虑具体实现的难易程度。另外,好的协议还必须具有开放性,只有开放才能被大家广泛接受,才具备了成为标准协议的可能性。随着计算机网络技术的迅猛发展和广泛应用,世界上不断有新的协议被制定出来。一些国际标准化组织专门负责这些工作,组织专家提出建议和草案,经过反复地修改、论证,最后形成协议。生产厂家按照协议、标准开发出通用、开放的产品。要对协议有更深一步的理解,就要了解通信实体的概念。实体是能够发送和接收信息的任何东西,它并不是指一台计算机、一部电话或一台交换机,这里所说的实体往往是进程、用户程序、网管系统、电子邮件设备等。我们常常把计算机、交换机等设备叫做网络结点,一个网络结点包含了多个网络实体。网络协议指的是通信实体之间的各种约定的集合,而实体之间也不是都可以直接通信的,这里也要讲究“门当户对”。在打电话的实例中,甲和乙可以直接对话,但甲的电话机就不会自己和乙直接讲话。那么,什么样的实体之间可以互相通信?同一结点内的实体又是如何联系的呢?通过下面要讨论的协议分层的概念,我们会对这个问题有更进一步的了解。3.1.2协议分层

为了降低设计的复杂性和便于维护,一般的网络设计都采用了层次结构。下面以收发信件的例子来说明协议分层,即通信层次结构的概念。

如图3-1所示,甲写了一封信给乙。甲首先把写好的信放入信封,在信封上注明收信人乙的邮政编码、收信地址和姓名,付足邮资后将信交给甲地邮局(用户与邮局间约定);甲地邮局将信分拣后,交给甲地运输部门(邮局与运输部门的约定);运输部门利用各种运输工具将信送到乙地运输部门(运输部门间约定);乙地运输部门将信送到乙邮局后,乙地邮局按照地址交给收件人乙,乙拆开信封读信的内容。图3-1协议层次实例在这个例子里,通信系统采用了层次化的结构,发/收信人、邮局、运输部门是一个个通信实体,分为用户、邮局服务业务、邮局转送业务和运输部门四个层次,每个层次都是在上一个层次的基础上提供服务,如邮局为用户提供服务,运输部门为邮局提供服务,而用户就是最高层。采用层次化结构有许多优点:

(1)各层之间相互独立,高层不必关心低层的实现细节,可以真正做到各司其职。

(2)利于实现和维护,某个层次实现细节的变化不会对其他层次产生影响。

(3)易于标准化。虽然层次结构有其优点,但是如果划分得不合理,反而会带来许多负面影响。划分层次通常要遵循以下原则:

(1)层次的数量不能过多。真正需要的时候才划分一个层次,图3-1所示的例子中,如果甲或乙是在一个大城市,邮局可能划分两个或以上层级,那样会造成邮局的机构臃肿。

(2)层次的数量也不能过少。层次的数量应该保证能够从逻辑上将功能分开,截然不同的功能最好不要合在同一层。

(3)类似的功能放在同一层。

(4)在实现技术经常变化的地方增加层次。比如,随着办公自动化技术的发展和办公业务的增加,某公司经理可能需要增加掌握新技术的秘书岗位。

(5)层次边界要选得合理,使层次之间用于控制、交流的额外信息流量小。3.1.3与网络协议相关的其他概念图3-2层次、协议、接口与服务等概念

1.系统和实体(SystemandEntities)

系统是网络中有自治能力的计算机或交换设备,从拓扑学的角度,我们往往也把它叫做网络结点或简称结点。实体是指每个层次中能够发送和接收信息的任何东西,包括软件实体(如进程)和硬件实体(如智能I/O芯片)。位于不同系统的同一层次的实体叫做对等实体。协议就是计算机网络中对等实体之间有关通信规则约定的集合。

2.协议栈(ProtocolStack)

协议是关于同一层次的对等实体之间的概念,而协议栈是指特定系统中所有层次的协议的列表。

3.网络体系结构(NetworkArchitecture)

网络体系结构是指层次结构与协议的集合。前面我们已经介绍了协议和层次的概念,网络体系结构就是把它们组织在一起的有机的整体。由于有了网络体系结构的规范,网络开发人员就可以根据协议设计每一层的软件程序或硬件设备。需要指出的是,网络体系结构并不包括实现细节和接口规范,这些都是各个计算机系统设计者需要解决的问题。

4.接口和服务(InterfaceandService)

接口是相邻两层之间的边界,底层通过接口为上层提供服务。换句话说,上层通过接口使用底层提供的服务,上层叫做服务的使用者,底层叫做服务的提供者。服务的使用者和提供者通过服务访问点直接联系。

5.服务访问点(SAP)

所谓服务访问点,是指相邻两层实体之间通过接口调用服务或提供服务的联系点,也就是接口上相邻两层实体交换信息之处。

6.面向连接的服务和无连接的服务

服务分为面向连接的服务和无连接的服务。

(1)面向连接的服务就像打电话,有一个明显的拨通电话、讲话、再挂断电话的过程。面向连接服务的提供者也要做建立连接、维护连接和拆除连接的工作,这种服务的最大好处就是可靠性高,而且保证数据顺序传输。

(2)无连接的服务就像发电报,电报发出后你并不能马上确认对方已经收到。无连接的服务不需要维持连接的额外开销,但是可靠性较低,也不保证数据的传输顺序。

7.服务原语

服务通常是由一系列的服务原语来描述的。所谓原语就是不可再细分的意思。在接口的服务访问点上,服务使用者看到的只是几个简单的原语,关于原语是如何实现的,完全是服务提供者自己层次内部的事情,在接口上完全不必考虑。常用的原语有:

(1)请求(Request):表示某实体希望开始调用服务做事。

(2)指示(Indication):表示某实体被通知有事件发生。

(3)响应(Response):表示某实体对事件做出响应。

(4)确认(Confirm):表示对发回响应的确认。对于甲给乙打电话来说,甲和乙位于高层,是服务的使用者;电话机位于低层,是服务的提供者。结合上述服务原语的概念,甲在自己的电话机上拨乙的电话号码,是发出“请求”;乙的电话机响铃,“指示”给乙有电话打进来;乙拿起电话,作为“响应”;甲的电话由振铃音变为通话音,甲就收到了可以通话的“确认”。

8.服务和协议的关系

服务是由一系列服务原语组成的,它位于层次接口的位置,表示底层为上层提供哪些操作功能,至于这些功能是如何实现的,完全不是服务考虑的范畴;协议是同一层次对等实体之间的有关协议数据单元的格式、意义以及控制规则的集合,实体使用协议的最终目的是为了实现它所要提供的服务,每一层可以根据需要选择和改变本层所使用的协议,而不影响高层的软件实现。

9.协议数据单元(PDU)

协议数据单元是对等实体之间通过协议传送的数据单元。

10.接口数据单元(IDU)

接口数据单元是相邻层次之间通过接口传递的数据单元。

11.服务数据单元(SDU)

服务数据单元是层与层之间交换的数据单元。

12.协议控制信息(PCI)

协议控制信息是对等实体之间交换信息时的控制信息。

13.接口控制信息(ICI)

接口控制信息是相邻两层实体之间交换信息时的控制信息。

3.2OSI参考模型

3.2.1OSI参考模型概述

国际标准化组织(ISO)成立于1946年。在20世纪80年代初提出了网络体系结构的标准,定义了网络互连的基本参考模型,即开放系统互连(OpenSystemsInterconnection)参考模型,简称OSI参考模型。当时计算机网络出现了多种网络体系结构,这些体系结构的着眼点往往是各公司内部的网络连接,没有统一的标准,各网络之间很难互连起来。例如,SNA就是IBM公司开发的专有协议,其特色就是它的封闭性,在IBM公司的主机环境中得到广泛的应用。如果要在其他主机系统中应用SNA,需在网络的每一个结点增加支持SNA的软件和硬件。在这种情况下,ISO提出了以开放性为主要特点的OSI参考模型。不同厂家的网络产品只要遵照这个参考模型,就可以实现互连、互操作和可移植性,也就是说,任何遵循OSI标准的系统,只要物理上连接起来,它们之间都可以互相通信。

OSI参考模型定义了开放系统的层次结构和各层所提供的服务,它清晰地分开了服务、接口和协议这三个容易混淆的概念:服务描述了每一层的功能,接口定义了某层提供的服务如何被高层访问,而协议是每一层功能的实现方法。通过区分这些抽象的概念,OSI参考模型将功能定义与实现细节分开,概括性高,使它具有了普遍的适应能力。

按照定义,网络体系结构是网络层次结构和相关协议的集合。OSI参考模型本身并不是网络体系结构,它并没有精确定义各层的协议,没有讨论编程语言、操作系统、应用程序和用户界面,只是描述了每一层的功能,但这并不妨碍ISO组织制定各层的标准,只不过这些标准不属于OSI参考模型本身。3.2.2OSI参考模型结构

OSI参考模型是具有七个层次的框架,自底向上的七个层次分别是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层,具有以下几个特点:

(1)每个层次的对应实体之间都通过各自的协议通信。

(2)各个计算机系统都有相同的层次结构。

(3)不同系统的相应层次有相同的功能。

(4)同一系统的各层次之间通过接口联系。

(5)相邻的两层之间,下层为上层提供服务,同时上层使用下层提供的服务。图3-3所示是OSI参考模型的结构示意图,图中的点划线框部分是通信子网,它和网络硬件的关系密切;而从传输层开始向上,不再涉及通信子网的细节,只考虑最终通信者之间端到端的通信问题。图3-3OSI参考模型示意图

1.物理层(PhysicalLayer)

物理层的主要功能是实现通信结点之间的物理连接,在物理传输介质上传输非结构化的“0”和“1”二进制比特流。物理层并不是指物理传输介质,它是介于数据链路层和物理传输介质之间的一层,是OSI参考模型的最底层,起着数据链路层到物理传输介质之间的逻辑接口的作用。

物理层向数据链路层提供的服务包括物理连接服务、物理服务数据单元服务和顺序化服务等。

(1)物理连接服务:指向数据链路层提供物理连接,数据链路层通过接口将数据传送给物理层,物理层就通过传输介质一位一位地送到对等的数据链路层实体,至于数据是如何传送的,数据链路层并不关心。

(2)物理服务数据单元服务:是指在物理介质上传输非结构化的比特流。所谓非结构化的比特流,指顺序地传输“0”、“1”信号,而不必考虑这些“0”、“1”信号表示什么意义。

(3)顺序化服务:是指“0”、“1”信号一定要按照原顺序传送给对方。物理层协议的设计问题主要是建立、维护和释放物理链路所需的机械、电气或光学的功能特性和规程特性。OSI参考模型中并未定义实际的物理层协议,具体的物理层协议有EIA组织制定的RS-232C协议和CCITT制定的X.21协议等。

(1)机械特性。规定网络物理连接器的规格尺寸、插针或插孔的数量和排列情况、相应通信介质的参数和特性等。例如,在RS-232C中规定了使用最广泛的串行物理接口采用的连接器接口有25根针和9根针,接口形状为D形接口,如图3-4所示。图3-4RS-232C规定的9针连接器

(2)电气特性。规定了在链路上传输二进制比特流有关的电路特性,包括信号电压的高低、阻抗匹配、传输速率和距离限制等。通常包括发送器和接收器的电气特性以及与互连电缆相关的有关规则等。例如,RS-232C规定,对数据信号,以+12V或+8V表示“0”,-12V或-8V表示“1”;对控制信号,“0”表示“开”,“1”表示“断”。

(3)功能特性。规定各信号线的功能或作用。信号线按功能可分为数据线、控制线、定时线和接地线等。

(4)规程特性。定义数据终端设备和数据通信设备通过接口连接时,各信号线进行二进制位流传输的一组操作规程,即动作序列,如怎样建立、维持和拆除物理连接,以及是全双工还是半双工操作等。

2.数据链路层(DataLinkLayer)

数据链路层的主要功能是在物理层提供的比特服务基础上,在相邻结点之间提供简单的通信链路,传输以“帧”为单位的数据,同时它还负责数据链路的流量控制、差错控制。

数据链路层为网络层提供简单的通信链路,通信实体所在的系统必须经过物理介质直接相连,该链路不具备任何路径选择和转发功能,它的差错控制和流量控制能力也比较简单。数据链路层的简单通信链路是建立在物理层的比特流传输服务基础上的,物理层提供的比特流服务由于机械、电气等原因,难免有各种各样的错误,如将“0”、“1”颠倒,丢失一个“0”或“1”,或者因为信号干扰而多出一位数字等。

数据链路层要将不可靠的物理传输信道处理为可靠的信道。因此,本层要提供一定的差错检验和纠正机制,而这些功能都是以成帧为前提的。所谓“成帧”,是指在发送方将若干比特的数据组成一组,加上“开始”、“结束”标志和检错代码等,形成有固定格式的数据帧。接收者收到该数据帧后,根据检错代码就可以判断收到的数据帧是否有错误,并在可能的情况下纠正错误。如果错误不能纠正,则只好选择重传该数据帧。需要指出的是,数据帧仅仅对数据链路层的通信实体有意义,只有该层的实体才知道哪些是帧的控制信息,哪些是高层的有效数据。数据帧最终要通过物理层,再经过传输介质才能发送和接收。对物理层来说,它看到的只有“0”信号和“1”信号,而没有任何特殊的意义。

流量控制也是数据链路层的重要功能。流量控制本来是用于水利上的,当河流的上游地区在一段时间内降水量过大,下游地区可能因为无法承受过大流量而发生洪水。如果修建一两座大的水库,对水量进行调节,就可以避免洪水的发生。类似地,计算机网络的流量控制就是限制发送者的发送速度,或者对发送者的发送数据进行缓存,当接收者有能力的时候再予以接收。最初的网络速度很慢,根据调制解调器(MODEM)的不同,速度从几kb/s至几十kb/s不等。随着网络技术的发展,出现了几Mb/s的局域网,速度相对原来提高了两到三个数量级,这为多人共享通信介质提供了条件,于是OSI的数据链路层又专门分出了一个介质访问控制子层(MAC),用于解决共享介质的局域网中多个网络设备争用同一传输介质的问题。现在,局域网的速度越来越快,随着百兆、千兆局域网的出现,数据链路层的介质访问控制成了关键的技术问题。

3.网络层(NetworkLayer)

1)路由选择

路由选择就好像一个超级警察在控制某座城市的汽车交通,他首先要决定的是这些汽车应如何选择行车路线,才能快速、便捷地到达各自的目的地。这些车辆又分为两大类:一类是公交车辆,它们的行车路线是事先设计好的,所有的公交车都严格按照自己的路线行驶;另一类是除了公交车以外的各种车辆,它们的特点是为了到达目的地,可以实时选择各种好走的路线。网络层控制子网运行的关键任务也是选择路径,它管理的不是车辆,而是网络信息包。信息包的路径选择又叫路由选择,有各种各样的路由选择算法,但总体上分为静态路由和动态路由两大类。

(1)静态路由是指由网络管理员手工配置的路由信息。当网络的拓扑结构或链路的状态发生变化时,网络管理员需要手工去修改路由表中相关的静态路由信息。静态路由信息在缺省情况下是私有的,不会传递给其他的路由器。但是,网络管理员可以通过对路由器进行设置使之成为共享的。静态路由一般适用于比较简单的网络环境,在这样的环境中,网络管理员易于清楚地了解网络的拓扑结构,便于设置正确的路由信息。静态路由一般是由网络管理员手工设置的路由,而动态路由则是路由器中的动态路由协议。

(2)动态路由是指路由器能够根据网络拓扑情况和特定的要求自动地建立自己的路由表,并且能够根据实际情况的变化适时地进行调整。动态路由机制的运作依赖路由器的两个基本功能:①对路由表的维护;②路由器之间适时的路由信息交换。

2)拥塞控制

网络层通过某种拥塞控制机制,尽量避免拥塞的发生,以及尽快缓解已经发生的拥塞情况。拥塞控制不同于前面提到的流量控制,流量控制主要是针对发送方和接收方两者之间的“快发慢收”问题,而拥塞控制主要是针对通信子网中某段通路因种种原因造成堵塞的情况。

3)网络互连

当数据包从一个网络传输到另一个网络时,会面临各种各样的问题需要网络层解决。例如,不同的网络间接收的数据包大小可能不同,网络速度可能不同,甚至可能采用不同的协议等等。这就好像中国开往俄罗斯的国际列车,在通过边境时,因为两国铁轨宽度不同,所有旅客都要下车更换列车。

4)记账

网络层的记账功能实现对用户访问网络的流量统计,以及对访问的站点的控制等。

4.传输层(TransportLayer)

传输层的任务是向用户提供可靠的、透明的端到端的数据传输,以及差错控制和流量控制机制。由于它的存在,网络硬件技术的任何变化对高层都是不可见的,也就是说会话层、表示层、应用层的设计不必考虑底层硬件细节,因此传输层的作用十分重要。所谓端到端是相对链接而言的。OSI参考模型的四层到七层属于端到端的方式,而一到三层属于链接的方式。在传输层,通信双方的两机器之间有一对应用程序或进程直接对话,它们并不关心底层的实现细节,就像两个人在打电话,他们只要拨电话号码和说话就可以了,根本不用关心电话局是如何运作的。底层的链接方式就不一样,它要负责处理通信链路中的任何相邻机器之间的通信。电话系统也是这样,底层协议要负责从用户电话到端局、从端局到各交换局、再从交换局到端局乃至到对方用户的电话机的通信,这就是链接方式。网络层通过网络层与传输层的接口向传输层提供服务,同样传输层也通过与高层的接口向高层提供服务。传输层提供服务的类型是在连接建立时确定的,最重要的服务是端到端的、可靠的、面向连接的字节流服务,在这种方式下,信息单元的传递是严格按照发送顺序执行的。传输层的协议必须能够在不可靠的通信子网上进行连接管理,包括三次握手式的连接建立、维护连接以及释放连接。在比较可靠的通信子网上,传输层的协议也有处理服务原语、维护连接等。

传输层的功能也是在网络层提供服务的基础上建立的。一般情况下,传输层为每一条传输连接生成一条网络连接,但需要高吞吐率的传输连接可以同时占用多条网络连接。为了节省网络带宽以及降低费用,也可以有多条传输连接复用同一条网络连接。

5.会话层(SessionLayer)

会话层的主要功能是在不同的机器之间提供会话进程的通信,如建立、管理和拆除会话进程。会话进程的通信可以像传输层一样支持普通的数据传输,另外它还提供了以下许多增值服务:

(1)交互式对话管理,允许一路交互、两路交换和两路同时会话,类似于数据通信里的单工、半双工和全双工方式。

(2)管理用户登录远程分时系统。

(3)在两机器之间传输文件,进行同步控制。

6.表示层(PresentationLayer)

表示层是处理通信进程之间交换数据的表示方法,包括语法转换、语法协商、连接管理等。

1)语法转换

将抽象语法转换成传输语法,并在对方实现相反的转换。涉及的内容有代码转换、字符转换、数据格式的修改,以及对数据结构操作的适应、数据压缩、加密等。

2)语法协商

根据应用层的要求协商选用合适的上下文,即确定传输语法并传送。

3)连接管理

利用会话层服务建立表示连接,管理在这个连接之上的数据传输和同步控制,以及正常或异常地终止这个连接。

7.应用层(ApplicationLayer)

应用层负责管理应用程序之间的通信,为用户提供最直接的服务,包括虚拟终端、文件传输、事务处理、网络管理等大量的网络协议。

应用层是OSI参考模型的最高层,底层所有协议的最终目的都是为应用层提供可靠的传输手段,底层协议并没有直接满足用户的任何实际需求。我们日常使用的电子邮件程序、文件传输、WWW浏览器、多媒体传输等都属于应用层的范畴。3.2.3OSI参考模型中的数据传输

图3-5OSI参考模型中的数据传输图3-5中最左边一列是各个层次对等实体之间交换的数据单元的名称。数据单元是指各层传输数据的最小单位,协议数据单元(PDU)就是对等实体之间通过协议传送的数据。应用层的协议数据单元叫APDU,表示层的协议数据单元叫PPDU,依此类推,直到网络层的协议数据单元NPDU。通常我们称网络层的协议数据单元NPDU为数据分组或数据包,数据链路层的协议数据单元DPDU为数据帧,物理层的协议数据单元PPDU为比特。图3-5中自上而下的实线表示数据的实际传送过程。发送进程需要发送某些数据到达目标系统的接收进程,数据首先要经过本系统的应用层,应用层在用户数据前面加上自己的标识信息(H7),叫做头信息。H7加上用户数据一起传送到表示层,作为表示层的数据部分。表示层并不知道哪些是原始用户数据、哪些是H7,而是把它们当作一个整体对待。同样,表示层也在数据部分前面加上自己的头信息H6,传送到会话层,并作为会话层的数据部分。这个过程一直进行到数据链路层,数据链路层除了增加头信息H2以外,还要增加一个尾T2,然后整个作为数据部分传送到物理层。物理层不再增加头/尾信息,而是直接将二进制数据通过物理介质发送到目的结点的物理层。目的结点的物理层收到该数据后,逐层上传到接收进程,其中数据链路层负责去掉H2和T2,网络层负责去掉H3,一直到应用层去掉H7,把最原始用户数据传递给了接收进程。这个在发送结点自上而下逐层增加头/尾信息,而在目的结点又自下而上逐层去掉头/尾信息的过程叫做封装。协议数据单元主要用于描述同一层次中的对等实体之间的虚连接,如图3-5中的横向带箭头虚线所示。纵向传输的数据用接口数据单元(IDU)表示,接口数据单元指相邻层次之间通过接口传递的数据,它分为接口控制信息和服务数据单元两部分,其中接口控制信息只在接口局部有效,不会随数据一起传递下去;服务数据单元真正提供服务的有效数据,它的内容基本与协议数据单元一致。接口数据单元可用公式表示为接口数据单元=控制信息+服务数据单元接口数据单元的控制信息只在特定的某两层接口有效,服务数据单元从应用层到物理层一直传递下去,而且每层都要加一些自己的内容进去。 3.3TCP/IP参考模型

3.3.1TCP/IP协议概述

TCP/IP协议起源于美国国防部的ARPANet,它用于不同网络设备和计算机之间的互相通信。从1978年起TCP/IP协议就取得了网络领域的主导地位,虽然它不是OSI标准,但被公认为当前的工业标准。

TCP/IP协议(TransmissionControlProtocol/InternetProtocol,传输控制协议/网际协议)是网络中使用的基本的通信协议,是国际互联网Internet的基础。TCP/IP协议具有以下特点:

(1)开放的协议标准,可以免费使用,而且独立于特定的计算机硬件与操作系统。

(2)独立于特定的网络硬件,可以运行在局域网、广域网,更适用于互联网中。

(3)统一的网络地址分配方案,使得整个TCP/IP设备在网中都具有唯一的地址。

(4)标准化的高层协议,可以提供多种可靠的用户服务。3.3.2TCP/IP参考模型结构

TCP/IP模型包含了一族网络协议,其结构如图3-6所示。TCP和IP是其中最重要的两个协议,是我们今天使用的国际互联网的标准协议。

在如何用分层模型来描述TCP/IP的问题上争论很多,但共同的观点是TCP/IP的层次数比OSI参考模型的七层要少,共有四层,分别是网络接口层、互连层、传输层和应用层,如图3-6所示。图3-6TCP/IP参考模型结构示意图

1.网络接口层(Host-to-networkLayer)

网络接口层是TCP/IP工作的基础,它的任务是接收网际层来的数据包,并把这些数据包发送到指定网络。网络接口层是与具体的网络线路进行数据交换的部分,这些网络可以是以太网、公共数据网,以及令牌环网、令牌总线网、光纤分布数据接口等。

TCP/IP参考模型中并没有详细定义网络接口层的功能,只是指出通信主机必须采用某种协议连接到网络上,并且能够传输网络数据分组。实际上根据主机与网络拓扑结构的不同,局域网基本上采用了802系列的协议,如802.3以太网协议、802.5令牌环网协议等。广域网较常采用的协议有帧中继、X.25等。

2.互连层(InternetLayer)

互连层的主要功能是负责在互联网上传输数据分组。互连层与OSI参考模型的网络层相对应,相当于OSI参考模型中网络层的无连接网络服务。

互连层是TCP/IP参考模型中最重要的一层,是通信的枢纽,从底层来的数据包要由它来选择继续传给其他网络结点或是直接交给传输层,对从传输层来的数据包,要负责按照数据分组的格式填充报头,选择发送路径,并交由相应的线路发送出去。

在互连层主要定义了互连协议IP以及数据分组的格式。互连层的主要功能是路由选择和拥塞控制。另外,本层还定义了地址解析协议(ARP)和反向地址解析协议(RARP)以及Internet控制消息协议(ICMP)。

(1)地址解析协议(ARP,AddressResolutionProtocol)的基本功能就是通过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。在以太网中,一个主机要和另一个主机进行直接通信,必须要知道目标主机的MAC地址,MAC地址是通过地址解析协议获得的。地址解析就是主机在发送帧前将目标IP地址转换成目标MAC地址的过程。

(2)反向地址转换协议(RARP,ReverseAddressResolutionProtocol)允许局域网的物理机器从网关服务器的ARP表或者缓存上请求其IP地址。网络管理员在局域网网关路由器里创建一个表以映射MAC地址和与其对应的IP地址。当设置一台新的机器时,其RARP客户机程序需要向路由器上的RARP服务器请求相应的IP地址。假设在路由表中已经设置了一个记录,RARP服务器将会返回IP地址给机器,此机器就会存储起来以便日后使用。

(3) Internet控制消息协议(ICMP,InternetControlMessageProtocol)是TCP/IP协议族的一个子协议,用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。虽然这些控制消息并不传输用户数据,但是对于用户数据的传递起着重要的作用。

3.传输层(TransportLayer)

传输层的主要功能是负责端到端的对等实体之间进行通信。它与OSI参考模型的传输层功能类似,也对高层屏蔽了底层网络的实现细节,同时它真正实现了源主机到目的主机的端到端的通信。

TCP/IP参考模型的传输层完全是建立在包交换通信子网基础之上的,它定义了以下两个协议:

(1)传输控制协议(TCP,TransmissionControlProtocol)是一种面向连接的、可靠的、基于字节流的传输层通信协议,通常由IETF的RFC793(请求注解)说明。该协议主要用于在主机间建立一个虚拟连接,以实现高可靠性的数据包交换。

(2)用户数据报协议(UDP,UserDatagramProtocol)是一种不可靠的、无连接的传输协议,提供面向事务的简单不可靠信息传送服务,是IP协议与上层协议的接口。

UDP并不提供对IP协议的可靠机制、流控制以及错误恢复等功能,所以协议简单,额外开销小,效率较高。UDP用于对数据精确度要求不是太高而对速度、效率要求很高的环境,如声音、视频的传输等。

4.应用层(ApplicationLayer)

应用层是TCP/IP协议族的最高层,它包含了所有OSI参考模型中会话层、表示层和应用层的功能。

到目前为止,互联网上的应用层协议有下面几种:

(1)电子邮件协议(SMTP):负责互联网中电子邮件的传递。

(2)超文本传输协议(HTTP):提供WWW服务。

(3)网络终端协议(TELNET):实现远程登录功能,我们常用的电子公告牌系统(BBS)使用的就是这个协议。

(4)文件传输协议(FTP):用于交

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论