CN110061923B - 流量控制方法、装置、交换机、发送端服务器及介质 - Google Patents
流量控制方法、装置、交换机、发送端服务器及介质 Download PDFInfo
- Publication number
- CN110061923B CN110061923B CN201810052607.2A CN201810052607A CN110061923B CN 110061923 B CN110061923 B CN 110061923B CN 201810052607 A CN201810052607 A CN 201810052607A CN 110061923 B CN110061923 B CN 110061923B
- Authority
- CN
- China
- Prior art keywords
- message
- packet
- loss
- marked
- virtual channel
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/31—Flow control; Congestion control by tagging of packets, e.g. using discard eligibility [DE] bits
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/32—Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例提供了一种流量控制方法、装置、交换机、发送端服务器及介质,其中,流量控制方法,应用于交换机,该方法包括:接收发送端服务器发送的报文,其中,所述报文中包括可丢包报文和不可丢包报文,所述可丢包报文和不可丢包报文被所述发送端服务器区别标记;将标记后的所述可丢包报文和不可丢包报文,分别在基于优先级的流控PFC功能所创建的不同优先级的虚拟通道上进行传输;当所述优先级的虚拟通道对应的报文标记有可丢包报文标识时,对该优先级的虚拟通道的报文进行可丢包控制,当所述优先级的虚拟通道对应报文标记有不可丢包报文标识时,对该优先级的虚拟通道的报文进行不可丢包控制。
Description
技术领域
本发明涉及通信技术领域,特别是涉及一种流量控制方法、装置、交换机、发送端服务器及介质。
背景技术
随着大数据和人工智能的兴起,应用程序对网络的吞吐和延迟的要求越来越高,传统的传输控制协议/网际协议(Transmission Control Protocol/Internet Protocol,TCP/IP)网络已经无法满足要求。远程直接存储器访问(Remote Direct Memory Access,RDMA)是一种直接进行远程内存存取的技术,该技术允许计算机通过网络直接读取远程计算机的内存,期间不需要中央处理器(Central Processing Unit,CPU)的参与,大大减轻了CPU负载,其传输速率相比于TCP/IP网络提升几十甚至上百倍,RDMA具有低延迟、高吞吐的优势。通过以太网远程直接存储器访问(RDMAOver Converged Ethernet,ROCE),是RDMA技术的一种实现方式,其允许在以太网基础架构上执行RDMA,是当前RDMA网络的最佳实现方式。以太网是一种不保证可靠传输的有损网络,当网络发生拥塞时会导致数据丢包,因此通常采用可靠的TCP协议来传递数据,而ROCE网络中的RDMA数据多通过不可靠的用户数据报协议(User Datagram Protocol,UDP)进行传输,这就需要部署缓存管理、流控技术减少网络侧数据丢包。
现有技术采用基于优先级的流控(Priority-based Flow Control,PFC)技术可以很好地解决以太网因拥塞而导致的丢包问题。如图2所示,PFC允许在一条以太网链路上创建最多8个虚拟通道,允许单独暂停和重启其中任意一条虚拟通道,当链路中发生拥塞时,拥塞网元发送暂停(Pause)帧通知上游网元降速来防止缓存区溢出丢包。
但是对于ROCE网络来说,使用PFC协议在保证数据不丢包(lossless)时,发送Pause帧通知上游网元降速会占用很多时间,且需要缓存大量的报文,占用交换机大量的缓存,使ROCE的传输速率降低,影响ROCE性能。
发明内容
本发明实施例的目的在于提供一种流量控制方法、装置、系统、设备及计算机可读存储介质,以提升ROCE的数据传输速率,优化ROCE性能。具体技术方案如下:
第一方面,本发明实施例提供了一种流量控制方法,应用于交换机,包括以下步骤:
接收发送端服务器发送的报文,其中,上述报文中包括:可丢包报文和不可丢包报文,上述可丢包报文和不可丢包报文被上述发送端服务器区别标记;
将标记后的上述可丢包报文和不可丢包报文,分别在基于优先级的流控PFC功能所创建的不同优先级的虚拟通道上进行传输;
当上述优先级的虚拟通道对应的报文标记有可丢包报文标识时,对该优先级的虚拟通道的报文进行可丢包控制,当上述优先级的虚拟通道对应报文标记有不可丢包报文标识时,对该优先级的虚拟通道的报文进行不可丢包控制。
可选的,上述不可丢包报文为ROCE网络中的使用用户数据报协议UDP传输的报文,上述可丢包报文为ROCE网络中使用传输控制协议TCP传输的TCP报文。
可选的,当上述优先级的虚拟通道对应的报文标记有可丢包报文标识时,对该优先级的虚拟通道进行可丢包控制,包括:
当上述优先级的虚拟通道发生拥塞时,若该优先级的虚拟通道对应的报文标记有可丢包报文标识时,控制PFC功能停止发送暂停命令,丢弃该虚拟通道的报文;
当上述优先级的虚拟通道对应的报文标记有不可丢包报文标识时,通过PFC功能对该优先级的虚拟通道进行不可丢包控制,包括:
当上述优先级的虚拟通道发生拥塞时,若该优先级的虚拟通道对应的报文标记有不可丢包报文标识时,控制PFC功能向该优先级的虚拟通道的报文发送端发出暂停命令。
可选的,当上述可丢包报文超出该可丢包报文允许占用的出口端缓存的比例的预设上限值时,丢弃所超出部分的可丢包报文。
可选的,在上述接收发送端服务器发送的可丢包报文和不可丢包报文,上述可丢包报文和不可丢包报文被上述发送端服务器区别标记后,还包括以下步骤:
开启显示拥塞通知ECN功能,设置上述ECN的触发阈值小于基于优先级的流控PFC的触发阈值。
可选的,上述可丢包报文包括由上述ECN发送的拥塞通知报文CNP。
第二方面,本发明实施例还提供了一种流量控制方法,其特征在于,应用于发送端服务器,包括以下步骤:
将报文分为可丢包报文和不可丢包报文,将上述可丢包报文和不可丢包报文区别标记;
将上述可丢包报文和不可丢包报文发送给交换机;以使上述交换机:在接收到上述标记后的可丢包报文和不可丢包报文后,将标记后的上述可丢包报文和不可丢包报文,分别在基于优先级的流控PFC功能所创建的不同优先级的虚拟通道上进行传输,当上述优先级的虚拟通道对应的报文标记有可丢包报文标识时,对该优先级的虚拟通道进行可丢包控制,当上述优先级的虚拟通道对应的报文标记有不可丢包报文标识时,对该优先级的通道进行不可丢包控制。
可选的,上述不可丢包报文为ROCE网络中的使用用户数据报协议UDP传输的报文,上述可丢包报文为ROCE网络中使用传输控制协议TCP传输的TCP报文。
可选的,上述将上述可丢包报文和不可丢包报文区别标记包括:将可丢包标识封装在可丢包报文中,将不可丢包标识封装在不可丢包报文中。
可选的,上述流量控制方法,应用于发送端服务器,还包括:开启显示拥塞通知ECN功能。
可选的,上述可丢包报文包括由上述ECN发送的拥塞通知报文CNP。
第三方面,本发明实施例提供了一种流量控制装置,应用于交换机,上述装置包括:
报文接收单元,用于接收发送端服务器发送的报文,其中,上述报文中包括:可丢包报文和不可丢包报文,上述可丢包报文和不可丢包报文被上述发送端服务器区别标记;
报文传输单元,用于将标记后的上述可丢包报文和不可丢包报文,分别在基于优先级的流控PFC功能所创建的不同优先级的虚拟通道上进行传输;
报文控制单元,用于当上述优先级的虚拟通道对应的报文标记有可丢包报文标识时,对该优先级的虚拟通道的报文进行可丢包控制,当上述优先级的虚拟通道对应报文标记有不可丢包报文标识时,对该优先级的虚拟通道的报文进行不可丢包控制。
可选的,上述不可丢包报文为ROCE网络中的使用用户数据报协议UDP传输的报文,上述可丢包报文为ROCE网络中使用传输控制协议TCP传输的TCP报文。
可选的,上述报文控制单元包括暂停控制子单元,上述暂停控制子单元用于当上述优先级的虚拟通道发生拥塞时:
若该优先级的虚拟通道对应的报文标记有可丢包报文标识时,控制PFC功能停止发送暂停命令,丢弃该虚拟通道的报文;
若该优先级的虚拟通道对应的报文标记有不可丢包报文标识时,控制PFC功能向该优先级的虚拟通道的报文发送端发出暂停命令。
可选的,上述流量控制装置,应用于交换机,还包括:
报文处理单元,用于当上述可丢包报文超出该可丢包报文允许占用的出口端缓存的比例的预设上限值时,丢弃所超出部分的可丢包报文。
可选的,上述流量控制装置,应用于交换机,还包括:
ECN设置单元,用于开启显示拥塞通知ECN功能,设置上述ECN的触发阈值小于基于优先级的流控PFC的触发阈值。
可选的,上述可丢包报文包括由上述ECN发送的拥塞通知报文CNP。
第四方面,本发明实施例还提供了一种流量控制装置,应用于发送端服务器,上述装置包括:
报文分类单元,用于将报文分为可丢包报文和不可丢包报文,将上述可丢包报文和不可丢包报文区别标记;
报文发送单元,用于将上述可丢包报文和不可丢包报文发送给交换机;以使上述交换机:在接收到上述标记后的可丢包报文和不可丢包报文后,将标记后的上述可丢包报文和不可丢包报文,分别在基于优先级的流控PFC功能所创建的不同优先级的虚拟通道上进行传输,当上述优先级的虚拟通道对应的报文标记有可丢包报文标识时,对该优先级的虚拟通道进行可丢包控制,当上述优先级的虚拟通道对应的报文标记有不可丢包报文标识时,对该优先级的通道进行不可丢包控制。
可选的,上述不可丢包报文为ROCE网络中的使用用户数据报协议UDP传输的报文,上述可丢包报文为ROCE网络中使用传输控制协议TCP传输的TCP报文。
可选的,上述报文分类单元包括:
报文标识子单元,用于将可丢包标识封装在可丢包报文中,将不可丢包标识封装在不可丢包报文中。
可选的,上述流量控制装置,应用于发送端服务器,还包括:
ECN开启单元,用于开启显示拥塞通知ECN功能。
可选的,上述可丢包报文包括由上述ECN发送的拥塞通知报文CNP。
第五方面,本发明实施例提供了一种交换机,包括处理器和机器可读存储介质,上述机器可读存储介质存储有能够被上述处理器执行的机器可执行指令,上述处理器被上述机器可执行指令促使:实现第一方面上述的方法步骤。
第六方面,本发明实施例提供了一种发送端服务器,包括处理器和机器可读存储介质,上述机器可读存储介质存储有能够被上述处理器执行的机器可执行指令,上述处理器被上述机器可执行指令促使:实现第二方面上述的方法步骤。
第七方面,本发明实施例提供了一种网络系统,包括:第六方面上述的发送端服务器、接收端服务器、第五方面上述的交换机。
第八方面,本发明实施例提供了一种计算机可读存储介质,上述存储介质内存储有计算机程序,上述计算机程序被处理器执行时实现第一方面上述的步骤。
第九方面,本发明实施例提供了一种计算机可读存储介质,上述存储介质内存储有计算机程序,上述计算机程序被处理器执行时实现第二方面上述的步骤。
本发明实施例提供的一种流量控制方法、装置、交换机、发送端服务器及介质,通过发送端服务器将要发送的报文分为可丢包报文和不可丢包报文并区别标记,交换机将标记后的可丢包报文和不可丢包报文分别在基于优先级的流控PFC功能所创建的不同虚拟通道上进行传输,当上述虚拟通道对应的报文标记有可丢包报文标识时,对该通道进行可丢包控制,当上述虚拟通道对应的报文标记有不可丢包报文标识时,对该通道进行不可丢包控制,可以有针对性地对不同类型的流量进行可丢包或不丢包传输,这样,进行可丢包处理部分的报文可以减少对交换机缓存的占用,同时可以减少暂停命令的发送量,提升ROCE的数据传输速率,优化ROCE性能。当然,实施本发明的任一产品或方法必不一定需要同时达到以上上述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例所提供的流量控制方法的一种流程示意图;
图2为基于优先级的流控PFC的原理示意图;
图3为显示拥塞通知ECN处理链路拥塞的流程示意图;
图4为基于优先级的流控PFC处理链路拥塞的流程示意图;
图5为本发明实施例的一种不同类型报文的配置方法;
图6为本发明实施例所提供的流量控制方法的另一种种流程示意图;
图7为本发明实施例所提供的流量控制装置的一种结构示意图;
图8为本发明实施例所提供的流量控制装置的另一种结构示意图;
图9为本发明实施例所提供的交换机结构示意图;
图10为本发明实施例所提供的发送端服务器结构示意图;
图11为现有的采用Vlan技术进行租户隔离的系统结构示意图;
图12为本发明实施例所提供的一种系统的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了提升ROCE的数据传输速率,优化ROCE性能,本发明实施例提供了一种流量控制方法,该方法中,发送端服务器先将要发送的流量分为可丢包流量和不可丢包流量并区别标记,交换机接收到发送端服务器发送的报文后,将标记后的可丢包报文和不可丢包报文,分别在PFC功能所创建的不同优先级的虚拟通道上进行传输,然后,交换机再根据不同虚拟通道所对应的报文的标识,有针对性地对不同虚拟通道中的报文进行可丢包或不丢包控制,可以提升ROCE的数据传输速率,优化ROCE性能。
下面首先对本发明实施例所提供的一种流量控制方法进行介绍。
需要说明的是,本发明实施例所提供的一种流量控制方法可以应用于互联网行业。
如图1所示,是本发明实施例所提供的一种流量控制方法,应用于交换机,可以包括如下步骤:
S101:接收发送端服务器发送的报文,其中,上述报文中包括:可丢包报文和不可丢包报文,上述可丢包报文和不可丢包报文被上述发送端服务器区别标记;
在实际应用中,ROCE网络中既有通过TCP协议进行传输的TCP报文,也有通过UDP协议进行传输的ROCE报文。由于通过UDP协议传输的ROCE报文对丢包十分敏感,ROCE报文一旦丢包,就无法找回和重新传输,而通过TCP协议来传递的TCP报文丢包后,可以重传。因此,上述步骤S101中的可丢包报文和不可丢包报文具体可以是:不可丢包报文为ROCE网络中的使用UDP协议传输的ROCE报文,可丢包报文为ROCE网络中使用TCP协议传输的TCP报文。通过设置ROCE报文和TCP报文的丢包属性,既可以减少ROCE报文的丢包,又可以提高ROCE网络的数据传输速率,提升ROCE性能。
在一种具体实施例中,步骤S101中,可丢包报文和不可丢包报文被上述发送端服务器区别标记,可以按如下步骤实现:发送端服务器将可丢包标识和不可丢包标识分别封装在可丢包报文和不可丢包报文中。其中,可丢包标识和不可丢包标识的形式可以以数字来表示,例如可丢包标识为0,不可丢包标识为1;可丢包标识和不可丢包标识的形式也可以以英文字符来表示,例如可丢包标识为lossy,不可丢包标识为lossless;或者可丢包标识和不可丢包标识可以以任何其他可以区分开两种不同报文类型的标识来标识,此处不再一一列举。当用标识区别标记可丢包报文和不可丢包报文后,由于标识结构简单且区别明显,交换机在判断接收到的报文是何种报文时,可以更快速地得出判断结果。
S102:将标记后的上述可丢包报文和不可丢包报文,分别在基于优先级的流控PFC功能所创建的不同优先级的虚拟通道上进行传输;
在一种具体实施例中,步骤S102中,在不同优先级的虚拟通道上传输可丢包报文和不可丢包报文,可以按如下步骤实现:在虚拟通道上对可丢包报文和不可丢包报文进行传输时,可丢包报文和不可丢包报文只占用PFC功能所创建的虚拟通道的部分虚拟通道,而不需要占用所有的虚拟通道,其中,可丢包报文和不可丢包报文在PFC功能所创建的不同的虚拟通道上进行传输。这样既可以对可丢包和不可丢包报文进行区别控制,又可以节省虚拟通道资源,从而使控制复杂度降低,当网络中其他报文需要占用独立虚拟通道时,还可以为其他报文提供空闲的虚拟通道。
示例性的,基于优先级的流控PFC在一条链路上可以创建8个不同优先级的虚拟通道,分别编号0-7。交换机可以根据可丢包报文的相应标识,将可丢包报文全部在0通道上传输,根据不可丢包报文的相应标识,将不可丢包报文全部在3通道上传输;或者根据可丢包报文的相应标识,可以将可丢包报文同时在0通道和1通道上传输,根据不可丢包报文的相应标识,将不可丢包报文同时在3通道、4通道和5通道上传输;或者根据可丢包报文的相应标识,可以将可丢包报文全部在0通道上传输,根据可丢包报文的相应标识,将不可丢包报文同时在3通道、4通道和5通道上传输。
在实际应用中,步骤S102中在不同优先级的虚拟通道上传输可丢包报文和不可丢包报文时,只要可丢包报文和不可丢包报文分别在PFC的不同优先级的虚拟通道上传输即可,具体如何分配两种报文在PFC的虚拟通道上的传输,不应对本申请具体实施方式的实施过程构成任何限定。
S103:当上述优先级的虚拟通道对应的报文标记有可丢包报文标识时,对该优先级的虚拟通道的报文进行可丢包控制,当上述优先级的虚拟通道对应报文标记有不可丢包报文标识时,对该优先级的虚拟通道的报文进行不可丢包控制。
在一种具体实施例中,步骤S103中对虚拟通道的报文进行可丢包控制或者不可丢包控制,可以按如下步骤实现:当上述优先级的虚拟通道对应的报文标记有可丢包报文标识时,交换机控制PFC功能对该通道停止作用,当上述优先级的虚拟通道对应的报文标记有不可丢包报文标识时,交换机控制PFC功能对该通道进行控制。通过控制PFC功能在不同虚拟通道上的作用状态,当网络拥塞时,可以实现将可丢包报文丢弃,并保证了不可丢包报文不丢包,从而提高了ROCE网络传输速率,优化了ROCE网络性能。
例如,当交换机检测到0通道上的报文的标识为可丢包标识,1通道上的报文的标识为不可丢包标识,则交换机控制PFC功能对0通道停止作用,交换机控制PFC功能对1通道进行控制。
在其他具体实施例中,步骤S103中对虚拟通道的报文进行可丢包控制或者不可丢包控制,可以按如下步骤实现:针对每一个优先级,当该优先级的虚拟通道发生拥塞时,若该优先级的虚拟通道对应的报文标记有可丢包报文标识时,控制PFC功能停止发送暂停命令,丢弃该虚拟通道的报文;若该优先级的虚拟通道对应的报文标记有不可丢包报文标识时,控制PFC功能向该优先级的虚拟通道的报文发送端发出暂停命令。通过控制暂停命令的发送,可以准确控制报文的发送,从而使ROCE网络对报文的控制更精确。
在一种具体实施例中,上述交换机控制PFC功能发送暂停命令,可以按如下步骤实现:在交换机的PFC功能所建立的每一个虚拟通道设置触发阈值,其中,可以将PFC功能的所有虚拟通道设置为相同的触发阈值,也可以针对不同的虚拟通道设置不同的触发阈值;当任一条虚拟通道的接收缓存器的占用率到达预设的触发阈值时,交换机若判断出该条虚拟通道所对应的报文标识是不可丢包报文标识时,交换机通过PFC功能向该虚拟通道所对应的报文发送端发送暂停命令;发送端在接收到交换机发送的暂停命令后,停止通过该条虚拟通道向交换机发送报文,等接收缓存器的占用率再一次小于预设的阈值时,交换机控制PFC功能向该虚拟通道的报文发送端发出暂停解除命令,发送端恢复发送报文。上述触发阈值例如可以是:交换机接收缓存器的占用率达到70%、80%或90%,本领域技术人员可以根据实际需要来设置触发阈值,本申请不对触发阈值做具体限定。在实际应用中,当PFC功能所创建的虚拟通道中的某一条虚拟通道的接收缓存器的占用率到达预设的阈值时,也就是该条虚拟通道发生了拥塞。通过对不可丢包报文所对应的虚拟通道进行的上述控制,可以保证不可丢包报文的可靠传输,使不可丢包报文的丢包率降低。
当设置了上述的触发阈值后,交换机就可以在交换机的缓存器还未被占满的情况下进行对报文的不可丢包控制,从而可以避免交换机缓存器被占满后导致的丢包现象,同时通过对不同虚拟通道分别设置不同触发阈值,还可以有针对性地对不同报文区别控制,使控制更灵活,进一步优化了ROCE网络。
在一种具体实施例中,上述交换机控制PFC功能停止发送暂停命令,可以按如下步骤实现:当任一条虚拟通道的接收缓存器的占用率到达预设的阈值时,即该条虚拟通道发生了拥塞时,交换机若判断出该条虚拟通道所对应的报文标识是可丢包报文标识时,则交换机也控制PFC功能停止发送暂停命令。此时,发送端服务器会继续通过该条虚拟通道向交换机发送报文,交换机会将超出接收缓存器预设的阈值的报文丢包。由于在链路拥塞时将可丢包报文丢弃,可以减少对交换机缓存的占用,同时可以减少暂停命令的发送量,从而提升ROCE的数据传输速率,优化ROCE性能。
在一种具体实施例中,在步骤S103之后,上述应用于交换机的流量控制方法还可以包括以下步骤:
当上述可丢包报文超出该可丢包报文允许占用的出口端缓存的比例的预设上限值时,丢弃所超出部分的可丢包报文。
在一种具体实施例中,上述丢弃所超出部分的可丢包报文,可以按以下步骤实现:设置可丢包报文允许占用的出口端缓存的比例,当任一可丢包报文标识对应的虚拟通道上的报文超过该通道报文允许占用的出口端缓存比例时,将超出部分的可丢包报文丢弃。其中,出口端可以是交换机的出口端,也可以是接收端服务器的出口端。上述可丢包报文允许占用的出口端缓存的比例的预设上限值例如可以是:50%、30%、20%或10%,本领域技术人员可以根据实际需要来设置可丢包报文允许占用的出口端缓存的比例的预设上限值,本申请不对该上限值做具体限定。
在实际应用中,在ROCE网络中传输的数据主要为通过UDP协议传输的不可丢包报文,本申请记为ROCE报文,而通过TCP协议传输的可丢包报文只占很少部分,另外,由于交换机的PFC功能是作用于入口端的,PFC功能的触发阈值是某一虚拟通道的报文允许占用的入口端比例,其中,入口端例如可以是交换机的入口端,也可以是接收端服务器的入口端,PFC功能并没有限制某一通道的报文所允许占用的出口端缓存比例。因此设置可丢包报文允许占用的出口端缓存的比例,当可丢包报文超出该可丢包报文允许占用的出口端缓存的比例的预设上限值时,将超出部分的可丢包报文丢弃,从而可以给不可丢包报文更多的出口端缓存空间,进一步保证不可丢包ROCE报文的可靠传输。
在一种具体实施例中,上述设置可丢包报文允许占用的出口端缓存的比例的预设上限值,可以通过以下步骤实现:设置可丢包报文允许占用的出口端缓存比例的预设上限值小于出口端缓存的一半。这样可以留给不可丢包报文更多的出口端缓存空间,保证不可丢包报文的可靠传输。例如,可丢包报文允许占用的出口端缓存可以为15%、20%或30%,剩余85%、80%或70%的出口端缓存留给不可丢包报文。具体如何分配可丢包报文和不可丢包报文允许占用的出口端缓存比例,不应对本申请具体实施方式的实施过程构成任何限定。
在一种具体实施例中,在上述当上述可丢包报文超出该可丢包报文允许占用的出口端缓存的比例的预设上限值时,丢弃所超出部分的可丢包报文之后,上述应用于交换机的流量控制方法还可以包括以下步骤:
开启显示拥塞通知ECN功能,设置上述ECN的触发阈值小于基于优先级的流控PFC的触发阈值。
显示拥塞通知(Explicit Congestion Notification,简称ECN)功能采用了相对精准的后向拥塞通知机制,在网络设备基于出端口队列设置拥塞检测点,检测到拥塞发生则组建包含拥塞程度的拥塞通知报文(Congestion Notification Packet,简称CNP),并将CNP反压至导致拥塞的源终端,令其依据CNP指示降低相应队列的数据传送速率。
如图3所示,开启发送端服务器和交换机的ECN功能后,服务器1、2分别有不同的ECN标识,当服务器1拥塞时,交换机会将服务器1所对应的ECN标识发送给接收端服务器3,服务器3网卡生成CNP报文,并根据ECN标识将CNP报文准确发送给服务器1,使服务器1降速。
当链路拥塞时,PFC功能虽然可以减少网络中所传输的报文的丢包率,但是PFC功能也有不公平降速的缺点。如图4所示,拥塞是由服务器1和2引起的,当交换机检测到发生拥塞时,交换机会控制PFC功能同时向发送端服务器1、2和3发送暂停发送命令,使上游的所有发送端服务器均降速。实际上,发送端服务器3是不需要降速的。这样就会导致服务器3被误伤降速,使系统的数据传输效率变低。
在一种具体实施例中,开启显示拥塞通知ECN功能,可以减少误伤降速,提高系统的数据传输效率。
在实际应用中,由于ECN功能设置在交换机的出口端,PFC功能设置在交换机的入口端,当交换机的PFC功能启动后,交换机的ECN功能就会失效。因此,ECN的触发阈值要小于PFC的触发阈值。从而避免交换机的ECN功能失效,使交换机的ECN功能可以正常作用,进一步提升ROCE网络的可靠性。例如,某一交换机的缓存为100K,则可以设置PFC的触发阈值为80K,ECN的触发阈值为70K。
当开启了ECN功能后,在ROCE网络中,上述可丢包报文可以包括由ECN发送的CNP报文,还可以包括通过TCP协议发送的其他报文,以下简称其他TCP报文。通过TCP协议发送的其他TCP报文可以为:局域网用户发送的邮件、通过及时聊天工具发送的文字、语音、图片等数据。关于通过TCP协议发送的其他报文的种类是本领域的公知常识,此处不再赘述。将可丢包报文分为CNP报文和其他TCP报文后,可以对CNP报文和其他TCP报文进行区别控制,从而使ROCE网络对报文的控制更灵活。
在一种具体实施例中,上述设置可丢包报文允许占用的交换机出口端缓存的比例上限值,可以按以下步骤实现:设置CNP报文允许占用的交换机出口端缓存的比例上限值,设置通过TCP协议发送的其他报文。由于CNP报文是否及时发送会影响对ROCE网络的拥塞控制,因此,CNP报文允许占用的交换机出口端缓存的比例上限值可以大于通过TCP协议发送的其他报文。从而可以减少CNP报文的丢失,从而提高ROCE网络中对拥塞控制的准确度。
例如,如图5所示,ROCE报文、CNP报文、其他TCP报文分别在PFC功能的虚拟通道3、虚拟通道6、虚拟通道0上传输,ROCE报文最大允许占交换机出口端缓存的70%,CNP报文最大允许占交换机出口端缓存的20%,其他TCP报文最大允许占交换机出口端缓存的10%。
如图6所示,是本发明实施例所提供的一种应用于发送端服务器的流量控制方法,包括以下步骤:
S601:将报文分为可丢包报文和不可丢包报文,将上述可丢包报文和不可丢包报文区别标记;
上述不可丢包报文可以包括ROCE网络中的使用用户数据报协议UDP传输的报文,上述可丢包报文可以包括ROCE网络中使用传输控制协议TCP传输的TCP报文。
在一种具体实施例中,步骤S601中,将上述可丢包报文和不可丢包报文区别标记,可以通过以下步骤实现:将可丢包标识封装在可丢包报文中,将不可丢包标识封装在不可丢包报文中。其中,可丢包标识和不可丢包标识的形式例如可以以数字来表示,例如可丢包标识为0,不可丢包标识为1可丢包标识和不可丢包标识的形式也可以以英文字符来表示,例如可丢包标识为lossy,不可丢包标识为lossless;或者可丢包标识和不可丢包标识可以以任何其他可以区分开两种不同报文类型的标识来标识,此处不再一一列举。当用标识区别标记可丢包报文和不可丢包报文后,由于标识结构简单且区别明显,交换机在判断接收到的报文是何种报文时,可以更快速地得出判断结果。
S602:将上述可丢包报文和不可丢包报文发送给交换机;以使上述交换机:在接收到上述标记后的可丢包报文和不可丢包报文后,将标记后的上述可丢包报文和不可丢包报文,分别在基于优先级的流控PFC功能所创建的不同优先级的虚拟通道上进行传输,当上述优先级的虚拟通道对应的报文标记有可丢包报文标识时,对该优先级的虚拟通道进行可丢包控制,当上述优先级的虚拟通道对应的报文标记有不可丢包报文标识时,对该优先级的通道进行不可丢包控制。
在一种具体实施例中,在步骤S602之后,上述应用于发送端服务器的流量控制方法还包括以下步骤:
开启显示拥塞通知ECN功能。
当开启交换机的ECN功能后,需要开启发送端服务器以及接收端服务器的ECN功能,才可以实现通过ECN功能控制发送端服务器的报文发送。
在一种具体实施例中,在ROCE网络中,上述可丢包报文可以包括由ECN发送的CNP报文,还可以包括通过TCP协议发送的其他报文。通过TCP协议发送的其他TCP报文可以为:局域网用户发送的邮件、通过及时聊天工具发送的文字、语音、图片等数据。关于通过TCP协议发送的其他报文的种类是本领域的公知常识,此处不再赘述。将可丢包报文分为CNP报文和其他TCP报文后,可以对CNP报文和其他TCP报文进行区别控制,从而使ROCE网络对报文的控制更灵活。
如图7所示,是本发明实施例提供的一种应用于交换机的流量控制装置,上述装置包括:
报文接收单元101,用于接收发送端服务器发送的报文,其中,上述报文中包括:可丢包报文和不可丢包报文,上述可丢包报文和不可丢包报文被上述发送端服务器区别标记;
报文传输单元102,用于将标记后的上述可丢包报文和不可丢包报文,分别在基于优先级的流控PFC功能所创建的不同优先级的虚拟通道上进行传输;
报文控制单元103,用于当上述优先级的虚拟通道对应的报文标记有可丢包报文标识时,对该优先级的虚拟通道的报文进行可丢包控制,当上述优先级的虚拟通道对应报文标记有不可丢包报文标识时,对该优先级的虚拟通道的报文进行不可丢包控制。
在一种具体实施例中,上述不可丢包报文可以为ROCE网络中的使用用户数据报协议UDP传输的报文,上述可丢包报文可以为ROCE网络中使用传输控制协议TCP传输的TCP报文。
在一种具体实施例中,报文控制单元103可以包括暂停控制子单元,上述暂停控制子单元用于当上述优先级的虚拟通道发生拥塞时:
若该优先级的虚拟通道对应的报文标记有可丢包报文标识时,控制PFC功能停止发送暂停命令,丢弃该虚拟通道的报文;
若该优先级的虚拟通道对应的报文标记有不可丢包报文标识时,控制PFC功能向该优先级的虚拟通道的报文发送端发出暂停命令。
在一种具体实施例中,上述应用于交换机的流量控制装置,还可以包括:
报文处理单元,用于当上述可丢包报文超出该可丢包报文允许占用的出口端缓存的比例的预设上限值时,丢弃所超出部分的可丢包报文。
在一种具体实施例中,上述应用于交换机的流量控制装置,还包括:
ECN设置单元,用于开启显示拥塞通知ECN功能,设置上述ECN的触发阈值小于基于优先级的流控PFC的触发阈值。
在一种具体实施例中,上述可丢包报文包括由上述ECN发送的拥塞通知报文CNP。
如图8所示,是本发明实施例提供的应用于发送端服务器的流量控制装置,上述装置包括:
报文分类单元401,用于将报文分为可丢包报文和不可丢包报文,将上述可丢包报文和不可丢包报文区别标记;
报文发送单元402,用于将上述可丢包报文和不可丢包报文发送给交换机;以使上述交换机:在接收到上述标记后的可丢包报文和不可丢包报文后,将标记后的上述可丢包报文和不可丢包报文,分别在基于优先级的流控PFC功能所创建的不同优先级的虚拟通道上进行传输,当上述优先级的虚拟通道对应的报文标记有可丢包报文标识时,对该优先级的虚拟通道进行可丢包控制,当上述优先级的虚拟通道对应的报文标记有不可丢包报文标识时,对该优先级的通道进行不可丢包控制。
在一种具体实施例中,上述不可丢包报文可以为ROCE网络中的使用用户数据报协议UDP传输的报文,上述可丢包报文为ROCE网络中使用传输控制协议TCP传输的TCP报文。
在一种具体实施例中,上述报文分类单元401可以包括:
报文标识子单元,用于将可丢包标识封装在可丢包报文中,将不可丢包标识封装在不可丢包报文中。
在一种具体实施例中,上述应用于发送端服务器的流量控制装置还包括:
ECN开启单元,用于开启显示拥塞通知ECN功能。
在一种具体实施例中,上述可丢包报文可以包括由上述ECN发送的拥塞通知报文CNP。
可选的,在一种具体实现方式中,本发明实施例还提供了一种交换机,如图9所示,包括处理器901、通信接口902、存储器903和通信总线904,其中,处理器901,通信接口902,存储器903通过通信总线904完成相互间的通信,
存储器903,用于存放计算机程序;
处理器901,用于执行存储器903上所存放的程序时,实现如下步骤:
接收发送端服务器发送的报文,其中,上述报文中包括:可丢包报文和不可丢包报文,上述可丢包报文和不可丢包报文被上述发送端服务器区别标记;
将标记后的上述可丢包报文和不可丢包报文,分别在基于优先级的流控PFC功能所创建的不同优先级的虚拟通道上进行传输;
当上述优先级的虚拟通道对应的报文标记有可丢包报文标识时,对该优先级的虚拟通道的报文进行可丢包控制,当上述优先级的虚拟通道对应报文标记有不可丢包报文标识时,对该优先级的虚拟通道的报文进行不可丢包控制。
可选的,在一种具体实现方式中,本发明实施例还提供了一种发送端服务器,如图10所示,包括处理器1001、通信接口1002、存储器1003和通信总线1004,其中,处理器1001,通信接口1002,存储器1003通过通信总线1004完成相互间的通信,
存储器1003,用于存放计算机程序;
处理器1001,用于执行存储器1003上所存放的程序时,实现如下步骤:
将报文分为可丢包报文和不可丢包报文,将上述可丢包报文和不可丢包报文区别标记;
将上述可丢包报文和不可丢包报文发送给交换机;以使上述交换机:在接收到上述标记后的可丢包报文和不可丢包报文后,将标记后的上述可丢包报文和不可丢包报文,分别在基于优先级的流控PFC功能所创建的不同优先级的虚拟通道上进行传输,当上述优先级的虚拟通道对应的报文标记有可丢包报文标识时,对该优先级的虚拟通道进行可丢包控制,当上述优先级的虚拟通道对应的报文标记有不可丢包报文标识时,对该优先级的通道进行不可丢包控制。
可选的,在一种具体实施例中,本发明实施例还提供了一种网络系统,该系统包括:发送端服务器、接收端服务器、交换机、上述发送端服务器包括虚拟机;
上述交换机中设置有流量控制装置,在一种具体实施例中,该装置可以包括:
报文接收单元,用于接收发送端服务器发送的报文,其中,上述报文中包括:可丢包报文和不可丢包报文,上述可丢包报文和不可丢包报文被上述发送端服务器区别标记;
报文传输单元,用于将标记后的上述可丢包报文和不可丢包报文,分别在基于优先级的流控PFC功能所创建的不同优先级的虚拟通道上进行传输;
报文控制单元,用于当上述优先级的虚拟通道对应的报文标记有可丢包报文标识时,对该优先级的虚拟通道的报文进行可丢包控制,当上述优先级的虚拟通道对应报文标记有不可丢包报文标识时,对该优先级的虚拟通道的报文进行不可丢包控制。
上述发送端服务器中设置有流量控制装置,在一种具体实施例中,该装置可以包括:
报文分类单元,用于将报文分为可丢包报文和不可丢包报文,将上述可丢包报文和不可丢包报文区别标记;
报文发送单元,用于将上述可丢包报文和不可丢包报文发送给交换机;以使上述交换机:在接收到上述标记后的可丢包报文和不可丢包报文后,将标记后的上述可丢包报文和不可丢包报文,分别在基于优先级的流控PFC功能所创建的不同优先级的虚拟通道上进行传输,当上述优先级的虚拟通道对应的报文标记有可丢包报文标识时,对该优先级的虚拟通道进行可丢包控制,当上述优先级的虚拟通道对应的报文标记有不可丢包报文标识时,对该优先级的通道进行不可丢包控制。
如图11所示是现有的采用虚拟局域网(Virtual Local Area Network,Vlan)技术进行租户隔离的系统结构示意图,发送端服务器1和接收端服务器2属于同一租户,在一个Vlan内,从接线方案上路线1和路线2是发送端服务器1通过柜顶式(Top Of Rank,TOR)交换机将数据传递到接收端服务器2的两条等价路径。但是由于同一个Vlan内的数据只能通过二层网络转发,二层网络为保证数据可靠传输,会设置冗余链路,在传输数据时只选择一条传输路径,阻塞其他冗余链路。因此即使有两条物理路径均可实现从服务器1到服务器2的数据传输,但是限于二层网络只能由一条路径生效,所以两条路径只有一条会生效,导致无法实现负载均衡,传输效率较低。且Vlan最多只能满足4094个租户的隔离需求,在云环境下不具有可扩展性。
在一种具体实施例中,交换机可以为具有可扩展虚拟局域网(VirtualExtensible Local Area Network,Vxlan)功能的交换机。
当交换机为具有可扩展虚拟局域网Vxlan功能的交换机时,就可以采用虚拟扩展局域网Vxlan技术对租户进行隔离,Vxlan可以跨越二层网络,不需要交换机的三层路由功能,就能在三层网络上根据链路情况选择最优的传输路径进行数据传输,从而使链路上的负载均衡,提高了传输效率,配置简单。且Vxlan能满的租户数目是千万级别的,在云环境下具有很好的可扩展性。
由于Vxlan技术是将所传输的报文添加UDP报头、IP报头等报头进行封装后再进行传输,封装后所传输的报文为内层报文,该内层报文对交换机不可见。当开启了链路上服务器和交换机的ECN功能后,需要将ECN标识传递给所发送的内层报文,解封后来识别引起拥塞的源端。因此,上述交换机可以为具有将外部报文传递给被封装后的内层报文能力的交换机。使用该种交换机,可以将ECN标识传递给所发送的内层报文,从而可以在解封后识别引起拥塞的源端。
在一种具体实施例中,上述发送端服务器和接收端服务器可以为具有双网卡的服务器。其中一个网卡接入ROCE网络,另一个网卡接入传统的虚拟私有云(Virtual PrivateCloud,VPC)网络,使同一服务器可以同时使用两种网络,且ROCE网络还可以和VPC网络有效隔离,使用户使用更便捷、数据传输效率和可靠性更高。
在一种具体实施例中,上述系统可以为如图12的结构示意图所示的系统,该系统包括发送端服务器1、发送端服务器2、接收端服务器3和交换机。其中,发送端服务器1可以包括属于虚拟局域网1(Virtual Local Area Network 1,Vlan1)的虚拟机3和属于Vlan2的虚拟机4,虚拟机3和虚拟机4的接口例如可以分别连接在交换机的Vxlan1(VirtualExtensible Local Area Network 1,Vxlan1)端口和Vxlan2端口上。其中,虚拟机例如可以采用SRIOV(Single-Root Input/Output Virtualization,单根输入/输出虚拟化)技术通过RDMA网卡与交换机的Vxlan端口连接,虚拟机与交换机连接时,交换机的工作模式可以为中继(trunk)模式,接收端服务器3与交换机连接时,交换机的工作模式可以为普通(access)模式。发送端服务器2和发送端服务器1的配置相同。接收端服务器3连接在交换机的Vxlan1端口。在数据传输时,交换机实现对数据的封装,虚拟机3、虚拟机4和接收端服务器3属于同一个租户的ROCE子网,三者进行互联互通时只需要交换机的二层转发功能,不需要交换机具有三层路由功能,配置简单。
上述交换机和发送端服务器提到的通信总线可以是外设部件互连标准(Peripheral Component Interconnect,PCI)总线或扩展工业标准结构(ExtendedIndustry Standard Architecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述交换机与其他设备或发送端服务器与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本发明实施例提供的方法可以应用于交换机或发送端服务器。
可选的,在一种具体实现方式中,本发明实施例还提供了一种计算机可读存储介质,上述存储介质内存储有计算机程序,上述计算机程序被处理器执行时实现以下应用于交换机的步骤:
接收发送端服务器发送的报文,其中,上述报文中包括:可丢包报文和不可丢包报文,上述可丢包报文和不可丢包报文被上述发送端服务器区别标记;
将标记后的上述可丢包报文和不可丢包报文,分别在基于优先级的流控PFC功能所创建的不同优先级的虚拟通道上进行传输;
当上述优先级的虚拟通道对应的报文标记有可丢包报文标识时,对该优先级的虚拟通道的报文进行可丢包控制,当上述优先级的虚拟通道对应报文标记有不可丢包报文标识时,对该优先级的虚拟通道的报文进行不可丢包控制。
可选的,在一种具体实现方式中,本发明实施例还提供了一种计算机可读存储介质,上述存储介质内存储有计算机程序,上述计算机程序被处理器执行时实现以下应用于发送端服务器的步骤:
将报文分为可丢包报文和不可丢包报文,将上述可丢包报文和不可丢包报文区别标记;
将上述可丢包报文和不可丢包报文发送给交换机;以使上述交换机:在接收到上述标记后的可丢包报文和不可丢包报文后,将标记后的上述可丢包报文和不可丢包报文,分别在基于优先级的流控PFC功能所创建的不同优先级的虚拟通道上进行传输,当上述优先级的虚拟通道对应的报文标记有可丢包报文标识时,对该优先级的虚拟通道进行可丢包控制,当上述优先级的虚拟通道对应的报文标记有不可丢包报文标识时,对该优先级的通道进行不可丢包控制。
由此可见,由于本发明实施例中可以有针对性地对不同类型的流量进行可丢包或不丢包传输,这样,进行可丢包处理部分的报文可以减少对交换机缓存的占用,同时可以减少暂停命令的发送量,提升ROCE的数据传输速率,优化ROCE性能。
对于装置/发送端服务器/交换机/存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括上述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、发送端服务器、交换机和存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (14)
1.一种流量控制方法,其特征在于,应用于交换机,包括以下步骤:
接收发送端服务器发送的报文,其中,所述报文中包括:可丢包报文和不可丢包报文,所述可丢包报文和不可丢包报文被所述发送端服务器区别标记,所述不可丢包报文为ROCE网络中的使用用户数据报协议UDP传输的报文,所述可丢包报文为ROCE网络中使用传输控制协议TCP传输的TCP报文;
将标记后的所述可丢包报文和不可丢包报文,分别在基于优先级的流控PFC功能所创建的不同优先级的虚拟通道上进行传输;
当所述优先级的虚拟通道发生拥塞时,若该优先级的虚拟通道对应的报文标记有可丢包报文标识时,控制PFC功能停止发送暂停命令,丢弃该虚拟通道的报文;当所述优先级的虚拟通道发生拥塞时,若该优先级的虚拟通道对应的报文标记有不可丢包报文标识时,控制PFC功能向该优先级的虚拟通道的报文发送端发出暂停命令。
2.根据权利要求1所述的方法,其特征在于,还包括以下步骤:
当所述可丢包报文超出该可丢包报文允许占用的出口端缓存的比例的预设上限值时,丢弃所超出部分的可丢包报文。
3.根据权利要求1所述的方法,其特征在于,在所述接收发送端服务器发送的可丢包报文和不可丢包报文,所述可丢包报文和不可丢包报文被所述发送端服务器区别标记后,还包括以下步骤:
开启显示拥塞通知ECN功能,设置所述ECN的触发阈值小于基于优先级的流控PFC的触发阈值。
4.根据权利要求3所述的方法,其特征在于,所述可丢包报文包括由所述ECN发送的拥塞通知报文CNP。
5.一种流量控制方法,其特征在于,应用于发送端服务器,包括以下步骤:
将报文分为可丢包报文和不可丢包报文,将所述可丢包报文和不可丢包报文区别标记,所述不可丢包报文为ROCE网络中的使用用户数据报协议UDP传输的报文,所述可丢包报文为ROCE网络中使用传输控制协议TCP传输的TCP报文;
将所述可丢包报文和不可丢包报文发送给交换机;以使所述交换机:在接收到所述标记后的可丢包报文和不可丢包报文后,将标记后的所述可丢包报文和不可丢包报文,分别在基于优先级的流控PFC功能所创建的不同优先级的虚拟通道上进行传输,当所述优先级的虚拟通道发生拥塞时,若该优先级的虚拟通道对应的报文标记有可丢包报文标识时,控制PFC功能停止发送暂停命令,丢弃该虚拟通道的报文;当所述优先级的虚拟通道发生拥塞时,若该优先级的虚拟通道对应的报文标记有不可丢包报文标识时,控制PFC功能向该优先级的虚拟通道的报文发送端发出暂停命令。
6.根据权利要求5所述的方法,其特征在于,所述将所述可丢包报文和不可丢包报文区别标记包括:将可丢包标识封装在可丢包报文中,将不可丢包标识封装在不可丢包报文中。
7.根据权利要求5所述的方法,其特征在于,还包括:
开启显示拥塞通知ECN功能。
8.根据权利要求7所述的方法,其特征在于,所述可丢包报文包括由所述ECN发送的拥塞通知报文CNP。
9.一种流量控制装置,其特征在于,应用于交换机,所述装置包括:
报文接收单元,用于接收发送端服务器发送的报文,其中,所述报文中包括:可丢包报文和不可丢包报文,所述可丢包报文和不可丢包报文被所述发送端服务器区别标记,所述不可丢包报文为ROCE网络中的使用用户数据报协议UDP传输的报文,所述可丢包报文为ROCE网络中使用传输控制协议TCP传输的TCP报文;
报文传输单元,用于将标记后的所述可丢包报文和不可丢包报文,分别在基于优先级的流控PFC功能所创建的不同优先级的虚拟通道上进行传输;
报文控制单元,用于当所述优先级的虚拟通道发生拥塞时,若该优先级的虚拟通道对应的报文标记有可丢包报文标识时,控制PFC功能停止发送暂停命令,丢弃该虚拟通道的报文;当所述优先级的虚拟通道发生拥塞时,若该优先级的虚拟通道对应的报文标记有不可丢包报文标识时,控制PFC功能向该优先级的虚拟通道的报文发送端发出暂停命令。
10.一种流量控制装置,其特征在于,应用于发送端服务器,所述装置包括:
报文分类单元,用于将报文分为可丢包报文和不可丢包报文,将所述可丢包报文和不可丢包报文区别标记,所述不可丢包报文为ROCE网络中的使用用户数据报协议UDP传输的报文,所述可丢包报文为ROCE网络中使用传输控制协议TCP传输的TCP报文;
报文发送单元,用于将所述可丢包报文和不可丢包报文发送给交换机;以使所述交换机:在接收到所述标记后的可丢包报文和不可丢包报文后,将标记后的所述可丢包报文和不可丢包报文,分别在基于优先级的流控PFC功能所创建的不同优先级的虚拟通道上进行传输,当所述优先级的虚拟通道发生拥塞时,若该优先级的虚拟通道对应的报文标记有可丢包报文标识时,控制PFC功能停止发送暂停命令,丢弃该虚拟通道的报文;当所述优先级的虚拟通道发生拥塞时,若该优先级的虚拟通道对应的报文标记有不可丢包报文标识时,控制PFC功能向该优先级的虚拟通道的报文发送端发出暂停命令。
11.一种交换机,其特征在于,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器被所述机器可执行指令促使:实现权利要求1-4任一所述的方法步骤。
12.一种发送端服务器,其特征在于,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器被所述机器可执行指令促使:实现权利要求5-8任一所述的方法步骤。
13.一种计算机可读存储介质,其特征在于,所述存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-4任一所述的方法步骤。
14.一种计算机可读存储介质,其特征在于,所述存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求5-8任一所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810052607.2A CN110061923B (zh) | 2018-01-19 | 2018-01-19 | 流量控制方法、装置、交换机、发送端服务器及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810052607.2A CN110061923B (zh) | 2018-01-19 | 2018-01-19 | 流量控制方法、装置、交换机、发送端服务器及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110061923A CN110061923A (zh) | 2019-07-26 |
CN110061923B true CN110061923B (zh) | 2022-10-04 |
Family
ID=67315728
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810052607.2A Active CN110061923B (zh) | 2018-01-19 | 2018-01-19 | 流量控制方法、装置、交换机、发送端服务器及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110061923B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110505156B (zh) * | 2019-08-23 | 2020-10-30 | 中国人民解放军国防科技大学 | 一种高速互连网络中低开销的拥塞控制方法 |
CN111193653B (zh) * | 2019-12-31 | 2021-08-06 | 腾讯科技(深圳)有限公司 | 数据传输方法、装置、设备及存储介质 |
CN111371690A (zh) * | 2020-02-24 | 2020-07-03 | 迈普通信技术股份有限公司 | 流量调控方法、装置、网络设备及计算机可读存储介质 |
CN112039727B (zh) * | 2020-08-26 | 2022-04-01 | 北京字节跳动网络技术有限公司 | 数据传输方法、装置、电子设备及存储介质 |
CN113162864B (zh) * | 2021-04-25 | 2022-11-08 | 中国工商银行股份有限公司 | RoCE网络流量控制方法、装置、设备及存储介质 |
CN113709056B (zh) * | 2021-08-26 | 2022-09-09 | 无锡沐创集成电路设计有限公司 | 内存流量控制方法、装置、存储介质及电子设备 |
CN115085890B (zh) * | 2022-06-23 | 2024-06-25 | 云合智网(上海)技术有限公司 | 数据中心网络芯片优化tcp rto重传等待时间的方法 |
CN115314445B (zh) * | 2022-08-26 | 2023-12-12 | 网易(杭州)网络有限公司 | 数据报文传输方法及装置、存储介质和电子设备 |
CN115883466B (zh) * | 2023-03-03 | 2023-06-16 | 苏州浪潮智能科技有限公司 | 交换机的控制方法及装置、存储介质及电子装置 |
CN115996197B (zh) * | 2023-03-17 | 2023-06-16 | 之江实验室 | 一种流量拥塞前置的分布式计算流量仿真系统与方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102594669A (zh) * | 2012-02-06 | 2012-07-18 | 福建星网锐捷网络有限公司 | 数据报文的处理方法、装置及设备 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004040854A1 (ja) * | 2002-10-30 | 2004-05-13 | Fujitsu Limited | L2スイッチ |
US8375192B2 (en) * | 2008-12-16 | 2013-02-12 | Sandisk Il Ltd. | Discardable files |
CN107493238A (zh) * | 2016-06-13 | 2017-12-19 | 华为技术有限公司 | 一种网络拥塞控制方法、设备及系统 |
-
2018
- 2018-01-19 CN CN201810052607.2A patent/CN110061923B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102594669A (zh) * | 2012-02-06 | 2012-07-18 | 福建星网锐捷网络有限公司 | 数据报文的处理方法、装置及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN110061923A (zh) | 2019-07-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110061923B (zh) | 流量控制方法、装置、交换机、发送端服务器及介质 | |
CN107204931B (zh) | 通信装置和用于通信的方法 | |
US11916782B2 (en) | System and method for facilitating global fairness in a network | |
US10129153B2 (en) | In-line network accelerator | |
US10135735B2 (en) | Method and system for managing flows in a network | |
WO2019033857A1 (zh) | 报文控制方法及网络装置 | |
CN107787570B (zh) | 网络接口卡和使能网络接口卡间通信的方法 | |
CN102356601B (zh) | 网络中的路径特性 | |
US10728156B2 (en) | Scalable, low latency, deep buffered switch architecture | |
US20150229575A1 (en) | Flow control in a network | |
US9118580B2 (en) | Communication device and method for controlling transmission priority related to shared backup communication channel | |
US8218440B2 (en) | High speed transmission protocol | |
US20150195209A1 (en) | Congestion Notification in a Network | |
CN110679121B (zh) | 全结构范围的带宽管理 | |
US7613116B1 (en) | Method and apparatus for preventing head of line blocking among ethernet switches | |
RU2580395C2 (ru) | Способ и система реализации сквозного иерархического качества обслуживания | |
US20230142425A1 (en) | Virtual dual queue core stateless active queue management (agm) for communication networks | |
US20160248691A1 (en) | Downlink Flow Management | |
US9172653B2 (en) | Sending request messages to nodes indicated as unresolved | |
CN108243117B (zh) | 一种流量监控方法、装置及电子设备 | |
CN108322402B (zh) | 报文处理方法、设备及系统 | |
US10291517B1 (en) | Generating a dummy VLAN tag for indicating quality of service classification information in a distributed routing system | |
TW202335471A (zh) | 網路流壅塞管理裝置及其方法 | |
TWI831622B (zh) | 網路流壅塞管理裝置及其方法 | |
US8873389B1 (en) | Method for flow control in a packet switched network |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |