基于优先级的流控pfc方法及发送设备、接收设备的制作方法

文档序号:7782819阅读:228来源:国知局
基于优先级的流控pfc方法及发送设备、接收设备的制作方法
【专利摘要】本发明涉及一种基于优先级的流控PFC方法及发送设备、接收设备,该方法包括:发送设备根据接收设备的标识,在发送设备中预先设置的第一对应关系中查找对应的第一虚拟通道和接收设备的优先级;发送设备通过查找到的第一虚拟通道,向接收设备发送报文,报文中包括接收设备的优先级和发送设备向接收设备发送的数据。本发明实施例通过在发送设备中配置优先级、第一虚拟通道和接收设备之间的对应关系,可以实现不同的接收设备使用不同的第一虚拟通道从发送设备接收数据,在接收设备反压或通信异常时,只需要停止该接收设备通过其对应的第一虚拟通道从发送设备接收数据,不会影响其他接收设备与发送设备的数据传输。
【专利说明】基于优先级的流控PFC方法及发送设备、接收设备
【技术领域】
[0001]本发明涉及通信【技术领域】,尤其涉及一种基于优先级的流控PFC方法及发送设备、接收设备。
【背景技术】
[0002]在多个服务器共享多个输入/输出(Input/Output,I/O)的流量控制场景中,不同设备的接收缓存空满状态不同,数据发送端设备需要根据数据接收端设备的接收缓存空满状态进行流控。在传统以太网系统结构中,一个数据接收端设备的反压将引起其他数据接收端设备与数据发送端设备的通讯同时中断。为了使其他数据接收端设备不受影响,需要对无损以太网中基于优先级的流控(Priority-Based Flow Control,PFC)功能的应用进行改进。
[0003]传统的流控机制中,当某条以太网链路出现拥塞时流控设备会阻止该链路上的所有流量。而PFC技术允许在一条以太网链路上创建最多8个虚拟通道,并为每条虚拟通道指定一个IEEE802.1P优先级,允许单独暂停和重启其中任意一条虚拟通道,同时不影响其它虚拟通道的流量。PFC技术使得网络管理员可以将其中一些优先级(通常最多8个)用于对丢包敏感的上层协议,而另一些优先级用于常规的以太网服务。
[0004]然而,现有PFC技术是基于不同业务类型间的流控,虚拟通道与业务类型存在对应关系,仅根据不同业务类型控制数据的收发。这种流控技术采用虚拟通道对应业务类型的方法。因此当某个数据接收端设备的某个业务通道反压时,将使此业务类型虚拟通道阻塞,而最终导致另一个数据接收端设备也无法正常处理此类型的业务。

【发明内容】

[0005]抟术问是页
[0006]有鉴于此,本发明要解决的技术问题是,在多个服务器共享多个1/0的流量控制场景中,如何实现某一接收设备的接收缓存空间中的数据将满进行反压时,不影响其他接收设备与发送设备的数据传输。
_7] 解决方案
[0008]为了解决上述技术问题,在第一方面,本发明提供了一种基于优先级的流控PFC方法,应用于以太网中至少两个服务器共享至少两个虚拟通道的流量控制场景,所述至少两个服务器包括至少一个发送设备和至少一个接收设备,所述PFC方法包括:
[0009]所述发送设备根据所述接收设备的标识,在所述发送设备中预先设置的第一对应关系中查找对应的第一虚拟通道和所述接收设备的优先级,所述第一对应关系包括所述接收设备的优先级、所述接收设备的标识和所述第一虚拟通道之间的对应关系,所述第一虚拟通道为所述接收设备在以太网链路上从所述发送设备接收数据的通道,其中,不同的接收设备的标识不同,所述接收设备的标识与所述第一虚拟通道存在一一对应的关系;
[0010]所述发送设备通过查找到的第一虚拟通道,向所述接收设备发送报文,所述报文中包括所述接收设备的优先级和所述发送设备向所述接收设备发送的数据。
[0011]结合第一方面,在第一方面的一种可能的实现方式中,所述发送设备根据接收设备的标识,在所述发送设备中预先设置的第一对应关系中查找对应的第一虚拟通道和所述接收设备的优先级,所述第一对应关系包括所述接收设备的优先级、所述接收设备的标识和所述第一虚拟通道之间的对应关系,包括:
[0012]所述发送设备根据所述接收设备的标识和业务类型,在所述发送设备中预先设置的所述第一对应关系中查找所述对应的第一虚拟通道和所述接收设备的优先级,所述第一对应关系包括所述业务类型、所述接收设备的优先级、所述接收设备的标识和所述第一虚拟通道之间的对应关系。
[0013]结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述发送设备根据接收设备的标识,在所述发送设备中预先设置的第一对应关系中查找对应的第一虚拟通道和所述接收设备的优先级之前,包括:
[0014]在所述以太网链路上建立所述接收设备的标识对应的第一虚拟通道,或,所述接收设备的标识和所述业务类型对应的所述第一虚拟通道;
[0015]在所述发送设备中预先设置所述第一对应关系,所述第一对应关系包括所述接收设备的优先级、所述接收设备的标识和所述第一虚拟通道之间的对应关系;或,
[0016]所述第一对应关系包括所述业务类型、所述接收设备的优先级、所述接收设备的标识和所述第一虚拟通道之间的对应关系。
[0017]结合第一方面和第一方面的第一种及第二种可能的实现方式中的任一种可能的实现方式,在第一方面的第三种可能的实现方式中,所述发送设备通过所述查找到的第一虚拟通道,向所述接收设备发送报文,包括:
[0018]所述发送设备生成虚拟局域网VLAN帧,其中,所述VLAN帧的优先级字段由所述发送设备写入查找到的所述接收设备的优先级,所述VLAN帧的有效载荷包括所述发送设备向所述接收设备发送的数据;
[0019]所述发送设备通过所述查找到的第一虚拟通道将所述VLAN帧发送至所述接收设备。
[0020]结合第一方面的第三种可能的实现方式,在第一方面的第四种可能的实现方式中,在所述发送设备通过所述查找到的第一虚拟通道,向所述接收设备发送报文之后,包括:
[0021]如果所述发送设备从所述接收设备接收到暂停OFF帧,则根据所述OFF帧中的暂停时间,暂停与所述接收设备的通讯;
[0022]其中,所述OFF帧是由所述接收设备在接收到的数据所占用的接收缓存空间高于上限阈值的状态下生成的,或者,由所述接收设备在接收到的所述业务类型的数据所占用的接收缓存空间高于上限阈值的状态下生成的。
[0023]结合第一方面的第四种可能的实现方式,在第一方面的第五种可能的实现方式中,所述暂停与所述接收设备的通讯之后,包括:
[0024]如果到达所述OFF帧中的暂停时间或所述发送设备从所述接收设备接收到连通ON帧,则恢复与所述接收设备的通讯;
[0025]其中,所述ON帧是由所述接收设备在接收到的数据所占用的接收缓存空间低于下限阈值的状态下生成的,或,由所述接收设备在接收到的所述业务类型的数据所占用的接收缓存空间低于下限阈值的状态下生成的。
[0026]在第二方面,本发明提供了一种基于优先级的流控PFC方法,应用于以太网中至少两个服务器共享至少两个虚拟通道的流量控制场景,所述至少两个服务器包括至少一个发送设备和至少一个接收设备,所述PFC方法包括:
[0027]所述接收设备通过第一虚拟通道,从所述发送设备接收报文,所述报文中包括所述接收设备的优先级和所述发送设备向所述接收设备发送的数据,所述第一虚拟通道为所述接收设备在以太网链路上从所述发送设备接收数据的通道,所述接收设备的优先级为所述发送设备在预先设置的第一对应关系中查找到的优先级,所述第一对应关系包括所述接收设备的优先级、所述接收设备的标识和所述第一虚拟通道之间的对应关系,其中,不同的接收设备的标识不同,所述接收设备的标识与所述第一虚拟通道存在一一对应的关系。
[0028]结合第二方面,在第二方面的第一种可能的实现方式中,在所述接收设备通过第一虚拟通道,从所述发送设备接收报文之前,包括:
[0029]在所述以太网链路上建立所述发送设备的标识对应的第二虚拟通道,或,所述发送设备的标识和所述业务类型对应的第二虚拟通道;
[0030]在所述接收设备中预先设置第二对应关系,所述第二对应关系包括所述发送设备的优先级、所述发送设备的标识和所述第二虚拟通道之间的对应关系;或,
[0031]所述第二对应关系包括业务类型、所述发送设备的优先级、所述发送设备的标识和所述第二虚拟通道之间的对应关系。
[0032]结合第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,所述第二对应关系中还包括所述接收设备的优先级。
[0033]结合第二方面和第二方面的第一种及第二种可能的实现方式中任一种可能的实现方式,在第二方面的第三种可能的实现方式中,所述接收设备通过第一虚拟通道,从所述发送设备接收报文,包括:
[0034]所述接收设备通过所述第一虚拟通道,从所述发送设备接收虚拟局域网VLAN帧,其中,所述VLAN帧的优先级字段由所述发送设备写入查找到的所述接收设备的优先级,所述VLAN帧的有效载荷包括所述发送设备向所述接收设备发送的数据。
[0035]结合第二方面的第三种可能的实现方式,在第二方面的第四种可能的实现方式中,所述接收设备通过第一虚拟通道,从所述发送设备接收报文之后,包括:
[0036]所述接收设备通过所述第二虚拟通道,向所述发送设备发送暂停OFF帧,所述OFF帧的优先级字段由所述接收设备写入从所述VLAN帧中获取的优先级或在所述第二对应关系中查找到的所述接收设备的优先级,
[0037]其中,所述OFF帧是由所述接收设备在接收到的数据所占用的接收缓存空间高于上限阈值的状态下生成的,或,由所述接收设备在接收到的所述业务类型的数据所占用的接收缓存空间高于上限阈值的状态下生成的。
[0038]结合第二方面的第四种可能的实现方式,在第二方面的第五种可能的实现方式中,向所述发送设备发送暂停OFF帧之后,包括:
[0039]所述接收设备通过所述第二虚拟通道,向所述发送设备发送连通ON帧,所述ON帧的优先级字段由所述接收设备写入从所述VLAN帧中获取的优先级或在所述第二对应关系中查找到的所述接收设备的优先级,
[0040]其中,所述ON帧是由所述接收设备在接收到的数据所占用的接收缓存空间低于下限阈值的状态下生成的,或者,由所述接收设备在接收到的所述业务类型的数据所占用的接收缓存空间低于下限阈值的状态下生成的。
[0041]在第三方面,本发明提供了一种发送设备,应用于以太网中至少两个服务器共享至少两个虚拟通道的流量控制场景,包括:
[0042]查找模块,用于根据接收设备的标识,在发送设备中预先设置的第一对应关系中查找对应的第一虚拟通道和所述接收设备的优先级,所述第一对应关系包括所述接收设备的优先级、所述接收设备的标识和所述第一虚拟通道之间的对应关系,所述第一虚拟通道为所述接收设备在以太网链路上从所述发送设备接收数据的通道,其中,不同的接收设备的标识不同,所述接收设备的标识与所述第一虚拟通道存在一一对应的关系;
[0043]发送模块,与所述查找模块连接,用于通过查找到的第一虚拟通道,向所述接收设备发送报文,所述报文中包括所述接收设备的优先级和所述发送设备向所述接收设备发送的数据。
[0044]结合第三方面,在第三方面的第一种可能的实现方式中,所述查找模块还被配置为,根据所述接收设备的标识和业务类型,在所述发送设备中预先设置的所述第一对应关系中查找所述对应的第一虚拟通道和所述接收设备的优先级,所述第一对应关系包括所述业务类型、所述接收设备的优先级、所述接收设备的标识和所述第一虚拟通道之间的对应关系。
[0045]结合第三方面或第三方面的第一种可能的实现方式,在第三方面的第二种可能的实现方式中,还包括:
[0046]建立模块,用于在所述以太网链路上建立所述接收设备的标识对应的所述第一虚拟通道;
[0047]所述建立模块还被配置为,在所述以太网链路上建立所述接收设备的标识和所述业务类型对应的所述第一虚拟通道;
[0048]配置模块,与所述建立模块连接,用于在所述发送设备中预先设置所述第一对应关系,所述第一对应关系包括所述接收设备的优先级、所述接收设备的标识和所述第一虚拟通道之间的对应关系;
[0049]所述配置模块还被配置为,在所述发送设备中预先设置所述第一对应关系,所述第一对应关系包括所述业务类型、所述接收设备的优先级、所述接收设备的标识和所述第一虚拟通道之间的对应关系。
[0050]结合第三方面和第三方面的第一种及第二种可能的实现方式中,在第三方面的第三种可能的实现方式中,所述发送模块包括:
[0051]生成单元,用于生成虚拟局域网VLAN帧,其中,所述VLAN帧的优先级字段由所述发送设备写入查找到的所述接收设备的优先级,所述VLAN帧的有效载荷包括所述发送设备向所述接收设备发送的数据;
[0052]导入单元,与所述生成单元连接,用于通过所述查找到的第一虚拟通道将所述VLAN帧发送至所述接收设备。
[0053]结合第三方面的第三种可能的实现方式,在第三方面的第四种可能的实现方式中,还包括:
[0054]处理模块,与所述发送模块连接,用于如果从所述接收设备接收到暂停OFF帧,则根据所述OFF帧中的暂停时间,暂停与所述接收设备的通讯;
[0055]其中,所述OFF帧是由所述接收设备在接收到的数据所占用的接收缓存空间高于上限阈值的状态下生成的,或者,由所述接收设备在接收到的所述业务类型的数据所占用的接收缓存空间高于上限阈值的状态下生成的。
[0056]结合第三方面的第四种可能的实现方式,在第三方面的第五种可能的实现方式中,所述处理模块还被配置为,如果到达所述OFF帧中的暂停时间或从所述接收设备接收到连通ON帧,则恢复与所述接收设备的通讯;
[0057]其中,所述ON帧是由所述接收设备在接收到的数据所占用的接收缓存空间低于下限阈值的状态下生成的,或者,由所述接收设备在接收到的所述业务类型的数据所占用的接收缓存空间低于下限阈值的状态下生成的。
[0058]在第四方面,本发明提供了一种接收设备,应用于以太网中至少两个服务器共享至少两个虚拟通道的流量控制场景,包括:
[0059]接收模块,用于通过第一虚拟通道,从发送设备接收报文,所述报文中包括所述接收设备的优先级和所述发送设备向所述接收设备发送的数据,所述第一虚拟通道为所述接收设备在以太网链路上从所述发送设备接收数据的通道,所述接收设备的优先级为所述发送设备在预先设置的第一对应关系中查找到的优先级,所述第一对应关系包括所述接收设备的优先级、所述接收设备的标识和所述第一虚拟通道之间的对应关系,其中,不同的接收设备的标识不同,所述接收设备的标识与所述第一虚拟通道存在一一对应的关系。
[0060]结合第四方面,在第四方面的第一种可能的实现方式中,还包括:
[0061]建立模块,用于在所述以太网链路上建立所述发送设备的标识对应的第二虚拟通道;
[0062]所述建立模块还被配置为,在所述以太网链路上建立所述发送设备的标识和所述业务类型对应的第二虚拟通道;
[0063]配置模块,与所述建立模块连接,用于在所述接收设备中预先设置所述接收设备中的第二对应关系,所述第二对应关系包括所述发送设备的优先级、所述发送设备的标识和所述第二虚拟通道之间的对应关系;
[0064]所述配置模块还被配置为,在所述接收设备中预先设置所述接收设备中的第二对应关系,所述第二对应关系包括业务类型、所述发送设备的优先级、所述发送设备的标识和所述第二虚拟通道之间的对应关系。
[0065]结合第四方面的第一种可能的实现方式,在第四方面的第二种可能的实现方式中,所述第二对应关系中还包括所述接收设备的优先级。
[0066]结合第四方面的第一种和第二种可能的实现方式,在第四方面的第三种可能的实现方式中,所述接收模块还被配置为,通过所述第一虚拟通道,从所述发送设备接收虚拟局域网VLAN帧,其中,所述VLAN帧的优先级字段由所述发送设备写入查找到的所述接收设备的优先级,所述VLAN帧的有效载荷包括所述发送设备向所述接收设备发送的数据。
[0067]结合第四方面的第三种可能的实现方式,在第四方面的第四种可能的实现方式中,还包括:[0068]发送模块,与所述接收模块连接,用于通过所述第二虚拟通道,向所述发送设备发送暂停OFF帧,所述OFF帧的优先级字段由所述接收设备写入所述VLAN帧中获取的优先级或在所述第二对应关系中查找到的所述接收设备的优先级,
[0069]其中,所述OFF帧是由所述接收设备在接收到的数据所占用的接收缓存空间高于上限阈值的状态下生成的,或者,由所述接收设备在接收到的所述业务类型的数据所占用的接收缓存空间高于上限阈值的状态下生成的。
[0070]结合第四方面的第四种可能的实现方式,在第四方面的第五种可能的实现方式中,所述发送模块还被配置为,通过所述第二虚拟通道,向所述发送设备发送连通ON帧,所述ON帧的优先级字段由所述接收设备写入从所述VLAN帧中获取的优先级或在所述第二对应关系中查找到的所述接收设备的优先级,
[0071]其中,所述ON帧是由所述接收设备在接收到的数据所占用的接收缓存空间低于下限阈值的状态下生成的,或者,由所述接收设备在接收到的所述业务类型的数据所占用的接收缓存空间低于下限阈值的状态下生成的。
[0072]有益.效果
[0073]本发明实施例通过在发送设备中配置优先级、第一虚拟通道和接收设备标识之间的对应关系,可以实现不同的接收设备使用不同的第一虚拟通道从发送设备接收数据,在接收设备出现反压或通信异常时,只需要停止该接收设备通过其对应的第一虚拟通道从发送设备接收数据,而不会影响其他接收设备与发送设备的数据传输。
[0074]根据下面参考附图对示例性实施例的详细说明,本发明的其它特征及方面将变得清楚。
【专利附图】

【附图说明】
[0075]包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本发明的示例性实施例、特征和方面,并且用于解释本发明的原理。
[0076]图1示出根据本发明实施例一的基于优先级的流控PFC方法的流程图;
[0077]图2示出根据本发明实施例二的基于优先级的流控PFC方法的流程图;
[0078]图3示出根据本发明实施例三的基于优先级的流控PFC方法的流程图;
[0079]图4示出根据本发明实施例四的基于优先级的流控PFC方法的流程图;
[0080]图5a示出根据本发明实施例五的发送设备的结构框图;
[0081]图5b示出根据本发明实施例五的发送设备的结构框图;
[0082]图6示出根据本发明实施例六的发送设备的结构框图;
[0083]图7a示出根据本发明实施例七的接收设备的结构框图;
[0084]图7b示出根据本发明实施例七的接收设备的结构框图;
[0085]图8示出根据本发明实施例八的接收设备的结构框图;
[0086]图9示出根据本发明实施例九的基于优先级的流控PFC装置的结构框图。
【具体实施方式】
[0087]以下将参考附图详细说明本发明的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。
[0088]在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
[0089]另外,为了更好的说明本发明,在下文的【具体实施方式】中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本发明同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本发明的主旨。
[0090]实施例1
[0091]图1示出根据本发明实施例一的基于优先级的流控PFC方法的流程图。如图1所示,可以应用于以太网中至少两个服务器共享至少两个虚拟通道的流量控制场景中,所述至少两个服务器可以包括至少一个发送设备和至少一个接收设备,至少两个虚拟通道可以包括不同发送设备与不同接收设备之间进行数据传输的通道。该PFC方法主要可以包括:
[0092]步骤S100、所述发送设备根据所述接收设备的标识,在所述发送设备中预先设置的第一对应关系中查找对应的第一虚拟通道和所述接收设备的优先级,所述第一对应关系包括所述接收设备的优先级、所述接收设备的标识和所述第一虚拟通道之间的对应关系,所述第一虚拟通道为所述接收设备在以太网链路上从所述发送设备接收数据的通道;其中,不同的接收设备的标识不同,所述接收设备的标识与所述第一虚拟通道存在一一对应的关系。
[0093]具体地,在以太网发送设备与接收设备进行通讯的过程中,每个接收设备可以由网络管理员配置一个唯一的标识,发送设备通过此标识可以唯一确定接收设备。一方面,不同发送设备和不同接收设备均可以接收网络管理员对其优先级进行的配置,每个发送设备或每个接收设备的优先级在所有发送设备或接收设备中唯一。例如,在以太网中至少两个服务器共享至少两个虚拟通道的流量控制场景中,包括2个发送设备(如H0ST_0、H0ST_1),则它们的优先级可分别被网络管理员设置为0、1 ;2个接收设备(如10_0、10_1),则它们的优先级也可分别被网络管理员设置为0、1。另一方面,发送设备可以接收网络管理员的配置,即在发送设备中设置接收设备与第一虚拟通道的一一对应关系,不同通道可以分别用来传输发往不同接收设备的数据,通道数目与接收设备数目相同。例如,有2个接收设备(如10_0、10_1 ),可以在发送设备端建立两条第一虚拟通道(如第一虚拟通道O、第一虚拟通道1),分别用来发送去往10_0和10_1的数据。根据接收设备的标识,发送设备可以在网络管理员为其配置的第一对应关系中查找对应的第一虚拟通道和接收设备的优先级,用于后续发送设备向接收设备发送数据,例如10_0的优先级为0,对应第一虚拟通道0,H0ST_0可以通过第一虚拟通道O向10_0发送数据。
[0094]步骤S120、所述发送设备通过所述查找到的第一虚拟通道,向所述接收设备发送报文,所述报文中包括所述接收设备的优先级和所述发送设备向所述接收设备发送的数据。
[0095]具体地,在发送设备查找到第一虚拟通道之后,发送设备可以通过与接收设备对应的第一虚拟通道与该接收设备进行通讯,即发送设备可以通过第一虚拟通道向该接收设备发送报文,并可以在该报文的优先级字段写入通过步骤SlOO查找到的该接收设备的优先级,在报文的有效载荷(Payload)中可以包括发送设备向接收设备发送的数据。
[0096]在接收设备接收到上述数据时,接收设备可以根据自身接收缓存空间的数据空满状态向发送设备返回响应。若接收设备接收缓存空间的数据将满,不能继续接收数据时,接收设备可以根据流控技术,进行反压,即指示发送设备不再继续通过该接收设备的标识对应的第一虚拟通道向该接收设备发送数据。由于不同的接收设备的标识不同,接收设备的标识与第一虚拟通道存在一一对应的关系;这样,该接收设备的反压并不影响发送设备与以太网中其他接收设备通过其他接收设备的标识对应的第一虚拟通道进行通讯,例如10_0接收缓存空间的数据将满,可以向H0ST_0反压,H0ST_0接收到反压后可以暂停与10_0通过第一虚拟通道O的通讯,但是H0ST_0仍可以与10_1通过第一虚拟通道I进行通讯。
[0097]在一种可能的实现方式中,在步骤SlOO之前该PFC方法还可以包括:
[0098]步骤S1001、在以太网链路上建立接收设备的标识对应的第一虚拟通道;
[0099]步骤S1002、在发送设备中预先设置第一对应关系,所述第一对应关系包括所述接收设备的优先级、所述接收设备的标识和所述第一虚拟通道之间的对应关系。
[0100]具体地,参见本实施例上述步骤的相关描述,若在以太网中包括2个接收设备,标识分别被网络管理员配置为10_0和10_1,可以通过网络管理员的配置在发送设备端建立两条第一虚拟通道(如第一虚拟通道O和第一虚拟通道1),结合2个接收设备的优先级,可以由网络管理员设置接收设备的优先级、接收设备的标识和第一虚拟通道之间的第一对应关系,例如,10_0的优先级为0,对应第一虚拟通道O。该第一对应关系可以用于后续确定某一接收设备的优先级和向该接收设备发送数据的第一虚拟通道。
[0101]进一步地,步骤S120还可以包括:
[0102]步骤S140、所述发送设备生成虚拟局域网VLAN帧,其中,所述VLAN帧的优先级字段由所述发送设备写入查找到的所述接收设备的优先级,所述VLAN帧的有效载荷包括所述发送设备向所述接收设备发送的数据;
[0103]步骤S160、所述发送设备通过所述查找到的第一虚拟通道将所述VLAN帧发送至所述接收设备。
[0104]具体地,在发送设备向接收设备发送报文时,发送设备首先可以通过查找第一对应关系,查找到接收设备的优先级,并在虚拟局域网VLAN帧相应的优先级字段写入接收设备的优先级,在VLAN帧的有效载荷中可以包括发送设备向接收设备发送的数据。例如,H0ST_0需要向10_0发送数据时,H0ST_0可以通过查找第一对应关系,查找到10_0的优先级为0,对应第一虚拟通道0,H0ST_0可以在VLAN帧的优先级字段写入0,将需要发送的数据写入VLAN帧的有效载荷,并通过第一虚拟通道O向10_0发送VLAN帧。
[0105]进一步地,在步骤S120之后,该PFC方法还可以包括:
[0106]步骤S170、如果所述发送设备从所述接收设备接收到暂停OFF帧,则根据所述OFF帧中的暂停时间,暂停与所述接收设备的通讯;其中,所述OFF帧是由所述接收设备在接收到的数据所占用的接收缓存空间高于上限阈值的状态下生成的。
[0107]具体地,发送设备向接收设备发送VLAN帧之后,接收设备可以根据自身接收缓存空间中的数据空满状态向发送设备返回相应的响应。如果接收设备的接收缓存空间中的数据所占用的空间高于上限阈值,接收设备可以向发送设备发送OFF帧,用来指示发送设备根据所述OFF帧中的暂停时间,暂停与该接收设备的通讯,在到达暂停时间时,发送设备可以自动恢复与该接收设备的通讯。其中,暂停时间可以由OFF帧中的暂停时间字段中的内容决定,发送设备接收到OFF帧之后,可以停止对该接收设备对应的第一虚拟通道的调度,以暂停与该接收设备的通讯。例如10_0接收到的数据所占用的接收缓存空间高于上限阈值,10_0可以向H0ST_0发送OFF帧,H0ST_0接收到OFF帧后,根据OFF帧中的暂停时间,停止对10_0对应的第一虚拟通道O的调度,暂停与10_0的通讯。其中上限阈值为该接收设备的接收缓存空间可以存储的数据量最大值,由于从接收设备发送OFF帧到发送设备接收到OFF并作出响应,需要一定的时间,在这段时间内还可能存在一些正在发送的数据需要接收设备接收,不能因为数据存满而丢弃,因此接收设备可以接收的数据量可以大于该上限阈值,即存储空间需要留有一定余量。若高于上限阈值,说明数据将满,该接收设备反压。
[0108]在一种可能的实现方式中,在步骤S170之后,还可以包括:
[0109]步骤S180、如果到达所述OFF帧中的暂停时间或所述发送设备从所述接收设备接收到连通ON帧,则恢复与所述接收设备的通讯;其中,所述ON帧是由所述接收设备在接收至IJ的数据所占用的接收缓存空间低于下限阈值的状态下生成的。
[0110]具体地,一方面,在到达暂停时间时,发送设备可以自动恢复与接收设备的通讯;另一方面,接收设备在反压之后,数据所占用的空间可能会减少,在没有到达暂停时间时,如果数据所占用的接收缓存空间低于下限阈值,接收设备可以向发送设备发送ON帧,用来指示发送设备恢复与该接收设备的通讯。例如10_0接收到的数据所占用的接收缓存空间低于下限阈值,10_0可以向H0ST_0发送ON帧,H0ST_0接收到ON帧后,可以重新开始对10_0对应的第一虚拟通道O的调度,恢复与10_0的通讯。其中下限阈值为该接收设备的接收缓存空间存储的数据量最小值,若低于下限阈值,说明该接收设备的接收缓存空间即将没有数据,发送设备可以继续向其发送数据。
[0111]在一种可能的实现方式中,发送设备还可以作为接收端,根据被网络管理员预先设置的通道与设备的对应关系通过相应的通道从其他设备接收数据。
[0112]本实施例的基于优先级的流控PFC方法,通过在发送设备中建立第一对应关系,可以实现不同的接收设备使用不同的第一虚拟通道与发送设备通讯,某一接收设备数据存满出现反压或通信异常时,只需要停止该接收设备通过其对应的第一虚拟通道与发送设备的通讯,不会影响其他接收设备与发送设备的数据传输。
[0113]实施例2
[0114]图2示出根据本发明实施例二的基于优先级的流控PFC方法的流程图。图2中标号与图1相同的步骤具有相同的功能,为简明起见,省略对这些步骤的详细说明。
[0115]如图2所示,图2所示的基于优先级的流控PFC方法与图1所示的基于优先级的流控PFC方法主要区别在于,该PFC方法包括:
[0116]步骤S200、所述发送设备根据所述接收设备的标识和业务类型,在所述发送设备中预先设置的所述第一对应关系中查找所述对应的第一虚拟通道和所述接收设备的优先级,所述第一对应关系包括所述业务类型、所述接收设备的优先级、所述接收设备的标识和所述第一虚拟通道之间的对应关系。
[0117]具体地,在发送设备被网络管理员预先设置的第一对应关系中,还可以包括接收设备的业务类型,即设置业务类型、接收设备的优先级、接收设备的标识和第一虚拟通道之间的对应关系。例如,参见本发明实施例一中基于优先级的流控PFC方法的相关描述,若以太网中包括2个接收设备(如10_0、10_1),10_0和10_1都分别包括两种业务类型(如业务类型O、业务类型1),则将10_0业务类型O的优先级设置为0,10_0业务类型I的优先级设置为1,10_1业务类型O的优先级设置为2,10_1业务类型I的优先级设置为3 ;还可以通过网络管理员在发送设备端建立四条第一虚拟通道(如第一虚拟通道O、第一虚拟通道1、第一虚拟通道2、第一虚拟通道3),第一虚拟通道O、第一虚拟通道I分别用来发送去往10_0的业务类型O和业务类型I的数据,第一虚拟通道2、第一虚拟通道3分别用来发送去往10_1的业务类型O和业务类型I的数据。这样,10_0的业务类型O的优先级为O,对应第一虚拟通道O,10_0的业务类型I的优先级为1,对应第一虚拟通道1,10_1的业务类型O的优先级为2,对应第一虚拟通道2,10_1的业务类型I的优先级为3,对应第一虚拟通道3。
[0118]在一种可能的实现方式中,在步骤S200之前,该PFC方法还可以包括:
[0119]步骤S2001、在以太网链路上建立接收设备的标识和业务类型对应的第一虚拟通道;
[0120]步骤S2002、在发送设备中预先设置第一对应关系,所述第一对应关系包括所述业务类型、所述接收设备的优先级、所述接收设备的标识和所述第一虚拟通道之间的对应关系O
[0121]具体地,参见本实施例上述步骤的相关描述,若有2个接收设备,标识分别被网络管理员设置为10_0和10_1,每个接收设备具有两种业务类型(如业务类型O、业务类型1),可以在发送设备端建立四条第一虚拟通道(如第一虚拟通道O、第一虚拟通道1、第一虚拟通道2、第一虚拟通道3),结合2个接收设备各个业务类型的优先级,可以通过网络管理员配置业务类型、优先级、接收设备的标识和第一虚拟通道的对应关系,例如,10_0的业务类型O的优先级为0,对应第一虚拟通道0,10_0的业务类型I的优先级为1,对应第一虚拟通道1,10_1的业务类型O的优先级为2,对应第一虚拟通道2,10_1的业务类型I的优先级为3,对应第一虚拟通道3。该第一对应关系可以用于后续确定某一接收设备的优先级和发送设备向该接收设备发送数据的第一虚拟通道。
[0122]在一种可能的实现方式中,在步骤S120之后,接收设备可以根据自身某一业务类型的接收缓存空间的数据空满状态向发送设备返回相应的响应。具体地,如果接收设备接收到的某一业务类型的数据所占用的接收缓存空间高于上限阈值,接收设备可以向发送设备发送OFF帧,用来指示发送设备在暂停时间内暂停与该接收设备进行该业务类型的通讯,但不影响发送设备与该接收设备进行其他业务类型的通讯。进一步地,在到达暂停时间或者该接收设备接收到的该业务类型的数据所占用的接收缓存空间低于下限阈值时,接收设备可以向发送设备发送ON帧,用来指示发送设备恢复与该接收设备进行该业务类型的通讯。例如,10_0接收到的业务类型O的数据所占用的接收缓存空间高于上限阈值,10_0可以向H0ST_0发送OFF帧,H0ST_0接收到OFF帧后,暂停与10_0通过第一虚拟通道O进行业务类型O的通讯;在10_0接收到的业务类型O的数据所占用的接收缓存空间低于下限阈值,10_0可以向H0ST_0发送ON帧,H0ST_0接收到ON帧后,恢复与10_0通过第一虚拟通道O进行业务类型O的通讯。其中,上限阈值和下限阈值可以参见本发明实施例一中基于优先级的流控PFC方法的相关描述。
[0123]本实施例的基于优先级的流控PFC方法,通过在发送设备中建立第一对应关系,可以实现不同的接收设备使用不同的第一虚拟通道与发送设备进行不同业务类型的通讯,某一接收设备的某一业务类型的数据存满出现反压或通信异常时,只需要停止该接收设备通过该业务类型对应的第一虚拟通道与发送设备进行该业务类型的通讯,不会影响该接收设备与发送设备进行其他业务类型的数据传输,同时也不会影响其他接收设备与发送设备的数据传输。
[0124]实施例三
[0125]图3示出根据本发明实施例三的基于优先级的流控PFC方法的流程图。如图3所示,该PFC方法可以应用于以太网中至少两个服务器共享至少两个虚拟通道的流量控制场景,所述至少两个服务器包括至少一个发送设备和至少一个接收设备,至少两个虚拟通道可以包括不同发送设备与不同接收设备之间进行数据传输的通道。该PFC方法主要可以包括:
[0126]步骤S300、所述接收设备通过第一虚拟通道,从所述发送设备接收报文,所述报文中包括所述接收设备的优先级和所述发送设备向所述接收设备发送的数据,所述第一虚拟通道为所述接收设备在以太网链路上从所述发送设备接收数据的通道,所述接收设备的优先级为所述发送设备在预先设置的第一对应关系中查找到的优先级,所述第一对应关系包括所述接收设备的优先级、所述接收设备的标识和所述第一虚拟通道之间的对应关系。
[0127]具体地,一方面,在以太网发送设备与接收设备进行通讯的过程中,每个发送设备或接收设备可以由网络管理员配置相应的优先级,每个发送设备或接收设备的优先级在所有发送设备或接收设备中唯一。例如,在以太网中至少两个服务器共享至少两个虚拟通道的流量控制场景中,包括2个发送设备(如HOSTJK H0ST_1),则它们的优先级可分别被网络管理员设置为0、1 ;2个接收设备(如10_0、10_1),则它们的优先级也可分别被网络管理员设置为0、1。另一方面,发送设备可以接收网络管理员的配置,即在发送设备中设置接收设备与第一虚拟通道的一一对应关系,不同通道可以分别用来传输发往不同接收设备的数据,通道数目与接收设备数目相同。例如,有2个接收设备(如10_0、10_1),可以通过网络管理员的配置在发送设备端建立两条第一虚拟通道(如第一虚拟通道O、第一虚拟通道I ),分别用来发送去往10_0和10_1的数据。接收设备可以通过其对应的第一虚拟通道接收发送设备发送的报文,例如10_0可以通过第一虚拟通道O接收H0ST_0发送的报文。
[0128]在一种可能的实现方式中,在步骤S300之前,该PFC方法还可以包括:
[0129]步骤S3001、在以太网链路上建立发送设备的标识对应的第二虚拟通道;
[0130]步骤S3002、在接收设备中预先设置第二对应关系,所述第二对应关系包括所述发送设备的优先级、所述发送设备的标识和第二虚拟通道之间的对应关系。
[0131]具体地,参见本实施例上述步骤的相关描述,若在以太网中包括2个发送设备,标识分别被网络管理员配置为H0ST_0和H0ST_1,可以通过网络管理员的配置在接收设备端建立两条第二虚拟通道(如第二虚拟通道O、第二虚拟通道I ),结合2个发送设备的优先级,可以由网络管理员设置发送设备的优先级、发送设备的标识和第二虚拟通道之间的第二对应关系,例如,H0ST_0的优先级为0,对应第二虚拟通道0,用来传输发往H0ST_0的数据。该第二对应关系可以用于后续确定某一发送设备的优先级和发送数据的第二虚拟通道。
[0132] 在一种可能的实现方式中,在接收设备中的弟二对应关系中,还可以包括接收设备的优先级。例如,参见本实施例上述步骤的相关描述,若在以太网中包括2个接收设备,标识分别为10_0和10_1,它们的优先级可分别被网络管理员设置为0、1,则在第二对应关系中,10_0的优先级为0,H0ST_0的优先级为0,且10_0通过第一虚拟通道O接收H0ST_0发送的数据,通过第二虚拟通道O向H0ST_0发送数据。
[0133]在一种可能的实现方式中,步骤S300还可以包括:
[0134]步骤S320、所述接收设备通过所述第一虚拟通道,从所述发送设备接收虚拟局域网VLAN帧,其中,所述VLAN帧的优先级字段由所述发送设备写入查找到的所述接收设备的优先级,所述VLAN帧的有效载荷包括所述发送设备向所述接收设备发送的数据。
[0135]具体地,接收设备可以根据第一对应关系,通过接收设备对应的第一虚拟通道从发送设备接收VLAN帧。例如,10_0与H0ST_0进行通讯时,H0ST_0可以根据第一对应关系,查找到10_0的优先级为0,对应第一虚拟通道0,10_0可以通过第一虚拟通道O接收VLAN帧,H0ST_0可以在VLAN帧的优先级字段写入0,将向10_0发送的数据写入VLAN帧的有效载荷。
[0136]进一步地,在步骤S300之后,该PFC方法还可以包括:
[0137]步骤S340、所述接收设备通过所述第二虚拟通道,向所述发送设备发送暂停OFF帧,所述OFF帧的优先级字段由所述接收设备写入从所述VLAN帧中获取的优先级或在所述第二对应关系中查找到的所述接收设备的优先级,
[0138]其中,所述OFF帧是由所述接收设备在接收到的数据所占用的接收缓存空间高于上限阈值的状态下生成的。
[0139]具体地,接收设备可以根据自身接收缓存空间的数据空满状态向发送设备返回相应的响应。如果接收设备接收到的数据所占用的接收缓存空间高于上限阈值,接收设备可以从接收到的VLAN帧中获取接收设备的优先级,也可以从第二对应关系中获取接收设备的优先级,并在OFF帧的优先级字段写入该接收设备的优先级,通过第二虚拟通道向发送设备发送OFF帧,用来指示发送设备根据所述OFF帧中的暂停时间,暂停与该接收设备的通讯,在到达暂停时间时,发送设备可以自动恢复与接收设备的通讯。其中,暂停时间可以由OFF帧中的暂停时间字段中的内容决定,发送设备接收到OFF帧之后,可以停止对该接收设备对应的第一虚拟通道的调度,以暂停与该接收设备的通讯。例如10_0接收到的数据所占用的接收缓存空间高于上限阈值,10_0可以通过第二虚拟通道O向H0ST_0发送OFF帧,H0ST_0接收到OFF帧后,根据OFF帧中的暂停时间,暂停与10_0的通讯。其中上限阈值为该接收设备的接收缓存空间可以存储的数据量最大值,由于从接收设备发送OFF帧到发送设备接收到OFF并作出响应,需要一定的时间,在这段时间内还可能存在一些正在发送的数据需要接收设备接收,不能因为数据存满而丢弃,因此接收设备可以存储的数据量可以大于该上限阈值,即存储空间需要留有一定余量。若高于上限阈值,说明数据将满,该接收设备反压。
[0140]在一种可能的实现方式中,在步骤S340之后,还可以包括:
[0141]步骤S360、所述接收设备通过所述第二虚拟通道,向所述发送设备发送连通ON帧,所述ON帧的优先级字段由所述接收设备写入从所述VLAN帧中获取的优先级或在所述第二对应关系中查找到的所述接收设备的优先级,
[0142]其中,所述ON帧是由所述接收设备在接收到的数据所占用的接收缓存空间低于下限阈值的状态下生成的。
[0143]具体地,接收设备在反压之后,接收到的数据所占用的接收缓存空间可能会减少,在到达暂停时间前,若接收到的数据所占用的接收缓存空间低于下限阈值,接收设备可以向发送设备发送ON帧,用来指示发送设备恢复与该接收设备的通讯。例如10_0的数据所占用的空间低于下限阈值,10_0可以通过第二虚拟通道O向发送ON巾贞,H0ST_0接收到ON帧后,恢复与10_0的通讯。其中下限阈值为该接收设备接收缓存空间存储的数据量最小值,若低于下限阈值,说明该接收设备的存储空间即将没有数据,发送设备可以继续向其发送数据。
[0144]在一种可能的实现方式中,接收设备还可以作为发送端,根据第二对应关系中第二虚拟通道、发送设备的标识与优先级的对应关系,通过第二虚拟通道向该第二虚拟通道对应的发送设备发送数据。在这种情况下,参见本发明实施例一中基于优先级的流控PFC方法的相关描述,发送设备可以作为接收端,通过对应的第二虚拟通道从接收设备接收数据。
[0145]本实施例的基于优先级的流控PFC方法,通过在发送设备中建立第一对应关系,可以实现不同的接收设备使用不同的第一虚拟通道与发送设备通讯,某一接收设备数据存满出现反压或通信异常时,只需要停止该接收设备通过其对应的第一虚拟通道与发送设备的通讯,不会影响其他接收设备与发送设备间的数据传输。
[0146]实施例4
[0147]图4示出根据本发明实施例四的基于优先级的流控PFC方法的流程图。图4中标号与图3相同的步骤具有相同的功能,为简明起见,省略对这些步骤的详细说明。
[0148]如图4所示,图4所示的基于优先级的流控PFC方法与图3所示的基于优先级的流控PFC方法主要区别在于,在步骤S300之前,该PFC方法包括:
[0149]步骤S4001、在以太网链路上建立发送设备的标识和业务类型对应的第二虚拟通道;
[0150]步骤S4002、在接收设备中预先设置第二对应关系,所述第二对应关系包括所述业务类型、所述发送设备的优先级、所述发送设备的标识和所述第二虚拟通道之间的对应关系O
[0151]具体地,在接收设备被网络管理员预先设置的第二对应关系中,还可以包括发送设备的业务类型,即设置业务类型、发送设备的优先级、发送设备的标识和第二虚拟通道之间的对应关系。例如,参见本发明实施例三中基于优先级的流控PFC方法的相关描述,若以太网中包括2个发送设备,标识分别被网络管理员设置为H0ST_0和H0ST_1,每个发送设备可以与接收设备进行两种业务类型(如业务类型O、业务类型I)的通讯,可以通过网络管理员在接收设备端建立四条第二虚拟通道(如第二虚拟通道O、第二虚拟通道1、第二虚拟通道2、第二虚拟通道3),结合2个发送设备的优先级,可以通过网络管理员配置业务类型、发送设备的优先级、发送设备的标识和第二虚拟通道的第二对应关系,例如,H0ST_0的业务类型O优先级为0,对应第二虚拟通道0,H0ST_0的业务类型I优先级为I,对应第二虚拟通道1,H0ST_1的业务类型O优先级为2,对应第二虚拟通道2,H0ST_1的业务类型I优先级为3,对应第二虚拟通道3。该第二对应关系可以用于后续确定某一发送设备的优先级和接收设备向该发送设备发送数据的第二虚拟通道。
[0152]在一种可能的实现方式中,在接收设备的第二对应关系中,还可以包括接收设备的优先级。具体示例可以参见本发明实施例三中基于优先级的流控PFC方法的相关描述。
[0153]在一种可能的实现方式中,在步骤S300之后,接收设备可以根据自身某一业务类型的接收缓存空间的数据空满状态向发送设备返回相应的响应。具体地,如果接收设备接收到的某一业务类型的数据所占用的接收缓存空间高于上限阈值,接收设备可以通过第二虚拟通道向发送设备发送OFF帧,用来指示发送设备在暂停时间段内暂停与该接收设备进行该业务类型的通讯,但不影响发送设备与该接收设备进行其他业务类型的通讯。进一步地,在到达暂停时间或者该接收设备接收到的该业务类型的数据所占用的接收缓存空间低于下限阈值时,接收设备可以通过第二虚拟通道向发送设备发送ON帧,用来指示发送设备恢复与该接收设备进行该业务类型的通讯。例如,10_0接收到的业务类型O的数据所占用的接收缓存空间高于上限阈值,10_0可以通过第二虚拟通道O向H0ST_0发送OFF帧,H0ST_0接收到OFF帧后,暂停与10_0进行业务类型O的通讯;在10_0接收到的业务类型O的数据所占用的接收缓存空间低于下限阈值,10_0可以通过第二虚拟通道O向H0ST_0发送ON巾贞,H0ST_0接收到ON帧后,恢复与10_0进行业务类型O的通讯。其中,上限阈值和下限阈值可以参见本发明实施例一中基于优先级的流控PFC方法的相关描述。
[0154]本实施例的基于优先级的流控PFC方法,通过在发送设备中建立第一对应关系,可以实现不同的接收设备使用不同的第一虚拟通道与发送设备进行不同业务类型的通讯,某一接收设备的某一业务类型的数据存满出现反压或通信异常时,只需要停止该接收设备通过该业务类型对应的第一虚拟通道与发送设备进行该业务类型的通讯,不会影响该接收设备与发送设备进行其他业务类型的数据传输,同时也不会影响其他接收设备与发送设备的数据传输。
[0155]实施例5
[0156]图5a示出根据本发明实施例五的发送设备的结构框图。如图5a所示,该发送设备500可以应用于以太网中至少两个服务器共享至少两个虚拟通道的流量控制场景,主要可以包括:
[0157]查找模块510,用于根据接收设备的标识,在发送设备中预先设置的第一对应关系中查找对应的第一虚拟通道和所述接收设备的优先级,所述第一对应关系包括所述接收设备的优先级、所述接收设备的标识和所述第一虚拟通道之间的对应关系,所述第一虚拟通道为所述接收设备在以太网链路上从所述发送设备接收数据的通道。
[0158]具体地,在以太网发送设备与接收设备进行通讯的过程中,每个接收设备可以由网络管理员配置一个唯一的标识,发送设备通过此标识可以唯一确定接收设备。一方面,不同发送设备和不同接收设备均可以接收网络管理员对其优先级进行的配置,每个发送设备或每个接收设备的优先级在所有发送设备或接收设备中唯一。例如,在以太网中至少两个服务器共享至少两个虚拟通道的流量控制场景中,包括2个发送设备(如H0ST_0、H0ST_1),则它们的优先级可分别被网络管理员设置为0、1 ;2个接收设备(如10_0、10_1),则它们的优先级也可分别被网络管理员设置为0、1。另一方面,发送设备可以接收网络管理员的配置,即在发送设备中设置接收设备与第一虚拟通道的一一对应关系,不同通道可以分别用来传输发往不同接收设备的数据,通道数目与接收设备数目相同。例如,有2个接收设备(如10_0、10_1),可以通过网络管理员的配置在发送设备端建立两条第一虚拟通道(如第一虚拟通道O、第一虚拟通道I),分别用来发送去往10_0和10_1的数据。根据接收设备的标识,查找模块510可以在发送设备500中的第一对应关系中查找对应的第一虚拟通道和接收设备的优先级,用于后续发送设备500向接收设备发送数据,例如H0ST_0的查找模块510可以在H0ST_0的第一对应关系中查找到10_0的优先级为O,对应第一虚拟通道O,用于后续H0ST_0可以通过第一虚拟通道O向10_0发送数据。
[0159]发送模块520,与所述查找模块510连接,用于通过所述查找到的第一虚拟通道,向所述接收设备发送报文,所述报文中包括所述接收设备的优先级和所述发送设备向所述接收设备发送的数据。
[0160]具体地,在查找模块510查找到第一虚拟通道之后,发送设备500可以通过与接收设备对应的第一虚拟通道与该接收设备进行通讯,即发送设备500的发送模块520可以通过第一虚拟通道向该接收设备发送报文,并可以在该报文的优先级字段可以写入查找模块510查找到的该接收设备的优先级,在报文的有效载荷(Payload)中可以包括发送设备500向接收设备发送的数据。
[0161]在接收设备接收到上述数据时,接收设备可以根据自身接收缓存空间的数据空满状态向发送设备500返回响应。若接收设备接收缓存空间的数据将满,不能继续接收数据时,接收设备可以根据流控技术,进行反压,即指示发送设备500不再继续通过该接收设备对应的第一虚拟通道向该接收设备发送数据。这样,接收设备的反压并不影响以太网中其他接收设备与发送设备500通过其他接收设备对应的第一虚拟通道进行通讯,例如10_0接收缓存空间的数据将满,可以向H0ST_0反压,H0ST_0接收到反压后可以暂停与10_0通过第一虚拟通道O的通讯,但是H0ST_0仍可以与10_1通过第一虚拟通道I进行通讯。
[0162]图5b示出根据本发明实施例五的发送设备的结构框图。如图5b所示,发送设备500还可以包括:
[0163]建立模块530,用于在所述以太网链路上建立所述接收设备的标识对应的第一虚拟通道;
[0164]配置模块540,与所述建立模块530连接,用于在发送设备中预先设置所述第一对应关系,所述第一对应关系包括所述接收设备的优先级、所述接收设备的标识和所述第一虚拟通道之间的对应关系。
[0165]具体地,参见本实施例上述组件的相关描述,若在以太网中包括2个接收设备,标识分别被网络管理员配置为10_0和10_1,建立模块530可以建立两条第一虚拟通道(如第一虚拟通道O和第一虚拟通道1),结合2个接收设备的优先级,配置模块540可以设置接收设备的优先级、接收设备的标识和第一虚拟通道的第一对应关系,例如,10_0的优先级为0,对应第一虚拟通道O。该第一对应关系可以用于后续确定某一接收设备的优先级和向该接收设备发送数据的第一虚拟通道。
[0166]进一步地,发送模块520还可以包括:
[0167]生成单元521,用于生成虚拟局域网VLAN帧,其中,所述VLAN帧的优先级字段由所述发送设备写入查找到的所述接收设备的优先级,所述VLAN帧的有效载荷包括所述发送设备向所述接收设备发送的数据;
[0168]导入单元522,与所述生成单元521连接,用于通过所述查找到的第一虚拟通道将所述VLAN帧发送至所述接收设备。
[0169]具体地,在发送设备500向接收设备发送报文时,发送设备首先可以通过查找模块510查找第一对应关系,查找到接收设备的优先级,并通过生成单元521在虚拟局域网VLAN帧相应的优先级字段写入接收设备的优先级,在VLAN帧的有效载荷中可以包括发送设备向接收设备发送的数据。例如,H0ST_0需要向10_0发送数据时,H0ST_0可以通过查找模块510查找第一对应关系,查找到10_0的优先级为O,对应第一虚拟通道0,H0ST_0可以通过生成单元521在VLAN帧的优先级字段写入0,将需要发送的数据写入VLAN帧的有效载荷,并通过第一虚拟通道O向10_0发送VLAN帧。
[0170]进一步地,发送设备500还可以包括:
[0171]处理模块550,与所述发送模块520连接,用于如果所述发送设备从所述接收设备接收到暂停OFF帧,则根据所述OFF帧中的暂停时间,暂停与所述接收设备的通讯;
[0172]其中,所述OFF帧是由所述接收设备在接收到的数据所占用的接收缓存空间高于上限阈值的状态下生成的。
[0173]具体地,发送设备500通过发送模块520向接收设备发送VLAN帧之后,接收设备可以根据自身接收缓存空间中的数据空满状态向发送设备500返回相应的响应。如果接收设备的接收缓存空间中的数据所占用的空间高于上限阈值,接收设备可以向发送设备500发送OFF帧,用来指示发送设备500的处理模块550根据所述OFF帧中的暂停时间,暂停与该接收设备的通讯,在到达暂停时间时,发送设备500可以自动恢复与该接收设备的通讯。其中,暂停时间可以由OFF帧中的暂停时间字段中的内容决定,发送设备接收到OFF帧之后,可以停止对该接收设备对应的第一虚拟通道的调度,以暂停与该接收设备的通讯。例如10_0接收到的数据所占用的接收缓存空间高于上限阈值,10_0可以向H0ST_0发送OFF帧,H0ST_0接收到OFF帧后,根据OFF帧中的暂停时间,停止对10_0对应的第一虚拟通道O的调度,暂停与10_0的通讯。其中上限阈值为该接收设备的接收缓存空间可以存储的数据量最大值,由于从接收设备发送OFF帧到发送设备接收到OFF并作出响应,需要一定的时间,在这段时间内还可能存在一些正在发送的数据需要接收设备接收,不能因为数据存满而丢弃,因此接收设备可以接收的数据量可以大于该上限阈值,即存储空间需要留有一定余量。若高于上限阈值,说明数据将满,该接收设备反压。
[0174]在一种可能的实现方式中,处理模块550还可以被配置为:如果到达所述OFF帧中的暂停时间或从所述接收设备接收到连通ON帧,则恢复与所述接收设备的通讯;
[0175]其中,所述ON帧是由所述接收设备在接收到的数据所占用的接收缓存空间低于下限阈值的状态下生成的。
[0176]具体地,一方面,在到达暂停时间时,发送设备500可以通过处理模块550自动恢复与接收设备的通讯;另一方面,接收设备在反压之后,数据所占用的空间可能会减少,在没有到达暂停时间时,如果数据所占用的接收缓存空间低于下限阈值,接收设备可以向发送设备500发送ON帧,用来指示发送设备500通过处理模块550恢复与该接收设备的通讯。例如10_0接收到的数据所占用的接收缓存空间低于下限阈值,10_0可以向H0ST_0发送ON帧,H0ST_0接收到ON帧后,可以重新开始对10_0对应的第一虚拟通道O的调度,恢复与10_0的通讯。其中下限阈值为该接收设备的接收缓存空间存储的数据量最小值,若低于下限阈值,说明该接收设备的接收缓存空间即将没有数据,发送设备500可以继续向其发送数据。
[0177]在一种可能的实现方式中,发送设备500还可以作为接收端,根据被网络管理员预先设置的通道与设备的对应关系通过相应的通道从其他设备接收数据。
[0178]本实施例的发送设备,通过配置模块在发送设备中设置第一对应关系,可以实现不同的接收设备使用不同的第一虚拟通道与发送设备通讯,某一接收设备数据存满出现反压或通信异常时,只需要停止该接收设备通过其对应的第一虚拟通道与发送设备的通讯,不会影响其他接收设备与发送设备的数据传输。
[0179]实施例6
[0180]图6示出根据本发明实施例六的发送设备的结构框图。图6中标号与图5a、图5b相同的组件具有相同的功能,为简明起见,省略对这些组件的详细说明。
[0181]如图6所示,图6所示的发送设备与图5a、图5b所示的发送设备主要区别在于,该发送设备600的查找模块610除了可以具备本发明实施例五中查找模块510的功能之外,还可以被配置为:
[0182]根据所述接收设备的标识和业务类型,在所述发送设备中预先设置的所述第一对应关系中查找所述对应的第一虚拟通道和所述接收设备的优先级,所述第一对应关系包括所述业务类型、所述接收设备的优先级、所述接收设备的标识和所述第一虚拟通道之间的对应关系。例如10_0的业务类型O的优先级为0,对应第一虚拟通道0,H0ST_0通过第一虚拟通道O向10_0发送业务类型O的数据。
[0183]具体地,在发送设备的第一对应关系中,还可以包括接收设备的业务类型,即设置业务类型、接收设备的优先级、接收设备的标识和第一虚拟通道之间的对应关系。例如,参见本发明实施例一中基于优先级的流控PFC方法的相关描述,若以太网中包括2个接收设备(如10_0、10_1),10_0和10_1都分别包括两种业务类型(如业务类型O、业务类型1),则可以将设置10_0业务类型O的优先级设置为0,10_0业务类型I的优先级设置为1,10_1业务类型O的优先级设置为2,10_1业务类型I的优先级设置为3 ;还可以在发送设备端建立四条第一虚拟通道(如第一虚拟通道O、第一虚拟通道1、第一虚拟通道2、第一虚拟通道3),第一虚拟通道O、第一虚拟通道I分别用来发送去往10_0的业务类型O和业务类型I的数据,第一虚拟通道2、第一虚拟通道3分别用来发送去往10_1的业务类型O和业务类型I的数据。这样,10_0的业务类型O的优先级为0,对应第一虚拟通道0,10_0的业务类型I的优先级为1,对应第一虚拟通道1,10_1的业务类型O的优先级为2,对应第一虚拟通道2,10_1的业务类型I的优先级为3,对应第一虚拟通道3。
[0184]在一种可能的实现方式中,该发送设备600的建立模块630除了可以具备本发明实施例五中建立模块530的功能之外,还可以被配置为:在所述以太网链路上建立所述接收设备的标识和所述业务类型对应的第一虚拟通道;
[0185]该发送设备600的配置模块640除了可以具备本发明实施例五中配置模块540的功能之外,还可以被配置为:在所述发送设备中预先设置所述第一对应关系,所述第一对应关系包括所述业务类型、所述接收设备的优先级、所述接收设备的标识和所述第一虚拟通道之间的对应关系。
[0186]具体地,参见本实施例上述组件的相关描述,若有2个接收设备,标识分别被网络管理员设置为10_0和10_1,每个接收设备具有两种业务类型(如业务类型O、业务类型1),建立模块630可以在发送设备端建立四条第一虚拟通道(如第一虚拟通道O、第一虚拟通道
1、第一虚拟通道2、第一虚拟通道3),结合2个接收设备各个业务类型的优先级,配置模块640可以配置业务类型、优先级、接收设备的标识和第一虚拟通道的对应关系,例如,10_0的业务类型O的优先级为0,对应第一虚拟通道0,10_0的业务类型I的优先级为1,对应第一虚拟通道1,10_1的业务类型O的优先级为2,对应第一虚拟通道2,10_1的业务类型I的优先级为3,对应第一虚拟通道3。该第一对应关系可以用于后续确定某一接收设备的优先级和向该接收设备发送数据的第一虚拟通道。
[0187]在一种可能的实现方式中,接收设备可以根据自身某一业务类型的接收缓存空间的数据空满状态向发送设备600返回相应的响应。具体地,如果接收设备接收到的某一业务类型的数据所占用的接收缓存空间高于上限阈值,接收设备可以向发送设备600发送OFF帧,用来指示发送设备600的处理模块550在暂停时间内暂停与该接收设备进行该业务类型的通讯,但不影响发送设备与该接收设备进行其他业务类型的通讯。进一步地,在到达暂停时间或者该接收设备接收到的该业务类型的数据所占用的接收缓存空间低于下限阈值时,接收设备可以向发送设备600发送ON帧,用来指示发送设备600的处理模块550恢复与该接收设备进行该业务类型的通讯。例如,10_0接收到的业务类型O的数据所占用的接收缓存空间高于上限阈值,10_0可以向H0ST_0发送OFF帧,H0ST_0接收到OFF帧后,暂停与10_0通过第一虚拟通道O进行业务类型O的通讯;在10_0接收到的业务类型O的数据所占用的接收缓存空间低于下限阈值,10_0可以向H0ST_0发送ON帧,H0ST_0接收到ON帧后,恢复与10_0通过第一虚拟通道O进行业务类型O的通讯。其中,上限阈值和下限阈值可以参见本发明实施例一中基于优先级的流控PFC方法的相关描述。
[0188]本实施例的发送设备,通过配置模块在发送设备中配置第一对应关系,可以实现不同的接收设备使用不同的第一虚拟通道与发送设备进行不同业务类型的通讯,某一接收设备的某一业务类型的数据存满出现反压或通信异常时,只需要停止该接收设备通过该业务类型对应的第一虚拟通道与发送设备进行该业务类型的通讯,不会影响该接收设备与发送设备进行其他业务类型的数据传输,同时也不会影响其他接收设备与发送设备的数据传输。
[0189]实施例7
[0190]图7a示出根据本发明实施例七的接收设备的结构框图。如图7a所示,该接收设备700可以应用于以太网中至少两个服务器共享至少两个虚拟通道的流量控制场景,主要可以包括:
[0191]接收模块710,用于通过第一虚拟通道,从发送设备接收报文,所述报文中包括所述接收设备的优先级和所述发送设备向所述接收设备发送的数据,所述第一虚拟通道为所述接收设备在以太网链路上从所述发送设备接收数据的通道,所述接收设备的优先级为所述发送设备在预先设置的第一对应关系中查找到的优先级,所述第一对应关系包括所述接收设备的优先级、所述接收设备的标识和所述第一虚拟通道之间的对应关系;其中,不同的接收设备的标识不同,所述接收设备的标识与所述第一虚拟通道存在一一对应的关系。
[0192]具体地,一方面,在以太网发送设备与接收设备进行通讯的过程中,每个发送设备或接收设备可以由网络管理员配置相应的优先级,每个发送设备或接收设备的优先级在所有发送设备或接收设备中唯一。例如,在以太网中至少两个服务器共享至少两个虚拟通道的流量控制场景中,包括2个发送设备(如HOSTJK H0ST_1),则它们的优先级可分别被网络管理员设置为0、1 ;2个接收设备(如10_0、10_1),则它们的优先级也可分别被网络管理员设置为0、1。另一方面,发送设备可以接收网络管理员的配置,即在发送设备中设置接收设备与第一虚拟通道的一一对应关系,不同通道可以分别用来传输发往不同接收设备的数据,通道数目与接收设备数目相同。例如,有2个接收设备(如10_0、10_1),可以通过网络管理员的配置在发送设备端建立两条第一虚拟通道(如第一虚拟通道O、第一虚拟通道I ),分别用来发送去往10_0和10_1的数据。接收设备700的接收模块710可以通过其对应的第一虚拟通道接收发送设备发送的报文,例如10_0可以通过第一虚拟通道O接收H0ST_0发送的报文。
[0193]图7b示出根据本发明实施例七的接收设备的结构框图。如图7b所示,该接收设备700还可以包括:
[0194]建立模块720,用于在所述以太网链路上建立所述发送设备的标识对应的第二虚拟通道;
[0195]配置模块730,与所述建立模块720连接,用于在所述接收设备中预先设置所述接收设备中的第二对应关系,所述第二对应关系包括所述发送设备的优先级、所述发送设备的标识和所述第二虚拟通道之间的对应关系。
[0196]具体地,参见本实施例上述组件的相关描述,若在以太网中包括2个发送设备,标识分别被网络管理员配置为H0ST_0和H0ST_1,建立模块720可以在接收设备端建立两条第 二虚拟通道(如第二虚拟通道O和第二虚拟通道1),结合2个发送设备的优先级,配置模块730可以设置发送设备的优先级、发送设备的标识和第二虚拟通道之间的第二对应关系,例如,H0ST_0的优先级为0,对应第二虚拟通道0,用来传输发往H0ST_0的数据。该第二对应关系可以用于后续确定某一发送设备的优先级和发送数据的第二虚拟通道。
[0197]在一种可能的实现方式中,在接收设备700中的弟二对应关系中,还可以包括接收设备700的优先级。例如,参见本实施例上述组件的相关描述,若在以太网中包括2个接收设备,标识分别为10_0和10_1,它们的优先级可分别被网络管理员设置为0、1,则在第二对应关系中,10_0的优先级为0,H0ST_0的优先级为0,且10_0通过第一虚拟通道O接收H0ST_0发送的数据,通过第二虚拟通道O向H0ST_0发送数据。
[0198]在一种可能的实现方式中,接收模块710还可以被配置为:所述接收设备通过所述第一虚拟通道,从所述发送设备接收虚拟局域网VLAN帧,其中,所述VLAN帧的优先级字段由所述发送设备写入查找到的所述接收设备的优先级,所述VLAN帧的有效载荷包括所述发送设备向所述接收设备发送的数据。
[0199]具体地,接收设备700的接收模块710可以根据第一对应关系,通过接收设备700对应的第一虚拟通道从发送设备接收VLAN帧。例如,10_0与H0ST_0进行通讯时,H0ST_0可以根据第一对应关系,查找到10_0的优先级为0,对应第一虚拟通道0,10_0可以通过第一虚拟通道O接收VLAN帧,H0ST_0可以在VLAN帧的优先级字段写入0,将向接收设备发送的数据写入VLAN帧的有效载荷。
[0200]进一步地,该接收设备700还可以包括:
[0201]发送模块740,与所述接收模块710连接,用于所述接收设备通过所述第二虚拟通道,向所述发送设备发送暂停OFF帧,所述OFF帧的优先级字段由所述接收设备写入所述VLAN帧中获取的优先级或在所述第二对应关系中查找到的所述接收设备的优先级,
[0202]其中,所述OFF帧是由所述接收设备在接收到的数据所占用的接收缓存空间高于上限阈值的状态下生成的。
[0203]具体地,接收设备700的发送模块740可以根据自身接收缓存空间的数据空满状态向发送设备返回相应的响应。如果接收设备700接收到的数据所占用的接收缓存空间高于上限阈值,接收设备700可以从接收到的VLAN帧中获取接收设备的优先级,也可以从第二对应关系中获取接收设备700的优先级,并在OFF帧的优先级字段写入该接收设备的优先级,发送模块740通过第二虚拟通道向发送设备发送OFF帧,用来指示发送设备根据所述OFF帧中的暂停时间,暂停与该接收设备的通讯,在到达暂停时间时,发送设备可以自动恢复与接收设备的通讯。其中,暂停时间可以由OFF帧中的暂停时间字段中的内容决定,发送设备接收到OFF帧之后,可以停止对该接收设备对应的第一虚拟通道的调度,以暂停与该接收设备的通讯。例如10_0接收到的数据所占用的接收缓存空间高于上限阈值,10_0可以通过第二虚拟通道O向H0ST_0发送OFF帧,H0ST_0接收到OFF帧后,根据OFF帧中的暂停时间,暂停与10_0的通讯。其中上限阈值为该接收设备的接收缓存空间可以存储的数据量最大值,由于从接收设备发送OFF帧到发送设备接收到OFF并作出响应,需要一定的时间,在这段时间内还可能存在一些正在发送的数据需要接收设备700接收,不能因为数据存满而丢弃,因此接收设备700可以存储的数据量可以大于该上限阈值,即存储空间需要留有一定余量。若高于上限阈值,说明数据将满,该接收设备700反压。
[0204]在一种可能的实现方式中,发送模块740还可以被配置为:
[0205]所述接收设备通过所述第二虚拟通道,向所述发送设备发送连通ON帧,所述ON帧的优先级字段由所述接收设备写入从所述VLAN帧中获取的优先级或在所述第二对应关系中查找到的所述接收设备的优先级,
[0206]其中,所述ON帧是由所述接收设备在接收到的数据所占用的接收缓存空间低于下限阈值的状态下生成的。
[0207]具体地,接收设备700在反压之后,接收到的数据所占用的接收缓存空间可能会减少,在到达暂停时间前,若接收到的数据所占用的接收缓存空间低于下限阈值,接收设备700的发送模块740可以向发送设备发送ON帧,用来指示发送设备恢复与该接收设备的通讯。例如10_0的数据所占用的空间低于下限阈值,10_0可以通过第二虚拟通道O向发送ON帧,H0ST_0接收到ON帧后,恢复与10_0的通讯。其中下限阈值为该接收设备接收缓存空间存储的数据量最小值,若低于下限阈值,说明该接收设备700的存储空间即将没有数据,发送设备可以继续向其发送数据。
[0208]在一种可能的实现方式中,接收设备700还可以作为发送端,根据第二对应关系中第二虚拟通道、发送设备的标识与优先级的对应关系,发送模块740可以通过第二虚拟通道向第二虚拟通道对应的发送设备发送数据。在这种情况下,参见本发明实施例一中基于优先级的流控PFC方法的相关描述,发送设备可以作为接收端,通过对应的第二虚拟通道从接收设备700接收数据。
[0209]本实施例的接收设备,通过配置模块在接收设备中设置第二对应关系,可以实现不同的接收设备使用不同的第一虚拟通道与发送设备通讯,某一接收设备数据存满出现反压或通信异常时,只需要停止该接收设备通过其对应的第一虚拟通道与发送设备的通讯,不会影响其他接收设备与发送设备的数据传输。
[0210]实施例8
[0211]图8不出根据本发明实施例八的接收设备的结构框图。图8中标号与图7a、图7b相同的组件具有相同的功能,为简明起见,省略对这些组件的详细说明。[0212]如图8所示,图8所示的接收设备与图7a、图7b所示接收设备的主要区别在于,该接收设备800的建立模块820除了可以具备本发明实施例七中建立模块720的功能之外,还可以被配置为:
[0213]在所述以太网链路上建立所述发送设备的标识和所述业务类型对应的第二虚拟通道;
[0214]该接收设备800的配置模块830除了可以具备本发明实施例七中配置模块730的功能之外,还可以被配置为:
[0215]在所述接收设备中预先设置所述接收设备中的第二对应关系,所述第二对应关系包括业务类型、所述发送设备的优先级、所述发送设备的标识和所述第二虚拟通道之间的对应关系。
[0216]具体地,在接收设备被网络管理员预先设置的第二对应关系中,还可以包括接收设备的业务类型,即设置业务类型、发送设备的优先级、发送设备的标识和第二虚拟通道之间的对应关系。例如,参见本发明实施例三中基于优先级的流控PFC方法的相关描述,若以太网中包括2个发送设备,标识分别被网络管理员设置为H0ST_0和H0ST_1,每个发送设备可以与接收设备进行两种业务类型(如业务类型O、业务类型I)的通讯,建立模块820可以在接收设备端建立四条第二虚拟通道(如第二虚拟通道O、第二虚拟通道1、第二虚拟通道
2、第二虚拟通道3),结合2个发送设备的优先级,配置模块830可以配置业务类型、发送设备的优先级、发送设备的标识和第二虚拟通道的第二对应关系,例如,H0ST_0的业务类型O优先级为0,对应第二虚拟通道0,H0ST_0的业务类型I优先级为I,对应第二虚拟通道1,H0ST_1的业务类型O优先级为2,对应第二虚拟通道2,H0ST_1的业务类型I优先级为3,对应第二虚拟通道3。该第二对应关系可以用于后续确定某一发送设备的优先级和向该发送设备发送数据的第二虚拟通道。
[0217]在一种可能的实现 方式中,在接收设备800中的弟二对应关系中,还可以包括接收设备800的优先级。具体示例可以参见本发明实施例三中基于优先级的流控PFC方法的相关描述。
[0218]在一种可能的实现方式中,接收设备800的发送模块740可以根据自身某一业务类型的接收缓存空间的数据空满状态向发送设备返回相应的响应。具体地,如果接收设备800接收到的某一业务类型的数据所占用的接收缓存空间高于上限阈值,接收设备800的发送模块740可以通过第二虚拟通道向发送设备发送OFF帧,用来指示发送设备在暂停时间段内暂停与该接收设备进行该业务类型的通讯,但不影响发送设备与该接收设备进行其他业务类型的通讯。进一步地,在到达暂停时间或者该接收设备800接收到的该业务类型的数据所占用的接收缓存空间低于下限阈值时,接收设备800的发送模块740可以通过第二虚拟通道向发送设备发送ON帧,用来指示发送设备恢复与该接收设备进行该业务类型的通讯。例如,10_0接收到的业务类型O的数据所占用的接收缓存空间高于上限阈值,10_0可以通过第二虚拟通道O向H0ST_0发送OFF帧,H0ST_0接收到OFF帧后,暂停与10_0通过虚拟通道O进行业务类型O的通讯;在10_0接收到的业务类型O的数据所占用的接收缓存空间低于下限阈值,10_0可以通过第二虚拟通道O向H0ST_0发送ON帧,H0ST_0接收到ON帧后,恢复与10_0进行业务类型O的通讯。其中,上限阈值和下限阈值可以参见本发明实施例一中基于优先级的流控PFC方法的相关描述。[0219]本实施例的接收设备,通过配置模块在接收设备中设置第二对应关系,可以实现不同的接收设备使用不同的第一虚拟通道与发送设备进行不同业务类型的通讯,某一接收设备的某一业务类型的数据存满出现反压或通信异常时,只需要停止该接收设备通过该业务类型对应的第一虚拟通道与发送设备进行该业务类型的通讯,不会影响该接收设备与发送设备进行其他业务类型的数据传输,同时也不会影响其他接收设备与发送设备的数据传输。
[0220]实施例9
[0221]图9示出根据本发明实施例九的一种基于优先级的流控PFC装置的结构框图。所述PFC装置900可以是具备计算能力的主机服务器、个人计算机PC、或者可携带的便携式计算机或终端等。本发明具体实施例并不对计算节点的具体实现做限定。
[0222]所述PFC 装置 900 包括处理器(processor) 910、通信接口(CommunicationsInterface) 920、存储器(memory) 930和总线940。其中,处理器910、通信接口 920、以及存储器930通过总线940完成相互间的通信。
[0223]通信接口 920用于与网络设备通信,其中网络设备包括例如虚拟机管理中心、共
享存储等。
[0224]处理器910用于执行程序。处理器910可能是一个中央处理器CPU,或者是专用集成电路ASIC (Application Specific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。
[0225]存储器930用于存放文件。存储器930可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。存储器930也可以是存储器阵列。存储器930还可能被分块,并且所述块可按一定的规则组合成虚拟卷。
[0226]在一种可能的实施方式中,上述程序可为包括计算机操作指令的程序代码。在以太网中至少两个服务器共享至少两个虚拟通道的流量控制场景中,所述至少两个服务器包括至少一个发送设备和至少一个接收设备,该程序具体可用于使得发送设备可以:
[0227]根据所述接收设备的标识,在所述发送设备中预先设置的第一对应关系中查找对应的第一虚拟通道和所述接收设备的优先级,所述第一对应关系包括所述接收设备的优先级、所述接收设备的标识和所述第一虚拟通道之间的对应关系,所述第一虚拟通道为所述接收设备在以太网链路上从所述发送设备接收数据的通道;其中,不同的接收设备的标识不同,所述接收设备的标识与所述第一虚拟通道存在一一对应的关系;
[0228]通过所述查找到的第一虚拟通道,向所述接收设备发送报文,所述报文中包括所述接收设备的优先级和所述发送设备向所述接收设备发送的数据。
[0229]在一种可能的实施方式中,根据所述接收设备的标识,在所述发送设备中预先设置的第一对应关系中查找对应的第一虚拟通道和所述接收设备的优先级,所述第一对应关系包括所述接收设备的优先级、所述接收设备的标识和所述第一虚拟通道之间的对应关系,包括:
[0230]所述发送设备根据所述接收设备的标识和业务类型,在所述发送设备中预先设置的所述第一对应关系中查找所述对应的第一虚拟通道和所述接收设备的优先级,所述第一对应关系包括所述业务类型、所述接收设备的优先级、所述接收设备的标识和所述第一虚拟通道之间的对应关系。[0231]在一种可能的实施方式中,根据所述接收设备的标识,在所述发送设备中预先设置的第一对应关系中查找对应的第一虚拟通道和所述接收设备的优先级之前,该程序还可用于使得发送设备可以:
[0232]在所述以太网链路上建立所述接收设备的标识对应的所述第一虚拟通道,或,所述接收设备的标识和所述业务类型对应的所述第一虚拟通道;
[0233]在所述发送设备中预先设置所述第一对应关系,所述第一对应关系包括所述接收设备的优先级、所述接收设备的标识和所述第一虚拟通道之间的对应关系;或,所述第一对应关系包括所述业务类型、所述接收设备的优先级、所述接收设备的标识和所述第一虚拟通道之间的对应关系。
[0234]在一种可能的实施方式中,通过所述查找到的第一虚拟通道,向所述接收设备发送报文,包括:
[0235]所述发送设备生成虚拟局域网VLAN帧,其中,所述VLAN帧的优先级字段由所述发送设备写入查找到的所述接收设备的优先级,所述VLAN帧的有效载荷包括所述发送设备向所述接收设备发送的数据;
[0236]所述发送设备通过所述查找到的第一虚拟通道将所述VLAN帧发送至所述接收设备。
[0237]在一种可能的实施方式中,在通过所述查找到的第一虚拟通道,向所述接收设备发送报文之后,该程序还可用于使得发送设备可以:
[0238]如果所述发送设备从所述接收设备接收到暂停OFF帧,则根据所述OFF帧中的暂停时间,暂停与所述接收设备的通讯;
[0239]其中,所述OFF帧是由所述接收设备在接收到的数据所占用的接收缓存空间高于上限阈值的状态下生成的,或者,由所述接收设备在接收到的所述业务类型的数据所占用的接收缓存空间高于上限阈值的状态下生成的。
[0240]在一种可能的实施方式中,所述暂停与所述接收设备的通讯之后,该程序还可用于使得发送设备可以:
[0241]如果到达所述OFF帧中的暂停时间或所述发送设备从所述接收设备接收到连通ON帧,则恢复与所述接收设备的通讯;
[0242]其中,所述ON帧是由所述接收设备在接收到的数据所占用的接收缓存空间低于下限阈值的状态下生成的,或,由所述接收设备在接收到的所述业务类型的数据所占用的接收缓存空间低于下限阈值的状态下生成的。
[0243]在一种可能的实施方式中,在以太网中至少两个服务器共享至少两个虚拟通道的流量控制场景中,所述至少两个服务器包括至少一个发送设备和至少一个接收设备,该程序具体还可以用于使得接收设备可以:
[0244]通过第一虚拟通道,从所述发送设备接收报文,所述报文中包括所述接收设备的优先级和所述发送设备向所述接收设备发送的数据,所述第一虚拟通道为所述接收设备在以太网链路上从所述发送设备接收数据的通道,所述接收设备的优先级为所述发送设备在预先设置的第一对应关系中查找到的优先级,所述第一对应关系包括所述接收设备的优先级、所述接收设备的标识和所述第一虚拟通道之间的对应关系,其中,不同的接收设备的标识不同,所述接收设备的标识与所述第一虚拟通道存在一一对应的关系。[0245]在一种可能的实施方式中,在通过第一虚拟通道,从所述发送设备接收报文之前,该程序还可用于使得接收设备可以:
[0246]在所述以太网链路上建立所述发送设备的标识对应的第二虚拟通道,或,所述发送设备的标识和所述业务类型对应的第二虚拟通道;
[0247]在所述接收设备中预先设置第二对应关系,所述第二对应关系包括所述发送设备的优先级、所述发送设备的标识和所述第二虚拟通道之间的对应关系;或,所述第二对应关系包括业务类型、所述发送设备的优先级、所述发送设备的标识和所述第二虚拟通道之间的对应关系。
[0248]在一种可能的实施方式中,所述第二对应关系中还包括所述接收设备的优先级。
[0249]在一种可能的实施方式中,通过第一虚拟通道,从所述发送设备接收报文,包括:
[0250]通过所述第一虚拟通道,从所述发送设备接收虚拟局域网VLAN帧,其中,所述VLAN帧的优先级字段由所述发送设备写入查找到的所述接收设备的优先级,所述VLAN帧的有效载荷包括所述发送设备向所述接收设备发送的数据。
[0251]在一种可能的实施方式中,通过第一虚拟通道,从所述发送设备接收报文之后,该程序还可用于使得接收设备可以:
[0252]通过所述第二虚拟通道,向所述发送设备发送暂停OFF帧,所述OFF帧的优先级字段由所述接收设备写入从所述VLAN帧中获取的优先级或在所述第二对应关系中查找到的所述接收设备的优先级,
[0253]其中,所述OFF帧是由所述接收设备在接收到的数据所占用的接收缓存空间高于上限阈值的状态下生成的,或,由所述接收设备在接收到的所述业务类型的数据所占用的接收缓存空间高于上限阈值的状态下生成的。
[0254]在一种可能的实施方式中,向所述发送设备发送暂停OFF帧之后,该程序还可用于使得接收设备可以:
[0255]通过所述第二虚拟通道,向所述发送设备发送连通ON帧,所述ON帧的优先级字段由所述接收设备写入从所述VLAN帧中获取的优先级或在所述第二对应关系中查找到的所述接收设备的优先级,
[0256]其中,所述ON帧是由所述接收设备在接收到的数据所占用的接收缓存空间低于下限阈值的状态下生成的,或者,由所述接收设备在接收到的所述业务类型的数据所占用的接收缓存空间低于下限阈值的状态下生成的。
[0257]本领域普通技术人员可以意识到,本文所描述的实施例中的各示例性单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件形式来实现,取决于技术方案的特定应用和设计约束条件。专业技术人员可以针对特定的应用选择不同的方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
[0258]如果以计算机软件的形式来实现所述功能并作为独立的产品销售或使用时,则在一定程度上可认为本发明的技术方案的全部或部分(例如对现有技术做出贡献的部分)是以计算机软件产品的形式体现的。该计算机软件产品通常存储在计算机可读取的非易失性存储介质中,包括若干指令用以使得计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各实施例方法的全部或部分步骤。而前述的存储介质包括U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)>磁碟或者光盘等各种可以存储程序代码的介质。
[0259]以上所述,仅为本发明的【具体实施方式】,但本发明的保护范围并不局限于此,任何熟悉本【技术领域】的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
【权利要求】
1.一种基于优先级的流控PFC方法,其特征在于,应用于以太网中至少两个服务器共享至少两个虚拟通道的流量控制场景,所述至少两个服务器包括至少一个发送设备和至少一个接收设备,所述PFC方法包括: 所述发送设备根据所述接收设备的标识,在所述发送设备中预先设置的第一对应关系中查找对应的第一虚拟通道和所述接收设备的优先级,所述第一对应关系包括所述接收设备的优先级、所述接收设备的标识和所述第一虚拟通道之间的对应关系,所述第一虚拟通道为所述接收设备在以太网链路上从所述发送设备接收数据的通道,其中,不同的接收设备的标识不同,所述接收设备的标识与所述第一虚拟通道存在一一对应的关系; 所述发送设备通过所述查找到的第一虚拟通道,向所述接收设备发送报文,所述报文中包括所述接收设备的优先级和所述发送设备向所述接收设备发送的数据。
2.根据权利要求1所述的PFC方法,其特征在于,所述发送设备根据所述接收设备的标识,在所述发送设备中预先设置的第一对应关系中查找对应的第一虚拟通道和所述接收设备的优先级,所述第一对应关系包括所述接收设备的优先级、所述接收设备的标识和所述第一虚拟通道之间的对应关系,包括: 所述发送设备根据所述接收设备的标识和业务类型,在所述发送设备中预先设置的所述第一对应关系中查找所述对应的第一虚拟通道和所述接收设备的优先级,所述第一对应关系包括所述业务类型、所述接收设备的优先级、所述接收设备的标识和所述第一虚拟通道之间的对应关系。
3.根据权利要求1或2所述的PFC方法,其特征在于,所述发送设备根据所述接收设备的标识,在所述发送设备中预先设置的第一对应关系中查找对应的第一虚拟通道和所述接收设备的优先级之前,包括: 在所述以太网链路上建立所述接收设备的标识对应的所述第一虚拟通道,或,所述接收设备的标识和所述业务类型对应的所述第一虚拟通道; 在所述发送设备中预先设置所述第一对应关系,所述第一对应关系包括所述接收设备的优先级、所述接收设备的标识和所述第一虚拟通道之间的对应关系;或, 所述第一对应关系包括所述业务类型、所述接收设备的优先级、所述接收设备的标识和所述第一虚拟通道之间的对应关系。
4.根据权利要求1至3中任一项所述的PFC方法,其特征在于,所述发送设备通过所述查找到的第一虚拟通道,向所述接收设备发送报文,包括: 所述发送设备生成虚拟局域网VLAN帧,其中,所述VLAN帧的优先级字段由所述发送设备写入查找到的所述接收设备的优先级,所述VLAN帧的有效载荷包括所述发送设备向所述接收设备发送的数据; 所述发送设备通过所述查找到的第一虚拟通道将所述VLAN帧发送至所述接收设备。
5.根据权利要求4所述的PFC方法,其特征在于,在所述发送设备通过所述查找到的第一虚拟通道,向所述接收设备发送报文之后,包括: 如果所述发送设备从所述接收设备接收到暂停OFF帧,则根据所述OFF帧中的暂停时间,暂停与所述接收设备的通讯; 其中,所述OFF帧是由所述接收设备在接收到的数据所占用的接收缓存空间高于上限阈值的状态下生成的,或者,由所述接收设备在接收到的所述业务类型的数据所占用的接收缓存空间高于上限阈值的状态下生成的。
6.根据权利要求5所述的PFC方法,其特征在于,所述暂停与所述接收设备的通讯之后,包括: 如果到达所述OFF帧中的暂停时间或所述发送设备从所述接收设备接收到连通ON帧,则恢复与所述接收设备的通讯; 其中,所述ON帧是由所述接收设备在接收到的数据所占用的接收缓存空间低于下限阈值的状态下生成的,或,由所述接收设备在接收到的所述业务类型的数据所占用的接收缓存空间低于下限阈值的状态下生成的。
7.一种基于优先级的流控PFC方法,其特征在于,应用于以太网中至少两个服务器共享至少两个虚拟通道的流量控制场景,所述至少两个服务器包括至少一个发送设备和至少一个接收设备,所述PFC方法包括: 所述接收设备通过第一虚拟通道,从所述发送设备接收报文,所述报文中包括所述接收设备的优先级和所述发送设备向所述接收设备发送的数据,所述第一虚拟通道为所述接收设备在以太网链路上从所述发送设备接收数据的通道,所述接收设备的优先级为所述发送设备在预先设置的第一对应关系中查找到的优先级,所述第一对应关系包括所述接收设备的优先级、所述接收设备的标识和所述第一虚拟通道之间的对应关系,其中,不同的接收设备的标识不同,所述接收设备的标识与所述第一虚拟通道存在一一对应的关系。
8.根据权利要求7所述的PFC方法,其特征在于,在所述接收设备通过第一虚拟通道,从所述发送设备接收报文之前,包括: 在所述以太网链路上建立所述发送设备的标识对应的第二虚拟通道,或,所述发送设备的标识和所述业务类型对应的第二虚拟通道; 在所述接收设备中预先设置第二对应关系,所述第二对应关系包括所述发送设备的优先级、所述发送设备的标识和所述第二虚拟通道之间的对应关系;或, 所述第二对应关系包括业务类型、所述发送设备的优先级、所述发送设备的标识和所述第二虚拟通道之间的对应关系。
9.根据权利要求8所述的PFC方法,其特征在于,所述第二对应关系中还包括所述接收设备的优先级。
10.根据权利要求8或9所述的PFC方法,其特征在于,所述接收设备通过第一虚拟通道,从所述发送设备接收报文,包括: 所述接收设备通过所述第一虚拟通道,从所述发送设备接收虚拟局域网VLAN帧,其中,所述VLAN帧的优先级字段由所述发送设备写入查找到的所述接收设备的优先级,所述VLAN帧的有效载荷包括所述发送设备向所述接收设备发送的数据。
11.根据权利要求10所述的PFC方法,其特征在于,所述接收设备通过第一虚拟通道,从所述发送设备接收报文之后,包括: 所述接收设备通过所述第二虚拟通道,向所述发送设备发送暂停OFF帧,所述OFF帧的优先级字段由所述接收设备写入从所述VLAN帧中获取的优先级或在所述第二对应关系中查找到的所述接收设备的优先级, 其中,所述OFF帧是由所述接收设备在接收到的数据所占用的接收缓存空间高于上限阈值的状态下生成的,或,由所述接收设备在接收到的所述业务类型的数据所占用的接收缓存空间高于上限阈值的状态下生成的。
12.根据权利要求11所述的PFC方法,其特征在于,向所述发送设备发送暂停OFF帧之后,包括: 所述接收设备通过所述第二虚拟通道,向所述发送设备发送连通ON帧,所述ON帧的优先级字段由所述接收设备写入从所述VLAN帧中获取的优先级或在所述第二对应关系中查找到的所述接收设备的优先级,
其中,所述ON帧是由所述接收设备在接收到的数据所占用的接收缓存空间低于下限阈值的状态下生成的,或者,由所述接收设备在接收到的所述业务类型的数据所占用的接收缓存空间低于下限阈值的状态下生成的。
13.—种发送设备,其特征在于,应用于以太网中至少两个服务器共享至少两个虚拟通道的流量控制场景,包括: 查找模块,用于根据接收设备的标识,在发送设备中预先设置的第一对应关系中查找对应的第一虚拟通道和所述接收设备的优先级,所述第一对应关系包括所述接收设备的优先级、所述接收设备的标识和所述第一虚拟通道之间的对应关系,所述第一虚拟通道为所述接收设备在以太网链路上从所述发送设备接收数据的通道,其中,不同的接收设备的标识不同,所述接收设备的标识与所述第一虚拟通道存在一一对应的关系; 发送模块,与所述查找模块连接,用于通过所述查找到的第一虚拟通道,向所述接收设备发送报文,所述报文中包括所述接收设备的优先级和所述发送设备向所述接收设备发送的数据。
14.根据权利要求13所述的发送设备,其特征在于,所述查找模块还被配置为,根据所述接收设备的标识和业务类型,在所述发送设备中预先设置的所述第一对应关系中查找所述对应的第一虚拟通道和所述接收设备的优先级,所述第一对应关系包括所述业务类型、所述接收设备的优先级、所述接收设备的标识和所述第一虚拟通道之间的对应关系。
15.根据权利要求13或14所述的发送设备,其特征在于,还包括: 建立模块,用于在所述以太网链路上建立所述接收设备的标识对应的所述第一虚拟通道; 所述建立模块还被配置为,在所述以太网链路上建立所述接收设备的标识和所述业务类型对应的所述第一虚拟通道; 配置模块,与所述建立模块连接,用于在所述发送设备中预先设置所述第一对应关系,所述第一对应关系包括所述接收设备的优先级、所述接收设备的标识和所述第一虚拟通道之间的对应关系; 所述配置模块还被配置为,在所述发送设备中预先设置所述第一对应关系,所述第一对应关系包括所述业务类型、所述接收设备的优先级、所述接收设备的标识和所述第一虚拟通道之间的对应关系。
16.根据权利要求13至15中任一项所述的发送设备,其特征在于,所述发送模块包括: 生成单元,用于生成虚拟局域网VLAN帧,其中,所述VLAN帧的优先级字段由所述发送设备写入查找到的所述接收设备的优先级,所述VLAN帧的有效载荷包括所述发送设备向所述接收设备发送的数据;导入单元,与所述生成单元连接,用于通过所述查找到的第一虚拟通道将所述VLAN帧发送至所述接收设备。
17.根据权利要求16所述的发送设备,其特征在于,还包括: 处理模块,与所述发送模块连接,用于如果从所述接收设备接收到暂停OFF帧,则根据所述OFF帧中的暂停时间,暂停与所述接收设备的通讯; 其中,所述OFF帧是由所述接收设备在接收到的数据所占用的接收缓存空间高于上限阈值的状态下生成的,或者,由所述接收设备在接收到的所述业务类型的数据所占用的接收缓存空间高于上限阈值的状态下生成的。
18.根据权利要求17所述的发送设备,其特征在于,所述处理模块还被配置为,如果到达所述OFF帧中的暂停时间或从所述接收设备接收到连通ON帧,则恢复与所述接收设备的通讯; 其中,所述ON帧是由所述接收设备在接收到的数据所占用的接收缓存空间低于下限阈值的状态下生成的,或者,由所述接收设备在接收到的所述业务类型的数据所占用的接收缓存空间低于下限阈值的状态下生成的。
19.一种接收设备,其特征在于,应用于以太网中至少两个服务器共享至少两个虚拟通道的流量控制场景,包括: 接收模块,用于通过第一虚拟通道,从发送设备接收报文,所述报文中包括所述接收设备的优先级和所述发送设备向所述接收设备发送的数据,所述第一虚拟通道为所述接收设备在以太网链路上从所述发送设备接收数据的通道,所述接收设备的优先级为所述发送设备在预先设置的第一对应关系中查找到的优先级,所述第一对应关系包括所述接收设备的优先级、所述接收设备的标识和所述第一虚拟通道之间的对应关系,其中,不同的接收设备的标识不同,所述接收设备的标识与所述第一虚拟通道存在一一对应的关系。
20.根据权利要求19所述的接收设备,其特征在于,还包括: 建立模块,用于在所述以太网链路上建立所述发送设备的标识对应的第二虚拟通道; 所述建立模块还被配置为,在所述以太网链路上建立所述发送设备的标识和所述业务类型对应的第二虚拟通道; 配置模块,与所述建立模块连接,用于在所述接收设备中预先设置所述接收设备中的第二对应关系,所述第二对应关系包括所述发送设备的优先级、所述发送设备的标识和所述第二虚拟通道之间的对应关系; 所述配置模块还被配置为,在所述接收设备中预先设置所述接收设备中的第二对应关系,所述第二对应关系包括业务类型、所述发送设备的优先级、所述发送设备的标识和所述第二虚拟通道之间的对应关系。
21.根据权利要求20所述的接收设备,其特征在于,所述第二对应关系中还包括所述接收设备的优先级。
22.根据权利要求19至21中任一项所述的接收设备,其特征在于,所述接收模块还被配置为,通过所述第一虚拟通道,从所述发送设备接收虚拟局域网VLAN帧,其中,所述VLAN帧的优先级字段由所述发送设备写入查找到的所述接收设备的优先级,所述VLAN帧的有效载荷包括所述发送设备向所述接收设备发送的数据。
23.根据权利要求22所述的接收设备,其特征在于,还包括:发送模块,与所述接收模块连接,用于通过所述第二虚拟通道,向所述发送设备发送暂停OFF帧,所述OFF帧的优先级字段由所述接收设备写入所述VLAN帧中获取的优先级或在所述第二对应关系中查找到的所述接收设备的优先级, 其中,所述OFF帧是由所述接收设备在接收到的数据所占用的接收缓存空间高于上限阈值的状态下生成的,或者,由所述接收设备在接收到的所述业务类型的数据所占用的接收缓存空间高于上限阈值的状态下生成的。
24.根据权利要求23所述的接收设备,其特征在于,所述发送模块还被配置为,通过所述第二虚拟通道,向所述发送设备发送连通ON帧,所述ON帧的优先级字段由所述接收设备写入从所述VLAN帧中获取的优先级或在所述第二对应关系中查找到的所述接收设备的优先级, 其中,所述ON帧是由所述接收设备在接收到的数据所占用的接收缓存空间低于下限阈值的状态下生成的,或者,由所述接收设备在接收到的所述业务类型的数据所占用的接收缓存空间低于下限阈值的状态下生成的。
【文档编号】H04L12/801GK103746927SQ201310742800
【公开日】2014年4月23日 申请日期:2013年12月27日 优先权日:2013年12月27日
【发明者】吴明杰, 彭本华, 方洪灿, 吴沛 申请人:杭州华为数字技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1