阿里云巨型帧是什么?云服务器ECS支持规格、开启关闭及配置步骤问题解答FAQ

简介: 阿里云巨型帧(Jumbo Frames)支持8500字节超大以太网帧,突破传统1500字节限制,可显著减少数据包数量、降低CPU负载、提升网络吞吐与大块数据传输效率,适用于HPC、大数据、SAN等高带宽场景。详细参考云服务器ECS官网解读:https://t.aliyun.com/U/AZBUsA

阿里云巨型帧是什么?云服务器ECS支持规格、开启关闭及配置步骤问题解答FAQ,巨型帧英文名Jumbo Frames,哪些云服务器ECS实例规格族支持巨型帧?巨型帧对网络性能的影响、巨型帧和MTU、开启/关闭巨型帧以及使用巨型帧的注意事项,详细参考云服务器ECS官网解读:https://www.aliyun.com/product/ecs


什么是巨型帧?

巨型帧(Jumbo Frames)是指有效负载超过IEEE 802.3标准所限制的1500字节的以太网帧。目前阿里云支持8500字节的巨型帧,即允许您发送8500字节载荷的以太网帧。


巨型帧通过增加帧的大小,每个数据包可以携带更多数据,从而减少了所需传输的数据包数量,降低了处理器的负担并提高了整体数据传输速度。在需要高吞吐量和大带宽的网络环境中,特别是在数据中心、服务器场和高速网络互联等传输大量数据的场景中,使用巨型帧有助于减少网络传输耗时和提升网络效率,充分发挥网络性能。


支持巨型帧的实例规格

目前支持巨型帧的实例规格族如下:

  • 通用型实例规格族g9i
  • 通用型实例规格族g9a
  • 通用型实例规格族g9ae
  • 海光通用型实例规格族g9h
  • 通用型实例规格族g8i
  • 通用型实例规格族g8a
  • 通用平衡增强型实例规格族g8ae
  • 通用型实例规格族g8y
  • 通用型实例规格族g7
  • 通用算力型实例规格族u2a
  • 通用型弹性裸金属服务器实例规格族ebmg9i
  • 通用型弹性裸金属服务器实例规格族ebmg9a
  • 通用型弹性裸金属服务器实例规格族ebmg9ae
  • 通用型弹性裸金属服务器实例规格族ebmg8y
  • 通用型弹性裸金属服务器实例规格族ebmg7
  • 计算型实例规格族c9i
  • 计算型实例规格族c9a
  • 计算型实例规格族c9ae
  • 计算型实例规格族c8i
  • 计算型实例规格族c8a
  • 计算平衡增强型实例规格族c8ae
  • 计算型实例规格族c8y
  • 计算型实例规格族c7
  • 计算型弹性裸金属服务器实例规格族ebmc9ae
  • 计算型弹性裸金属服务器实例规格族ebmc9i
  • 计算型弹性裸金属服务器实例规格族ebmc8y
  • 计算型弹性裸金属服务器实例规格族ebmc8i
  • 计算型弹性裸金属服务器实例规格族ebmc7
  • 内存型实例规格族r9i
  • 内存型实例规格族r9a
  • 内存型实例规格族r9ae
  • 内存型实例规格族r8i
  • 内存型实例规格族r8a
  • 内存平衡增强型实例规格族r8ae
  • 内存型实例规格族r8y
  • 内存增强型实例规格族re8
  • 内存型实例规格族r7
  • 内存型弹性裸金属服务器实例规格族ebmr9ae
  • 内存型弹性裸金属服务器实例规格族ebmr9i
  • 内存型弹性裸金属服务器实例规格族ebmr8y
  • 高主频实例
  • 高主频通用型实例规格族hfg9i
  • 高主频计算实例规格族hfc9i
  • 高主频内存型实例规格族hfr9i
  • 高主频内存型实例规格族hfr8i
  • 网络增强实例
  • 网络增强通用型实例规格族g8ine
  • 网络增强计算型实例规格族c8ine
  • 网络增强通用型实例规格族g7nex
  • 网络增强计算型实例规格族c7nex
  • 网络增强通用型实例规格族g7ne
  • 存储优化实例
  • 本地SSD型实例规格族i5
  • 本地SSD型实例规格族i5g
  • 本地SSD型实例规格族i5ge
  • 存储增强通用型实例规格族g8ise
  • GPU与高性能计算实例
  • GPU计算型实例规格族gn8v/gn8v-tee
  • 高性能计算优化型实例规格族hpc8i

有关实例规格族的更多网络参数信息,请参见实例规格族中具体实例规格的网络部分。

g8i、c8i、r8i、c8ine、g8ine、9代及以上规格的实例默认支持巨型帧。

您也可以通过DescribeInstanceTypes返回参数中的JumboFrameSupport的值,查询实例规格是否支持巨型帧,true表示支持,false表示不支持。

巨型帧对网络性能的影响

  • 提高网络吞吐量:通过支持超过标准以太网帧大小(1500字节)的数据包,巨型帧允许单次传输更多的数据,从而减少数据包的数量,提高网络吞吐量。
  • 减少CPU负载:更少的帧处理意味着CPU需要处理的网络中断和数据包重组任务减少,这可以减轻CPU负担,提高整体系统性能。
  • 改善应用的网络处理时间:通过减少数据传输所需的帧数量,巨型帧能够降低应用在网络处理和传输上的耗时,这对于要求大带宽、数据密集型的应用(如高性能计算、大数据传输、存储区域网络等)尤为重要。
  • 提升大块数据传输效率:对于需要传输大量连续数据的应用(如数据库备份、大规模文件传输、视频流媒体服务等),巨型帧能够显著提升传输速度和效率。

常见使用场景

在云服务场景中,巨型帧的使用可以带来网络性能的提升,特别是在需要处理大量数据传输的应用中。以下是一些云上场景中巨型帧的常见使用场景:

  • 数据中心内部通信:在云数据中心内部,巨型帧可以提高服务器之间的数据传输效率,尤其是在进行大数据分析、数据库同步或分布式计算时。
  • 存储区域网络(SAN):在云环境中,SAN用于连接服务器和存储设备。使用巨型帧可以减少数据传输过程中的耗时和开销,提高数据备份和恢复的效率。
  • 虚拟机迁移:在云环境中,虚拟机可能需要在物理服务器之间迁移。巨型帧可以减少迁移过程中的网络耗时,加快迁移速度。
  • 高性能计算(HPC):在云上进行科学计算或工程模拟等高性能计算任务时,巨型帧可以提高数据传输速率,减少计算任务的完成时间。
  • 视频流和多媒体传输:云服务器可能需要处理大量的视频和多媒体内容传输。巨型帧可以提升带宽和传输效率,提供更流畅的用户体验。

巨型帧和MTU

网络最大传输单元MTU(Maximum Transmission Unit)决定了网络上单次可传输数据包的最大尺寸,包含IP数据包头和载荷,不包含以太网头部。理论上MTU越大,可在单个数据包中传递的数据越多,网络通信越高效。详细信息,请参见网络最大传输单元(MTU)

巨型帧是MTU概念的一个特例,指的是配置了比传统以太网标准MTU(1500字节)更大的MTU值的网络接口所允许传输的数据帧。通常情况下,启用ECS实例的巨型帧时,相应网络接口的MTU会设置为8500字节。

使用巨型帧的注意事项

巨型帧技术虽然在部分使用场景中可以带来显著的性能提升,但也存在一些潜在的问题,如兼容性问题、可能增加的网络延迟等。因此,在启用巨型帧之前,需要进行充分的测试和规划,以确保网络的稳定和高效运行。

  • 设备兼容性:需要确保所有网络设备(包括交换机、路由器、网卡等)都支持巨型帧,即需要所有网络设备的MTU都支持巨型帧的大小,否则可能会导致数据包被丢弃或分片,从而降低网络性能。详细信息,请参见MTU对网络性能的影响
  • 协议支持:确保上层协议(如TCP/IP)能够适应巨型帧的使用。例如,TCP的MSS(最大段大小)需要相应调整以避免不必要的数据分片。详细信息,请参见网络最大传输单元(MTU)
    重要
    在非TCP场景下,比如使用UDP、ICMP或其他非连接导向的协议时,如果没有相应的协议层或应用层对巨型帧的支持和优化,可能无法充分利用巨型帧带来的好处,甚至可能因为不当的使用导致数据包丢失或应用程序错误。
  • 可能增加延迟:在低带宽链路上,较大的数据包占用线路的时间更长,可能会阻止其他人使用线路,从而造成延迟。
  • 云产品使用限制:在实际应用场景中,和其他云产品结合使用时候,巨型帧受其他云产品支持的MTU的限制。详细信息,请参见实际应用中MTU的限制。目前已知在以下场景使用巨型帧可能存在连通性或性能问题:
  • 使用非TCP(UDP/ICMP)的巨型帧访问云服务或者目的主机使用负载均衡产品时,可能由于分片报文无法被负载均衡器正常转发而丢弃,造成网络不通的风险。
  • 使用非TCP(UDP/ICMP)的巨型帧在MTU不匹配的场景下进行通信时,可能因为分片而导致网络性能下降。

开启/关闭巨型帧

您可以通过以下方式开启、关闭ECS实例的巨型帧。


重要

如果您在操作系统上 手动修改了网络接口的MTU (不建议),那么开启、关闭巨型帧后,实例网络接口的MTU的值会以您在操作系统上设置的为准。


创建实例时候开启、关闭巨型帧

创建ECS实例页,选择支持巨型帧的实例规格时,可选择开启、关闭巨型帧。

实例成功创建且正常启动后,巨型帧开启/关闭已生效。


配置操作系统使巨型帧开启、关闭生效

开启、关闭巨型帧属于网络配置的一部分,如果您是在创建实例之后修改巨型帧配置,或者是调用接口开启、关闭巨型帧,可能需要重启网络服务或者重启网络接口才可以生效。具体操作如下:

Windows实例:重启实例:Windows实例在开启或关闭巨型帧后,需要重启实例操作系统内部才能生效。


巨型帧使用最佳实践

使用巨型帧可以提高某些特定网络环境下的效率和性能,尤其是在数据密集型应用如存储区域网络(SAN)、大数据传输、高性能计算(HPC)等场景中。以下是使用巨型帧的一些最佳实践:

  • 评估需求:首先,确定您的网络是否真正需要巨型帧。巨型帧最适合于那些传输大块数据的应用,如大数据分析、备份和恢复、高性能计算等。如果网络主要承载小数据包流量,巨型帧可能不会带来明显好处。详细信息,请参见常见使用场景
  • 评估设备和协议支持
  • 设备一致性:确保网络路径上的网络设备,包括交换机、路由器、服务器和网络接口卡(NIC),都支持并配置为相同的巨型帧大小。不一致的MTU设置会导致数据包被错误地分片或丢弃,影响网络性能。
  • 上层协议兼容性:使用巨型帧可能会影响某些上层协议的表现,例如TCP窗口大小的调整对于充分利用巨型帧的能力至关重要。确保上层协议配置能够与巨型帧设置相匹配,以实现最佳性能。
  • 测试与验证:在生产环境中部署巨型帧前,应该在隔离的测试环境中进行全面的测试,包括吞吐量测试、延迟测试以及故障恢复测试,确保巨型帧能带来预期的性能提升,并且不会引入新的问题。关于网络性能测试,请参见网络性能测试方法
  • 一致性配置:在网络中的所有设备上配置相同的MTU值,以确保巨型帧可以无缝传输。不一致的配置可能导致数据包分片或丢失。
    开启、关闭实例的巨型帧:对于ECS实例的巨型帧的使用,建议您通过阿里云提供的方式进行开启、关闭,而不是直接修改操作系统的MTU。详细信息,请参见开启/关闭巨型帧
  • 监控与调整:部署巨型帧后持续监控网络性能,特别是注意任何可能由巨型帧引起的新问题,比如某些老旧设备可能无法正确处理巨型帧,或者网络中的其他设备因配置不当而导致的问题。需要根据监控结果适时调整网络配置。

常见问题

  1. 问题描述:使用巨型帧进行UDP/ICMP通信时,如果遇到性能急剧下降的情况,如何解决?
    解决方案:检查数据包分片情况,必要时关闭ECS实例的巨型帧。
  2. 问题描述:ECS实例开启巨型帧的情况下,通过UDP/ICMP协议访问云服务(OSS、RDS等)时,遇到网络不通的问题,如何解决?
    问题原因:当前ECS访问云服务的流量会经过负载均衡产品,受限于负载均衡产品不支持分片报文的转发,因此可能导致不通。
    解决方案:缩小ECS访问云服务的消息大小,以确保数据包不分片,且尺寸小于等于1500字节。
相关实践学习
通义万相文本绘图与人像美化
本解决方案展示了如何利用自研的通义万相AIGC技术在Web服务中实现先进的图像生成。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
相关文章
|
2天前
|
机器学习/深度学习 弹性计算 编解码
ecs.c9i.2xlarge——阿里云8核16G云服务器ECS计算型c9i实例,新一代企业级x86计算架构
阿里云ECS全新计算型c9i实例(8核16G),基于CIPU架构,搭载Intel Xeon 6982P-C处理器,兼顾高性能计算、高网络吞吐与安全可信能力,适用于机器学习推理、数据分析、视频编码等场景。阿里云服务器ECS官网:https://t.aliyun.com/U/AZBUsA
161 122
|
12天前
|
JSON JavaScript 前端开发
在TypeScript和JavaScript如何使用MetaMessage?
MetaMessage 是一种跨语言数据交换协议,支持 TypeScript/JavaScript(通过装饰器自动类型转换)、JSONC 文本与紧凑二进制 wire 格式,兼顾可读性、精度(如 bigint 表示 int64)与性能,旨在替代 JSON、Protobuf 等传统序列化方案。
201 125
|
1月前
|
索引 Python
三个让你代码更优雅的Python技巧
三个让你代码更优雅的Python技巧
281 141
|
1月前
|
索引 Python
5个让你惊艳的Python一行代码技巧
5个让你惊艳的Python一行代码技巧
270 142
|
Web App开发 监控 测试技术
|
C# Windows BI
|
分布式数据库 数据库 Hbase
双研究员带你了解数据库技术现状,及阿里云为什么要推出HBase
纵观整个排行榜,RDBMS牢牢占据了前3席,各个数据库的热度亦一览无余。然而,在这背后,大数据时代下,数据库技术究竟发生了什么样的变化和发展?2月21日,阿里巴巴中间件技术部负责人蒋江伟与阿里巴巴 ApsaraDB 负责人余锋将为你揭开!
9455 123
|
缓存 Linux 调度
24小时学通Linux内核之电源开和关时都发生了什么
  说实话感觉自己快写不下去了,其一是有些勉强跟不上来,其二是感觉自己越写越差,刚开始可能是新鲜感以及很多读者的鼓励,现在就是想快点完成自己制定的任务,不过总有几个读者给自己鼓励,很欣慰的事情,不多感慨了,加紧时间多多去探索吧,今天要去描述的是电源开和关时都发生了什么,一起去看看吧~~   bootloader引导装入程序将内核映像加载到内存并处理控制权传送到内核后在内核引导时每个子系统都必须要初始化,我们根据实际执行的线性顺序跟踪内核的初始化过程,下图说明了从系统加电到断电这一过程中所有事情发生的顺序,这个图不多加解释了,看图就知道其线性执行顺序,中间过程也是很简单的步骤啦。