分享自:

DARPA互联网协议的设计哲学

期刊:ACM SIGCOMM Computer Communication Review

这篇文档属于类型b,是一篇科学论文,但不是单一原创研究的报告,而是一篇关于DARPA互联网协议设计哲学的学术论文。以下是对该文档的学术报告:

作者与机构
本文的作者是David D. Clark,来自麻省理工学院计算机科学实验室(Massachusetts Institute of Technology Laboratory for Computer Science)。该论文最初发表于1988年8月的《ACM SIGCOMM Computer Communication Review》期刊,卷18,第4期,页码106-114。

主题与背景
本文的主题是DARPA互联网协议的设计哲学。互联网协议套件(TCP/IP)由美国国防高级研究计划局(DARPA)在15年前首次提出,并广泛应用于军事和商业系统。尽管有许多论文和规范描述了这些协议的工作原理,但设计背后的动机和推理却常常难以理解。本文试图捕捉早期设计互联网协议时的一些核心思想,并解释这些思想如何影响了协议的最终形态。

主要观点与论据
1. 互联网协议的设计目标
- 主要目标:DARPA互联网架构的顶层目标是开发一种有效的技术,用于多路复用现有互联网络的资源。互联网的组成部分是网络,这些网络通过互联提供更大的服务。最初的目标是将ARPANET与ARPA分组无线电网络连接起来,以便无线电网络的用户能够访问ARPANET上的大型服务机器。 - 技术选择:为了实现这一目标,选择了分组交换(packet switching)作为核心技术。虽然电路交换(circuit switching)也是一种选择,但分组交换更适合支持远程登录等应用,并且参与互联的网络本身也是分组交换网络。因此,分组交换成为互联网架构的基本组成部分。 - 网络互联技术:互联网假设网络将通过一组互联网分组交换机(称为网关)进行互联,这些网关实现了存储转发(store and forward)的分组转发算法。

  1. 二级设计目标

    • 生存性:互联网通信必须在网络或网关失效的情况下继续运行。这意味着即使互联网暂时中断并重新配置,通信实体也应能够继续通信,而不必重新建立或重置高层对话状态。
    • 多种通信服务支持:互联网应支持多种类型的通信服务,例如双向可靠数据传输(虚拟电路服务)和实时语音传输。不同的服务对速度、延迟和可靠性有不同的要求。
    • 网络多样性:互联网架构必须能够容纳各种网络技术,包括长距离网络、局域网、广播卫星网络、分组无线电网络等。
    • 分布式管理:互联网架构应允许资源的分布式管理,这意味着不同的网关可以由不同的管理机构管理。
    • 成本效益:互联网架构应具有成本效益,尽管在某些情况下,它可能不如专门设计的架构那样高效。
    • 主机接入的简便性:互联网架构应允许主机以较低的努力接入。
    • 资源可计量性:互联网架构应允许对资源的使用进行计量。
  2. 生存性与“命运共享”模型

    • 状态信息保护:为了确保互联网在故障情况下的生存性,描述正在进行的对话的状态信息必须受到保护。这些信息包括已传输的分组数、已确认的分组数等。如果这些信息丢失,应用层将不得不处理同步丢失的问题。
    • 命运共享模型:互联网架构选择将状态信息集中在网络端点,而不是中间的分组交换节点。这种方法称为“命运共享”(fate-sharing),即如果某个实体丢失,其相关的状态信息也可以丢失。这种方法比复制状态信息更容易实现,并且可以防止任何数量的中间故障。
  3. 多种服务类型的支持

    • TCP与IP的分离:为了支持多种类型的服务,TCP和IP从最初的一个协议分离为两层。TCP提供可靠的有序数据流服务,而IP则提供基本的构建块——数据报(datagram),用于构建各种类型的服务。
    • UDP的引入:用户数据报协议(UDP)被创建,以提供对互联网基本数据报服务的应用层接口。UDP不保证可靠性,但允许应用程序根据需要构建自己的服务类型。
  4. 网络多样性与灵活性

    • 最小假设:互联网架构对网络的功能做了最小假设,仅要求网络能够传输分组或数据报。这使得互联网能够灵活地集成各种网络技术,包括长距离网络、局域网、卫星网络等。
    • 服务增强:互联网架构不假设网络提供可靠或有序的交付、广播或多播、优先级排序等服务。这些服务在传输层(如TCP)中实现,而不是在网络层。
  5. 其他设计目标

    • 分布式管理的挑战:尽管互联网架构允许分布式管理,但在实际运行中,特别是在路由方面,缺乏足够的工具来支持分布式管理。这导致了手动设置路由表的需求,增加了错误的风险。
    • 成本效益与效率:互联网架构在某些情况下可能不如专门设计的架构那样高效。例如,短分组的开销较大,特别是在远程登录等应用中,单个字符的分组可能携带40字节的头部。
    • 主机接入的复杂性:由于所有服务机制(如确认和重传策略)都必须在主机中实现,主机接入互联网的复杂性较高。然而,随着协议实现经验的增加,这种复杂性正在减少。

论文的意义与价值
本文详细阐述了DARPA互联网协议的设计哲学,揭示了早期设计决策背后的动机和推理。通过分析互联网架构的设计目标、生存性模型、多种服务类型的支持、网络多样性等关键问题,本文为理解互联网协议的演变提供了重要的历史背景。特别是“命运共享”模型和数据报的使用,成为互联网架构成功的关键因素。本文不仅对互联网协议的设计者具有重要参考价值,也为研究网络架构的学者提供了深刻的见解。

亮点
本文的亮点在于其深入探讨了互联网协议设计背后的哲学思想,特别是“命运共享”模型和数据报的使用。这些设计决策不仅确保了互联网在故障情况下的生存性,还提供了构建多种服务类型的灵活性。此外,本文还揭示了互联网架构在分布式管理、成本效益和主机接入复杂性等方面的挑战,为未来的网络架构设计提供了重要的启示。

上述解读依据用户上传的学术文献,如有不准确或可能侵权之处请联系本站站长:admin@fmread.com