唐文昊 廖斌兰 唐霓云 莫东海
TS码流经过IP打包后能被网络设备转发和交换,通过光纤、卫星、微波等方式接入各个台站。信源交换机的监控口静态绑定了码流的组播地址,使监控口始终转发码流。通过抓包可以观察到标准网络帧结构。每个帧长为1358字节,包括MAC头(14字节)、IP头(20字节)、UDP头(8字节)和7个码流包(每个188字节)共1358字节。一个帧最多封装七个码流包,否则会超过以太帧的最大长度上限1518字节而无法传输。
如图1所示,抓包工具Wireshark中显示的帧结构,有七个以ISO/IEC开头的行,每行标识一个标准码流包。PID和CC是码流包头部中的两个重要参数:包ID和连续计数。

图1 卫星接收机发出的被封装的TS码流
TS码流传输使用了IP组播技术,组播地址为IP报文的目的地址,一份码流能同时被转发到多个设备(如IP复用器、码流记录仪、分析仪、自台监控服务器等),只需给接收设备添加组播地址加入组播组即可。分析时根据逻辑连接进行过滤,把光纤信源中央八套节目码流(12.171.30.93:2560->239.171.30.5:4000)分离出来,再将各底层头部剥除,留下应用层的码流包。码流包长度为188字节,包含4字节头部和184字节载荷。载荷既可以是音视频编码数据,也可以是控制信息表PSISI。图2为光纤信源中央八套节目TS码流中的“空”码流包。

图2 光纤信源中央八套节目TS码流中的“空”码流包
TS码流包中的数据是大尾(big-endian)字节序,数据的低位保存在内存的高地址,与Windows系统相反。“空”码流包的载荷部分全部是0xff,只有头部有数据。4字节的头部包含了8个参数,分别是同步字节、传输误码指示符、有效荷载单元起始指示符、传输优先级、PID、传输加扰控制、自适应控制和连续计数器。第……