读《DARPA 互联网协议的设计理念》有感
文献:David D. Clark. “The Design Philosophy of the DARPA Internet Protocols”, In: Proceedings of ACM SIGCOMM’88, Aug. 1988.
论文中讲述了基于TCP/IP协议的DARPA互联网架构的设计理念,包括互联网所要实现的目标(主要目标:互联;二级目标:鲁棒、服务通用、网络通用、分布式管理、低成本高效益、互联便捷、资源可计量,优先级依次递减)和为了实现这些目标所选取的基本架构(分组交换、存储转发)。
在阅读过程中,第一个让我比较有感触的点在于,DARPA设计之初是为了在战争时期服务于军方,预设的通信环境恶劣,因此将最高优先级目标设为鲁棒性(同时将资源计量放在最末),旨在不计代价地聚集资源来实现通信,因此选择了基于端到端原则、命运共享模式的无状态的分组交换技术;若是放在当下的商业环境中,计量计费、低成本高效益等目标肯定优先级会更靠前,设计出来的互联网架构则将截然不同。但即便这一互联网架构看似“过时”,却仍沿用至今、遍布全球,这与用户惯性密不可分。就如同现在我们从IPv4换到IPv6是一个艰难、漫长的过程一样,若要更改已经有了如此庞大体量的互联网架构,只会更加不切实际。因此如今我们所使用的互联网之所以是这般模样,一方面是源自于需求的技术选择,但另一不可忽视的方面是源自于时代选择的机遇性。
当然,时代的选择是毕竟还是果,令这一架构成为行业标准的因还是在于其无限的可能性。这也是另一个让我深有感触的点,即网络的架构与实现的辩证性——越简单、限制越少的网络架构,其所具有的工程实现的可能性就丰富、多样。DARPA互联网架构正是如此,它不受限于各种工程实现的可靠性、时延、带宽等具体约束需求,从而造成庞大的体量而无法迁移到不同服务中;而是为了能在工程实现时满足更多服务,通过TCP提供可靠的数据流传输、IP提供可建立多种服务的数据报文协议,因此易于传输、对中继节点的依赖性大幅降低,这样网络结构本身就轻量、不具有冗余,多样的服务需求在工程实现时交付给端系统、网关中基于数据报文的特定算法即可,具有极强的拓展空间。
总体而言,现今还在被广泛使用的互联网架构,还是终归要服务于当下时代、满足当下需求,而具体如何满足时代需求,更重要的还是如何具体的应用实现,发挥极简的网络架构所带来的互联网的无限可能。