2.2 协议设计的基本内容
2.2.1 协议的通信环境
n层中任何两个协议实体通过(n-1)SAP所形成的数据逻辑通路称为(n-1)层通道(见图2-1)。用户要求、(n-1)层通道的性质及n层协议运行时的操作系统和硬件环境构成了n层协议的通信环境。通信环境是协议设计要优先考虑的问题。只有充分了解和定义了协议运行的通信环境才能准确地设计出协议的其他元素来。也只有这样,设计出来的协议才能在功能上和性能上满足用户的需求。
根据通道容纳报文的数量,可以将通道分成3类:空通道(empty channels),非缓冲通道(non-buffered channels)和缓冲通道(buffered channels)。空通道是指报文的发送时间和延时时间为零的通道,即在任何时刻通道中不容纳报文,报文一旦从输入端进入就立即在输出端出现。非缓冲通道是指:在任何时刻,最多只有一个正在传送的报文通道。缓冲通道是指允许有多个报文停留的通道。
(n-1)层通道的以下性质对n层协议的构成有非常重要的影响。
(1)通道的形成方式
n层对等协议实体A和B间的通道主要有以下几种形成方式:
● A和B建立并独占一条连接,此时(n-1)层应提供有连接服务。
● A和B与其他协议实体一起共享一条连接。
● A和B利用(n-1)层提供的无连接服务进行通信。
● 如果(n-1)层为物理层,A和B可独占一条物理信道,或共享一条物理信道。
(2)通道的队列性质
除物理层外,一般可将(n-1)层通道看做队列通道,即一个数据报文从 n层源端协议实体发出之后要在n层以下各层多次存储转发,在每个存储转发处就存在一个队列。平均队列长度及最大队列允许长度是队列的主要性质。队列越长,那么数据报文在通道中的延时就越大;如果队列长度达到最大允许长度,那么后续的数据报文将丢失。通道的队列性质对n层协议的功能和性质有着重要的影响。对于物理信道而言,其通道有时不具有队列性质,此时报文在通道中的时延是固定的,不会丢失且有序。
(3)回程时延(RTT,Round Trip Time)
RTT是指报文从 n 层源端实体发出到该报文的应答信息达到该实体的时间,它包括目标实体收到报文之后,对报文进行处理然后发出认可信息的时间。RTT是协议的最重要参数之一。
(4)通道的差错特性
通道的差错特性主要包括:报文出错率、报文丢失率、报文重复率、报文失序率。通道的差错特性与它的形成方式有关。如果通道是利用(n-1)层有连接服务形成的,或者是利用物理信道,那么传递的报文不会失序。而如果通道是利用(n-1)层的无连接服务形成的,则报文就有可能失序。
(5)通道的可靠性
通道的可靠性是指通道故障,如断连、复位等。
(6)报文的最大长度
该参数主要影响n层协议的报文分段、拼接等功能。
(7)通道的工作方式
通道的工作方式主要包括:单工、半双工、全双工,或分为同步与异步两种方式。全双工通道可视为两个分离的单工通道。
(8)通道的带宽(bandwidth)
带宽本来是指某个信号具有的频带宽度。对于数字通道而言,带宽是指在通道上能够传送的数字信号的速率,即数据率或比特率。通道的带宽可进一步分为前向带宽、后向带宽、峰值带宽等。
经验表明,大多数的协议失败是由于对协议运行的环境做出了错误的假定。设计者必须确保直接定义这些环境假定,而不能隐含地指示它们。