TSN 时隙调度思辨:从广域网症结到网络中立权衡

昨晚看 TSN 的一个咨询问题,顺便看了 IEEE 802.1Qbv 和 IEEE 1588 规范,被 TDM 时隙调度惊艳到了。如果(假设)全网时钟精确一致,网络的一切行为将是可控的,但由于时钟同步的难度以及信号准光速的不一致,这种网络注定不会太大。那就假设这是一个小型的网络,整个网络可作为操作系统来控制,而网络数据的传输就是 task 调度。

在这种时钟一致同步的网络上调度数据包就像在 Linux 内核调度 task_struct,还要更简单些,具体参考 IEEE 802.1Qbv。Qbv 这种方式要比优先级队列,加权公平队列直观很多,也高效很多。

抢占式调度意味着高优先数据可以抢占低优先数据从而获得带宽资源,有了时隙固定分配,抢占也没了必要,代价是拿点带宽利用率来换,若要代价轻微,便可为每一个 cycle 准备一个或极少数几个特殊的高优先级时隙,以确保这些优先级数据的确定性低时延,比如汽车刹车信号。这少数几个时隙的代价类似于高速公路上的应急车道,即使道路完全堵死,应急车道依然必须畅通。

和应急车道的使用类似,高优先级必然特殊且昂贵,这是避免拥塞的核心。还是我此前说过的 "某种矩" 的概念,调度公平性应该基于 "优先级 * 数据量",换句话说,高优先级数据一定是极少的,这在比如智能驾驶领域的 TSN 中非常容易保证,人们可以持续听歌,但不能一直刹车,所以刹车信号的优先级就要高,这可以通过硬编码信号产生终端处理器来保证,刹车传感器生成的 TSN 帧携带的优先级标签一定要比娱乐系统帧优先级高。但如果将这个思想应用到广域网呢?

广域网难以迭代新技术(所以折腾半天还得是 TCP),这是异构网络的固有问题,但不妨想想。广域网不可能同步时钟,因此无法精确 TDM,但可以分布式 TDM,即每个交换节点执行自己的 TDM(姑且不考虑如何说服每个节点都 TDM,否则什么也别想了),按照优先级分配固定时隙,这就确保了在某个交换节点,高优先级数据会获得固定传输时隙,接下来是如何分配优先级,是不是每个用户都可以设置自己的数据包为高优先级呢?这是个问题。

核心就是让终端用户为高优先级付出更大的代价,而钱是衡量一切的标准,这就关系到运营商计费问题。

互联网先驱,TCP/IP 标准起草人之一大卫克拉克曾经在很晚时期承认互联网缺乏性能管理机制,而随着 CDN 而来的海量流量逐渐填满几乎所有链路,依靠端到端的性能数据采集的拥塞控制手段(说的就是端到端传统的 AIMD,甚至 BBR 也不是一个足够好的解)既不精确,也容易存在误导性,因为端节点的拥塞监控无法监控和定位链路级别的信息,遗憾的是,路由器也没有任何控制面协议支持这个。所以若要实现这种控制,压力自然给到运营商。

直白点说,用户需要为高优先级传输服务付费,但这又牵扯到另一个更宏观的问题,即网络中立性原则,该原则提出运营商提供平等传输服务,禁止付费优先级,虽然没有强制性,但作为公开公认原则,自然不能公开违背。另一方面,从现实考虑,运营商使用复杂工具对用户流量类型进行计费管理,这可能会降低用户(即内容终端)试验新应用的兴趣和动机,这违背了互联网的开放性原则,肯定会让比如音视频流量应用的部署举步维艰。

还是无解,广域网使用传统 TCP 还得一段日子,但数据中心是另一个极端,可以整些花活儿,可千万别被 TCP,TCP/IP 束缚住手脚。

Qav 还在看,但 Qbv 确实靓。

浙江温州皮鞋湿,下雨进水不会胖。

相关推荐
Kika写代码2 小时前
【计算机网络】课程 实验三 跨交换机实现 VLAN 间路由
网络·计算机网络·php
计算鸡SayHelloWorld2 小时前
计算机网络(第8版)第3章课后习题--透明传输
网络
MorleyOlsen6 小时前
【计算机网络安全】CA和安全电子邮件
网络·安全·web安全·ca
xianwu5438 小时前
mysql入门篇
开发语言·网络·c++·git
网络安全成叔8 小时前
【整理集合大全】MySQL(4) 数据库增删改查SQL语句
网络·数据库·sql·mysql·web安全·网络安全
无名之逆8 小时前
搭建SSL邮件服务器
开发语言·网络·网络协议·http·https·ssl·request
dog25011 小时前
TCP 演进之路:软硬件跷跷板与新征程
网络·网络协议·tcp/ip
高校网站建设群系统EduCMS11 小时前
定制级安全重保方案,确保重大活动期间的网络安全无忧
网络·安全
喵~来学编程啦11 小时前
【计算机网络】第四章·网络层
网络·计算机网络·学习笔记
wj3193211 小时前
TTL 传输中过期问题定位
网络·智能路由器