做工业自动化的朋友这两年肯定听过TSN这个词,时间敏感网络(Time-Sensitive Networking)。说白了它就是给普通以太网加上"准时送达"的能力,让控制指令和传感器数据能在确定的时间内到达目的地,不会因为网络拥堵就丢包或者延迟抖动。
传统以太网是"尽力而为"的,数据发出去能不能到、多久到,没人打包票。办公室上网看视频无所谓,卡一下缓冲就行,但工业控制不行,机械臂的运动指令晚到几十毫秒,可能就撞机了。TSN就是在以太网的基础上加了一套时间同步和流量调度机制,保证关键数据的确定性。
TSN不是单一协议,而是一组标准的集合,由IEEE 802.1工作组制定。核心的几个标准包括:802.1AS做时间同步,让网络里所有设备的时钟对齐到微秒级;802.1Qbv做时间感知整形,给不同优先级的数据分配固定的时间片;802.1Qbu和802.3br做帧抢占,高优先级帧能打断低优先级帧的发送。
时间同步是整个TSN的基础。802.1AS基于广义精确时间协议(gPTP),主时钟把时间戳发给从时钟,从时钟根据网络延迟和漂移不断校准自己,最终整个网络的时间误差控制在微秒以内。时钟没对齐,后面的调度全白搭。
流量调度是TSN的灵魂。802.1Qbv把网络传输时间切成一个个周期,每个周期里再划分成多个时间槽,不同优先级的数据在指定的时间槽里发送。就像红绿灯一样,关键数据走绿灯,非关键数据等下一个周期。这样就避免了关键时刻被大流量挤占带宽。
实际部署TSN要注意几个点。首先是设备要支持TSN,交换机、PLC、工控机都得有TSN芯片或软件栈,混着不支持的设备用,确定性就保证不了。其次是配置复杂,周期、时间槽、优先级这些参数要根据业务流量来算,配错了反而更慢。再就是要跟现有的工业协议(比如Profinet、EtherCAT)做好融合,很多老设备跑的是专有协议,迁移需要过程。
TSN目前主要用在工业自动化、汽车电子、专业音视频这些对实时性要求高的领域。随着工业互联网的推进,TSN会越来越普及,毕竟"准时"这件事,在控制领域是刚需。