CN117768292A - 逻辑绑定口的管理方法、装置、系统及存储介质 - Google Patents
逻辑绑定口的管理方法、装置、系统及存储介质 Download PDFInfo
- Publication number
- CN117768292A CN117768292A CN202211363068.7A CN202211363068A CN117768292A CN 117768292 A CN117768292 A CN 117768292A CN 202211363068 A CN202211363068 A CN 202211363068A CN 117768292 A CN117768292 A CN 117768292A
- Authority
- CN
- China
- Prior art keywords
- management
- network card
- intelligent network
- port
- information
- 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.)
- Pending
Links
- 238000007726 management method Methods 0.000 title claims abstract description 666
- 238000000034 method Methods 0.000 claims abstract description 110
- 238000004891 communication Methods 0.000 claims abstract description 32
- 230000006870 function Effects 0.000 claims description 42
- 230000002776 aggregation Effects 0.000 claims description 31
- 238000004220 aggregation Methods 0.000 claims description 31
- 238000004590 computer program Methods 0.000 claims description 16
- 238000012545 processing Methods 0.000 description 34
- 239000008186 active pharmaceutical agent Substances 0.000 description 15
- 238000010586 diagram Methods 0.000 description 15
- 230000008569 process Effects 0.000 description 13
- 230000003287 optical effect Effects 0.000 description 9
- 238000004549 pulsed laser deposition Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 239000004744 fabric Substances 0.000 description 3
- 239000000243 solution Substances 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000002347 injection Methods 0.000 description 2
- 239000007924 injection Substances 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 239000000969 carrier Substances 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- RGNPBRKPHBKNKX-UHFFFAOYSA-N hexaflumuron Chemical compound C1=C(Cl)C(OC(F)(F)C(F)F)=C(Cl)C=C1NC(=O)NC(=O)C1=C(F)C=CC=C1F RGNPBRKPHBKNKX-UHFFFAOYSA-N 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003032 molecular docking Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/04—Network management architectures or arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/40—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/10—Packet switching elements characterised by the switching fabric construction
- H04L49/111—Switch interfaces, e.g. port details
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供了一种逻辑绑定口的管理方法、装置、系统及存储介质,涉及通信技术领域。以管理平台执行该方法为例,管理平台获取智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种;管理平台对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。针对通过智能网卡进行数据转发的场景,管理平台不仅能够实现对智能网卡的逻辑绑定口的内部管理信息的管理,还能够实现对硬件资源信息进行管理,提升了数据转发的可靠性和实时性。此外,管理平台对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理的方式包括但不限于设置、更改、增加、删除和查询等操作。
Description
本申请要求于2022年09月24日提交的申请号为202211168652.7、发明名称为“一种逻辑接口管理的方法及装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及通信技术领域,特别涉及逻辑绑定口的管理方法、装置、系统及存储介质。
背景技术
随着软件定义网络(software defined network,SDN)和网络功能虚拟化(network functions virtualization,NFV)技术的不断发展,各种数据面开源方案应运而生,虚拟交换机(virtual switch,VS)便是其中的一种。
VS主要用于虚拟机(virtual machine,VM)之间的流量互通,在跨主机场景,流量会流经智能网卡。为了提升可靠性以及转发性能,智能网卡上的多个物理端口会组合成一个逻辑绑定口,该逻辑绑定口也称为绑定(Bonding)口。因此,有必要对智能网卡的逻辑绑定口进行管理。
发明内容
本申请提供了一种逻辑绑定口的管理方法、装置、系统及存储介质,能够实现对智能网卡的逻辑绑定口进行管理。
第一方面,提供了一种逻辑绑定口的管理方法,该管理方法由管理平台执行,方法包括:管理平台获取智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种;管理平台对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
其中,智能网卡的逻辑绑定口也称为Bonding口,该逻辑绑定口可包括多个物理端口,物理端口也称为成员口。管理平台可以为云平台,该管理平台可以为用户提供基础设施即服务(infrastructure as a aervice,IaaS)。针对通过智能网卡进行数据转发的场景,本申请提供的方法,管理平台不仅能够实现对智能网卡的逻辑绑定口的内部管理信息的管理,还能够实现对硬件资源信息进行管理,提升了数据转发的可靠性和实时性。此外,管理平台对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理的方式包括但不限于设置、更改、增加、删除和查询等操作。
在一种可能的实现方式中,管理平台对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理,包括:管理平台向管理工具发送第一消息,第一消息用于调用管理工具的第一管理接口对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
其中,管理工具可以是配置在主机上的独立工具,该管理工具对外提供管理接口也即第一管理接口。管理平台通过向管理工具发送第一消息,来实现调用该管理工具上的第一管理接口,从而通过第一管理接口来对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。第一消息可以是管理工具能够识别的消息,第一消息的内容可以根据需要管理的信息确定。本申请不对第一消息的格式进行限定,包括但不限于Linux(一种操作系统)命令等。
在一种可能的实现方式中,管理平台向管理工具发送第一消息之前,还包括:管理平台确定智能网卡的逻辑绑定口的形态;管理平台基于智能网卡的逻辑绑定口的形态确定管理工具,智能网卡的逻辑绑定口的形态为用户态或内核态,管理工具与智能网卡的逻辑绑定口的形态相匹配。通过确定智能网卡的逻辑绑定口的形态,可以选择与该逻辑绑定口的形态相匹配的管理工具来对该逻辑绑定口进行管理,从而在管理平台侧实现针对不同形态的智能网卡的逻辑绑定口的统一管理,提高了管理效率。
在一种可能的实现方式中,管理平台确定智能网卡的逻辑绑定口的形态,包括:管理平台读取智能网卡的配置文件,根据配置文件确定智能网卡的逻辑绑定口的形态。管理平台通过读取智能网卡的配置文件来确定智能网卡的逻辑绑定口的形态,提高了效率和可靠性。
在一种可能的实现方式中,第一消息用于调用管理工具的第一管理接口对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理,包括:第一消息用于调用管理工具的第一管理接口在管理工具内部对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理;或者,第一消息用于调用管理工具的第一管理接口调用智能网卡上的第二管理接口,通过第二管理接口对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。根据管理工具的不同情况,既可以选择在管理工具内部对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理,也可以通过调用智能网卡上的第二管理接口来对逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理,使得管理的灵活性更高,适用的场景更全面。
在一种可能的实现方式中,智能网卡的逻辑绑定口对应智能网卡的多个成员口,逻辑绑定口的内部管理信息包括逻辑绑定口的成员口信息和链路汇聚控制协议(linkaggregation control protocol,LACP)信息中的至少一种,硬件资源信息包括虚拟功能(virtual function,VF)数量和队列中的至少一种。其中,成员口信息包括但不限于成员口的标识、数量等,LACP信息包括但不限于LACP状态。队列包括但不限于智能网卡上送报文到VS所使用的上送(upcall)队列,也可以称为去往VM方向的队列;或者,该队列包括VS向智能网卡发送报文所使用的注入(reinject)队列,也可称为来自VM方向的队列。
第二方面,提供了一种逻辑绑定口的管理方法,该方法由管理工具执行,方法包括:管理工具接收管理平台发送的第一消息,第一消息用于管理平台调用管理工具的第一管理接口对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理;管理工具基于第一消息调用的第一管理接口对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
在一种可能的实现方式中,管理工具与智能网卡的逻辑绑定口的形态相匹配,智能网卡的逻辑绑定口的形态为用户态或内核态。
在一种可能的实现方式中,管理工具基于第一消息调用的第一管理接口对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理,包括:管理工具基于第一消息调用的第一管理接口,在管理工具内部对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理;或者,管理工具基于第一消息调用的第一管理接口调用智能网卡上的第二管理接口,通过第二管理接口对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
在一种可能的实现方式中,方法还包括:管理工具接收智能网卡发送的链路汇聚控制协议LACP报文;管理工具基于LACP报文确定智能网卡的逻辑绑定口对应的成员口的状态信息;管理工具向智能网卡返回智能网卡的逻辑绑定口对应的成员口的状态信息。
在一种可能的实现方式中,智能网卡的逻辑绑定口对应智能网卡的多个成员口,逻辑绑定口的内部管理信息包括逻辑绑定口的成员口信息和链路汇聚控制协议LACP信息中的至少一种,硬件资源信息包括虚拟功能VF数量和队列中的至少一种。
第三方面,提供了一种逻辑绑定口的管理方法,该方法由智能网卡执行,所述方法包括:所述智能网卡获取所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息;所述智能网卡对所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
在一种可能的实现方式中,所述智能网卡对所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理,包括:所述智能网卡根据管理工具调用的第二管理接口,对所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
在一种可能的实现方式中,所述智能网卡的逻辑绑定口对应所述智能网卡的多个成员口,所述逻辑绑定口的内部管理信息包括所述逻辑绑定口的成员口信息和链路汇聚控制协议LACP信息中的至少一种,所述硬件资源信息包括虚拟功能VF数量和队列中的至少一种。
在一种可能的实现方式中,所述方法还包括:所述智能网卡接收链路汇聚控制协议LACP报文;所述智能网卡向管理工具发送所述LACP报文;所述智能网卡接收所述管理工具基于所述LACP报文返回的所述智能网卡的逻辑绑定口对应的成员口的状态信息;所述智能网卡根据所述逻辑绑定口对应的成员口的状态信息,选择匹配的成员口发送所述 LACP报文。
在一种可能的实现方式中,所述管理工具与所述智能网卡的逻辑绑定口的形态相匹配,所述智能网卡的逻辑绑定口的形态为用户态或内核态。
第四方面,提供了一种逻辑绑定口的管理装置,该装置由管理平台执行,所述装置包括:
获取模块,用于获取智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种;
管理模块,用于对所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
在一种可能的实现方式中,所述管理模块,用于向管理工具发送第一消息,所述第一消息用于调用所述管理工具的第一管理接口对所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
在一种可能的实现方式中,所述装置,还包括:
确定模块,用于确定所述智能网卡的逻辑绑定口的形态;基于所述智能网卡的逻辑绑定口的形态确定所述管理工具,所述智能网卡的逻辑绑定口的形态为用户态或内核态,所述管理工具与所述智能网卡的逻辑绑定口的形态相匹配。
在一种可能的实现方式中,所确定模块,用于读取所述智能网卡的配置文件,根据所述配置文件确定所述智能网卡的逻辑绑定口的形态。
在一种可能的实现方式中,所述第一消息用于调用所述管理工具的第一管理接口在所述管理工具内部对所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理;
或者,所述第一消息用于调用所述管理工具的第一管理接口调用所述智能网卡上的第二管理接口,通过所述第二管理接口对所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
在一种可能的实现方式中,所述智能网卡的逻辑绑定口对应所述智能网卡的多个成员口,所述逻辑绑定口的内部管理信息包括所述逻辑绑定口的成员口信息和链路汇聚控制协议LACP信息中的至少一种,所述硬件资源信息包括虚拟功能VF数量和队列中的至少一种。
第五方面,提供了一种逻辑绑定口的管理装置,所述装置由管理工具执行,所述装置包括:
接收模块,用于接收管理平台发送的第一消息,所述第一消息用于所述管理平台调用所述管理工具的第一管理接口对所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理;
管理模块,用于基于所述第一消息调用的第一管理接口对所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
在一种可能的实现方式中,所述管理工具与所述智能网卡的逻辑绑定口的形态相匹配,所述智能网卡的逻辑绑定口的形态为用户态或内核态。
在一种可能的实现方式中,所述管理模块,用于基于所述第一消息调用的第一管理接口,在所述管理工具内部对所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理;
或者,所述管理模块,用于基于所述第一消息调用的第一管理接口调用所述智能网卡上的第二管理接口,通过所述第二管理接口对所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
在一种可能的实现方式中,所述接收模块,还用于接收所述智能网卡发送的链路汇聚控制协议LACP报文;
所述管理模块,还用于基于所述LACP报文确定所述智能网卡的逻辑绑定口对应的成员口的状态信息;向所述智能网卡返回所述智能网卡的逻辑绑定口对应的成员口的状态信息。
在一种可能的实现方式中,所述智能网卡的逻辑绑定口对应所述智能网卡的多个成员口,所述逻辑绑定口的内部管理信息包括所述逻辑绑定口的成员口信息和链路汇聚控制协议LACP信息中的至少一种,所述硬件资源信息包括虚拟功能VF数量和队列中的至少一种。
第六方面,提供了一种逻辑绑定口的管理装置,所述装置由智能网卡执行,所述装置包括:
获取模块,用于获取所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息;
管理模块,用于对所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
在一种可能的实现方式中,所述管理模块,用于根据管理工具调用的第二管理接口,对所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
在一种可能的实现方式中,所述智能网卡的逻辑绑定口对应所述智能网卡的多个成员口,所述逻辑绑定口的内部管理信息包括所述逻辑绑定口的成员口信息和链路汇聚控制协议LACP信息中的至少一种,所述硬件资源信息包括虚拟功能VF数量和队列中的至少一种。
在一种可能的实现方式中,所述装置还包括:
接收模块,用于接收链路汇聚控制协议LACP报文;
发送模块,用于向管理工具发送所述LACP报文;
所述接收模块,还用于接收所述管理工具基于所述LACP报文返回的所述智能网卡的逻辑绑定口对应的成员口的状态信息;
所述发送模块,还用于根据所述逻辑绑定口对应的成员口的状态信息,选择匹配的成员口发送所述LACP报文。
在一种可能的实现方式中,所述管理工具与所述智能网卡的逻辑绑定口的形态相匹配,所述智能网卡的逻辑绑定口的形态为用户态或内核态。
第七方面,提供了一种通信装置,该装置包括:处理器,所述处理器用于实现如上述第一方面或第二方面或第三方面中任一的逻辑绑定口的管理方法。
在一种可能的实现方式中,所述装置为芯片。
在一种可能的实现方式中,所述装置为网络设备,所述网络设备的类型包括以下至少一项:路由器、交换机或服务器。
第八方面,提供了一种通信系统,该通信系统包括管理平台、管理工具和智能网卡;
其中,管理平台用于执行如第一方面任一项所述的逻辑绑定口的管理方法,所述管理工具用于实现如第二方面任一所述的逻辑绑定口的管理方法,所述智能网卡用于执行如第三方面任一所述的逻辑绑定口的管理方法。
第九方面,提供了一种网络设备,该网络设备包括处理器,处理器与存储器耦合,存储器中存储有至少一条程序指令或代码,至少一条程序指令或代码由处理器加载并执行,以使该网络设备实现如上述第一方面或第二方面或第三方面中任一的逻辑绑定口的管理方法。
第十方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述指令由处理器加载并执行,以使计算机实现如上述第一方面或第二方面或第三方面中任一的逻辑绑定口的管理方法。
第十一方面,提供了一种计算机程序(产品),该计算机程序(产品)包括计算机程序,当该计算机程序被计算机运行时,使得该计算机执行如上述第一方面或第二方面或第三方面中任一的逻辑绑定口的管理方法。
第十二方面,提供了一种通信装置,该装置包括:收发器、存储器和处理器。其中,该收发器、该存储器和该处理器通过内部连接通路互相通信,该存储器用于存储指令,该处理器用于执行该存储器存储的指令,以控制收发器接收信号,并控制收发器发送信号,并且当该处理器执行该存储器存储的指令时,使得该处理器执行如上述第一方面或第二方面或第三方面任一所述的逻辑绑定口的管理方法。
在一种可能的实现方式中,处理器为一个或多个,存储器为一个或多个。
在一种可能的实现方式中,存储器可以与处理器集成在一起,或者存储器与处理器分离设置。
在具体实现过程中,存储器可以为非瞬时性(non-transitory)存储器,例如,只读存储器 (read only memory,ROM),其可以与处理器集成在同一块芯片上,也可以分别设置在不同的芯片上,本申请对存储器的类型以及存储器与处理器的设置方式不做限定。
第十三方面,提供了一种芯片,包括处理器,用于从存储器中调用并运行存储器中存储的指令,使得安装有芯片的通信设备执行如上述第一方面或第二方面或第三方面任一所述的逻辑绑定口的管理方法。
第十四方面,提供了另一种芯片,包括:输入接口、输出接口、处理器和存储器,输入接口、输出接口、处理器以及存储器之间通过内部连接通路相连,处理器用于执行存储器中的代码,当代码被执行时,处理器用于执行如上述第一方面或第二方面或第三方面任一所述的逻辑绑定口的管理方法。
应当理解的是,本申请的第二方面至第十四方面技术方案及对应的可能的实施方式所取得的有益效果可以参见上述对第一方面及其对应的可能的实施方式的技术效果,此处不再赘述。
附图说明
图1为本申请实施例提供的一种跨主机场景示意图;
图2为本申请实施例提供的一种实施环境示意图;
图3为本申请实施例提供的一种逻辑绑定口的管理方法流程图;
图4为本申请实施例提供的一种逻辑绑定口的管理系统的结构示意图;
图5为本申请实施例提供的另一种逻辑绑定口的管理系统的结构示意图;
图6为本申请实施例提供的另一种逻辑绑定口的管理方法流程图;
图7为本申请实施例提供的另一种逻辑绑定口的管理方法流程图;
图8为本申请实施例提供的另一种逻辑绑定口的管理方法的交互示意图;
图9为本申请实施例提供的一种逻辑绑定口的管理装置的结构示意图;
图10为本申请实施例提供的另一种逻辑绑定口的管理装置的结构示意图;
图11为本申请实施例提供的另一种逻辑绑定口的管理装置的结构示意图;
图12为本申请实施例提供的一种网络设备的结构示意图;
图13为本申请实施例提供的另一种网络设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
随着网络带宽的增加,VS的一些流量管理操作可由智能网卡(smart NIC)实现。智能网卡也称为智能网络适配器。为了提升流量转发的可靠性以及转发性能,智能网卡上的多个物理端口会组合成一个逻辑绑定口,该逻辑绑定口也称为Bonding口。以图1所示的跨主机(host)场景为例,图1中,不同主机上的VS与VM之间的流量会经过智能网卡的 Bonding口。其中,图1中的101指示Bonding口,102指示Bonding口的成员口,也即智能网卡上的物理端口。物理端口的速率可以是10吉比特以太网(gigabit ethernet,GE),或者其他大小,本申请实施例不对物理端口的速率进行限定,也不对一个Bonding口包括的成员口的数量进行限定,图1仅以一个Bonding口包括4个物理端口,也即一个逻辑绑定口包括4个成员口为例进行说明。
针对智能网卡的逻辑绑定口,本申请实施例提供了一种逻辑绑定口的管理方法,以对智能网卡的硬件资源信息和逻辑绑定口的内部管理信息进行管理。
示例性地,本申请实施例提供的方法可应用于如图2所示的实施环境中。图2中,该实施环境包括管理平台、VS、管理工具和智能网卡。管理平台分别与VS和管理工具连接, VS与至少一个智能网卡连接(图2中仅以一个为例进行说明),该管理工具还与智能网卡连接。可选地,VS可以是开源虚拟交换机(open virtual switch,OVS)。管理平台可以是云平台。
VS可将VS上的流表下发到智能网卡,并指示由智能网卡来进行逻辑绑定口的管理以及流量管理。在一种可能的实现方式中,VS上运行有数据平面开发套件(data planedevelopment kit,DPDK),DPDK是在数据平面应用中为快速的数据包处理提供的一个简单而完善的开源框架,VS与智能网卡通过该开源框架连接。智能网卡由智能网卡对应的驱动程序进行管理,各厂商的智能网卡的驱动程序注册到该开源框架上,从而实现VS与智能网卡的绑定,VS也由此能够获取智能网卡的相关信息,例如端口信息。其中,开源框架上包括多个开源接口,也即应用程序编程接口(application programming interface,API)。VS指示智能网卡进行流表规则和流量的管理时,可通过调用开源框架上对应的API来实现。
本申请实施例提供了一种逻辑绑定口的管理方法,基于上述图2所示的实施环境,以管理平台来执行该方法为例,该方法流程图可如图3所示,包括但不限于如下步骤301-步骤 302。
步骤301,管理平台获取智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种。
其中,智能网卡的逻辑绑定口对应智能网卡的多个成员口,例如图1所示的逻辑绑定口包括4个成员口。该逻辑绑定口的内部管理信息包括但不限于逻辑绑定口的成员口信息和LACP信息中的至少一种,硬件资源信息包括但不限于VF数量和队列中的至少一种。
本申请实施例不对管理平台获取智能网卡的逻辑绑定口的内部管理信息和硬件资源信息的方式进行限定,包括但不限于管理平台读取智能网卡的配置文件,从该配置文件中获取智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种。该配置文件可如下面的配置文件一和配置文件二所述,此处暂不赘述。
其中,成员口信息包括但不限于成员口的标识、数量等,LACP信息包括但不限于LACP状态。队列包括但不限于智能网卡上送报文到VS所使用的上送(upcall)队列,也可以称为去往VM方向的队列;或者,该队列包括VS向智能网卡发送报文所使用的注入(reinject)队列,也可称为来自VM方向的队列。
步骤302,管理平台对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
本申请实施例不对管理平台对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理的方式进行限定,包括但不限于设置(例如设置主成员口,实现主备模式;又例如设置逻辑绑定口策略,实现负载均衡模式等)、更改、增加(例如增加成员口)、删除(例如删除成员口)、查询(例如查询逻辑绑定口的状态或成员口的状态)等。
在一种可能的实现方式中,管理平台向管理工具发送第一消息,该第一消息用于调用管理工具的第一管理接口对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。其中,管理工具可以是配置在主机上的独立工具,该管理工具对外提供管理接口也即第一管理接口。管理平台通过向管理工具发送第一消息,来实现调用该管理工具上的第一管理接口,从而通过第一管理接口来对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。第一消息可以是管理工具能够识别的消息,第一消息的内容可以根据需要管理的信息确定。本申请不对第一消息的格式进行限定,包括但不限于Linux(一种操作系统)命令等。
在本申请实施例中,管理工具包括但不限于如下两种情况。
情况一,管理工具根据智能网卡的逻辑绑定口的形态进行了区分。
针对情况一,当操作系统安装完毕后,还需要安装智能网卡等硬件设备的驱动程序,由于智能网卡的驱动程序无法集成在操作系统中,因而需要另外安装该驱动程序。在Linux系统中,智能网卡的驱动程序可分为用户态驱动程序或内核态驱动程序,智能网卡的逻辑绑定口的形态也可分为用户态或内核态。用户态和内核态是操作系统的两种运行级别,用户态不能直接访问操作系统内核结构和数据。在本申请实施例中,管理平台向管理工具发送第一消息之前,还包括:管理平台确定智能网卡的逻辑绑定口的形态,管理平台基于智能网卡的逻辑绑定口的形态确定管理工具,智能网卡的逻辑绑定口的形态为用户态或内核态,管理工具与智能网卡的逻辑绑定口的形态相匹配。
通过确定智能网卡的逻辑绑定口的形态,可以选择与该逻辑绑定口的形态相匹配的管理工具来对该逻辑绑定口进行管理,从而在管理平台侧实现针对不同形态的智能网卡的逻辑绑定口的统一管理,提高了管理效率。
以图4所示的管理系统为例,管理平台上配置有Bonding内部管理模块,该Bonding内部管理模块用于对智能网卡的Bonding口的内部管理信息和硬件资源信息中的至少一种信息进行管理,管理工具分为用户态Bonding管理工具和内核态Bonding管理工具。针对智能网卡的逻辑绑定口的不同形态,管理平台可以调用与智能网卡的逻辑绑定口的形态相匹配的管理工具上的第一管理接口。例如,如果管理平台当前管理的智能网卡的逻辑绑定口的形态为用户态,则管理平台调用用户态Bonding管理工具上的Bonding内部管理API,也即第一管理接口。
关于智能网卡的逻辑绑定口的形态,本申请实施例不进行限定,管理平台确定智能网卡的逻辑绑定口的形态,包括但不限于:管理平台读取智能网卡的配置文件,根据配置文件确定智能网卡的逻辑绑定口的形态。通过配置文件来确定逻辑绑定口的形态,由此提高了效率和可靠性。例如,智能网卡的配置文件可为配置文件一,该配置文件一的内容如下所示。
<port>
<bonding>
<mode>kernel|user</mode>//kernel是内核态Bonding,user是用户态Bonding,这里二选一
</bonding>
<upcall-queue>//网卡和vswitch之间通过队列连接,网卡上送报文到VS(vswitch) 所使用的队列称为upcall队列;反之则为reinject队列
<vm-queue-total-num>50</vm-queue-total-num>//处理来自VM方向的upcall队列总数
</upcall-queue>
<reinject-queue>
<vm-queue-total-num>50</vm-queue-total-num>//处理去往VM方向的reinject队列总数
</reinject-queue>
</port>
针对该情况一,用户态Bonding网卡和内核态Bonding网卡均需要网卡厂商提供能被集成在DPDK开源代码的驱动程序,主要用于将DPDK创建的逻辑绑定口关联到对应内核态驱动程序或用户态驱动程序创建的实际的Bonding口。此外,该情况一下的VS,仅需将逻辑绑定口在DPDK内注册并加入网桥,也即VS不管理Bonding内部配置信息。
仍以图4所示的系统为例,管理平台读取上述配置文件一,获取网卡硬件初始资源信息。其中,upcall-queue/reinject-queue等信息都与网卡硬件资源有关。获取智能网卡的逻辑绑定口为用户态或内核态,调用对应的Bonding管理工具上的第一管理接口。例如,如果智能网卡的逻辑绑定口为用户态,管理平台调用网卡用户态Bonding管理工具的API设置逻辑绑定口的内部管理信息和硬件资源信息中的至少一种。如果智能网卡的逻辑绑定口为内核态,管理平台调用网卡内核态Bonding管理工具的API和Linux提供的数据链路层设置工具,例如网际互联协议(internet protocol,IP)链路层(Link)设置工具的API,设置逻辑绑定口的内部管理信息和硬件资源信息中的至少一种。
在本申请实施例提供的方法中,管理平台还具有Bonding逻辑端口管理功能,通过该 Bonding逻辑端口的管理功能还会向VS下发Bonding参数,例如,Bonding名称。可选地,管理平台还向VS下发PCI信息和设备形态等信息给VS,例如下发给OVS。OVS内部具有Bonding管理功能,能够实现逻辑绑定口的管理。例如,VS使用DPDK-RTE接口创建VS进程内的逻辑绑定口,通过DPDK RTE-ETH接口在内部创建虚拟设备(vdev)或者PCI设备并注册至DPDK的rte_eth_dev框架中,DPDK框架为逻辑绑定口分配对应的端口标识 (PORT ID),并将逻辑绑定口的信息下发给网卡厂商的DPDK用户态驱动程序。网卡厂商的DPDK用户态驱动程序,利用Bonding信息(例如PCI信息或Bonding名称等)将逻辑绑定口与创建的VS(vswitch)进程内的逻辑绑定口进行关联。此外,DPDK将生成的PORT ID返回给vswitch-OVS,vswitch-OVS将该逻辑绑定口添加至网桥。
创建逻辑绑定口之后,对逻辑绑定口进行增加、删除、修改和查询时,均可以使用网卡内核态管理工具的Bonding内部管理API接口或者网卡用户态管理工具的Bonding内部管理API接口,来实现对涉及upcall-queue/reinject-queue等信息的管理。
情况二,管理工具不根据智能网卡的逻辑绑定口的形态进行区分。
针对情况二,由于管理工具不根据智能网卡的逻辑绑定口的形态进行区分,因而管理工具是适应于任何逻辑绑定口的形态的管理工具。
以图5所示的管理系统为例,管理平台上具有Bonding内部管理功能,管理工具未区分用户态Bonding管理工具和内核态Bonding管理工具。管理平台通过调用管理工具上的第一管理接口来调用统一的管理工具,实现对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
该情况二下,管理平台可以通过读取智能网卡的配置文件来获取逻辑绑定口的内部管理信息和硬件资源信息等。例如,智能网卡的配置文件可为配置文件二,该配置文件二的内容如下所示。
<port>
<upcall-queue>//网卡和vswitch之间通过队列连接,网卡上送报文到vswitch所使用的队列称为upcall队列;反之则为reinject队列
<vm-queue-total-num>50</vm-queue-total-num>//处理来自VM方向的upcall队列总数
</upcall-queue>
<reinject-queue>
<vm-queue-total-num>50</vm-queue-total-num>//处理去往VM方向的reinject队列总数
</reinject-queue>
</port>
无论管理工具是上述哪种情况,通过管理平台向管理工具发送第一消息,通过该第一消息调用该管理工具上的第一管理接口对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理时,管理工具可采用如下两种管理方式。
方式一,通过管理工具在管理工具内部对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
该方式一中,管理工具具备管理能力,可以在管理工具内部对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。也即第一消息用于调用管理工具的第一管理接口,在管理工具内部对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。例如,图4所示的网卡用户态Bonding管理工具可以在内部实现Bonding的统一管理,例如设置成员口、LACP状态、LACP状态并同步至网卡等,对外提供Bonding管理API,也即第一管理接口。图4中的网卡内核态Bonding 管理工具可以在内部实现硬件资源管理,逻辑绑定口的内部管理信息可以通过与内核交互,在内核中实现管理。但图4仅是举例,逻辑绑定口的内部管理信息除了通过网卡内核态Bonding管理工具与内核交互,在内核内部实现管理之外,也可以均在网卡内核态 Bonding管理工具内部实现对逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。该种情况下,管理平台可以无需通过IP Link工具调用内核。
无论是哪种管理方式,对逻辑绑定口的内部管理信息和硬件资源信息的管理结果均可以同步到智能网卡上,使得智能网卡能够据此实现流量管理。该方法中,管理平台、VS、智能网卡和管理工具之间能够解耦,实现对不同智能网卡的逻辑绑定口的内部管理信息和硬件资源信息进行管理,管理的信息还能实时刷新至智能网卡中,提升数据转发的可靠性和实时性。
方式二,通过管理工具调用智能网卡上的第二管理接口,通过第二管理接口对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
该方式二中,管理工具可以无需在管理工具内部实现对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理,而是由智能网卡实现。也即第一消息用于调用管理工具的第一管理接口调用智能网卡上的第二管理接口,通过第二管理接口对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
仍以图5所示的系统为例,管理平台发送第一消息,第一消息用于调用管理工具的Bonding内部管理API,进而通过管理工具的Bonding内部管理API调用智能网卡上的第二管理接口,也即图5中智能网卡上的Bonding内部管理接口,在智能网卡内部实现对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。例如,图5所示的智能网卡通过Bonding内部管理接口在智能网卡内部实现Bonding的统一管理,如设置成员口、LACP状态、LACP状态等。
针对该方式二,智能网卡需要提供网卡厂商用户态DPDK驱动,该驱动集成在DPDK开源代码中,主要用于将DPDK创建的逻辑端口关联到对应驱动创建的实际的Bonding口。此外,该方式二下的VS,仅需将逻辑绑定口在DPDK内注册并加入网桥,也即VS不管理 Bonding内部管理信息。
仍以图5所示的系统为例,管理平台读取上述配置文件二,获取网卡硬件初始资源信息。其中,upcall-queue/reinject-queue等信息都与网卡硬件资源有关。管理平台通过向管理工具发送第一消息来调用管理工具的API,通过管理工具的API调用智能网卡上的第二管理接口,通过第二管理接口设置逻辑绑定口的内部管理信息和硬件资源信息中的至少一种。
在本申请实施例提供的方法中,可以根据管理工具的不同情况,既可以选择在管理工具内部对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理,也可以通过调用智能网卡上的第二管理接口来对逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理,使得管理的灵活性更高,适用的场景更全面。
此外,在本申请实施例提供的方法中,管理平台还具有Bonding逻辑端口管理功能,通过该Bonding逻辑端口的管理功能还会向VS下发Bonding参数,例如,Bonding名称,可选地,还下发PCI信息和设备形态等信息给VS,例如下发给OVS。OVS内部具有Bonding 管理功能,能够实现逻辑绑定口的管理。例如,VS使用DPDK RTE ETH接口创建VS进程内的逻辑绑定口,通过DPDK RTE-ETH接口在内部创建虚拟设备(vdev)或者PCI设备并注册至DPDK的rte_eth_dev框架中,DPDK框架为逻辑绑定口分配对应的端口标识(PORT ID),并将逻辑绑定口的信息下发给网卡厂商的DPDK用户态驱动程序。网卡厂商的DPDK 用户态驱动程序,利用Bonding信息(例如PCI信息或Bonding名称等)将逻辑绑定口与创建的VS进程内的逻辑绑定口进行关联。此外,DPDK将生成的PORT ID返回给vswitch-OVS,vswitch-OVS将该逻辑绑定口添加至网桥。
创建逻辑绑定口之后,对逻辑绑定口进行增加、删除、修改和查询时,均可以使用管理工具的Bonding内部管理API接口调用智能网卡上的第二管理接口,来实现对涉及upcall-queue/reinject-queue等信息的管理。
综上所述,本申请实施例提供的方法,管理平台、VS、智能网卡和管理工具之间能够解耦,实现对不同智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理,提升数据转发的可靠性和实时性。
本申请实施例提供了一种逻辑绑定口的管理方法,以管理工具来执行该方法为例,该方法流程图可如图6所示,包括但不限于如下步骤601-步骤602。
步骤601,管理工具接收管理平台发送的第一消息,第一消息用于管理平台调用管理工具的第一管理接口对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
其中,智能网卡的逻辑绑定口对应智能网卡的多个成员口,该逻辑绑定口的内部管理信息包括但不限于逻辑绑定口的成员口信息和LACP信息中的至少一种,硬件资源信息包括但不限于虚拟功能VF数量和队列中的至少一种。
如上述图3所示的实施例的相关描述,第一管理接口可以为管理工具的接口,管理工具与智能网卡的逻辑绑定口的形态相匹配,智能网卡的逻辑绑定口的形态为用户态或内核态。关于第一管理接口、管理工具和智能网卡的逻辑绑定口的形态等可参考上述图3实施例中的相关说明,此处不再赘述。
步骤602,管理工具基于第一消息调用的第一管理接口对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
在示例性实施例中,管理工具对智能网卡的信息进行管理,包括但不限于如下两种方式。
方式一,管理工具基于第一消息调用的第一管理接口,在管理工具内部对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
方式二,管理工具基于第一消息调用的第一管理接口调用智能网卡上的第二管理接口,通过第二管理接口对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
上述方式一和方式二的管理方式可参考上述图3所示实施例中步骤302中的相关说明,此处不再赘述。
本申请实施例提供了一种逻辑绑定口的管理方法,以智能网卡来执行该方法为例,该方法流程图可如图7所示,包括但不限于如下步骤701-步骤702。
步骤701,智能网卡获取智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息。
智能网卡可通过自身的配置得到逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息,该配置可如上述图3所示的实施例中的配置文件一和配置文件二。此外,智能网卡也可以基于管理平台调用的管理工具来获取需要管理的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息,本申请实施例不对智能网卡获取逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息的方式进行限定。
示例性地,无论是通过哪种方式获取,该智能网卡的逻辑绑定口对应智能网卡的多个成员口,逻辑绑定口的内部管理信息包括逻辑绑定口的成员口信息和LACP信息中的至少一种,硬件资源信息包括虚拟功能VF数量和队列中的至少一种。
步骤702,智能网卡对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
在一种可能的实现方式中,智能网卡对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理,包括:智能网卡根据管理工具调用的第二管理接口,对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
智能网卡对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理的方式可参考上述图3所示实施例中步骤302中的相关说明,此处不再赘述。
在上述图3和图6所示的逻辑绑定口的管理方法的基础上,针对在管理工具内部实现对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息进行管理的情况,本申请实施例提供的方法还包括如图8所示的报文转发过程,该过程包括步骤801-步骤807。
步骤801,智能网卡接收LACP报文。
本申请实施例不对智能网卡接收LACP报文的时机进行限定,可以周期性传输LACP报文,因而智能网卡可周期性接收LACP报文,本申请实施例以其中一次接收到LACP报文为例进行说明。
由于采用LACP聚合的双方(分别称为Actor和Partner)通过LACP报文来交互本端(Actor)和对端(Partner)的聚合信息,以对整个链路聚合的认识达成一致。因而该LACP 报文主要包含以下信息:本端和对端系统优先级、本端和对端系统ID、本端和对端的端口操作key(密钥)、本端和对端的端口优先级、本端和对端的端口ID、本端和对端的端口状态等。聚合的双方根据这些信息,按照一定的选择算法选择合适的链路,控制聚合的状态。被选中的成员链路可以正常转发流量,而未被选中的成员链路将被置为阻塞状态,不能转发任何流量。聚合链路的总带宽等于被选中的成员链路的带宽之和,并且聚合链路上的流量会按照一定的规则分担到各个选中的成员链路上,由于LACP报文是周期性交互,即聚合的双方每隔一段时间便互发一次协议报文,所以当有选中成员链路因为某种原因不能工作时,链路聚合可以很快的感知到,并重设链路状态,置该链路为阻塞,流量被重分配给其他选中成员链路。这样就实现了增加带宽,链路动态备份的功能。
步骤802,智能网卡向管理工具发送LACP报文。
由于逻辑绑定口的内部管理信息和硬件资源信息由管理工具在管理工具内部管理,因而管理工具内部具有逻辑绑定口的成员口信息和LACP信息等,所以智能网卡接收到LACP报文后,将LACP报文发送给管理工具,由管理工具来确定成员口的状态信息。
在本申请实施例中,管理工具与智能网卡的逻辑绑定口的形态相匹配,智能网卡的逻辑绑定口的形态为用户态或内核态。以图4所示的系统为例,智能网卡的逻辑绑定口为用户态时,该智能网卡可将接收到的LACP报文发送给用户态Bonding管理工具。智能网卡的逻辑绑定口为内核态时,该智能网卡可将接收到的LACP报文发送给内核态Bonding 管理工具。
步骤803,管理工具接收智能网卡发送的LACP报文。
管理工具与智能网卡的逻辑绑定口的形态相匹配,仍以图4所示的系统为例,智能网卡的逻辑绑定口为用户态时,用户态Bonding管理工具将接收到智能网卡发送的LACP报文。智能网卡的逻辑绑定口为内核态时,内核态Bonding管理工具将接收到该智能网卡发送的LACP报文。
步骤804,管理工具基于LACP报文确定智能网卡的逻辑绑定口对应的成员口的状态信息。
管理工具接收到LACP报文后,可基于LACP信息确定智能网卡的逻辑绑定口对应的成员口的状态信息。该成员口的状态信息用于指示成员口的状态为开启(up)还是关闭(down)。
步骤805,管理工具向智能网卡返回智能网卡的逻辑绑定口对应的成员口的状态信息。
管理工具可通过外部API接口也即第一管理接口向智能网卡返回智能网卡的逻辑绑定口对应的成员口的状态信息。
步骤806,智能网卡接收管理工具基于LACP报文返回的智能网卡的逻辑绑定口对应的成员口的状态信息。
在该实施例中,无论是哪个管理工具,该LACP报文从智能网卡收到后上送位于管理工具内的LACP协议栈,管理工具可将确定的LACP状态也即成员口的状态信息同步刷新至智能网卡,例如图4所示的智能网卡中的“Bonding结果”区域中。
步骤807,智能网卡根据逻辑绑定口对应的成员口的状态信息,选择匹配的成员口发送LACP报文。
由于逻辑绑定口对应的成员口的状态信息指示了成员口的状态是up还是down,因而智能网卡可根据成员口的状态来选择匹配的成员口发送LACP报文。例如选择状态为up的成员口来发送LACP报文。
在本申请实施例提供的实施例中,针对图3、图6和图7中所示的由智能网卡在智能网卡内部实现对逻辑绑定口的内部管理信息和硬件资源信息进行管理的方式,智能网卡接收到LACP报文后,可在智能网卡的内部基于LACP报文确定智能网卡的逻辑绑定口对应的成员口的状态信息,根据逻辑绑定口对应的成员口的状态信息,选择匹配的成员口发送LACP报文。该种情况下,智能网卡无需再与管理工具进行交互,进一步提高了数据转发的可靠性和安全性。
图9是本申请实施例提供的一种逻辑绑定口的管理装置的结构示意图,该装置应用于管理平台,该管理平台为上述图2或图3或图4或图5或图6所示的管理平台。基于图9所示的如下多个模块,该图9所示的逻辑绑定口的管理装置能够执行管理平台所执行的全部或部分操作。应理解到,该装置可以包括比所示模块更多的附加模块或者省略其中所示的一部分模块,本申请实施例对此并不进行限制。如图9所示,该装置包括:
获取模块901,用于获取智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种;
管理模块902,用于对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
在一种可能的实现方式中,管理模块902,用于向管理工具发送第一消息,第一消息用于调用管理工具的第一管理接口对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
在一种可能的实现方式中,该装置,还包括:
确定模块,用于确定智能网卡的逻辑绑定口的形态;基于智能网卡的逻辑绑定口的形态确定管理工具,智能网卡的逻辑绑定口的形态为用户态或内核态,管理工具与智能网卡的逻辑绑定口的形态相匹配。
在一种可能的实现方式中,确定模块,用于读取智能网卡的配置文件,根据配置文件确定智能网卡的逻辑绑定口的形态。
在一种可能的实现方式中,第一消息用于调用管理工具的第一管理接口在管理工具内部对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理;
或者,第一消息用于调用管理工具的第一管理接口调用智能网卡上的第二管理接口,通过第二管理接口对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
在一种可能的实现方式中,智能网卡的逻辑绑定口对应智能网卡的多个成员口,逻辑绑定口的内部管理信息包括逻辑绑定口的成员口信息和链路汇聚控制协议LACP信息中的至少一种,硬件资源信息包括虚拟功能VF数量和队列中的至少一种。
图10是本申请实施例提供的一种逻辑绑定口的管理装置的结构示意图,该装置应用于管理工具,该管理工具为上述图2或图3或图4或图5或图6或图8所示的管理工具。基于图10所示的如下多个模块,该图10所示的逻辑绑定口的管理装置能够执行管理工具所执行的全部或部分操作。应理解到,该装置可以包括比所示模块更多的附加模块或者省略其中所示的一部分模块,本申请实施例对此并不进行限制。如图10所示,该装置包括:
接收模块1001,用于接收管理平台发送的第一消息,第一消息用于管理平台调用管理工具的第一管理接口对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理;
管理模块1002,用于基于第一消息调用的第一管理接口对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
在一种可能的实现方式中,管理工具与智能网卡的逻辑绑定口的形态相匹配,智能网卡的逻辑绑定口的形态为用户态或内核态。
在一种可能的实现方式中,管理模块1002,用于基于第一消息调用的第一管理接口,在管理工具内部对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理;
或者,管理模块1002,用于基于第一消息调用的第一管理接口调用智能网卡上的第二管理接口,通过第二管理接口对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
在一种可能的实现方式中,接收模块1001,还用于接收智能网卡发送的链路汇聚控制协议LACP报文;
管理模块1002,还用于基于LACP报文确定智能网卡的逻辑绑定口对应的成员口的状态信息;向智能网卡返回智能网卡的逻辑绑定口对应的成员口的状态信息。
在一种可能的实现方式中,智能网卡的逻辑绑定口对应智能网卡的多个成员口,逻辑绑定口的内部管理信息包括逻辑绑定口的成员口信息和链路汇聚控制协议LACP信息中的至少一种,硬件资源信息包括虚拟功能VF数量和队列中的至少一种。
图11是本申请实施例提供的一种逻辑绑定口的管理装置的结构示意图,该装置应用于智能网卡,该智能网卡为上述图2-图8任一所示的智能网卡。基于图11所示的如下多个模块,该图11所示的逻辑绑定口的管理装置能够执行智能网卡所执行的全部或部分操作。应理解到,该装置可以包括比所示模块更多的附加模块或者省略其中所示的一部分模块,本申请实施例对此并不进行限制。如图11所示,该装置包括:
获取模块1101,用于获取智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息;
管理模块1102,用于对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
在一种可能的实现方式中,管理模块1102,用于根据管理工具调用的第二管理接口,对智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
在一种可能的实现方式中,智能网卡的逻辑绑定口对应智能网卡的多个成员口,逻辑绑定口的内部管理信息包括逻辑绑定口的成员口信息和链路汇聚控制协议LACP信息中的至少一种,硬件资源信息包括虚拟功能VF数量和队列中的至少一种。
在一种可能的实现方式中,装置还包括:
接收模块,用于接收链路汇聚控制协议LACP报文;
发送模块,用于向管理工具发送LACP报文;
接收模块,还用于接收管理工具基于LACP报文返回的智能网卡的逻辑绑定口对应的成员口的状态信息;
发送模块,还用于根据逻辑绑定口对应的成员口的状态信息,选择匹配的成员口发送LACP报文。
在一种可能的实现方式中,管理工具与智能网卡的逻辑绑定口的形态相匹配,智能网卡的逻辑绑定口的形态为用户态或内核态。
本申请实施例提供了一种通信装置,该通信装置可为智能网卡或者管理平台或者管理工具,用于执行上述图3-图8所示的方法中智能网卡或者管理平台或者管理工具涉及的操作。示例性地,该管理装置包括:处理器,该处理器用于实现智能网卡或者管理平台或者管理工具所涉及的操作。
在一种可能的实现方式中,该装置为芯片。
在一种可能的实现方式中,该装置为网络设备,该网络设备的类型包括以下至少一项:路由器、交换机或服务器。
示例性地,处理器是通用中央处理器(central processing unit,CPU)、数字信号处理器 (digital signal processor,DSP)、网络处理器(network processer,NP)、图形处理器(graphics processing unit,GPU)、神经网络处理器(neural-network processingunits,NPU)、数据处理单元(data processing unit,DPU)、微处理器或者一个或多个用于实现本申请方案的集成电路。例如,处理器1001包括专用集成电路(application-specificintegrated circuit,ASIC),可编程逻辑器件(programmable logic device,PLD)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。PLD例如是复杂可编程逻辑器件(complex programmable logic device,CPLD)、现场可编程逻辑门阵列(field-programmable gate array,FPGA)、通用阵列逻辑(generic array logic,GAL)或其任意组合。其可以实现或执行结合本申请实施例公开内容所描述的各种逻辑方框、模块和电路。该处理器也可以是实现计算功能的组合,例如包括一个或多个微处理器组合,DSP和微处理器的组合等等。
参见图12,图12示出了本申请一个示例性实施例提供的网络设备2000的结构示意图。图12所示的网络设备2000可为智能网卡或者管理平台或者管理工具,用于执行上述图3-图8所示的方法所涉及的操作。该网络设备2000例如是交换机、路由器等,该网络设备2000可以由一般性的总线体系结构来实现。如图12所示,网络设备2000包括至少一个处理器2001、存储器2003以及至少一个通信接口2004。
处理器2001例如是CPU、DSP、NP、GPU、NPU、DPU、微处理器或者一个或多个用于实现本申请方案的集成电路。例如,处理器2001包括ASIC,PLD或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。PLD例如是,CPLD、FPGA、GAL或其任意组合。其可以实现或执行结合本申请实施例公开内容所描述的各种逻辑方框、模块和电路。该处理器也可以是实现计算功能的组合,例如包括一个或多个微处理器组合,DSP和微处理器的组合等等。
可选的,网络设备2000还包括总线。总线用于在网络设备2000的各组件之间传送信息。总线可以是外设部件互连标准(peripheral component interconnect,简称PCI)总线或扩展工业标准结构(extended industry standard architecture,简称EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图12中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器2003例如是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其它类型的静态存储设备,又如是随机存取存储器(random access memory,RAM)或者可存储信息和指令的其它类型的动态存储设备,又如是电可擦可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、只读光盘(compactdisc read-only memory, CD-ROM)或其它光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其它磁存储设备,或者是能够用于携带或存储具有指令或数据结构形式的期望的程序指令并能够由计算机存取的任何其它介质,但不限于此。存储器2003 例如是独立存在,并通过总线与处理器2001相连接。存储器2003也可以和处理器2001集成在一起。
通信接口2004使用任何收发器一类的装置,用于与其它设备或通信网络通信,通信网络可以为以太网、无线接入网(RAN)或无线局域网(wireless local area network,WLAN)等。通信接口2004可以包括有线通信接口,还可以包括无线通信接口。具体的,通信接口2004 可以为以太(ethernet)接口、快速以太(fast ethernet,FE)接口、千兆以太(gigabit ethernet, GE)接口,异步传输模式(asynchronous transfer mode,ATM)接口,无线局域网(wireless local area networks,WLAN)接口,蜂窝网络通信接口或其组合。以太网接口可以是光接口,电接口或其组合。在本申请实施例中,通信接口2004可以用于网络设备2000与其他设备进行通信。
在具体实现中,作为一种实施例,处理器2001可以包括一个或多个CPU,如图12中所示的CPU0和CPU1。这些处理器中的每一个可以是一个单核(single-CPU)处理器,也可以是一个多核(multi-CPU)处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
在具体实现中,作为一种实施例,网络设备2000可以包括多个处理器,如图12中所示的处理器2001和处理器2005。这些处理器中的每一个可以是一个单核处理器(single-CPU),也可以是一个多核处理器(multi-CPU)。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(如计算机程序指令)的处理核。
在具体实现中,作为一种实施例,网络设备2000还可以包括输出设备和输入设备。输出设备和处理器2001通信,可以以多种方式来显示信息。例如,输出设备可以是液晶显示器 (liquid crystal display,LCD)、发光二极管(light emitting diode,LED)显示设备、阴极射线管(cathode ray tube,CRT)显示设备或投影仪(projector)等。输入设备和处理器2001通信,可以以多种方式接收用户的输入。例如,输入设备可以是鼠标、键盘、触摸屏设备或传感设备等。
在一些实施例中,存储器2003用于存储执行本申请方案的程序指令2010,处理器2001 可以执行存储器2003中存储的程序指令2010。也即是,网络设备2000可以通过处理器2001 以及存储器2003中的程序指令2010,来实现方法实施例提供的逻辑绑定口的管理方法或者流量管理方法。程序指令2010中可以包括一个或多个软件模块。可选地,处理器2001自身也可以存储执行本申请方案的程序代码或指令。
在具体实施例中,本申请实施例的网络设备2000可对应于上述图2-图8中方法实施例中的管理平台,网络设备2000中的处理器2001读取存储器2003中的指令,使图12所示的网络设备2000能够执行管理平台所执行的全部或部分操作。
在具体实施例中,本申请实施例的网络设备2000可对应于上述图2-图8中方法实施例中的智能网卡,网络设备2000中的处理器2001读取存储器2003中的指令,使图12所示的网络设备2000能够执行智能网卡所执行的全部或部分操作。
在具体实施例中,本申请实施例的网络设备2000可对应于上述图2-图8中方法实施例中的管理工具,网络设备2000中的处理器2001读取存储器2003中的指令,使图12所示的网络设备2000能够执行管理工具所执行的全部或部分操作。
网络设备2000还可以对应于上述图9-11所示的装置,该装置中的每个功能模块采用网络设备2000的软件实现。换句话说,装置中包括的功能模块为网络设备2000的处理器2001 读取存储器2003中存储的程序指令2010后生成的。
其中,图3-图8所示的方法的各步骤通过网络设备2000的处理器中的硬件的集成逻辑电路或者软件形式的指令完成。结合本申请实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤,为避免重复,这里不再详细描述。
参见图13,图13示出了本申请另一个示例性实施例提供的网络设备2100的结构示意图。图13所示的网络设备2100可为智能网卡或者管理工具或者管理平台,用于执行上述图3-图 8中所示的方法所涉及的操作。该网络设备2100例如是交换机、路由器等,该网络设备2100 可以由一般性的总线体系结构来实现。如图13所示,网络设备2100包括:主控板2110和接口板2130。
主控板也称为主处理单元(main processing unit,MPU)或路由处理卡(routeprocessor card),主控板2110用于对网络设备2100中各个组件的控制和管理,包括路由计算、设备管理、设备维护、协议处理功能。主控板2110包括:中央处理器2111和存储器2112。
接口板2130也称为线路接口单元卡(line processing unit,LPU)、线卡(linecard)或业务板。接口板2130用于提供各种业务接口并实现数据包的转发。业务接口包括而不限于以太网接口、POS(packet over SONET/SDH)接口等,以太网接口例如是灵活以太网业务接口 (flexible ethernet clients,FlexE Clients)。接口板2130包括:中央处理器2131网络处理器 2132、转发表项存储器2134和物理接口卡(physical interface card,PIC)2133。
接口板2130上的中央处理器2131用于对接口板2130进行控制管理并与主控板2110上的中央处理器2111进行通信。
网络处理器2132用于实现报文的转发处理。网络处理器2132的形态可以是转发芯片。转发芯片可以是网络处理器(network processor,NP)。在一些实施例中,转发芯片可以通过专用集成电路(application-specific integrated circuit,ASIC)或现场可编程门阵列(field programmable gate array,FPGA)实现。具体而言,网络处理器2132用于基于转发表项存储器2134保存的转发表转发接收到的报文,如果报文的目的地址为报文处理设备2100的地址,则将该报文上送至CPU(如中央处理器2131)处理;如果报文的目的地址不是报文处理设备 2100的地址,则根据该目的地址从转发表中查找到该目的地址对应的下一跳和出接口,将该报文转发到该目的地址对应的出接口。其中,上行报文的处理可以包括:报文入接口的处理,转发表查找;下行报文的处理可以包括:转发表查找等等。在一些实施例中,中央处理器也可执行转发芯片的功能,比如基于通用CPU实现软件转发,从而接口板中不需要转发芯片。
物理接口卡2133用于实现物理层的对接功能,原始的流量由此进入接口板2130,以及处理后的报文从该物理接口卡2133发出。物理接口卡2133也称为子卡,可安装在接口板2130 上,负责将光电信号转换为报文并对报文进行合法性检查后转发给网络处理器2132处理。在一些实施例中,中央处理器2131也可执行网络处理器2132的功能,比如基于通用CPU实现软件转发,从而物理接口卡2133中不需要网络处理器2132。
示例性地,网络设备2100包括多个接口板,例如网络设备2100还包括接口板2140,接口板2140包括:中央处理器2141、网络处理器2142、转发表项存储器2144和物理接口卡2143。接口板2140中各部件的功能和实现方式与接口板2130相同或相似,在此不再赘述。
示例性地,网络设备2100还包括交换网板2120。交换网板2120也可以称为交换网板单元(switch fabric unit,SFU)。在网络设备有多个接口板的情况下,交换网板2120用于完成各接口板之间的数据交换。例如,接口板2130和接口板2140之间可以通过交换网板2120通信。
主控板2110和接口板耦合。例如。主控板2110、接口板2130和接口板2140,以及交换网板2120之间通过系统总线与系统背板相连实现互通。在一种可能的实现方式中,主控板 2110和接口板2130及接口板2140之间建立进程间通信协议(inter-processcommunication, IPC)通道,主控板2110和接口板2130及接口板2140之间通过IPC通道进行通信。
在逻辑上,网络设备2100包括控制面和转发面,控制面包括主控板2110和中央处理器 2111,转发面包括执行转发的各个组件,比如转发表项存储器2134、物理接口卡2133和网络处理器2132。控制面执行路由器、生成转发表、处理信令和协议报文、配置与维护网络设备的状态等功能,控制面将生成的转发表下发给转发面,在转发面,网络处理器2132基于控制面下发的转发表对物理接口卡2133收到的报文查表转发。控制面下发的转发表可以保存在转发表项存储器2134中。在有些实施例中,控制面和转发面可以完全分离,不在同一网络设备上。
值得说明的是,主控板可能有一块或多块,有多块的时候可以包括主用主控板和备用主控板。接口板可能有一块或多块,网络设备的数据处理能力越强,提供的接口板越多。接口板上的物理接口卡也可以有一块或多块。交换网板可能没有,也可能有一块或多块,有多块的时候可以共同实现负荷分担冗余备份。在集中式转发架构下,网络设备可以不需要交换网板,接口板承担整个系统的业务数据的处理功能。在分布式转发架构下,网络设备可以有至少一块交换网板,通过交换网板实现多块接口板之间的数据交换,提供大容量的数据交换和处理能力。所以,分布式架构的报文处理设备的数据接入和处理能力要大于集中式架构的报文处理设备。示例性地,网络设备的形态也可以是只有一块板卡,即没有交换网板,接口板和主控板的功能集成在该一块板卡上,此时接口板上的中央处理器和主控板上的中央处理器在该一块板卡上可以合并为一个中央处理器,执行两者叠加后的功能,这种形态的网络设备的数据交换和处理能力较低(例如,低端交换机或路由器等网络设备)。具体采用哪种架构,取决于具体的组网部署场景,此处不做任何限定。
在一种可能的实现方式中,本申请实施例还提供了一种通信系统,该通信系统包括:管理平台、管理工具和智能网卡。示例性地,该通信系统基于图12和图13示出的网络设备得到。例如,管理平台为图12所示的网络设备2000或图13所示的网络设备2100,智能网卡为图12所示的网络设备2000或图13所示的网络设备2100,管理工具为图12所示的网络设备2000或图13所示的网络设备2100。管理平台、管理工具和智能网卡所执行的方法可参见上述图3-图8中所示的方法所示实施例的相关描述,此处不再加以赘述。
本申请实施例还提供了一种通信装置,该装置包括:收发器、存储器和处理器。其中,该收发器、该存储器和该处理器通过内部连接通路互相通信,该存储器用于存储指令,该处理器用于执行该存储器存储的指令,以控制收发器接收信号,并控制收发器发送信号,并且当该处理器执行该存储器存储的指令时,使得该处理器执行图3-图8中智能网卡或者管理平台或者管理工具所需执行的方法。
应理解的是,上述处理器可以是CPU,还可以是其他通用处理器、DSP、ASIC、FPGA或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者是任何常规的处理器等。值得说明的是,处理器可以是支持进阶精简指令集机器(advanced RISC machines,ARM)架构的处理器。
进一步地,在一种可选的实施例中,上述存储器可以包括只读存储器和随机存取存储器,并向处理器提供指令和数据。存储器还可以包括非易失性随机存取存储器。例如,存储器还可以存储设备类型的信息。
该存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用。例如,静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic random access memory,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data dateSDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(directrambus RAM,DR RAM)。
本申请实施例还提供了一种计算机可读存储介质,存储介质中存储有至少一条指令,指令由处理器加载并执行以实现如上图3-图8中任一所述的方法。
本申请实施例还提供了一种计算机程序(产品),当计算机程序被计算机执行时,可以使得处理器或计算机执行上述方法实施例中对应的方法的各个步骤和/或流程。
本申请实施例还提供了一种芯片,包括处理器,用于从存储器中调用并运行所述存储器中存储的指令,使得安装有所述芯片的通信设备执行如上图3-图8中任一所述的方法。
本申请实施例还提供另一种芯片,包括:输入接口、输出接口、处理器和存储器,所述输入接口、输出接口、所述处理器以及所述存储器之间通过内部连接通路相连,所述处理器用于执行所述存储器中的代码,当所述代码被执行时,所述处理器用于执行如上图3-图8中任一所述的方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘solid statedisk)等。
本领域普通技术人员可以意识到,结合本文中所公开的实施例中描述的各方法步骤和模块,能够以软件、硬件、固件或者其任意组合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各实施例的步骤及组成。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。本领域普通技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,该程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机程序指令。作为示例,本申请实施例的方法可以在机器可执行指令的上下文中被描述,机器可执行指令诸如包括在目标的真实或者虚拟处理器上的器件中执行的程序模块中。一般而言,程序模块包括例程、程序、库、对象、类、组件、数据结构等,其执行特定的任务或者实现特定的抽象数据结构。在各实施例中,程序模块的功能可以在所描述的程序模块之间合并或者分割。用于程序模块的机器可执行指令可以在本地或者分布式设备内执行。在分布式设备中,程序模块可以位于本地和远程存储介质二者中。
用于实现本申请实施例的方法的计算机程序代码可以用一种或多种编程语言编写。这些计算机程序代码可以提供给通用计算机、专用计算机或其他可编程的数据处理装置的处理器,使得程序代码在被计算机或其他可编程的数据处理装置执行的时候,引起在流程图和/或框图中规定的功能/操作被实施。程序代码可以完全在计算机上、部分在计算机上、作为独立的软件包、部分在计算机上且部分在远程计算机上或完全在远程计算机或服务器上执行。
在本申请实施例的上下文中,计算机程序代码或者相关数据可以由任意适当载体承载,以使得设备、装置或者处理器能够执行上文描述的各种处理和操作。载体的示例包括信号、计算机可读介质等等。
信号的示例可以包括电、光、无线电、声音或其它形式的传播信号,诸如载波、红外信号等。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、设备和模块的具体工作过程,可以参见前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、设备和方法,可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,该模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、设备或模块的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
该作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请实施例方案的目的。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以是两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
该集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。计算机可读存储介质可以是包含或存储用于或有关于指令执行系统、装置或设备的程序的任何有形介质。计算机可读存储介质可以是机器可读信号介质或机器可读存储介质。计算机可读存储介质可以包括但不限于电子的、磁的、光学的、电磁的、红外的或半导体系统、装置或设备,或其任意合适的组合。计算机可读存储介质的更详细示例包括带有一根或多根导线的电气连接、便携式计算机磁盘、硬盘、随机存储存取器 (RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或闪存)、光存储设备、磁存储设备,或其任意合适的组合。
还应理解,在本申请的各个实施例中,各个过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
本申请中术语“至少一个”的含义是指一个或多个,本申请中术语“多个”的含义是指两个或两个以上,例如,多个目标对象是指两个或两个以上的目标对象。
应理解,在本文中对各种所述示例的描述中所使用的术语只是为了描述特定示例,而并非旨在进行限制。如在对各种所述示例的描述和所附权利要求书中所使用的那样,单数形式“一个(“a”,“an”)”和“该”旨在也包括复数形式,除非上下文另外明确地指示。
还应理解,本文中所使用的术语“和/或”是指并且涵盖相关联的所列出的项目中的一个或多个项目的任何和全部可能的组合。术语“和/或”,是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本申请中的字符“/”,一般表示前后关联对象是一种“或”的关系。
还应理解,术语“包括”(也称“includes”、“including”、“comprises”和/或“comprising”) 当在本说明书中使用时指定存在所陈述的特征、整数、步骤、操作、元素、和/或部件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元素、部件、和/或其分组。
还应理解,术语“若”和“如果”可被解释为意指“当...时”(“when”或“upon”)或“响应于确定”或“响应于检测到”。类似地,根据上下文,短语“若确定...”或“若检测到[所陈述的条件或事件]”可被解释为意指“在确定...时”或“响应于确定...”或“在检测到[所陈述的条件或事件]时”或“响应于检测到[所陈述的条件或事件]”。
应理解,根据A确定B并不意味着仅仅根据A确定B,还可以根据A和/或其它信息确定B。
还应理解,说明书通篇中提到的“一个实施例”、“一实施例”、“一种可能的实现方式”意味着与实施例或实现方式有关的特定特征、结构或特性包括在本申请的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”、“一种可能的实现方式”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。
需要说明的是,本申请所涉及的信息(包括但不限于逻辑绑定口的内部管理信息和硬件资源信息等)、数据(包括但不限于配置文件等)以及信号,均为经用户授权或者经过各方充分授权的,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
以上描述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (38)
1.一种逻辑绑定口的管理方法,其特征在于,所述方法由管理平台执行,所述方法包括:
所述管理平台获取智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种;
所述管理平台对所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
2.根据权利要求1所述的方法,其特征在于,所述管理平台对所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理,包括:
所述管理平台向管理工具发送第一消息,所述第一消息用于调用所述管理工具的第一管理接口对所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
3.根据权利要求2所述的方法,其特征在于,所述管理平台向管理工具发送第一消息之前,还包括:
所述管理平台确定所述智能网卡的逻辑绑定口的形态;
所述管理平台基于所述智能网卡的逻辑绑定口的形态确定所述管理工具,所述智能网卡的逻辑绑定口的形态为用户态或内核态,所述管理工具与所述智能网卡的逻辑绑定口的形态相匹配。
4.根据权利要求3所述的方法,其特征在于,所述管理平台确定智能网卡的逻辑绑定口的形态,包括:
所述管理平台读取所述智能网卡的配置文件,根据所述配置文件确定所述智能网卡的逻辑绑定口的形态。
5.根据权利要求2-4任一项所述的方法,其特征在于,
所述第一消息用于调用所述管理工具的第一管理接口在所述管理工具内部对所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理;
或者,所述第一消息用于调用所述管理工具的第一管理接口调用所述智能网卡上的第二管理接口,通过所述第二管理接口对所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述智能网卡的逻辑绑定口对应所述智能网卡的多个成员口,所述逻辑绑定口的内部管理信息包括所述逻辑绑定口的成员口信息和链路汇聚控制协议LACP信息中的至少一种,所述硬件资源信息包括虚拟功能VF数量和队列中的至少一种。
7.一种逻辑绑定口的管理方法,其特征在于,所述方法由管理工具执行,所述方法包括:
所述管理工具接收管理平台发送的第一消息,所述第一消息用于所述管理平台调用所述管理工具的第一管理接口对所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理;
所述管理工具基于所述第一消息调用的第一管理接口对所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
8.根据权利要求7所述的方法,其特征在于,所述管理工具与所述智能网卡的逻辑绑定口的形态相匹配,所述智能网卡的逻辑绑定口的形态为用户态或内核态。
9.根据权利要求7或8所述的方法,其特征在于,所述管理工具基于所述第一消息调用的第一管理接口对所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理,包括:
所述管理工具基于所述第一消息调用的第一管理接口,在所述管理工具内部对所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理;
或者,所述管理工具基于所述第一消息调用的第一管理接口调用所述智能网卡上的第二管理接口,通过所述第二管理接口对所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
10.根据权利要求7-9任一项所述的方法,其特征在于,所述方法还包括:
所述管理工具接收所述智能网卡发送的链路汇聚控制协议LACP报文;
所述管理工具基于所述LACP报文确定所述智能网卡的逻辑绑定口对应的成员口的状态信息;
所述管理工具向所述智能网卡返回所述智能网卡的逻辑绑定口对应的成员口的状态信息。
11.根据权利要求7-10任一项所述的方法,其特征在于,所述智能网卡的逻辑绑定口对应所述智能网卡的多个成员口,所述逻辑绑定口的内部管理信息包括所述逻辑绑定口的成员口信息和链路汇聚控制协议LACP信息中的至少一种,所述硬件资源信息包括虚拟功能VF数量和队列中的至少一种。
12.一种逻辑绑定口的管理方法,其特征在于,所述方法由智能网卡执行,所述方法包括:
所述智能网卡获取所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息;
所述智能网卡对所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
13.根据权利要求12所述的方法,其特征在于,所述智能网卡对所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理,包括:
所述智能网卡根据管理工具调用的第二管理接口,对所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
14.根据权利要求12或13所述的方法,其特征在于,所述智能网卡的逻辑绑定口对应所述智能网卡的多个成员口,所述逻辑绑定口的内部管理信息包括所述逻辑绑定口的成员口信息和链路汇聚控制协议LACP信息中的至少一种,所述硬件资源信息包括虚拟功能VF数量和队列中的至少一种。
15.根据权利要求12-14任一项所述的方法,其特征在于,所述方法还包括:
所述智能网卡接收链路汇聚控制协议LACP报文;
所述智能网卡向管理工具发送所述LACP报文;
所述智能网卡接收所述管理工具基于所述LACP报文返回的所述智能网卡的逻辑绑定口对应的成员口的状态信息;
所述智能网卡根据所述逻辑绑定口对应的成员口的状态信息,选择匹配的成员口发送所述LACP报文。
16.根据权利要求15所述的方法,其特征在于,所述管理工具与所述智能网卡的逻辑绑定口的形态相匹配,所述智能网卡的逻辑绑定口的形态为用户态或内核态。
17.一种逻辑绑定口的管理装置,其特征在于,所述装置由管理平台执行,所述装置包括:
获取模块,用于获取智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种;
管理模块,用于对所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
18.根据权利要求17所述的装置,其特征在于,所述管理模块,用于向管理工具发送第一消息,所述第一消息用于调用所述管理工具的第一管理接口对所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
19.根据权利要求18所述的装置,其特征在于,所述装置,还包括:
确定模块,用于确定所述智能网卡的逻辑绑定口的形态;基于所述智能网卡的逻辑绑定口的形态确定所述管理工具,所述智能网卡的逻辑绑定口的形态为用户态或内核态,所述管理工具与所述智能网卡的逻辑绑定口的形态相匹配。
20.根据权利要求19所述的装置,其特征在于,所确定模块,用于读取所述智能网卡的配置文件,根据所述配置文件确定所述智能网卡的逻辑绑定口的形态。
21.根据权利要求18-20任一项所述的装置,其特征在于,所述第一消息用于调用所述管理工具的第一管理接口在所述管理工具内部对所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理;
或者,所述第一消息用于调用所述管理工具的第一管理接口调用所述智能网卡上的第二管理接口,通过所述第二管理接口对所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
22.根据权利要求17-21任一项所述的装置,其特征在于,所述智能网卡的逻辑绑定口对应所述智能网卡的多个成员口,所述逻辑绑定口的内部管理信息包括所述逻辑绑定口的成员口信息和链路汇聚控制协议LACP信息中的至少一种,所述硬件资源信息包括虚拟功能VF数量和队列中的至少一种。
23.一种逻辑绑定口的管理装置,其特征在于,所述装置由管理工具执行,所述装置包括:
接收模块,用于接收管理平台发送的第一消息,所述第一消息用于所述管理平台调用所述管理工具的第一管理接口对所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理;
管理模块,用于基于所述第一消息调用的第一管理接口对所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
24.根据权利要求23所述的装置,其特征在于,所述管理工具与所述智能网卡的逻辑绑定口的形态相匹配,所述智能网卡的逻辑绑定口的形态为用户态或内核态。
25.根据权利要求23或24所述的装置,其特征在于,所述管理模块,用于基于所述第一消息调用的第一管理接口,在所述管理工具内部对所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理;
或者,所述管理模块,用于基于所述第一消息调用的第一管理接口调用所述智能网卡上的第二管理接口,通过所述第二管理接口对所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
26.根据权利要求23-25任一项所述的装置,其特征在于,所述接收模块,还用于接收所述智能网卡发送的链路汇聚控制协议LACP报文;
所述管理模块,还用于基于所述LACP报文确定所述智能网卡的逻辑绑定口对应的成员口的状态信息;向所述智能网卡返回所述智能网卡的逻辑绑定口对应的成员口的状态信息。
27.根据权利要求23-26任一项所述的装置,其特征在于,所述智能网卡的逻辑绑定口对应所述智能网卡的多个成员口,所述逻辑绑定口的内部管理信息包括所述逻辑绑定口的成员口信息和链路汇聚控制协议LACP信息中的至少一种,所述硬件资源信息包括虚拟功能VF数量和队列中的至少一种。
28.一种逻辑绑定口的管理装置,其特征在于,所述装置由智能网卡执行,所述装置包括:
获取模块,用于获取所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息;
管理模块,用于对所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
29.根据权利要求28所述的装置,其特征在于,所述管理模块,用于根据管理工具调用的第二管理接口,对所述智能网卡的逻辑绑定口的内部管理信息和硬件资源信息中的至少一种信息进行管理。
30.根据权利要求28或29所述的装置,其特征在于,所述智能网卡的逻辑绑定口对应所述智能网卡的多个成员口,所述逻辑绑定口的内部管理信息包括所述逻辑绑定口的成员口信息和链路汇聚控制协议LACP信息中的至少一种,所述硬件资源信息包括虚拟功能VF数量和队列中的至少一种。
31.根据权利要求28-30任一项所述的装置,其特征在于,所述装置还包括:
接收模块,用于接收链路汇聚控制协议LACP报文;
发送模块,用于向管理工具发送所述LACP报文;
所述接收模块,还用于接收所述管理工具基于所述LACP报文返回的所述智能网卡的逻辑绑定口对应的成员口的状态信息;
所述发送模块,还用于根据所述逻辑绑定口对应的成员口的状态信息,选择匹配的成员口发送所述LACP报文。
32.根据权利要求31所述的装置,其特征在于,所述管理工具与所述智能网卡的逻辑绑定口的形态相匹配,所述智能网卡的逻辑绑定口的形态为用户态或内核态。
33.一种通信装置,其特征在于,包括处理器,所述处理器用于实现如权利要求1-16任一项所述的逻辑绑定口的管理方法。
34.根据权利要求33所述的装置,其特征在于,所述通信装置为芯片。
35.根据权利要求33所述的装置,其特征在于,所述通信装置为网络设备,所述网络设备的类型包括以下至少一项:路由器、交换机或服务器。
36.一种通信系统,其特征在于,所述通信系统包括管理平台、管理工具和智能网卡;
其中,所述管理平台用于执行如权利要求1-6中任一项所述的逻辑绑定口的管理方法,所述管理工具用于实现如权利要求7-11任一项所述的逻辑绑定口的管理方法,所述智能网卡用于执行如权利要求12-16任一项所述的逻辑绑定口的管理方法。
37.一种计算机可读存储介质,其特征在于,所述计算机存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行,以使计算机实现如权利要求1-16任一项所述的逻辑绑定口的管理方法。
38.一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序由计算机加载并执行,以使所述计算机实现如权利要求1-16任一项所述的逻辑绑定口的管理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2023/119526 WO2024061179A1 (zh) | 2022-09-24 | 2023-09-18 | 逻辑绑定口的管理方法、装置、系统及存储介质 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2022111686527 | 2022-09-24 | ||
CN202211168652 | 2022-09-24 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117768292A true CN117768292A (zh) | 2024-03-26 |
Family
ID=90320601
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211363068.7A Pending CN117768292A (zh) | 2022-09-24 | 2022-11-02 | 逻辑绑定口的管理方法、装置、系统及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN117768292A (zh) |
WO (1) | WO2024061179A1 (zh) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107181679A (zh) * | 2016-03-09 | 2017-09-19 | 中兴通讯股份有限公司 | 一种端口绑定实现方法及装置 |
CN106383736B (zh) * | 2016-09-21 | 2019-10-11 | 新华三技术有限公司 | 端口扩展方法和装置 |
US11115379B2 (en) * | 2019-02-28 | 2021-09-07 | Vmware, Inc. | Management of endpoint address discovery in a software defined networking environment |
CN114531405B (zh) * | 2020-10-31 | 2023-06-06 | 华为技术有限公司 | 一种流表处理方法及相关设备 |
CN114465902B (zh) * | 2022-01-07 | 2023-09-08 | 苏州浪潮智能科技有限公司 | 一种云主机多网卡管理bond的方法、系统、设备和介质 |
CN114745255B (zh) * | 2022-04-12 | 2023-11-10 | 深圳星云智联科技有限公司 | 硬件芯片、dpu、服务器、通信方法及相关装置 |
-
2022
- 2022-11-02 CN CN202211363068.7A patent/CN117768292A/zh active Pending
-
2023
- 2023-09-18 WO PCT/CN2023/119526 patent/WO2024061179A1/zh unknown
Also Published As
Publication number | Publication date |
---|---|
WO2024061179A1 (zh) | 2024-03-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109426549B (zh) | 多芯片封装、装置及计算机系统 | |
CN109479028B (zh) | 网络接口卡、计算设备以及数据包处理方法 | |
WO2021254500A1 (zh) | 一种转发报文的方法、设备和系统 | |
WO2022222577A1 (zh) | 数据格式的转换方法、装置、设备及计算机可读存储介质 | |
US11500666B2 (en) | Container isolation method and apparatus for netlink resource | |
WO2022068744A1 (zh) | 获取报文头信息、生成报文的方法、设备及存储介质 | |
US20190052480A1 (en) | Technologies for hairpinning network traffic | |
EP4239954A1 (en) | Message transmission method and apparatus, device, and computer-readable storage medium | |
WO2021185083A1 (zh) | Vnf实例化方法及装置 | |
CN105141603A (zh) | 通信数据传输方法及系统 | |
CN113553137B (zh) | 一种nfv架构下基于dpdk的接入能力网元高速数据处理方法 | |
CN112769716B (zh) | 基于混合型虚拟网桥的虚拟交换机的数据转发方法及装置 | |
US20240259331A1 (en) | Method for cross-card link aggregation of virtual function ports of data processing units, device and medium | |
CN109729731B (zh) | 一种加速处理方法及设备 | |
WO2023179457A1 (zh) | 业务连接的标识方法、装置、系统及存储介质 | |
CN117768292A (zh) | 逻辑绑定口的管理方法、装置、系统及存储介质 | |
CN116962161A (zh) | 路径检测方法、装置、系统及计算机可读存储介质 | |
CN114531351A (zh) | 传输报文的方法、装置、设备及计算机可读存储介质 | |
CN114826898A (zh) | 跨主机通信方法、装置、设备、系统及可读存储介质 | |
CN113259271A (zh) | 报文交换方法和报文交换系统 | |
CN114513485A (zh) | 获取映射规则的方法、装置、设备、系统及可读存储介质 | |
CN108121587B (zh) | 一种数据加速方法及虚拟加速器 | |
WO2024027194A1 (zh) | 报文转发方法、设备、系统及存储介质 | |
CN118316567A (zh) | 一种报文传输方法及装置 | |
CN116366552A (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 |