分布式实时处理系统:原理、架构与实现
上QQ阅读APP看书,第一时间看更新

2.2.2 帧同步

因为种种问题,我们打算将数组分组,并在物理链路中每次传输一个分组,但这样就出现了新的问题:在物理链路中,数据是纯粹的比特流,那我们如何确保目标节点能够从比特流中识别出某一帧呢?换句话说,目标节点如何识别出帧的起始与结束位置呢?这就是所谓的帧同步问题。

常见的帧同步方法有字节计数法、字符填充的首尾定界法、比特填充的首尾定界法及违法编码法。目前常见的是比特填充的首尾定界法和违法编码法(IEEE 802标准中就采用此方法)。所谓使用比特填充的首尾定界法就是在帧的起始位置和结束位置插入一组固定比特位,用以界定帧的边界。当然既然使用了一组固定的比特位,帧内数据就要采用一定方式来避免出现界定帧边界使用的比特位模式,我们常常填入额外的比特位来解决这个问题。

而违法编码法则需要物理层采用特定的比特编码方法。例如,曼彻斯特编码法就是将1编码成“高-低”电平对,将0编码成“低-高”电平对,而“高-高”和“低-低”则是非法电平对。因此我们可以使用非法电平对来作为帧的分界符。