接上文:tcp inflight 守恒算法背后的哲学
在 tcp inflight 守恒算法正确性 中,E = bw / srtt 的公平最优解是算出来的,如果自然可以用数学描述,那能算出来的东西反过来也一定能通过直感看出来,我倾向于用几何和力学描述自然(中学时中了《几何原本》和《自然哲学的数学原理》之毒) ,inflight 守恒算法的几何解释就有了:
这就是一个初等平面几何练习题,涉及一点力矩知识。
回到算法本身,值得注意的是,在流 a 注入的 inflight 从 0 到达与流 b 相同的 q 过程中,流 b 的 E = bw / srtt 是逐渐降低的,此时流 b 什么必须都不能做,因此流 a 必须 “适可而止”,否则流 b 就必须做出反制措施,比如同样进行 probe,或者执行增窗,于是事情就复杂了,几乎所有拥塞控制算法无不在处理这些复杂情况中拉扯
inflight 守恒算法的精髓是简单,一切尽在法则 2,进时适可而止,退时才可什么都不做。
上图的核心是,E 表示为三角形高与底边之比,两个力量拉扯一个三角形,bw 的力量往上拉高,delay 的力量往右拉扁,三角形的形状最瘦高的时候就是最佳 E,而直观上,通过力矩可以得到平衡点就在 Ox 与 AB 垂直之时,此时 x == b。
既然这图可由力学解释,“从 buffer 中挤兑带宽到何种程度的能效最高” 就只是这普适力学原理的一个实例,这普适原理可解释 buffer 挤兑之外很多自然现象。 更普遍的,经典力学本质上就是一种几何学描述(这就是自然哲学的数学原理)。图示原理表明,收益必须付出代价,要寻找最佳收益,而不是大收益,在最辉煌的时候悬崖勒马,在最失意的时候等待,自然本是福祸相依。
浙江温州皮鞋湿,下雨进水不会胖。