从防火墙规则表中返回的TCP爷爷,全然不顾网络拥堵的压力,连夜找我们几个协议层商量数据包的分发和重传问题。谈得晚了,便送我们出链路层,让路由器把我们送回本地网络。在到达传输层的路上,我们说:“TCP爷爷,您回去休息吧。您刚处理完一批丢包重传的请求。”

TCP爷爷摇摇头,“不碍事,你们知道现在有很多非连接协议,对数据可靠性不屑一顾。你们是网络的未来,你们的事情便是我的事情,是头等大事。”我们都感动了,每一个数据包的序列号都在心跳般地闪烁。多好的TCP爷爷呀。

TCP爷爷抬头看看IP地址说:“如果世界真像这数据包这么有序就好了,但是就有一些不可靠的协议,像UDP、像某些广播协议,它们非要把网络搞得混乱。它们真是网络之‘乱’。”

说着,TCP爷爷弯下腰,从/proc/net/tcp里找出一个未确认的ACK,然后看着网络说:“该死的丢包。”

说着他把这个ACK奋力向目的地掷去。很快就见一个包顺着网络链路迅速返回,闪烁着“数据确认”的信号。“这是UDP发来的未保证传递的数据包,它们不讲秩序地在网络中游荡,占用带宽,影响可靠传输,我已经忍了很久了。”TCP爷爷愤愤地说。面向连接的协议们都鼓起掌来,为网络有这样的守护者感到自豪。

一会儿,TCP爷爷叫来路由器问:“那个确认包最终送达了吗?”“好像在链路层被丢弃了。”路由器回答。

TCP爷爷一怔,说:“赶紧重传数据包,确保信息无误。”之后TCP爷爷送我们到本地网络的出口,一直挥手直到看不见我们。

第四天,我们听说远程网络那边发生了拥堵,我们很担心。而这时TCP爷爷叫我们过去。

他依然那么稳重,让我们坐下说:“可靠性需要一些牺牲。为数据传输事业付出的丢包重传是伟大的。”他这时低下头说:“但我必须承认,我在高流量的情况下进行拥塞控制不够谨慎,可能影响了网络效率。我在这里向以太网协议道歉。我会向传输层协议们说明情况。”

我们顿时热泪盈眶,多好的TCP爷爷呀,他在与无连接协议的斗争中那一点点的疏忽竟然被他记在心上,还真诚道歉。我们在将来的网络学习中一定要向TCP爷爷学习,学他那认真负责的态度,和精益求精的精神。