CN110048957A - 一种流量控制方法、装置及虚拟延伸接入系统 - Google Patents
一种流量控制方法、装置及虚拟延伸接入系统 Download PDFInfo
- Publication number
- CN110048957A CN110048957A CN201910339219.7A CN201910339219A CN110048957A CN 110048957 A CN110048957 A CN 110048957A CN 201910339219 A CN201910339219 A CN 201910339219A CN 110048957 A CN110048957 A CN 110048957A
- Authority
- CN
- China
- Prior art keywords
- thresholding
- target
- pex
- flow control
- queue
- 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.)
- Granted
Links
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
- H04L47/20—Traffic policing
-
- 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/30—Flow control; Congestion control in combination with information about buffer occupancy at either end or at transit nodes
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本公开提供一种流量控制方法、装置及虚拟延伸接入系统,该方法包括:监控本地缓存占用状态;若本地目标扩展口的第一优先级队列缓存占用达到第一门限,则通过所述目标PEX上的级联口向CB发送第一流控报文,以使该CB对第一目标虚拟队列进行流量控制。应用本公开实施例可以细化流量控制过程中的反压粒度,避免对未发生拥塞的流量的正常转发的影响。
Description
技术领域
本公开涉及网络通信技术领域,尤其涉及一种流量控制方法、装置及虚拟延伸接入系统。
背景技术
虚拟延伸接入是指通过标准化协议实现设备端口拉远功能。业务路由器虚拟延伸接入系统包括业务路由器(也可以称为控制桥(Controlling Bridge,简称CB))、延伸装置(也可以称为端口扩展器(Port Extender,简称PEX)以及配套网管。通过对CB与PEX之间的级联口启用标准IEEE802.1BR协议,实现端口拉远功能,用户设备通过PEX接入CB,逻辑上CB与PEX属于同一台设备。
由于级联口及CB上行口在实际组网中多为100G接口,而PEX上的扩展口(PEX连接用户设备的端口)多为10G接口或1G接口,因此从CB侧往PEX侧的下行流量往往会存在突发,而PEX的缓存通常较小,从而容易导致PEX上缓存溢出丢包。
发明内容
本公开提供一种流量控制方法、装置及虚拟延伸接入系统,以解决现有虚拟延伸接入系统的流量控制过程中反压粒度过大的问题。
根据本公开实施例的第一方面,提供一种流量控制方法,应用于虚拟延伸接入系统中的目标PEX,所述虚拟延伸接入系统还包括CB,所述CB上的级联口的成员口分配有多个虚拟优先级队列,所述虚拟优先级队列与指定扩展口的优先级队列一一对应,所述指定扩展口为该级联口下挂的PEX上的扩展口,所述方法包括:
监控本地缓存占用状态;
若本地目标扩展口的第一优先级队列缓存占用达到第一门限,则通过所述目标PEX上的级联口向CB发送第一流控报文,以使该CB对第一目标虚拟队列进行流量控制;
其中,所述第一流控报文中携带第一ECID和第一队列优先级;所述第一ECID为所述目标扩展口对应的ECID,所述第一队列优先级为所述第一优先级队列对应的优先级,所述第一目标虚拟队列为与所述第一ECID以及所述第一队列优先级匹配的虚拟优先级队列。
根据本公开实施例的第二方面,提供一种流量控制装置,应用于虚拟延伸接入系统中的目标PEX,所述虚拟延伸接入系统还包括CB,所述CB上的级联口的成员口分配有多个虚拟优先级队列,所述虚拟优先级队列与指定扩展口的优先级队列一一对应,所述指定扩展口为该级联口下挂的PEX上的扩展口,所述装置包括:
监控单元,用于监控本地缓存占用状态;
判断单元,用于判断所述目标PEX的目标扩展口的第一优先级队列缓存占用是否达到第一门限;
发送单元,用于若所述目标扩展口的第一优先级队列缓存占用达到第一门限,则通过所述目标PEX上的级联口向CB发送第一流控报文,以使该CB对第一目标虚拟队列进行流量控制;
其中,所述第一流控报文中携带第一ECID和第一队列优先级;所述第一ECID为所述目标扩展口对应的ECID,所述第一队列优先级为所述第一优先级队列对应的优先级,所述第一目标虚拟队列为与所述第一ECID以及所述第一队列优先级匹配的虚拟优先级队列。
根据本公开实施例的第三方面,提供一种虚拟延伸接入系统,包括:CB和PEX;所述CB上的级联口的成员口分配有多个虚拟优先级队列,所述虚拟优先级队列与指定扩展口的优先级队列一一对应,所述指定扩展口为该级联口下挂的PEX上的扩展口;其中:
所述PEX,用于监控本地缓存占用状态,并若本地目标扩展口的第一优先级队列缓存占用达到第一门限,则通过所述目标PEX上的级联口向CB发送第一流控报文;
其中,所述第一流控报文中携带第一ECID和第一队列优先级;所述第一ECID为所述目标扩展口对应的ECID,所述第一队列优先级为所述第一优先级队列对应的优先级;
所述CB,用于当接收到所述第一流控报文时,对第一目标虚拟队列进行流量控制;
其中,所述第一目标虚拟队列为与所述第一ECID以及所述第一队列优先级匹配的虚拟优先级队列。
根据本公开实施例的第三方面,提供一种流量控制装置,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可读指令,所述处理器被所述机器可读指令促使执行上述流量控制方法。
根据本公开实施例的第四方面,提供一种机器可读存储介质,存储有机器可执行指令,在被处理器调用和执行时,所述机器可执行指令促使所述处理器执行上述流量控制方法。
应用本公开实施例,通过分别为CB上的级联口的成员口分配多个虚拟优先级队列,该虚拟优先级队列与该级联口下挂的PEX上的扩展口的优先级队列一一对应,若目标PEX上的目标扩展口的第一优先级队列缓存占用达到第一门限,则通过目标PEX上的级联口向CB发送第一流控报文,由CB对第一目标虚拟队列进行流量控制,实现了针对PEX上的单个扩展口的单个优先级队列的流量控制,细化了流量控制过程中的反压粒度,避免了对未发生拥塞的流量的正常转发的影响。
附图说明
图1是本公开实施例提供的一种流量控制方法的流程示意图;
图2是本公开实施例提供的一种具体应用场景的架构示意图;
图3是本公开实施例提供的一种流量控制的示意图;
图4是本公开实施例提供的一种流量控制装置的结构示意图;
图5是本公开实施例提供的一种虚拟延伸接入系统的结构示意图;
图6是本公开实施例提供的一种量控制装置的硬件结构示意图。
具体实施方式
目前,主要通过在级联口上启用PFC(Priority-based Flow Control,基于优先级的流量控制)流控机制,将流量反压到CB上进行缓存,以避免突发造成PEX缓存溢出丢包。
然而实践发现,目前的PFC流控机制是针对整个级联口的某个优先级队列,即当某个级联口下挂的某个扩展口的某个优先级队列发生流量拥塞,该级联口下挂的全部扩展口的该优先级队列的流量均会进行反压,反压粒度过大,容易对未发生拥塞的流量的正常转发造成影响。
为了使本技术领域的人员更好地理解本公开实施例中的技术方案,并使本公开实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本公开实施例中技术方案作进一步详细的说明。
请参见图1,为本公开实施例提供的一种流量控制方法的流程示意图,其中,该流量控制方法可以应用于包括CB和PEX的虚拟延伸接入系统中的任一PEX(本文中称为目标PEX),如图1所示,该方法可以包括:
步骤101、监控本地缓存占用状态。
本公开实施例中,虚拟延伸接入系统中的PEX可以监控本地缓存占用状态。
其中,本地缓存占用状态可以包括但不限于:PEX上任一扩展口的任一优先级队列的缓存占用状态、任一扩展口的缓存占用状态或/和PEX的缓存占用状态。
步骤102、若本地目标扩展口的第一优先级队列缓存占用达到第一门限,则通过目标PEX上的级联口向CB发送第一流控报文,以使该CB对第一目标虚拟队列进行流量控制。
本公开实施例中,目标扩展口并不特指某一固定的扩展口,而是可以指代目标PEX上的任一扩展口,第一优先级队列可以指代目标扩展口的任一优先级队列。
本公开实施例中,为了细化流量控制时的反压粒度,可以分别为CB上的级联口的成员口分配多个虚拟优先级队列,该虚拟优先级队列与指定扩展口的优先级队列一一对应,该指定扩展口为该级联口下挂的PEX上的扩展口。
举例来说,假设CB上的级联口1包括成员口1和成员口2,CB通过级联口与PEX1连接,PEX1上包括扩展口1~3,扩展口1~3上分别存在8个优先级队列(即共24(8*3)个优先级队列),则分别针对扩展口1~3,在成员口1和成员口2上分别分配8个虚拟优先级队列,即成员口1和成员口2上均分配有24(8*3)个虚拟优先级队列,分别对应扩展口1~3上的各8个优先级队列。例如,成员口1上的虚拟优先级队列11对应扩展口1的优先级队列1(队列优先级为0),成员口1上的虚拟优先级队列12对应扩展口1的优先级队列2(队列优先级为1)…成员口1上的虚拟优先级队列18对应扩展口1的优先级队列8(队列优先级为7)…成员口1上的虚拟优先级队列23对应扩展口2的优先级队列3(队列优先级为2)…成员口1上的虚拟优先级队列38对应扩展口3的优先级队列8(队列优先级为7),即成员口1上包括虚拟优先级队列11~18(分别对应扩展口1的优先级队列1~8)、虚拟优先级队列21~28(分别对应扩展口2的优先级队列1~8),虚拟优先级队列31~38(分别对应扩展口3的优先级队列1~8)。
为便于描述和理解,下文中均以一个扩展口对应8个优先级队列(队列优先级依次为0~7)为例进行说明。
本公开实施例中,若目标PEX监控到本地目标扩展口的第一优先级队列缓存占用达到预设门限(本文中称为第一门限,其值可以根据实际场景设定),则目标PEX可以通过目标PEX上的级联口向CB发送用于触发CB对目标扩展口的第一优先级队列进行流量控制的流控报文(本文中称为第一流控报文)。
其中,该第一流控报文中可以携带目标扩展口对应的ECID(本文中称为第一ECID)和第一优先级队列对应的队列优先级(本文中称为第一队列优先级)
在一个示例中,若目标PEX上的级联口包括多个成员口,则目标PEX需要将流控报文(包括但不限于第一流控报文以及下文中的第二流控报文、第三流控报文以及第四流控报文)广播到该级联口的全部成员口,并由各成员口透传到CB。
本公开实施例中,CB从级联口的成员口接收到第一流控报文时,可以获取第一流控报文中携带的第一ECID和第一队列优先级,根据第一ECID和第一队列优先级确定匹配的虚拟优先级队列(本文中称为第一目标虚拟队列),并对第一目标虚拟队列进行流量控制。例如,停止发送第一目标虚拟队列中的报文一定时间(该时间可以携带在第一流控报文中)。
举例来说,任一上一示例为例,假设PEX1上的扩展口1对应的ECID为ECID1,则当PEX1监控到扩展口1的优先级队列1的缓存占用量达到第一门限时,PEX1可以通过级联口向CB发送携带ECID1和队列优先级0的第一流控报文;CB从成员口1接收到该第一流控报文时,可以根据ECID1和队列优先级0确定匹配的虚拟优先级队列为虚拟优先级队列11(即第一目标虚拟队列为虚拟优先级队列11),进而,CB可以停止发送虚拟优先级队列11中的报文一定时间;CB从成员口2接收到该第一流控报文时的处理同理可得。
可见,在图1所示方法流程中,通过分别为CB上的级联口的成员口分配多个虚拟优先级队列,该虚拟优先级队列与该级联口下挂的PEX上的扩展口的优先级队列一一对应,若PEX监控到本地任一扩展口的任一优先级队列缓存占用达到预设门限,则可以通过PEX上的级联口向CB发送流控报文,由CB对对应的虚拟优先级队列进行流量控制,实现了针对PEX上的单个扩展口的单个优先级队列的流量控制,细化了流量控制过程中的反压粒度,避免了对未发生拥塞的流量的正常转发的影响。
在本公开其中一个实施例中,上述监控本地缓存占用状态之后,还可以包括:
判断目标扩展口的缓存占用是否达到第二门限;
若达到第二门限,则通过目标PEX上的级联口向CB发送第二流控报文,以使该CB对第二目标虚拟队列进行流量控制;
其中,第二流控报文中携带第一ECID,第二目标虚拟队列为与第一ECID匹配的虚拟优先级队列;
若未达到第二门限,则当本地目标扩展口的第一优先级队列缓存占用达到第一门限时,执行上述通过目标PEX上的级联口向CB发送第一流控报文的步骤。
在该实施例中,为了提高流量控制的灵活性,除了可以设置用于触发对扩展口的优先级队列进行流量控制的门限(如上述第一门限)之外,还可以设置用于触发对扩展口进行流量控制的门限。
示例性的,用于触发对扩展口进行流量控制的门限高于用于触发对该扩展口的优先级队列进行流量控制的门限。
在该实施例中,目标PEX除了可以监控目标扩展口的各优先级队列的缓存占用之外,还可以监控目标扩展口的缓存占用,并判断目标扩展口的缓存占用是否达到预设门限(本文中称为第二门限,其值可以根据实际场景设定)。
若目标扩展口的缓存占用达到第二门限,目标PEX可以通过目标PEX上的级联口向CB发送用于触发CB对目标扩展口进行流量控制的流控报文(本文中称为第二流控报文)。
其中,第二流控报文中可以携带目标扩展口对应的ECID(即第一ECID)。
CB从级联口的成员口接收到第二流控报文时,可以获取该第二流控报文中携带的第一ECID,根据第一ECID确定匹配的虚拟优先级队列(本文中称为第二目标虚拟队列),并对第二目标虚拟队列进行流量控制,例如,停止发送第二目标虚拟队列中的报文一定时间(该时间可以携带在第二流控报文中)。
举例来说,任一上一示例为例,若PEX1监控到扩展口1的缓存占用量达到第二门限,则PEX1可以通过级联口向CB发送携带ECID1的第二流控报文;CB从成员口1接收到该第二流控报文时,可以根据ECID1确定匹配的虚拟优先级队列为虚拟优先级队列11~18(即第二目标虚拟队列为虚拟优先级队列11~18),进而,CB可以停止发送虚拟优先级队列11~18中的报文一定时间;CB从成员口2接收到该第二流控报文时的处理同理可得。
在该实施例中,若目标扩展口的缓存占用未达到第二门限,则可以进一步判断目标扩展口中的第一优先级队列的缓存占用是否达到第一门限,并当达到第一门限时,按照上述实施例中描述的方式进行处理。
进一步地,在一个示例中,上述监控本地缓存占用状态之后,还可以包括:
判断目标PEEX的缓存占用是否达到第三门限;
若达到第三门限,则通过目标PEX上的级联口向CB发送第三流控报文,以使该CB对目标PEX进行流量控制;
其中,第三门限大于第二门限;
若未达到第三门限,则执行上述判断目标扩展口的缓存占用是否达到第二门限的步骤。
在该示例中,为了进一步提高流量控制的灵活性,除了可以设置用于触发对扩展口的优先级队列进行流量控制的门限(如上述第一门限)和用于触发对扩展口进行流量控制的门限(如上述第二门限)之外,还可以设置用于触发对PEX进行流量控制的门限。
示例性的,用于触发对PEX进行流量控制的门限大于用于触发对扩展口进行流量控制的门限,也大于用于触发对扩展口的优先级队列进行流量控制的门限。
在该示例中,目标PEX还可以监控自身缓存占用,并判断自身缓存占用是否大于预设门限(本文中称为第三门限,其值可以根据实际场景设定)。
若目标PEX的缓存占用大于第三门限,则目标PEX可以通过级联口向CB发送用于触发CB对目标PEX进行流量控制的流控报文(本文中称为第三流控报文)。
CB从级联口的成员口接收到第三流控报文时,可以对目标PEX进行流量控制,即停止向目标PEX发送流量一定时间(该时间可以携带在第三流控报文中)。
其中,上述第三门限大于上述第一门限,也大于上述第二门限。
在该示例中,若目标PEX的缓存占用未达到第三门限,则目标PEX可以进一步判断目标扩展口的缓存占用是否达到第二门限,并按照上述实施例中描述的方式进行处理。
需要说明的是,在本公开实施例中,不同优先级队列对应的第一门限可以相同,也可以不同;不同扩展口对应的第二门限可以相同,也可以不同;不同PEX对应的第三门限可以相同,也可以不同。
在本公开其中一个实施例中,上述监控本地缓存占用状态之后,还可以包括:
判断目标PEX的缓存占用是否达到第三门限;
若达到第三门限,则通过目标PEX上的级联口向CB发送第三流控报文,以使该CB对目标PEX进行流量控制;
其中,第三门限大于第一门限;
若未达到第三门限,则当本地目标扩展口的第一优先级队列缓存占用达到第一门限时,执行上述通过所述目标PEX上的级联口向CB发送第一流控报文的步骤。
在该实施例中,为了提高流量控制的灵活性,除了可以设置用于触发对扩展口的优先级队列进行流量控制的门限(如上述第一门限)之外,还可以设置用于触发对PEX进行流量控制的门限(如上述第三门限)。
示例性的,第三门限大于第一门限。
在该实施例中,目标PEX还可以监控自身缓存占用量,并判断自身缓存占用量是否达到第三门限。
若目标PEX的缓存占用量达到第三门限,则目标PEX可以通过级联口向CB发送第三流控报文,其具体实现可以参见上述方法实施例中的相关描述,本公开在此不再赘述。
若目标PEX的缓存占用量未达到第三门限,则目标PEX可以进一步判断目标扩展口的第一优先级队列是否达到第一门限,并按照上述方法实施例中描述的方式进行处理。
为了使本领域技术人员更好地理解本公开实施例提供的技术方案,下面结合具体应用场景对本公开实施例提供的技术方案进行说明。
请参见图2,为本公开提供的一种具体应用场景的架构示意图,如图2所示,在该应用场景中,CB200通过级联口210与PEX300连接,并通过级联口220与PEX400连接,级联口210包括成员口211和成员口212(未在图2中示出),PEX300包括扩展口310和扩展口320。
其中,扩展口310对应的ECID为ECID1,扩展口320对应的ECID为ECID2。
在该实施例中,PEX上设置有三级反压门限:优先级队列反压门限(如上述第一门限)、扩展口反压门限(如上述第二门限)以及PEX反压门限(如上述第三门限);其中,优先级反压门限<扩展口反压门限<PEX反压门限。
CB上的成员口211和成员212分别为下挂的PEX(即PEX300)的各扩展口(即扩展口310和扩展口320)分配有8个虚拟优先级队列;其中,成员口211上对应扩展口310分配的8个虚拟优先级队列分别为虚拟优先级队列2110~2117(对应的队列优先级分别为0~7)。
在该实施例中,虚拟队列优先级按照如下策略进行调度:扩展口间按RR(Round-Robin,轮询调度)调度策略进行调度,扩展口内按SP(Strict Priority,严格优先级)调度策略进行调度。
在该实施例中,流量控制实现如下(以PEX300为例):
PEX300分别监控自身缓存占用状态、各扩展口缓存占用状态以及各扩展口的各优先级队列的缓存占用状态。
若PEX300监控到自身缓存占用状态达到PEX反压门限,则PEX300可以通过级联口向CB200发送触发CB200对PEX300进行流量控制的流控报文301。
示例性的,该流控报文可以为常规的Pause(暂停)帧,其具体格式在此不做赘述。
其中,PEX300发送流控报文时,均广播到本PEX的所有级联成员口,再由PEX级联成员口透传到的CB200。
CB200从成员口211和成员口212接收到流控报文301时,停止向PEX300发送流量一定时间(该时间携带在流控报文301中)。
若PEX300的缓存占用状态未达到PEX反压门限,但扩展口310的缓存占用达到扩展口反压门限,则PEX300可以通过级联口向CB200发送携带ECID1的流控报文302。
CB200从成员口211和成员口212接收到流控报文302时,可以获取流控报文302中携带的ECID1,根据ECID1确定匹配的目标虚拟队列,并停止发送目标虚拟队列中的报文一定时间(该时间携带在流控报文302中)。
以成员口211的处理为例,CB200根据ECID1确定匹配的目标虚拟队列为虚拟优先级队列2110~2117,CB200可以停止发送虚拟优先级队列2110~2117中的报文一定时间。
若PEX300的缓存占用状态未达到PEX反压门限,且扩展口310的缓存占用未达到扩展口反压门限,但扩展口310的优先级队列7(对应的队列优先级为7)的缓存占用量达到优先级队列反压门限,则PEX300可以通过级联口向CB200发送携带ECID1和队列优先级7的流控报文303。
CB200从成员口211和成员212接收到流控报文303时,可以获取流控报文303中携带的ECID1和队列优先级7,根据ECID1和队列优先级7确定匹配的目标虚拟队列,并停止发送目标虚拟队列中的报文一定时间(该时间携带在流控报文303中)。
仍以成员口211的处理为例,CB200根据ECID1和队列优先级7确定匹配的目标虚拟队列为虚拟优先级队列2117,CB200可以停止发送虚拟优先级队列2117中的报文一定时间。
其中,CB200针对成员口211进行流量控制的示意图可以如图3所示。
在该实施例中,流控报文302和流控报文303可以通过对PFC流控帧进行改造得到,从PFC流控帧的Pad填充字段中预留4字节用于封装ECID。
通过以上描述可以看出,在本公开实施例提供的技术方案中,通过分别为CB上的级联口的成员口分配多个虚拟优先级队列,该虚拟优先级队列与该级联口下挂的PEX上的扩展口的优先级队列一一对应,若目标PEX上的目标扩展口的第一优先级队列缓存占用达到第一门限,则通过目标PEX上的级联口向CB发送第一流控报文,由CB对第一目标虚拟队列进行流量控制,实现了针对PEX上的单个扩展口的单个优先级队列的流量控制,细化了流量控制过程中的反压粒度,避免了对未发生拥塞的流量的正常转发的影响。
请参见图4,为本公开实施例提供的一种流量控制装置的结构示意图,其中,该装置可以应用于上述方法实施例中的目标PEX,如图4所示,该流量控制装置可以包括:
监控单元410,用于监控本地缓存占用状态;
判断单元420,用于判断所述目标PEX的目标扩展口的第一优先级队列缓存占用是否达到第一门限;
发送单元430,用于若所述目标扩展口的第一优先级队列缓存占用达到第一门限,则通过所述目标PEX上的级联口向CB发送第一流控报文,以使该CB对第一目标虚拟队列进行流量控制;
其中,所述第一流控报文中携带第一转发通道标识ECID和第一队列优先级;所述第一ECID为所述目标扩展口对应的ECID,所述第一队列优先级为所述第一优先级队列对应的优先级,所述第一目标虚拟队列为与所述第一ECID以及所述第一队列优先级匹配的虚拟优先级队列。
在可选实施例中,所述判断单元420,还用于判断所述目标扩展口的缓存占用是否达到第二门限;
所述发送单元430,还用于若所述目标扩展口的缓存占用达到第二门限,则通过所述目标PEX上的级联口向CB发送第二流控报文,以使该CB对第二目标虚拟队列进行流量控制;
其中,所述第二门限大于所述第一门限,所述第二流控报文中携带所述第一ECID,所述第二目标虚拟队列为与所述第一ECID匹配的虚拟优先级队列;
所述发送单元430,还用于若所述目标扩展口的缓存占用未达到第二门限,则当本地目标扩展口的第一优先级队列缓存占用达到第一门限时,通过所述目标PEX上的级联口向CB发送第一流控报文。
在可选实施例中,所述判断单元420,还用于判断所述目标PEX的缓存占用是否达到第三门限;
所述发送单元430,还用于若所述目标PEX的缓存占用达到第三门限,则通过所述目标PEX上的级联口向CB发送第三流控报文,以使该CB对所述目标PEX进行流量控制;
其中,所述第三门限大于所述第二门限;
所述判断单元420,还用于若所述目标PEX的缓存占用未达到第三门限,则判断所述目标扩展口的缓存占用是否达到第二门限。
在可选实施例中,所述判断单元420,还用于判断所述目标PEX的缓存占用是否达到第三门限;
所述发送单元430,还用于若所述目标PEX的缓存占用达到第三门限,则通过所述目标PEX上的级联口向CB发送第三流控报文,以使该CB对所述目标PEX进行流量控制;
其中,所述第三门限大于所述第一门限;
所述发送单元430,还用于若所述目标PEX的缓存占用未达到第三门限,则当本地目标扩展口的第一优先级队列缓存占用达到第一门限时,通过所述目标PEX上的级联口向CB发送第一流控报文。
请参见图5,为本公开实施例提供的一种虚拟延伸接入系统的结构示意图,如图5所示,该虚拟延伸接入系统可以包括:CB510和PEX520;其中:
所述PEX520,用于监控本地缓存占用状态,并若本地目标扩展口的第一优先级队列缓存占用达到第一门限,则通过所述目标PEX上的级联口向CB发送第一流控报文;
其中,所述第一流控报文中携带第一转发通道标识ECID和第一队列优先级;所述第一ECID为所述目标扩展口对应的ECID,所述第一队列优先级为所述第一优先级队列对应的优先级;
所述CB510,用于当接收到所述第一流控报文时,对第一目标虚拟队列进行流量控制;
其中,所述第一目标虚拟队列为与所述第一ECID以及所述第一队列优先级匹配的虚拟优先级队列。
在可选实施例中,所述CB510,还用于当接收到第二流控报文时,对第二目标虚拟队列进行流量控制;
其中,所述第二流控报文为PEX520上的目标扩展口的缓存占用达到第二门限时发送的;所述第二门限大于所述第一门限,所述第二流控报文中携带所述第一ECID,所述第二目标虚拟队列为与所述第一ECID匹配的虚拟优先级队列;
或/和,
所述CB510,还用于当接收到PEX520发送的第三流控报文时,对该PEX520进行流量控制;
其中,所述第三流控报文为该PEX520的缓存占用达到第三门限时发送的,所述第三门限大于所述第一门限。
请参见图6,为本发明实施例提供的一种流量控制装置的硬件结构示意图。该流量控制装置可以包括处理器601、存储有机器可执行指令的机器可读存储介质602。处理器601与机器可读存储介质602可经由系统总线603通信。并且,通过读取并执行机器可读存储介质602中与流量控制逻辑对应的机器可执行指令,处理器601可执行上文描述的流量控制方法。
本文中提到的机器可读存储介质602可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,机器可读存储介质可以是易失存储器、非易失性存储器或者类似的存储介质。具体地,机器可读存储介质602可以是RAM(Radom Access Memory,随机存取存储器)、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、DVD等),或者类似的存储介质,或者它们的组合。
本发明实施例还提供了一种包括机器可执行指令的机器可读存储介质,例如图6中的机器可读存储介质602,所述机器可执行指令可由流量控制装置中的处理器601执行以实现以上描述的流量控制方法。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本公开方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
由上述实施例可见,通过分别为CB上的级联口的成员口分配多个虚拟优先级队列,该虚拟优先级队列与该级联口下挂的PEX上的扩展口的优先级队列一一对应,若目标PEX上的目标扩展口的第一优先级队列缓存占用达到第一门限,则通过目标PEX上的级联口向CB发送第一流控报文,由CB对第一目标虚拟队列进行流量控制,实现了针对PEX上的单个扩展口的单个优先级队列的流量控制,细化了流量控制过程中的反压粒度,避免了对未发生拥塞的流量的正常转发的影响。
本领域技术人员在考虑说明书及实践这里公开的申请后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (12)
1.一种流量控制方法,其特征在于,应用于虚拟延伸接入系统中的目标端口扩展器PEX,所述虚拟延伸接入系统还包括控制桥CB,所述CB上的级联口的成员口分配有多个虚拟优先级队列,所述虚拟优先级队列与指定扩展口的优先级队列一一对应,所述指定扩展口为该级联口下挂的PEX上的扩展口所述方法包括:
监控本地缓存占用状态;
若本地目标扩展口的第一优先级队列缓存占用达到第一门限,则通过所述目标PEX上的级联口向CB发送第一流控报文,以使该CB对第一目标虚拟队列进行流量控制;
其中,所述第一流控报文中携带第一转发通道标识ECID和第一队列优先级;所述第一ECID为所述目标扩展口对应的ECID,所述第一队列优先级为所述第一优先级队列对应的优先级,所述第一目标虚拟队列为与所述第一ECID以及所述第一队列优先级匹配的虚拟优先级队列。
2.根据权利要求1所述的方法,其特征在于,所述监控本地缓存占用状态之后,还包括:
判断所述目标扩展口的缓存占用是否达到第二门限;
若达到第二门限,则通过所述目标PEX上的级联口向CB发送第二流控报文,以使该CB对第二目标虚拟队列进行流量控制;
其中,所述第二门限大于所述第一门限,所述第二流控报文中携带所述第一ECID,所述第二目标虚拟队列为与所述第一ECID匹配的虚拟优先级队列;
若未达到第二门限,则当本地目标扩展口的第一优先级队列缓存占用达到第一门限时,执行所述通过所述目标PEX上的级联口向CB发送第一流控报文的步骤。
3.根据权利要求2所述的方法,其特征在于,所述监控本地缓存占用状态之后,还包括:
判断所述目标PEX的缓存占用是否达到第三门限;
若达到第三门限,则通过所述目标PEX上的级联口向CB发送第三流控报文,以使该CB对所述目标PEX进行流量控制;
其中,所述第三门限大于所述第二门限;
若未达到第三门限,则执行所述判断所述目标扩展口的缓存占用是否达到第二门限的步骤。
4.根据权利要求1所述的方法,其特征在于,所述监控本地缓存占用状态之后,还包括:
判断所述目标PEX的缓存占用是否达到第三门限;
若达到第三门限,则通过所述目标PEX上的级联口向CB发送第三流控报文,以使该CB对所述目标PEX进行流量控制;
其中,所述第三门限大于所述第一门限;
若未达到第三门限,则当本地目标扩展口的第一优先级队列缓存占用达到第一门限时,执行所述通过所述目标PEX上的级联口向CB发送第一流控报文的步骤。
5.一种流量控制装置,其特征在于,应用于虚拟延伸接入系统中的目标端口扩展器PEX,所述虚拟延伸接入系统还包括控制器CB,所述CB上的级联口的成员口分配有多个虚拟优先级队列,所述虚拟优先级队列与指定扩展口的优先级队列一一对应,所述指定扩展口为该级联口下挂的PEX上的扩展口所述装置包括:
监控单元,用于监控本地缓存占用状态;
判断单元,用于判断所述目标PEX的目标扩展口的第一优先级队列缓存占用是否达到第一门限;
发送单元,用于若所述目标扩展口的第一优先级队列缓存占用达到第一门限,则通过所述目标PEX上的级联口向CB发送第一流控报文,以使该CB对第一目标虚拟队列进行流量控制;
其中,所述第一流控报文中携带第一转发通道标识ECID和第一队列优先级;所述第一ECID为所述目标扩展口对应的ECID,所述第一队列优先级为所述第一优先级队列对应的优先级,所述第一目标虚拟队列为与所述第一ECID以及所述第一队列优先级匹配的虚拟优先级队列。
6.根据权利要求5所述的装置,其特征在于,
所述判断单元,还用于判断所述目标扩展口的缓存占用是否达到第二门限;
所述发送单元,还用于若所述目标扩展口的缓存占用达到第二门限,则通过所述目标PEX上的级联口向CB发送第二流控报文,以使该CB对第二目标虚拟队列进行流量控制;
其中,所述第二门限大于所述第一门限,所述第二流控报文中携带所述第一ECID,所述第二目标虚拟队列为与所述第一ECID匹配的虚拟优先级队列;
所述发送单元,还用于若所述目标扩展口的缓存占用未达到第二门限,则当本地目标扩展口的第一优先级队列缓存占用达到第一门限时,通过所述目标PEX上的级联口向CB发送第一流控报文。
7.根据权利要求6所述的装置,其特征在于,
所述判断单元,还用于判断所述目标PEX的缓存占用是否达到第三门限;
所述发送单元,还用于若所述目标PEX的缓存占用达到第三门限,则通过所述目标PEX上的级联口向CB发送第三流控报文,以使该CB对所述目标PEX进行流量控制;
其中,所述第三门限大于所述第二门限;
所述判断单元,还用于若所述目标PEX的缓存占用未达到第三门限,则判断所述目标扩展口的缓存占用是否达到第二门限。
8.根据权利要求5所述的装置,其特征在于,
所述判断单元,还用于判断所述目标PEX的缓存占用是否达到第三门限;
所述发送单元,还用于若所述目标PEX的缓存占用达到第三门限,则通过所述目标PEX上的级联口向CB发送第三流控报文,以使该CB对所述目标PEX进行流量控制;
其中,所述第三门限大于所述第一门限;
所述发送单元,还用于若所述目标PEX的缓存占用未达到第三门限,则当本地目标扩展口的第一优先级队列缓存占用达到第一门限时,通过所述目标PEX上的级联口向CB发送第一流控报文。
9.一种虚拟延伸接入系统,其特征在于,包括:控制器CB和端口扩展器PEX;所述CB上的级联口的成员口分配有多个虚拟优先级队列,所述虚拟优先级队列与指定扩展口的优先级队列一一对应,所述指定扩展口为该级联口下挂的PEX上的扩展口;其中:
所述PEX,用于监控本地缓存占用状态,并若本地目标扩展口的第一优先级队列缓存占用达到第一门限,则通过所述目标PEX上的级联口向CB发送第一流控报文;
其中,所述第一流控报文中携带第一转发通道标识ECID和第一队列优先级;所述第一ECID为所述目标扩展口对应的ECID,所述第一队列优先级为所述第一优先级队列对应的优先级;
所述CB,用于当接收到所述第一流控报文时,对第一目标虚拟队列进行流量控制;
其中,所述第一目标虚拟队列为与所述第一ECID以及所述第一队列优先级匹配的虚拟优先级队列。
10.根据权利要求9所述的虚拟延伸接入系统,其特征在于,
所述CB,还用于当接收到第二流控报文时,对第二目标虚拟队列进行流量控制;
其中,所述第二流控报文为PEX上的目标扩展口的缓存占用达到第二门限时发送的;所述第二门限大于所述第一门限,所述第二流控报文中携带所述第一ECID,所述第二目标虚拟队列为与所述第一ECID匹配的虚拟优先级队列;
或/和,
所述CB,还用于当接收到PEX发送的第三流控报文时,对该PEX进行流量控制;
其中,所述第三流控报文为该PEX的缓存占用达到第三门限时发送的,所述第三门限大于所述第一门限。
11.一种流量控制装置,其特征在于,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可读指令,所述处理器被所述机器可读指令促使执行如权利要求1-4任一项所述的流量控制方法。
12.一种机器可读存储介质,其特征在于,存储有机器可执行指令,在被处理器调用和执行时,所述机器可执行指令促使所述处理器执行如权利要求1-4任一项所述的流量控制方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910339219.7A CN110048957B (zh) | 2019-04-25 | 2019-04-25 | 一种流量控制方法、装置及虚拟延伸接入系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910339219.7A CN110048957B (zh) | 2019-04-25 | 2019-04-25 | 一种流量控制方法、装置及虚拟延伸接入系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110048957A true CN110048957A (zh) | 2019-07-23 |
CN110048957B CN110048957B (zh) | 2022-08-26 |
Family
ID=67279314
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910339219.7A Active CN110048957B (zh) | 2019-04-25 | 2019-04-25 | 一种流量控制方法、装置及虚拟延伸接入系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110048957B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102594676A (zh) * | 2012-02-13 | 2012-07-18 | 福建星网锐捷网络有限公司 | 桥端口扩展网络及其拥塞控制方法、端口扩展器和控制桥 |
US20150244629A1 (en) * | 2014-02-24 | 2015-08-27 | Broadcom Corporation | End to end flow control |
US20170118041A1 (en) * | 2015-10-21 | 2017-04-27 | Brocade Communications Systems, Inc. | Distributed rule provisioning in an extended bridge |
CN108989235A (zh) * | 2018-08-28 | 2018-12-11 | 新华三技术有限公司 | 一种报文转发控制方法及装置 |
-
2019
- 2019-04-25 CN CN201910339219.7A patent/CN110048957B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102594676A (zh) * | 2012-02-13 | 2012-07-18 | 福建星网锐捷网络有限公司 | 桥端口扩展网络及其拥塞控制方法、端口扩展器和控制桥 |
US20150244629A1 (en) * | 2014-02-24 | 2015-08-27 | Broadcom Corporation | End to end flow control |
US20170118041A1 (en) * | 2015-10-21 | 2017-04-27 | Brocade Communications Systems, Inc. | Distributed rule provisioning in an extended bridge |
CN108989235A (zh) * | 2018-08-28 | 2018-12-11 | 新华三技术有限公司 | 一种报文转发控制方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN110048957B (zh) | 2022-08-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107690161B (zh) | 一种pdu会话的处理方法及设备 | |
CN104579962B (zh) | 一种区分不同报文的QoS策略的方法及装置 | |
US9185047B2 (en) | Hierarchical profiled scheduling and shaping | |
CN106850565B (zh) | 一种高速的网络数据传输方法 | |
CN105791175B (zh) | 软件定义网络中控制传输资源的方法及设备 | |
US8553543B2 (en) | Traffic shaping method and device | |
US8059671B2 (en) | Switching device | |
EP2575329B1 (en) | Proportional bandwidth sharing of the excess part in a MEF Traffic Profile | |
US9882817B2 (en) | Inter-device policing on network interface devices in LAG configuration | |
US20030169688A1 (en) | System and method for dynamic rate flow control | |
US8553708B2 (en) | Bandwith allocation method and routing device | |
CN101299721B (zh) | 交换网报文交换方法和交换装置 | |
CN108353029A (zh) | 用于管理计算网络中的数据业务的方法和系统 | |
CN101471854A (zh) | 一种转发报文的方法及装置 | |
US20080298397A1 (en) | Communication fabric bandwidth management | |
US10263906B2 (en) | Flow scheduling device and method | |
CN105391651B (zh) | 一种虚拟光网络多层资源汇聚方法和系统 | |
CN101692648A (zh) | 一种队列调度方法及系统 | |
CN104980359A (zh) | 以太网光纤通道的流量控制方法、装置及系统 | |
CN104717159A (zh) | 一种基于存储转发交换结构的调度方法 | |
CN102957626B (zh) | 一种报文转发方法和装置 | |
WO2016082603A1 (zh) | 一种调度器及调度器的动态复用方法 | |
US20190166058A1 (en) | Packet processing method and router | |
CN108156093A (zh) | 适于低带宽弱连接环境的多应用数据传输方法和系统 | |
CN102404213A (zh) | 报文缓存管理方法及系统 |
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 | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20230627 Address after: 310052 11th Floor, 466 Changhe Road, Binjiang District, Hangzhou City, Zhejiang Province Patentee after: H3C INFORMATION TECHNOLOGY Co.,Ltd. Address before: 310052 Changhe Road, Binjiang District, Hangzhou, Zhejiang Province, No. 466 Patentee before: NEW H3C TECHNOLOGIES Co.,Ltd. |