网络规划设计师考试知识点:协议/接口和服务
OSI/RM有3个主要概念:服务、接口和协议,而TCP/IP参考模型最初没有明确区分服务、接口和协议。
1.协议
网络协议就是通信双方都必须要遵守的规则。如果没有网络协议,计算机的数据将无法发送到网络上,更无法到达对方计算机,即使能够到达,对方也未必能读懂。有了通信协议,网络通信才能够发生。
协议的实现是很复杂的。因为协议要把人读得懂的数据,如网页、电子邮件等加工转化成可以在网络上传输的信号,需要进行的处理工作非常多。两个系统中实体间的通信是一个十分复杂的过程。为了减少协议设计和调试过程的复杂性,网络协议通常都按结构化的层次方式来进行组织,每一层完成一定功能,每一层又都建立在它的下层之上。不同的网络协议,其层的数量、各层的名字、内容和功能不尽相同。然而在所有的网络协议中,每一层都是通过层间接口向上一层提供一定的服务,而把"这种服务是如何实现的"细节对上层加以屏蔽。
假设网络协议分为若干层,那么A、B两节点通信,实际是节点A的第n层与节点B的第n层进行通信,故协议总是指某一层的协议。准确地说,它是在同等层之间的实体通信时,有关通信规则和约定的集合就是该层协议,例如物理层协议、传输层协议、应用层协议。每一相邻层协议间有一接口,下层通过该接口向上一层提供服务。
从用户来看,通信是在用户A和用户B之间进行的。双方遵守应用层协议,通信为水平方向。但实际上,信息并不是从A站的应用层直接传送至B站的应用层,而是每一层都把数据和控制信息传给它的下一层,直至最低层,第一层之下是物理传输介质,在物理介质上传送的是实际电信号。信息的实际流动过程如图1-1所示。
图1-1 信息流动过程
在图1-1中,假设系统A用户向系统B用户传送数据。系统A用户的数据先进入最高层(第7层),该层给它附加控制信息H7以后,送入其下一层(第6层),该层对数据进行必要的变换并附加控制信息H6再送入其下一层(第5层),再依次向下传送,并将长报文分段、附加控制信息后,送往下一层。在第2层,不仅给数据段加头部控制信息,还加上尾部控制信息,组成帧后再送至第1层,并经物理介质传送至对方系统B.目标系统B接收后,按上述相反过程,如同剥洋葱皮一样,层层去掉控制信息,最后将数据传送给目标用户系统B的进程。从以上讨论可以看出,两系统通信时,除最低层外,其余各对应层间均不存在直接的通信关系,而是一种逻辑的通信关系,或者说是虚拟通信,如图1-1中的虚线表示。图中只有物理层下的通信介质连线为实线,它进行的是实际电信号传送。
从图1-1可知,对收、发双方的同等层,从概念上说,它们的通信是水平方向的,每一方都好像有一个"发送到对方去"和"从另一方接收"的过程。而实际上,这个数据传送过程是垂直方向的,而不是直接在水平方向上与另一方通信。
传输协议中各层都为上一层提供业务功能。为了提供这种业务功能,下一层将上一层中的数据并入到本层的数据域中,然后通过加入报头或报尾来实现该层业务功能,该过程叫做数据封装。用户的数据要经过一次次包装,最后转化成可以在网络上传输的信号,发送到网络上。当到达目标计算机后,再执行相反的拆包过程。这类似于日常生活中写信,把自己要表达的意思写到纸上,有兴趣的话还要把纸折叠成特殊的形状,然后放到信封里并封好口,写好收信人的地址、邮政编码和姓名,再贴上邮票,邮局的工作人员再盖上邮戳送到收信人所在邮局,邮递员按信上的地址把信交给收信人,收信人再拆信,阅读其内容。
一个网络协议主要由以下三个要素组成:
(1)语法:即数据与控制信息的结构或格式,包括数据的组织方式、编码方式、信号电平的表示方式等。
(2)语义:即需要发出何种控制信息,完成何种动作及做出何种应答,以实现数据交换的协调和差错处理。
(3)时序:即事件实现顺序的详细说明,以实现速率匹配和排序。
2.服务
服务是协议外部行为的体现,各层服务是垂直关系,即网络中低层协议向相邻的高层协议提供服务;高层则通过原语(Primitive)或过程(Procedure)调用相邻低层所提供的服务。计算机网络向用户提供两类关于数据传输方式的服务。
(1)面向连接的服务(Connection Oriented Service)。面向连接的服务思想来源于电话传输系统。其过程可以分为三部分,即建立连接,数据传输与断开连接,称为虚电路方式。面向连接的服务又可分为永久性连接服务和非永久性连接服务。
非永久性连接服务在每个应用(或称为数据流)开始之前,都要先进行连接,待连接成功之后再进行数据通信。通信完毕之后断开连接。
永久性连接则只是在第一次进行数据通信之前进行连接。待该连接成功后将一直把该连接的路径存入相应的计算机或网络设备中。除非管理员删除掉永久性连接或网络故障,以后这两台计算机进行通信时就不用再进行连接。
面向连接的服务只有在建立连接时发送的分组中才包含相应的目的地址。待连接建立起来之后,所传送的分组中将不再包含目的地址,而仅包含比目的地址要短小得多的连接标识(Connection Identifier),从而减少了数据分组传输的负载。
面向连接的另一个好处就是一旦连接中断,用户马上就能发现。这使得用户可以很快地采取相应的措施。TCP协议就是面向连接的,ATM(Asynchronous Transfer Mode,异步传输模式)交换机、帧中继网(Frame Relay,FR)等也是面向连接的。
(2)无连接服务(Connectionless Service)。无连接服务的工作方式就像邮电系统。两个通信的计算机之间无需事先建立连接。以无连接服务方式传输每个数据分组中都必须包含目的地址。无连接方式不能防止分组的丢失、重复或失序等错误。
无连接方式的优点是处理开销小,发送信息快,比较适合实时数据的处理和传输。UDP协议就是无连接方式的。IP协议也是无连接的。以太网、令牌环网、光纤分布式数据接口(Fiber Distributed Data Interface,FDDI)网等共享传输介质的局域网都是无连接方式的。交换式以太网包括千兆位以太网都是无连接方式的。
3.服务、接口和协议三者的关系
服务、接口和协议三者的关系如图1-2所示。
图1-2 服务、调用与接口的关系图
接口是两相邻协议层之间所有调用和服务访问点以及服务的集合。相邻高层协议通过不同的服务访问点(Service Access Point,SAP)对低层协议进行调用,就像过程调用中不同的过程调用要使用不同的过程调用名一样。网络层的服务访问点就是网络地址。
4. 数据传送单位
数据传送单位可以分为以下三种:
(1)服务数据单元(Service Data Unit,SDU):为完成用户所要求的功能而应传送的数据。第N层的服务数据单元记为N-SDU.
(2)协议控制信息(Protocol Control Information,PCI):控制协议操作的信息。第N层的协议控制信息记为N-PCI.
(3)协议数据单元(Protocol Data Unit,PDU):协议交换的数据单位。第N层的协议数据单元记为N-PDU.