[go: up one dir, main page]

CN119676069A - 一种智能网卡的逻辑端口管理方法、装置、设备及介质 - Google Patents

一种智能网卡的逻辑端口管理方法、装置、设备及介质 Download PDF

Info

Publication number
CN119676069A
CN119676069A CN202311210235.9A CN202311210235A CN119676069A CN 119676069 A CN119676069 A CN 119676069A CN 202311210235 A CN202311210235 A CN 202311210235A CN 119676069 A CN119676069 A CN 119676069A
Authority
CN
China
Prior art keywords
chip
port
network card
ports
management 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.)
Granted
Application number
CN202311210235.9A
Other languages
English (en)
Other versions
CN119676069B (zh
Inventor
张有锋
郑超
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ruijie Networks Co Ltd
Original Assignee
Ruijie Networks Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Ruijie Networks Co Ltd filed Critical Ruijie Networks Co Ltd
Priority to CN202311210235.9A priority Critical patent/CN119676069B/zh
Publication of CN119676069A publication Critical patent/CN119676069A/zh
Application granted granted Critical
Publication of CN119676069B publication Critical patent/CN119676069B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请公开一种智能网卡的逻辑端口管理方法、装置、设备及介质,应用于计算机技术领域,用于提高端口的管理效率,方法包括:智能网卡中的第一芯片获取端口管理信息,并对第一芯片的逻辑端口进行配置,同时,触发事件类型为端口配置的网卡事件,之后,第一芯片监听网卡事件,并在网卡事件的事件类型为端口配置时,将网卡事件对应的端口管理信息发送至第二芯片,第二芯片根据网卡事件对应的端口管理信息对第二芯片的逻辑端口进行配置。本方案通过第一芯片监听网卡事件以及将端口管理信息发送至第二芯片,使得第二芯片可以直接配置逻辑端口,从而无需再借助DPDK驱动进行端口配置,也无需再开发运维工具,因此提高了端口管理的效率。

Description

一种智能网卡的逻辑端口管理方法、装置、设备及介质
技术领域
本申请涉及计算机技术领域,尤其涉及一种智能网卡的逻辑端口管理方法、装置、设备及介质。
背景技术
智能网卡(Smart Network Interface Card,SNIC)是一种灵活可编程的网卡,具备有计算能力,可以完成存储加速、数据加密、深度包检测和复杂路由等各种功能。SNIC通常具有两个及以上的对外传输数据的物理端口,为实现多物理端口的负载均衡,使用绑定(Bonding)技术将多个物理端口抽象绑定为一个逻辑端口。
对逻辑端口的管理主要借助位于用户空间的数据面开发套件(Data PlaneDevelopment Kit,DPDK)驱动。在实际运用中,技术人员需要开发一套运维工具来连接DPDK以实现对SNIC中逻辑端口的管理。对于不同的SNIC,则需要开发不同的运维工具,导致端口管理效率低下且管理成本高。
综上,目前亟需一种智能网卡的逻辑端口管理方法,用以提高端口的管理效率并降低端口管理成本。
发明内容
本申请提供了一种智能网卡的逻辑端口管理方法、装置、设备及介质,用以提高端口的管理效率并降低端口管理成本。
第一方面,本申请提供一种智能网卡的逻辑端口管理方法,方法包括:智能网卡中的第一芯片获取端口管理信息,并根据端口管理信息对第一芯片的逻辑端口进行配置,同时,触发事件类型为端口配置的网卡事件,之后,第一芯片监听网卡事件,并在网卡事件的事件类型为端口配置时,将网卡事件对应的端口管理信息发送至第二芯片。第二芯片根据网卡事件对应的端口管理信息对第二芯片的逻辑端口进行配置。其中,第一芯片的逻辑端口是对第一芯片的多个映射端口进行绑定得到的,第一芯片的映射端口是指与智能网卡中的第二芯片有映射关系的虚拟接口,第二芯片的逻辑端口是通过对第二芯片的多个对外端口进行绑定得到的,第二芯片的对外端口为智能网卡对外传输数据的物理端口,第二芯片的对外端口与第一芯片的映射端口相互映射。
在配置智能网卡的逻辑端口时,如果不运用DPDK,则无法将第一芯片接收到的端口管理信息传输且配置至第二芯片的逻辑端口。为了解决该问题,本方案中,由于是在第一芯片的内核空间配置第一芯片的逻辑端口,故会触发事件类型为端口配置的网卡事件,之后,第一芯片监听网卡事件,当监听到事件类型为端口配置的网卡事件时,可以将网卡事件对应的端口管理信息发送至第二芯片,使得第二芯片接收到端口管理信息,并且可以根据端口管理信息来配置第二芯片的逻辑端口,无需再借助DPDK驱动进行端口配置,故无需再开发运维工具,因此提高了端口管理的效率并降低了端口的管理成本。
可选地,方法还包括:第一芯片获取第二芯片的逻辑端口的端口状态;第一芯片比较第二芯片的逻辑端口的端口状态与第一芯片的逻辑端口的端口状态是否一致;若不一致,则第一芯片根据第二芯片的逻辑端口的端口状态配置第一芯片的逻辑端口。
通过上述方法,第一芯片的逻辑端口的端口状态与第二芯片的逻辑端口的端口状态保持一致,使得第一芯片可以实时确定第二芯片的逻辑端口的端口状态,实现对逻辑端口的端口状态管理。
可选地,第一芯片的多个映射端口包括第一映射端口以及第二映射端口,第二芯片的多个对外端口包括第一对外端口以及第二对外端口;第一映射端口与第一对外端口相互映射,第二映射端口与第二对外端口相互映射;第一芯片比较第二芯片的逻辑端口的端口状态与第一芯片的逻辑端口的端口状态是否一致,包括:第一芯片比较第一映射端口的端口状态与第一对外端口的端口状态是否一致;第一芯片比较第二映射端口的端口状态与第二对外端口的端口状态是否一致;若不一致,则第一芯片根据第二芯片的逻辑端口的端口状态配置第一芯片的逻辑端口,包括:若第一映射端口的端口状态与第一对外端口的端口状态不一致,则第一芯片根据第一对外端口的端口状态配置第一映射端口的端口状态;若第二映射端口的端口状态与第二对外端口的端口状态不一致,则第一芯片根据第二对外端口的端口状态配置第二映射端口的端口状态。
本方案中,逻辑端口是一个逻辑概念,汇集了多个物理端口的能力,使得多个物理端口共同作为一个单一的网络端口对外提供服务,也就是说,逻辑端口不承载具体功能,承载具体功能的是逻辑端口所对应的物理端口。因此,在端口状态跟踪中,实际跟踪的是逻辑端口所对应的物理端口的端口状态,故在本方案中,跟踪的是第一对外端口的端口状态以及第二对外端口的端口状态,并根据第一对外端口的端口状态以及第二对外端口的端口状态来配置第一映射端口的端口状态以及第二映射端口的端口状态。
可选地,第二芯片还包括逻辑端口状态寄存器;逻辑端口状态寄存器用于跟踪第二芯片的逻辑端口的端口状态;第一芯片获取第二芯片的逻辑端口的端口状态,包括:第一芯片通过逻辑端口状态寄存器获取第二芯片的逻辑端口的端口状态。
本方案在第二芯片中设置逻辑端口状态寄存器,逻辑端口状态寄存器可以实时跟踪第二芯片的逻辑端口的端口状态,第一芯片通过轮询逻辑端口状态寄存器,从而可以实时确定第二芯片的逻辑端口的端口状态。
可选地,第二芯片还包括绑定管理寄存器;将网卡事件对应的端口管理信息发送至智能网卡中的第二芯片,包括:将网卡事件对应的端口管理信息发送至绑定管理寄存器;第二芯片根据网卡事件对应的端口管理信息配置第二芯片的逻辑端口,包括:通过绑定管理寄存器,第二芯片根据网卡事件对应的端口管理信息配置第二芯片的逻辑端口。
上述方法中,通过在第二芯片中设置绑定管理寄存器,使得第二芯片可以通过绑定管理寄存器获得网卡事件对应的端口管理信息,并可以根据网卡事件对应的端口管理信息来配置第二芯片的逻辑端口。
可选地,智能网卡中的第一芯片获取端口管理信息,包括:第一芯片获取用户输入的端口管理信息,和/或,第一芯片获取第二芯片传输的端口管理信息。
上述方法中,第一芯片既可以直接接收用户输入的端口管理信息,也可以接收第二芯片传输的端口管理信息,例如,在动态链接绑定模式下,第一芯片通过第二芯片接收交换机传输的LACP报文作为端口管理信息,从而实现动态链接绑定模式下的逻辑端口管理。
可选地,第一芯片获取第二芯片传输的端口管理信息,包括:第一芯片接收第二芯片转发的链路汇聚控制协议LACP报文;第一芯片解析LACP报文,得到LACP报文对应的端口管理信息。
上述方法中,在动态链接绑定模式下,第一芯片通过第二芯片接收交换机传输的LACP报文作为端口管理信息,通过解析LACP报文并根据解析后的信息,可以实现对逻辑端口的管理。
可选地,方法还包括:第一芯片接收第二芯片所转发的地址解析协议ARP报文;第一芯片解析ARP报文,得到ARP报文对应的地址;第一芯片将ARP报文对应的地址进行存储。
上述方法中,在ARP报文传输中,需要先学习ARP报文对应的地址,本方案中第一芯片的Bonding模块可以直接解析并学习ARP报文对应的地址,无需再借助DPDK驱动,提高了端口管理的效率。
第二方面,本申请提供了一种智能网卡的逻辑端口管理装置,该装置包括:第一获取单元,用于获取端口管理信息;第一处理单元,用于根据端口管理信息对第一芯片的逻辑端口进行配置,并触发事件类型为端口配置的网卡事件;第一芯片的逻辑端口是对第一芯片的多个映射端口进行绑定得到的;第一芯片的映射端口是指与智能网卡中的第二芯片有映射关系的虚拟接口;监听网卡事件,并在网卡事件的事件类型为端口配置时,将网卡事件对应的端口管理信息发送至第二芯片;第二处理单元,用于根据网卡事件对应的端口管理信息对第二芯片的逻辑端口进行配置;第二芯片的逻辑端口是通过对第二芯片的多个对外端口进行绑定得到的;第二芯片的对外端口为智能网卡对外传输数据的物理端口;第二芯片的对外端口与第一芯片的映射端口相互映射。
第三方面,本申请提供了一种智能网卡,包括连接的第一芯片和第二芯片;所述第一芯片,用于获取端口管理信息;根据所述端口管理信息对所述第一芯片的逻辑端口进行配置,并触发事件类型为端口配置的网卡事件;所述第一芯片的逻辑端口是对所述第一芯片的多个映射端口进行绑定得到的;所述第一芯片的映射端口是指与所述智能网卡中的第二芯片有映射关系的虚拟接口;监听网卡事件,并在所述网卡事件的事件类型为端口配置时,将所述网卡事件对应的端口管理信息发送至所述第二芯片;所述第二芯片,用于根据所述网卡事件对应的端口管理信息对所述第二芯片的逻辑端口进行配置;所述第二芯片的逻辑端口是通过对所述第二芯片的多个对外端口进行绑定得到的;所述第二芯片的对外端口为所述智能网卡对外传输数据的物理端口;所述第二芯片的对外端口与所述第一芯片的映射端口相互映射。
第四方面,本申请提供了一种计算设备,包括至少一个处理器以及至少一个存储器,其中,所述存储器存储有计算机程序,当所述程序被所述处理器执行时,使得所述处理器执行上述第一方面任一所述的智能网卡的逻辑端口管理方法。
第五方面,本申请还提供了一种计算机可读存储介质,所述存储介质存储有程序,当所述程序在计算机上运行时,使得计算机实现执行上述第一方面任意所述的智能网卡的逻辑端口管理方法。
上述第二方面至第五方面的有益效果,具体请参照上述第一方面中相应设计可以达到的技术效果,这里不再重复赘述。
附图说明
为了更清楚地说明本申请中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种智能网卡的结构示意图;
图2为本申请实施例提供的一种智能网卡的逻辑端口管理方法的流程示意图;
图3为本申请实施例提供的一种获取第二芯片传输的端口管理信息的方法流程示意图;
图4为本申请实施例提供的一种智能网卡的逻辑端口管理方法的流程示意图;
图5为本申请实施例提供的一种解析ARP报文的方法流程示意图;
图6为本申请实施例提供的一种智能网卡解析ARP报文的示意图;
图7为本申请实施例提供的一种智能网卡的逻辑端口管理装置结构图;
图8为本申请实施例提供的一种计算设备的结构示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
需要说明的是,在本申请的描述中“多个”理解为“至少两个”。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。A与B连接,可以表示:A与B直接连接和A与B通过C连接这两种情况。另外,在本申请的描述中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。
绑定(Bonding)技术指将智能网卡的多个物理端口虚拟成为一个逻辑端口,从而提升与智能网卡连接的主机(Host)的网络吞吐量以及可用性。其中,物理端口是对应于物理层面的硬件,负责实际的数据传输和物理链路连接,每个物理端口都有唯一的MAC地址。相对应地,逻辑端口对外部应用程序和网络协议栈来说就像单独的物理端口一样可见,逻辑端口对应的所有物理端口具有相同的互联网协议(Internet Protocol,IP)地址。逻辑端口通过多个物理端口的负载平衡和故障切换,可以提供更高的带宽和冗余。
通常,逻辑端口包括7种绑定模式,业界明确智能网卡要至少支持7种绑定模式中的3种模式,分别为主备模式(mode=1)、平衡策略模式(mode=2)、以及动态链接绑定模式(mode=4)。其中,主备模式是指同一时刻只存在一个物理端口处于可用状态且允许网络流量通过,而其余物理端口作为备用端口,并不传递数据。平衡策略模式此模式基于指定的哈希(Hash)策略来传输数据包,提供负载平衡和容错能力。动态链接绑定模式指逻辑端口支持802.3ad协议,可以识别交换机传输的链路汇聚控制协议(Link Aggregation ControlProtocol,LACP)报文,该模式下,逻辑端口对应的所有物理端口保持相同的速率和双工模式。
在运用中,需要根据绑定模式来管理逻辑端口,然而,逻辑端口是一个虚拟概念,不承载具体功能,因此配置逻辑端口实际上指的是配置逻辑端口对应的物理端口,以确保其按照所需的方式运行。如背景技术介绍,传统技术通常使用DPDK来管理逻辑端口,该方法需要发开对应的运维工具,导致管理效率低。鉴于此,本申请实施例提供一种智能网卡的逻辑端口管理方法。
如图1所示,为本申请实施例提供的一种智能网卡的结构示意图,该智能网卡的操作系统可以为Linux,也可以为其他操作系统,具体不作限定。该智能网卡包括第一芯片100和第二芯片200,第一芯片100与第二芯片200之间可以进行信息交互,通信方式可以为有线通信,例如,通过周边设备高速连接标准(Peripheral Component Interconnect Express,PCIe)总线进行信息交互。
下面对第一芯片100和第二芯片200分别进行详细介绍。
第一芯片100可以为片上系统(System on Chip,SOC)。SOC是指将多个功能模块(如处理器、内存控制器、I/O端口等)集成在一起形成的一种集成电路芯片。第一芯片可以被划分为用户空间(user space)和内核空间(kernel space)。内核空间是操作系统内核访问的区域,独立于普通的应用程序,是受保护的内存空间。用户空间是指普通应用程序可以访问的空间。当进程运行在内核空间时就处于内核态,当进程运行在用户空间时就处于用户态。在用户态下,程序运行在操作系统之上,但受到一些限制,无法直接访问底层硬件资源或执行特权操作。这是为了确保操作系统的稳定性和安全性。在用户态下,程序可以执行普通的应用任务,如打开文件、执行计算等,但不能直接操作内存或其他系统资源。在内核态下,程序拥有更高的权限,可以直接访问底层硬件资源和执行特权操作,如内存管理、硬件驱动程序等。传统技术通常是基于用户空间通过DPDK来管理逻辑端口,该方法管理效率较低,且需要技术人员开发一套运维工具来连接DPDK,导致管理成本高,然而,本方案是基于内核空间管理逻辑端口,管理效率相对较高。
第一芯片100包括用户输入模块101。用户输入模块101处于第一芯片100的用户空间中,用于接收用户输入的端口管理信息。在Linux操作系统中,用户输入模块101可以指软件包iproute2,也可以指软件包net-tools。其中,软件包iproute2是linux下管理控制TCP/IP网络和流量控制的新一代工具包,借助工具“ip”以及工具“sysfs”,来接收用户输入的端口管理信息。其中,端口管理信息包括但不限于:新建逻辑端口、为逻辑端口添加成员口(对于第一芯片,指将映射端口添加至第一芯片的逻辑端口中;对于第二芯片,指将对外端口添加至第二芯片的逻辑端口中)、查询逻辑端口的聚合信息、删除逻辑端口的成员口、禁能逻辑端口(也即暂停逻辑端口的使用)、使能逻辑端口(也即启用逻辑端口)以及删除逻辑端口等操作。
第一芯片100还包括绑定(Bonding)模块102。Bonding模块102处于第一芯片100的内核空间中,用于配置第一芯片100的绑定端口,实现端口绑定(Bonding)功能。需要说明的是,由于在内核空间执行操作会触发生成网卡事件,因此,当Bonding模块102执行操作时,会在内核空间触发生成网卡事件,当Bonding模块102配置第一芯片100的绑定端口时,触发的网卡事件的事件类型为端口配置。本申请实施例中,Bonding模块可以为Linux操作系统原生开源支持的内核模块,第一芯片100执行“modprobe bonding”操作即可手动加载该内核模块,并默认编译输出bonding.ko模块文件:
/usr/lib/modules/$(uname-r)/kernel/drivers/net/bonding/bonding.ko
第一芯片100还包括监控模块103。监控模块103处于第一芯片100的内核空间中,用于监听第一芯片100的内控空间中的网卡事件,筛选出关注的网卡事件、解析并同步配置参数到第二芯片200或第二芯片200的相关寄存器。此外,监控模块103还可以轮询第二芯片上200的逻辑端口的端口状态,比较第二芯片200的逻辑端口的端口状态与第一芯片100的逻辑端口的端口状态是否一致,并在不一致时,监控模块103根据第二芯片200的逻辑端口的端口状态配置第一芯片100的逻辑端口。可选地,可以为监控模块103配置高精度定时器(hrtimer),使得监控模块103可以定时向第二芯片200询问第二芯片上200的逻辑端口的端口状态。本领域技术人员可以根据经验设置高精度定时器的访问时间间隔,例如,使监控模块103每隔一秒向第二芯片200进行询问。
第一芯片100还包括多个映射端口,映射端口是指与智能网卡中的第二芯片有映射关系的虚拟接口,对第一芯片100的多个映射端口进行绑定可以得到第一芯片100的逻辑端口。本申请实施例并不限定映射端口的数量,图1中示例了两个映射端口,也即第一映射端口104以及第二映射端口105。使用绑定技术将第一映射端口104以及第二映射端口105抽象绑定为一个逻辑端口,称为第一芯片的逻辑端口106。具体地,绑定逻辑端口的过程可以为:先创建第一芯片的逻辑端口106,将第一映射端口104添加至第一芯片的逻辑端口106的成员口,记为成员口1,再将第二映射端口105添加至第一芯片的逻辑端口106的成员口,记为成员口2。
本申请实施例中,由于逻辑端口是一个逻辑概念,不承载具体功能,因此配置第一芯片100的逻辑端口106实质上指的是配置映射端口104以及映射端口105。
在一种可能的实现方式中,第一芯片100还包括管理端口107,是第二芯片200的管理口,用于传输与第二芯片200相关的数据,例如将端口管理信息从第一芯片100通过管理端口107传输至第二芯片200,再例如将第二芯片200的逻辑端口的端口状态从第二芯片200通过管理端口107传输至第一芯片100。
在一种可能的实现方式中,第一芯片100还包括至少一个网络报文转发端口108(图1中示例了三个网络报文转发端口),网络报文转发端口108用于第一芯片与第二芯片间的网络报文的转发。
在一种可能的实现方式中,第一芯片100还包括至少一个块存储报文转发端口109(图1中示例了一个块存储报文转发端口109),块存储报文端口109用于第一芯片与第二芯片间的网络报文的转发。
进一步地,第一芯片100还可以包括软件数据面(OVS)模块110。OVS模块110处于第一芯片100的用户空间中,负责慢路径转发以及借助IFC模块111实现流表卸载,最终实现第二芯片200的快路径转发。
进一步地,第一芯片100还可以包括用户空间驱动程序(IFC)模块111IFC模块111处于第一芯片100的用户空间中,用于打通第一芯片100与第二芯片200之间的数据通路和控制通路。
第二芯片200为可编程芯片,例如现场可编程逻辑门阵列(Field ProgrammableGate Array,FPFA),也可以是专用集成电路(Application Specific IntegratedCircuit,ASIC)等。
第二芯片200包括至少一个对外端口,对外端口为智能网卡对外传输数据的物理端口。第二芯片200的对外端口与第一芯片100的映射端口相互映射。通过对第二芯片200的对外端口进行绑定得到第二芯片200的逻辑端口。图1中示例了第二芯片包括两个对外端口,第一对外端口201(记为MAC0)以及第二对外端口202(记为MAC1)。为实现多物理端口的负载均衡,将第一对外端口201以及第二对外端口202进行绑定,得到第二芯片的逻辑端口203。本申请实施例中,由于逻辑端口是一个逻辑概念,不承载具体功能,因此配置第二芯片的逻辑端口203实质上指的是配置第一对外端口201以及第二对外端口202。进一步地,为使第一芯片100可以实时确定第二芯片的逻辑端口的端口状态,第一芯片的逻辑端口的端口状态与第二芯片的逻辑端口的端口状态保持一致。图1中,设置第一对外端口201与第一映射端口104互相映射,第二对外端口202与第二映端口105互相映射。
第二芯片200还包括绑定管理寄存器204,是用于管理第二芯片200的逻辑端口203的配置寄存器。
第二芯片200还包括逻辑端口状态寄存器205,用于跟踪第二芯片200的逻辑端口203的端口状态,在图1的示例中,逻辑端口状态寄存器205实际上是跟踪第一对外端口201以及第二对外端口202的端口状态。
第二芯片200还包括硬件流表寄存器206,用于存储的硬件流表,用于卸载软件转发规则。
第二芯片200还包括虚拟网(virtio-net)后端207,用于配合主机(Host)系统中的virtio-net驱动。
基于上述对智能网卡的介绍,图2为本申请实施例提供的一种智能网卡的逻辑端口管理方法的流程示意图,该方法包括以下步骤:
步骤201,第一芯片100获取端口管理信息。
在一种可能的实现方式中,获取端口管理信息的方式包括:第一芯片100获取用户输入的端口管理信息,和/或,第一芯片100获取第二芯片200传输的端口管理信息。
本申请实施例中,端口管理信息既可以来自于用户的输入,也可以来自于与智能网卡相连接的外部设备(如交换机)的输入。对于来自于用户的输入,第一芯片100中的Bonding模块102可以通过用户输入模块101获取用户输入的端口管理信息,关于用户输入的端口管理信息的具体介绍可参见前述,此处不再赘述。对于来自于外部组件的输入,第二芯片200的对外端口获取外部组件的输入并将其通过对应的第一芯片100的映射端口传至Bonding模块102,Bonding模块102获取该第二芯片200传输的端口管理信息。
在一种可能的实现方式中,当设置逻辑端口的绑定模式为动态链接绑定模式时,第二芯片200的对外端口获取交换机传输的LACP报文,并将其通过对应的第一芯片100的映射端口传至Bonding模块102,Bonding模块102获取该LACP报文。
图3示例性地示出一种获取第二芯片传输的端口管理信息的方法流程示意图,该方法包括以下步骤:
步骤301,第一芯片100接收第二芯片转发的LACP报文。
具体地,第一芯片100中的Bonding模块102获取第二芯片200转发的LACP报文。
步骤302,第一芯片100解析LACP报文,得到LACP报文对应的端口管理信息。
具体地,第一芯片100中的Bonding模块102解析LACP报文,得到LACP报文对应的端口管理信息。
通过上述步骤301至步骤302,第一芯片获取到交换机传输的动态链接绑定模式下的端口管理信息。
步骤202,第一芯片100根据端口管理信息对第一芯片100的逻辑端口进行配置,并触发事件类型为端口配置的网卡事件。
具体地,第一芯片100在其内核空间根据端口管理信息对第一芯片100的逻辑端口进行配置,并触发事件类型为端口配置的网卡事件。
在一种可能的实现方式中,是第一芯片100中的Bonding模块102根据端口管理信息对第一芯片100的逻辑端口进行配置。以端口管理信息为将逻辑端口设为主备模式,其中,第一对外端口201设置为主端口,第二对外端口202设置为备端口为例,Bonding模块102接收到该端口管理信息后,会将与第一对外端口201对应的第一映射端口104配置为主端口,与第二对外端口202对应的第二映射端口105配置为备端口,在配置时,Bonding模块102会在内核空间同时触发件类型为端口配置的网卡事件。
步骤203,第一芯片100监听网卡事件,并在网卡事件的事件类型为端口配置时,将网卡事件对应的端口管理信息发送至第二芯片200。
具体地,第一芯片100中位于内核空间的监听模块103监听内核空间中的网卡事件,并在监听到网卡事件的事件类型为端口配置时,会将网卡事件对应的端口管理信息发送至第二芯片200。
可选地,监听模块103在监听到网卡事件的事件类型为端口配置时,监听模块103会解析该网卡事件,得到该网卡事件对应的端口管理信息并将其发送至第二芯片200。
进一步可选地,监听模块103解析并得到网卡事件对应的端口管理信息后,会判断端口管理信息的执行类型。若端口管理信息的执行类型为在逻辑端口中添加成员口,则监听模块103还会将添加的成员口的信息缓存至第一芯片的系统内存中。若端口管理信息的执行类型为使能逻辑端口,也即启用逻辑端口,则监听模块103会先读取逻辑端口的配置参数(例如使能位)以及逻辑端口对应的成员口的配置参数,之后,将端口管理信息发送至第二芯片200,使第二芯片200使能第二芯片200的逻辑端口,将第二芯片200的逻辑端口的使能位记为1,此外,监听模块103还会开启定时器功能,定时轮询第二芯片上的逻辑端口的状态。若端口管理信息的执行类型为禁能逻辑端口,也即停用逻辑端口,则监听模块103会将端口管理信息发送至第二芯片200,使第二芯片200禁能第二芯片200的逻辑端口,将第二芯片200的逻辑端口的使能位记为0。若端口管理信息的执行类型为删除逻辑端口,则监听模块103会将端口管理信息发送至第二芯片200,使第二芯片200删除其逻辑端口。
进一步可选地,第一芯片100将网卡事件对应的端口管理信息发送至第二芯片200的绑定管理寄存器204。
步骤204,第二芯片200根据网卡事件对应的端口管理信息对第二芯片200的逻辑端口进行配置。
可选地,可以通过绑定管理寄存器204,第二芯片200根据网卡事件对应的端口管理信息来配置第二芯片的逻辑端口。
以上述举例的端口管理信息为将逻辑端口设为主备模式,第一对外端口201设置为主端口,第二对外端口202设置为备端口为例,在接收到端口管理信息后,第二芯片200将第一对外端口201设置为主端口,第二对外端口202设置为备端口,从而实现将第二芯片200的逻辑端口203设为主备模式。
通过上述步骤201至步骤204,当第一芯片监听到事件类型为端口配置的网卡事件时,可以将网卡事件对应的端口管理信息发送至第二芯片,使得第二芯片接收到端口管理信息,并且可以根据端口管理信息来配置第二芯片的逻辑端口,无需再借助DPDK驱动进行端口配置,也无需再开发运维工具,因此提高了端口管理的效率。
为使第一芯片100可以实时确定第二芯片200的逻辑端口的端口状态,需要使第一芯片的逻辑端口的端口状态与第二芯片的逻辑端口的端口状态保持一致,也即是,使第一芯片的映射端口的端口状态与相对应的第二芯片的对外端口的端口状态保持一致。
图4为本申请实施例提供的一种智能网卡的逻辑端口管理方法的流程示意图,该方法包括以下步骤:
步骤401,第一芯片100获取第二芯片200的逻辑端口的端口状态。
可选地,第一芯片100可以通过逻辑端口状态寄存器205获取第二芯片200的逻辑端口的端口状态。其中,第一芯片100可以通过定时轮询的方式向逻辑端口状态寄存器205获取相关信息,轮询的时间间隔可以依据具体业务场景进行设置,例如,每间隔100毫秒向逻辑端口状态寄存器205询问一次。
步骤402,第一芯片比较第二芯片的逻辑端口的端口状态与第一芯片的逻辑端口的端口状态是否一致。若不一致,则执行步骤403,若一致,则执行步骤404。
其中,端口状态指的是端口处于开通状态或者闭合状态。在本申请实施例中,由于逻辑端口是抽象概念,不承载具体功能,故实际比较的是第二芯片的对外端口的端口状态与第一芯片的映射端口的端口状态是否一致。
在图1的示例中,第一芯片100的映射端口包括第一映射端口104以及第二映射端口105,所述第二芯片200的对外端口包括第一对外端口201以及第二对外端口202,而第一映射端口104与第一对外端口201相互映射,第二映射端口105与第二对外端口202相互映射,因此,第一芯片200比较第一映射端口104的端口状态与第一对外端口201的端口状态是否一致,第一芯片200比较第二映射端口105的端口状态与第二对外端口202的端口状态是否一致。
步骤403,第一芯片根据第二芯片的逻辑端口的端口状态配置第一芯片的逻辑端口。
具体地,若第二芯片200的逻辑端口的端口状态与第一芯片100的逻辑端口的端口状态不一致,则根据第二芯片200的逻辑端口的端口状态配置第一芯片100的逻辑端口,也即是,根据第二芯片的对外端口的端口状态配置第一芯片的映射端口的端口状态。
在图1的示例中,若第一映射端口104的端口状态与第一对外端口201的端口状态不一致,则第一芯片100根据第一对外端口201的端口状态配置第一映射端口104的端口状态;若第二映射端口105的端口状态与第二对外端口202的端口状态不一致,则第一芯片100根据第二对外端口202的端口状态配置第二映射端口105的端口状态。
步骤404,不执行操作。
具体地,若第二芯片200的逻辑端口的端口状态与第一芯片100的逻辑端口的端口状态一致,则根据第二芯片200不执行操作。
通过上述步骤401至步骤404,第一芯片的逻辑端口的端口状态与第二芯片的逻辑端口的端口状态保持一致,使得第一芯片可以实时确定第二芯片的逻辑端口的端口状态,实现对逻辑端口的端口状态管理。
对于地址解析协议(Address Resolution Protocol,ARP)报文,第二芯片的对外端口通过外部设备接收ARP报文,并将其通过第一芯片100的映射端口发送至第一芯片,第一芯片会解析并学习该ARP报文。示例性的,图1中的第一对外端口201接收到ARP报文后,会将该报文通过第一映射端口104转发至第一芯片100,相对应的,第二对外端口202接收到ARP报文后,会将该报文通过第二映射端口105转发至第一芯片100。
图5为本申请实施例提供的一种解析ARP报文的方法流程示意图,该方法包括以下步骤:
步骤501,第一芯片100接收第二芯片200所转发的ARP报文。
具体地,第一芯片100中的Bonding模块102,接收第二芯片200所转发的地址解析协议ARP报文。
步骤502,第一芯片100解析ARP报文,得到ARP报文对应的地址。
具体地,第一芯片100中的Bonding模块102根据其自身的功能,可以解析ARP报文并得到ARP报文对应的地址。
步骤503,第一芯片100将ARP报文对应的地址进行存储。
具体地,第一芯片100中的Bonding模块102将解析得到的ARP报文对应的地址进行存储,从而智能网卡获得了外部设备发送的ARP报文对应的地址,后续可以与该外部设备进行数据传输。
需要说明的是,如图6所示,对于ARP报文,第二芯片的对外端口将其通过第一芯片100的映射端口发送至第一芯片的Bonding模块102,还同时会通过第一芯片100的网络报文转发端口发送至第一芯片的用户空间的IFC模块111,并通过IFC模块111传输至OVS模块110进行地址解析。
基于上述同样的发明构思,本申请还提供一种智能网卡,包括连接的第一芯片和第二芯片,下面分别对第一芯片和第二芯片进行介绍:
第一芯片,用于获取端口管理信息;根据端口管理信息对第一芯片的逻辑端口进行配置,并触发事件类型为端口配置的网卡事件;第一芯片的逻辑端口是对第一芯片的多个映射端口进行绑定得到的;第一芯片的映射端口是指与智能网卡中的第二芯片有映射关系的虚拟接口;监听网卡事件,并在网卡事件的事件类型为端口配置时,将网卡事件对应的端口管理信息发送至第二芯片;
第二芯片,用于根据网卡事件对应的端口管理信息对第二芯片的逻辑端口进行配置;第二芯片的逻辑端口是通过对第二芯片的多个对外端口进行绑定得到的;第二芯片的对外端口为智能网卡对外传输数据的物理端口;第二芯片的对外端口与第一芯片的映射端口相互映射。
可选地,第一芯片,还用于获取第二芯片的逻辑端口的端口状态;比较第二芯片的逻辑端口的端口状态与第一芯片的逻辑端口的端口状态是否一致;若不一致,则根据第二芯片的逻辑端口的端口状态配置第一芯片的逻辑端口。
可选地,第一芯片,具体用于比较第一映射端口的端口状态与第一对外端口的端口状态是否一致;比较第二映射端口的端口状态与第二对外端口的端口状态是否一致;若第一映射端口的端口状态与第一对外端口的端口状态不一致,则根据第一对外端口的端口状态配置第一映射端口的端口状态;若第二映射端口的端口状态与第二对外端口的端口状态不一致,则根据第二对外端口的端口状态配置第二映射端口的端口状态。
可选地,第一芯片,具体用于通过逻辑端口状态寄存器获取第二芯片的逻辑端口的端口状态。
可选地,第一芯片,具体用于将网卡事件对应的端口管理信息发送至绑定管理寄存器;第二芯片,具体用于通过绑定管理寄存器,第二芯片根据网卡事件对应的端口管理信息配置第二芯片的逻辑端口。
基于上述同样的发明构思,本申请还提供一种智能网卡的逻辑端口管理装置,该装置可执行上述发明实施例中的方法。本申请提供的一种智能网卡的逻辑端口管理装置的结构可参见图7。智能网卡的逻辑端口管理装置700包括获取单元701、第一处理单元702和第二处理单元703。其中,获取单元701用于获取端口管理信息;第一处理单元702用于根据端口管理信息对第一芯片的逻辑端口进行配置,并触发事件类型为端口配置的网卡事件;第一芯片的逻辑端口是对第一芯片的多个映射端口进行绑定得到的;第一芯片的映射端口是指与智能网卡中的第二芯片有映射关系的物理端口;监听网卡事件,并在网卡事件的事件类型为端口配置时,将网卡事件对应的端口管理信息发送至第二芯片;第二处理单元703,用于根据网卡事件对应的端口管理信息对第二芯片的逻辑端口进行配置;第二芯片的逻辑端口是通过对第二芯片的多个对外端口进行绑定得到的;第二芯片的对外端口为智能网卡对外传输数据的物理端口;第二芯片的对外端口与第一芯片的映射端口相互映射。
可选地,第一处理单元702,具体用于获取第二芯片的逻辑端口的端口状态;比较第二芯片的逻辑端口的端口状态与第一芯片的逻辑端口的端口状态是否一致;若不一致,则根据第二芯片的逻辑端口的端口状态配置第一芯片的逻辑端口。
可选地,第一芯片的映射端口包括第一映射端口以及第二映射端口,第二芯片的对外端口包括第一对外端口以及第二对外端口;第一映射端口与第一对外端口相互映射,第二映射端口与第二对外端口相互映射;第一处理单元702,具体用于比较第一映射端口的端口状态与第一对外端口的端口状态是否一致;比较第二映射端口的端口状态与第二对外端口的端口状态是否一致;若第一映射端口的端口状态与第一对外端口的端口状态不一致,则根据第一对外端口的端口状态配置第一映射端口的端口状态;若第二映射端口的端口状态与第二对外端口的端口状态不一致,则根据第二对外端口的端口状态配置第二映射端口的端口状态。
可选地,第二芯片还包括逻辑端口状态寄存器;逻辑端口状态寄存器用于跟踪第二芯片的逻辑端口的端口状态;第一处理单元702,具体用于第一芯片通过逻辑端口状态寄存器获取第二芯片的逻辑端口的端口状态。
可选地,第二芯片还包括绑定管理寄存器;第一处理单元702,具体用于将网卡事件对应的端口管理信息发送至绑定管理寄存器;第二处理单元703,具体用于通过绑定管理寄存器,根据网卡事件对应的端口管理信息配置第二芯片的逻辑端口。
可选地,第一处理单元702,具体用于获取用户输入的端口管理信息,和/或,获取第二芯片传输的端口管理信息。
可选地,第一处理单元702,具体用于接收第二芯片转发的LACP报文;解析LACP报文,得到LACP报文对应的端口管理信息。
可选地,第一处理单元702,具体用于接收第二芯片所转发的ARP报文;解析ARP报文,得到ARP报文对应的地址;将ARP报文对应的地址进行存储。
基于相同的技术构思,本申请还提供了一种计算设备,如图8所示,计算设备800包括至少一个处理器801,以及与至少一个处理器连接的存储器802,本申请中不限定处理器801与存储器802之间的具体连接介质,图8中处理器801和存储器802之间通过总线连接为例。总线可以分为地址总线、数据总线、控制总线等。
在本申请中,存储器802存储有可被至少一个处理器801执行的指令,至少一个处理器801通过执行存储器802存储的指令,可以执行前述的智能网卡的逻辑端口管理方法中所包括的步骤。
其中,处理器801是计算设备的控制中心,可以利用各种接口和线路连接计算设备的各个部分,通过运行或执行存储在存储器802内的指令以及调用存储在存储器802内的数据,从而实现智能网卡的逻辑端口管理。可选地,处理器801可包括一个或多个处理单元,处理器801可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理下发指令。可以理解的是,上述调制解调处理器也可以不集成到处理器801中。在一些实施例中,处理器801和存储器802可以在同一芯片上实现,在一些实施例中,它们也可以在独立的芯片上分别实现。
处理器801可以是通用处理器,例如中央处理器(central processing unit,CPU)、数字信号处理器、专用集成电路(application specific integrated circuit,ASIC)、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本申请中公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合智能网卡的逻辑端口管理方法实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储器802作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。存储器802可以包括至少一种类型的存储介质,例如可以包括闪存、硬盘、多媒体卡、卡型存储器、随机访问存储器(random accessmemory,RAM)、静态随机访问存储器(static random access memory,SRAM)、可编程只读存储器(programmable read only memory,PROM)、只读存储器(read only memory,ROM)、带电可擦除可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、磁性存储器、磁盘、光盘等等。存储器802是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本申请中的存储器802还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令和/或数据。
基于相同的技术构思,本申请还提供了一种计算机可读存储介质,其存储有可由计算设备执行的计算机程序,当所述程序在所述计算设备上运行时,使得所述计算设备执行上述智能网卡的逻辑端口管理方法的步骤。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (12)

1.一种智能网卡的逻辑端口管理方法,其特征在于,所述方法包括:
所述智能网卡中的第一芯片获取端口管理信息;
所述第一芯片根据所述端口管理信息对所述第一芯片的逻辑端口进行配置,并触发事件类型为端口配置的网卡事件;所述第一芯片的逻辑端口是对所述第一芯片的多个映射端口进行绑定得到的;所述第一芯片的映射端口是指与所述智能网卡中的第二芯片有映射关系的虚拟接口;
所述第一芯片监听网卡事件,并在所述网卡事件的事件类型为端口配置时,将所述网卡事件对应的端口管理信息发送至所述第二芯片;
所述第二芯片根据所述网卡事件对应的端口管理信息对所述第二芯片的逻辑端口进行配置;所述第二芯片的逻辑端口是通过对所述第二芯片的多个对外端口进行绑定得到的;所述第二芯片的对外端口为所述智能网卡对外传输数据的物理端口;所述第二芯片的对外端口与所述第一芯片的映射端口相互映射。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:
所述第一芯片获取所述第二芯片的逻辑端口的端口状态;
所述第一芯片比较所述第二芯片的逻辑端口的端口状态与所述第一芯片的逻辑端口的端口状态是否一致;
若不一致,则所述第一芯片根据所述第二芯片的逻辑端口的端口状态配置所述第一芯片的逻辑端口。
3.如权利要求2所述的方法,其特征在于,所述第一芯片的多个映射端口包括第一映射端口以及第二映射端口,所述第二芯片的多个对外端口包括第一对外端口以及第二对外端口;所述第一映射端口与所述第一对外端口相互映射,所述第二映射端口与所述第二对外端口相互映射;
所述第一芯片比较所述第二芯片的逻辑端口的端口状态与所述第一芯片的逻辑端口的端口状态是否一致,包括:
所述第一芯片比较所述第一映射端口的端口状态与所述第一对外端口的端口状态是否一致;所述第一芯片比较所述第二映射端口的端口状态与所述第二对外端口的端口状态是否一致;
所述若不一致,则所述第一芯片根据所述第二芯片的逻辑端口的端口状态配置所述第一芯片的逻辑端口,包括:
若所述第一映射端口的端口状态与所述第一对外端口的端口状态不一致,则所述第一芯片根据所述第一对外端口的端口状态配置所述第一映射端口的端口状态;若所述第二映射端口的端口状态与所述第二对外端口的端口状态不一致,则所述第一芯片根据所述第二对外端口的端口状态配置所述第二映射端口的端口状态。
4.如权利要求2所述的方法,其特征在于,所述第二芯片还包括逻辑端口状态寄存器;所述逻辑端口状态寄存器用于跟踪所述第二芯片的逻辑端口的端口状态;
所述第一芯片获取所述第二芯片的逻辑端口的端口状态,包括:
所述第一芯片通过所述逻辑端口状态寄存器获取所述第二芯片的逻辑端口的端口状态。
5.如权利要求1所述的方法,其特征在于,所述第二芯片还包括绑定管理寄存器;
所述将所述网卡事件对应的端口管理信息发送至所述智能网卡中的第二芯片,包括:
将所述网卡事件对应的端口管理信息发送至所述绑定管理寄存器;
所述第二芯片根据所述网卡事件对应的端口管理信息配置所述第二芯片的逻辑端口,包括:
通过所述绑定管理寄存器,所述第二芯片根据所述网卡事件对应的端口管理信息配置所述第二芯片的逻辑端口。
6.如权利要求1所述的方法,其特征在于,所述智能网卡中的第一芯片获取端口管理信息,包括:
所述第一芯片获取用户输入的端口管理信息,和/或,所述第一芯片获取所述第二芯片传输的端口管理信息。
7.如权利要求6所述的方法,其特征在于,所述第一芯片获取所述第二芯片传输的端口管理信息,包括:
所述第一芯片接收所述第二芯片转发的链路汇聚控制协议LACP报文;
所述第一芯片解析所述LACP报文,得到所述LACP报文对应的端口管理信息。
8.如权利要求1所述的方法,其特征在于,所述方法还包括:
所述第一芯片接收所述第二芯片所转发的地址解析协议ARP报文;
所述第一芯片解析ARP报文,得到ARP报文对应的地址;
所述第一芯片将所述ARP报文对应的地址进行存储。
9.一种智能网卡的逻辑端口管理装置,其特征在于,包括:
第一获取单元,用于获取端口管理信息;
第一处理单元,用于根据所述端口管理信息对所述第一芯片的逻辑端口进行配置,并触发事件类型为端口配置的网卡事件;所述第一芯片的逻辑端口是对所述第一芯片的多个映射端口进行绑定得到的;所述第一芯片的映射端口是指与所述智能网卡中的第二芯片有映射关系的虚拟接口;监听网卡事件,并在所述网卡事件的事件类型为端口配置时,将所述网卡事件对应的端口管理信息发送至所述第二芯片;
第二处理单元,用于根据所述网卡事件对应的端口管理信息对所述第二芯片的逻辑端口进行配置;所述第二芯片的逻辑端口是通过对所述第二芯片的多个对外端口进行绑定得到的;所述第二芯片的对外端口为所述智能网卡对外传输数据的物理端口;所述第二芯片的对外端口与所述第一芯片的映射端口相互映射。
10.一种智能网卡,其特征在于,包括连接的第一芯片和第二芯片;
所述第一芯片,用于获取端口管理信息;根据所述端口管理信息对所述第一芯片的逻辑端口进行配置,并触发事件类型为端口配置的网卡事件;所述第一芯片的逻辑端口是对所述第一芯片的多个映射端口进行绑定得到的;所述第一芯片的映射端口是指与所述智能网卡中的第二芯片有映射关系的虚拟接口;监听网卡事件,并在所述网卡事件的事件类型为端口配置时,将所述网卡事件对应的端口管理信息发送至所述第二芯片;
所述第二芯片,用于根据所述网卡事件对应的端口管理信息对所述第二芯片的逻辑端口进行配置;所述第二芯片的逻辑端口是通过对所述第二芯片的多个对外端口进行绑定得到的;所述第二芯片的对外端口为所述智能网卡对外传输数据的物理端口;所述第二芯片的对外端口与所述第一芯片的映射端口相互映射。
11.一种计算设备,其特征在于,包括至少一个处理器以及至少一个存储器,其中,所述存储器存储有计算机程序,当所述程序被所述处理器执行时,使得所述处理器执行如权利要求1至8中的任一项权利要求所述的方法。
12.一种计算机可读存储介质,其特征在于,所述存储介质存储有程序,当所述程序在计算机上运行时,使得计算机实现执行如权利要求1至8中的任一项权利要求所述的方法。
CN202311210235.9A 2023-09-19 2023-09-19 一种智能网卡的逻辑端口管理方法、装置、设备及介质 Active CN119676069B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311210235.9A CN119676069B (zh) 2023-09-19 2023-09-19 一种智能网卡的逻辑端口管理方法、装置、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311210235.9A CN119676069B (zh) 2023-09-19 2023-09-19 一种智能网卡的逻辑端口管理方法、装置、设备及介质

Publications (2)

Publication Number Publication Date
CN119676069A true CN119676069A (zh) 2025-03-21
CN119676069B CN119676069B (zh) 2025-11-18

Family

ID=94990256

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311210235.9A Active CN119676069B (zh) 2023-09-19 2023-09-19 一种智能网卡的逻辑端口管理方法、装置、设备及介质

Country Status (1)

Country Link
CN (1) CN119676069B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112422393A (zh) * 2015-12-31 2021-02-26 华为技术有限公司 可扩展虚拟局域网报文发送方法、计算机设备和可读介质
CN114327262A (zh) * 2021-12-10 2022-04-12 山东云海国创云计算装备产业创新中心有限公司 一种用于智能网卡的维护端口映射的方法和装置
WO2023035777A1 (zh) * 2021-09-13 2023-03-16 中兴通讯股份有限公司 网络配置方法、代理组件、控制器、电子设备和存储介质
CN116760746A (zh) * 2023-06-28 2023-09-15 苏州浪潮智能科技有限公司 智能网卡的测试方法、装置、电子设备及可读存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112422393A (zh) * 2015-12-31 2021-02-26 华为技术有限公司 可扩展虚拟局域网报文发送方法、计算机设备和可读介质
WO2023035777A1 (zh) * 2021-09-13 2023-03-16 中兴通讯股份有限公司 网络配置方法、代理组件、控制器、电子设备和存储介质
CN115811465A (zh) * 2021-09-13 2023-03-17 中兴通讯股份有限公司 网络配置方法、代理组件、控制器、电子设备和存储介质
CN114327262A (zh) * 2021-12-10 2022-04-12 山东云海国创云计算装备产业创新中心有限公司 一种用于智能网卡的维护端口映射的方法和装置
CN116760746A (zh) * 2023-06-28 2023-09-15 苏州浪潮智能科技有限公司 智能网卡的测试方法、装置、电子设备及可读存储介质

Also Published As

Publication number Publication date
CN119676069B (zh) 2025-11-18

Similar Documents

Publication Publication Date Title
JP6871957B2 (ja) エミュレートされたエンドポイントコンフィグレーション
US11960430B2 (en) Remote mapping method, apparatus and device for computing resources, and storage medium
US11048569B1 (en) Adaptive timeout mechanism
Mauch et al. High performance cloud computing
EP3543857B1 (en) Partially reconfiguring acceleration components
US9154451B2 (en) Systems and methods for sharing devices in a virtualization environment
US10747565B2 (en) Virtualization of control and status signals
CN103346981B (zh) 虚拟交换方法、相关装置和计算机系统
CN103645957B (zh) 一种虚拟机资源管控方法及装置
US10657232B2 (en) Information processing apparatus and method of controlling information processing apparatus
US20220166666A1 (en) Data plane operation in a packet processing device
JP7724770B2 (ja) プログラマブルデバイスのステータスの追跡
WO2025077279A1 (zh) 服务器的管理方法、设备、装置、非易失性可读存储介质和电子设备
CN115421854A (zh) 存储系统、方法以及硬件卸载卡
CN113472624A (zh) 一种基于vDPA实现虚拟网络数据包转发的方法及应用
EP4502810A1 (en) Network interface device failover
CN115774596A (zh) 数据处理方法、装置及电子设备
CN105556473A (zh) 一种i/o任务处理的方法、设备和系统
US20220164237A1 (en) Configuration of a packet processing pipeline
US20230342449A1 (en) Hardware attestation in a multi-network interface device system
Herber et al. HW/SW trade-offs in I/O virtualization for Controller Area Network
US20220276809A1 (en) Interface between control planes
US9760513B2 (en) Low latency efficient sharing of resources in multi-server ecosystems
CN119676069B (zh) 一种智能网卡的逻辑端口管理方法、装置、设备及介质
US11003618B1 (en) Out-of-band interconnect control and isolation

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