高速公路和 TCP/IP 的负载均衡和拥塞

长假小长假返程堵车问题非常有趣,很多人都在抱怨,新闻也在各种报道,但这么多年几乎没人想办法绕开拥堵,明知道那个时间那条路会堵,却依然在那个时间涌入那条路。

​这件事其实很容易解释,人们内心对这种拥堵是容忍的,是可预期的,也就是说人们在假期里专门安排了几十个小时的拥堵时间,比如他们提前 52 个小时返程,这 52 个小时里已经包含了堵车的 50 个小时。这是一种消极的对抗。

​如果仔细看路况地图,以长三角上海嘉定城区(一定要具体到街道才能显示自己牛逼)为中心辐射,仍然可以找到负载很低的要么不知名,要么稍微绕路的高速公路,但 G60,G2 却是万年拥堵。比如从杭州到嘉定城区,导航一定会推荐 G60,由于当代开车的离开导航几乎看不懂地图,甚至找不到家,拥堵问题很大程度可以归结为导航的问题,如果从杭州往嘉定城区走,走环杭州湾环路往浦东机场方向就会快很多,但由于 "浦东机场不在嘉定",这条路几乎没人走,此外从苏州阳澄湖回嘉定,沪宜也比京沪高尚,但如何绕开 G15 进嘉定那段,需要一定技巧。不如不听导航的,故意走错,让它重新规划,避开让你掉头返回的,至少能避开从众,此外也有一种 "逐跳路由" 的思想。

​但没人为了回个家这么折腾,靠导航就完了,省事,输入目的地即可,剩下的交给时间。我把这个问题归为负载均衡问题,而不是拥塞成因问题,拥塞问题成因更有趣,最后再说。

​在 TCP/IP 网络上这个负载均衡问题早就存在了,那时中国的高速公路网还很稀疏,大部分家庭根本没车,更别提万恶的导航 app 了。TCP/IP 的负载不均衡问题归结为 IP 路由(ecmp是后来的派池,不解决根本问题),但和高速公路导航不同的是,IP 路由是逐跳路由,具体的负载均衡情况取决于路由算法的精度,你把 RTT 加入权重,路由度量自然也就绕开了拥塞段。

最后说说高速公路拥塞成因,车辆间距太小是根因。

可以将两车之间的间距看做 buffer ,假设这个 buffer 足够大,如果前车由于喝口水,点根烟这种杂事轻轻踩了一下刹车随后又加速,后车可以无视前车这个动作,保持匀速,但如果 buffer 太小,后车就不得不也踩刹车,但后车并不知道前车只是稍微抖动一下,反应时间肯定比前车自主刹车加速的间隔大,以此往后推,形成一列波长越来越长的刹车波(红移?有道理),这直接影响了道路上车流的平均速度,这就是堵车的根源,所以保持足够的安全车距不光安全,还能缓解堵车,但这需要大量车一致行动,这才是难点,每辆车的司机都是自私的,只要你跟前车保持了足够的距离,就一定会有车插进去,如果距离还足够,就会再插入一辆,SB 行为。

在 TCP/IP 网络上,rate--based pacing 可以解决这个问题,但和高速公路一样,大多数连接还是 AIMD 以 burst 方式突发,只要你pacing 肯定会有 aimd 就加塞,挤占 buffer ,从而挤压 pacing 流的吞吐。几乎所有搞传输优化的和路上开车的人一样,不懂得松弛,比如对于弱网丢包吞吐低的优化问题,绝对不是激进发送能突破的,反而把它识别出来,退回到 reno 更有效。

TCP/IP 网络传输滥用,误用,透支了 buffer,高速公路开车的人也滥用, 误用,透支了 buffer,所以我一直最讨厌的就是那些搞传输优化的人,就跟我讨厌开车的人一样,前几天去阳澄湖,碰到一个人肉占车位的,就是不让位,也不说话,低头看手机,没办法,临走前喊了一句"傻逼!",一切不高尚的根源,在于滥用,透支资源。

皮鞋没有蹬上,露着白袜子。

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

相关推荐
Tong Z4 小时前
TCP中的常见概念
网络·网络协议·tcp/ip
以太浮标5 小时前
华为eNSP模拟器综合实验之- IS-IS路由协议实践配置解析
网络协议·网络安全·华为·智能路由器·信息与通信
2401_873479408 小时前
游戏安全组评估外挂风险,如何用离线库秒筛“数据中心”IP段并自动封号?
tcp/ip·安全·游戏
北京耐用通信8 小时前
耐达讯自动化CAN转EtherCAT网关:3步配置,赋能电机启动器智能化升级
人工智能·物联网·网络协议·自动化·信息与通信
小红的布丁9 小时前
TCP 核心原理:三次握手、四次挥手、粘包拆包、TCP 与 UDP 区别
网络协议·tcp/ip·udp
Hello_Embed12 小时前
嵌入式上位机开发入门(二十二):RTU/TCP 双协议互斥访问寄存器
笔记·网络协议·tcp/ip·嵌入式
主角1 712 小时前
Keepalived高可用与负载均衡
运维·负载均衡
.select.13 小时前
TCP 8 (拥塞控制)
服务器·网络·tcp/ip
Java成神之路-15 小时前
深度解析TCP连接管理:三次握手、四次挥手与保活机制
网络·网络协议·tcp/ip
热爱专研AI的学妹15 小时前
DataEyes API:一站式大模型聚合网关,600 + 模型统一调用与负载均衡实战方案
运维·负载均衡