CobraNet数据包“封装”在MAC中。在以太网创建之初就规定了每个帧的最大长度为1518字节和最小长度64个字节,所以任何有效的MAC帧的长度必须在这个范围内。图5-4是MAC帧结构。

图5-4 MAC帧结构
接下来就该传送MAC帧所要发往的目的地址和发送方的源地址各6字节的信息了。由于MAC地址在网络中是全球唯一的,这就意味着全世界的所有网卡都不能有相同的MAC地址编号。国际上负责分配MAC地址编号的组织IEEE给每位申请者分配一个称为“机构唯一标志符”(OUI)的三字节地址前缀。
CobraNet版权公司PeakAudio的“机构唯一标志符”(OUI)的三字节地址前缀是X’00-60-2B(注:X’表示后面的数字是十六进制)。而后面的3个字节的地址则由获得OUI的公司自行分配。所以我们所看到的所有具有CobraNet接口的设备,它的MAC地址前三位一定是X’00-60-2B。
例如,Intel公司的OUI是X’00-90-27,而我们关心MAC帧的第三部分是以太网的协议问题,称为以太网类型(EtherType)协议,2个字节的以太网类型包含了以太网类型的全部信息。也就是当一个网卡按照MAC地址接收到了一系列以太网帧以后,由于CobraNet的EtherType为X’88-19,而因特网(Internet)的EtherType是X’08-01。所以就可以通过MAC报头的内容判断出这个数据包应该交给哪个处理模块进行处理。例如当网卡发现以太网类型是X’88-19时,这个数据包不会再向高层传送而直接被送到了CobraNet的同步解码器(我们称为CobraNet Core)进行处理。如果是X’08-00,则网卡将这个数据包交给上层(网络层)按IP数据报进行处理。
在每个MAC帧的最后还有4个字节的帧校验序列(Frame Check Sequence,FCS),负责检查整个MAC帧的数据的准确性。这个检查是非常必要的,对于整个数据帧,1bit的错误信息就有99.9%的概率被检测出来。而对于这些错误,更高级的协议(如TCP)甚至可以要求源服务器重发这个帧。当然这种重发,对于像CobraNet这样同步传输的MAC帧来说是没有意义的。这样数据层就完成了一个完整MAC帧的传输工作,准备接收下一个帧。图5-5是一个完整的MAC帧。
在CobraNet Core同步解码器中,CobraNet数据包中还包含下列三种类型的信息协议:Beat数据包协议、预约数据包协议和音频数据包协议。

图5-5 一个完整的MAC帧
1.Beat数据包
CobraNet为实现音频信号能实时传送和获得高质量的音频信号,引入同步通信概念,实施优先级管理。全部CobraNet设备必须按优先顺序等级在网络中排队发送。用一个称为Conductor的装置发送网络传输信息,它在CobraNet网络中充当系统的“总指挥”或“总裁判”,在网络中建立起一个“同步节奏”,当计算机的发送请求得到批准后,便可开始向目的地址发送同步数据。这个目的地址可以是单播,也可以是组播(多播或全部广播),区分的依据是Bundle的号码。
系统中所有的CobraNet设备都有一个事先固定好的Conductor优先级参数,连接到大系统上后,它们都会自动向网络中的其他CobraNet设备通报各自的优先级参数,各设备在经过比较之后,优先级最高的一台设备就自动成为Conductor“总指挥”了。
Beat数据包是网络中发送网络传输信息的唯一Conductor数据包,大约100个字节,每秒钟发送750次,总共占用约1Mbit/s的带宽。目的是在整个网络中建立起一个同步时钟,保证CobraNet传输系统中各设备都能在同一个“步调”上传送,不会发生数据碰撞。图5-6是Beat数据包结构。

图5-6 Beat数据包结构(https://www.xing528.com)
2.预约数据包
预约数据包的作用是每个CobraNet设备(发送和接收)都需定期(1次/秒)向Conductor发出预约传送(或接收)请求,并等待批准;另一个作用是向网络公布自己的CobraNet优先级和IP地址。
3.音频数据包
CobraNet传送的音频数据是不经压缩的PCM数据信号,因此音质极好。一个音频数据包包括约1280个字节的数据,每个Bundle包含8个PCM音频数据通道。一个Bundle在48kHz、20bit取样率下,大约要9Mbit/s带宽。图5-7是音频数据包结构。

图5-7 音频数据包结构
综上所述,一个完整的CobraNet MAC帧应包含:
(1)以太网报头(目的地01-60-2b-ff-ff-01,网络传输协议8819,即X’88-19)。
(2)三个CobraNet报头:Beat报头、预约数据包头和音频数据包头。
(3)三个数据包的传输协议。
(4)8个PCM音频数据包。
(5)循环冗余检验码(Cyclic Redundancy Code,CRC)。
CobraNet协议一个独到的优势在于协议本身并不限制输入/输出信号的类型,比如说,你可以用模拟线路电平向CobraNet网络输入一个信号,然后再从连在网络上的另一件CobraNet设备中以数字方式将该信号取出。这一优点使CobraNet网络用于旧场馆的改造,将模拟数字设备的无缝连接变得非常容易。
CobraNet协议同样支持各种控制信号的传输,比如常见的RS-232、RS-422和RS-485信号。这使得不同制造商所采用的不同控制协议可以同时在网络上传输,彼此互不干扰。在以太网带宽中除了传输音频信号,余下的带宽都可以用来传输控制信号。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。
