1.协议:要在网络中做到有条不紊地交换数据,就必须遵循一些事先约定好的规则,其规定了所交换 数据的格式及有关的同步问题。为了在网络中进行数据交换而建立的这些规则、标准或约定称为 网络协议 (Network Protocol), 是控制在对等实体之间进行通信的规则的集合,是水平的。不对等实体之间是没有协议的,如用TCP/IP 协议栈通信的两个结点A和结点B, 结点A的传输层和结点B的传输层之间存在协议,但结点A的传输层和结点 B 的网络层之间不存在协议。
协议由语法、语义和同步三部分组成。
1 ) 语法。数据与控制信息的格式。例如,TCP报文段格式就是由TCP协议的语法定义的。
2 ) 语义。即需要发出何种控制信息、完成何种动作及做出何种应答。例如,在建立 TCP 连 接的三次握手时所执行的操作就是由TCP 协议的语义定义的。
3 ) 同步 (时序)。执行各种操作的条件、时序关系等,即事件实现顺序的详细说明。例如, 建立 TCP 连接的三次握手操作的时序关系就是由TCP协议的同步定义的。
2.接口:同一结点内相邻两层的实体交换信息的逻辑接口称为服务访问点(Service Access Point,SAP) 。 每层只能为紧邻的层之间定义接口,而不能跨层定义接口。服务是通过 SAP 提供给上层 使用的,第n 层 的SAP 就 是 第n+1 层可以访问第n 层服务的地方。例如,在本书描述的5层体 系结构中,数据链路层的服务访问点为帧的“类型”字段,网络层的服务访问点为IP 数据报的“协 议”字段,传输层的服务访问点为“端口号”字段。
3.服 务:服务是指下层为紧邻的上层提供的功能调用,是垂直的。对等实体在协议的控制下,使得本 层能为上层提供服务,但要实现本层协议,还需要使用下层提供的服务。当上层使用下层提供的服务时,必须与下层交换 一 些命令,这些命令称为服务原语。
OSI 参考模型将原语划分为四类:
1 ) 请 求 (Reque st) 。 由服务用户发往服务提供者,请求完成某项工作。
2 ) 指 示 (Indication) 。 由服务提供者发往服务用户,指示用户做某件事情。
3 ) 响 应 (Re sponse) 。 由服务用户发往服务提供者,作为对指示的响应。
4 ) 证 实 ( Confirmation) 。 由服务提供者发往服务用户,作为对请求的证实。
这四类原语用于不同的功能,如建立连接、传输数据和断开连接等。有应答服务包括全部四 类原语,而无应答服务则只有请求和指示两类原语。
注意,协议和服务概念上是不 一 样的。首先,只有本层协议的实现才能保证向上 一 层提供服 务。本层的服务用户只能看见服务而无法看见下面的协议,即下面的协议对上层的服务用户是透 明 的 。 其 次 ,协 议 是 “ 水 平 的 ”, 即 协 议 是 控 制 对 等 实 体 之 间 通 信 的 规 则 。 但 是 ,服务是“垂真 的 ”, 即服务是由下层通过层间接口向上层提供的。另外,并非在 一 层内完成的全部功能都称为 服 务,只有那些能够被高 一 层实体“看得见”的功能才称为服务 。