CN104202195B - 服务器统一通信的方法、基板管理控制器和服务器 - Google Patents
服务器统一通信的方法、基板管理控制器和服务器 Download PDFInfo
- Publication number
- CN104202195B CN104202195B CN201410457803.XA CN201410457803A CN104202195B CN 104202195 B CN104202195 B CN 104202195B CN 201410457803 A CN201410457803 A CN 201410457803A CN 104202195 B CN104202195 B CN 104202195B
- Authority
- CN
- China
- Prior art keywords
- message
- bmc
- server
- physical network
- management data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- 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/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0823—Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
-
- 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/24—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using dedicated network management hardware
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/15—Interconnection of switching modules
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
-
- 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/08—Configuration management of networks or network elements
- H04L41/0876—Aspects of the degree of configuration automation
- H04L41/0886—Fully automatic configuration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/66—Layer 2 routing, e.g. in Ethernet based MAN's
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/70—Virtual switches
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明实施例提供一种服务器统一通信的方法、基板管理控制器和服务器,所述基板管理控制器BMC接收服务器发送的第一报文,所述第一报文包含第一管理数据或业务数据,将接收到的所述第一报文通过预先配置好的虚拟网卡转发到所述BMC的物理网卡,所述第一报文经由所述物理网卡发送到外部网络,所述虚拟网卡还用于将所述BMC接收到的第二报文发送给所述BMC的控制模块,由所述控制模块对所述第二报文进行处理。现有技术中,所述第一报文通过带内网络发送,需要占用服务器的一个业务网卡,本实施例中,所述第一报文通过带外的所述BMC的物理网卡发送,不需要占用服务器的业务网卡,提高了服务器的业务网卡的利用率。
Description
技术领域
本发明实施例涉及数据通信技术,尤其涉及一种服务器统一通信的方法、基板管理控制器和服务器。
背景技术
服务器管理有两种途径:通过带外的单板管理控制器(Baseboard ManagementController,简称BMC)管理,或者通过带内业务网卡管理。在通过BMC管理服务器的单板时通过带外网络,在监控操作系统(Operating System,简称OS)状态、快速外设部件互联标准(Peripheral Component Interconnect express,简称PCIe)卡状态等情况时必须依赖于带内网络,因此,造成服务器管理既有带内网络,也有带外网络。
业界主流的软件大多数都即支持带内管理也支持带外管理,因此,对用户的组网有一定的要求,服务器需要提供一个专用的带外管理网卡进行带外管理,也需要提供一个业务网卡用来进行带内管理数据的传输,同时,业务网卡也可以用来传输业务数据。因此,现有的管理方法中,一套管理需要占用至少两个网卡,造成服务器业务网卡资源的浪费。
发明内容
本发明实施例提供一种服务器统一通信的方法、基板管理控制器和服务器,能够实现带内和带外管理数据通过统一带外网络传输,不占用服务器的业务网卡,提高了服务器的业务网卡的利用率。
本发明第一方面提供一种服务器统一通信的方法,所述方法包括:
基板管理控制器BMC接收第一报文,所述第一报文包含第一管理数据或业务数据,且所述第一报文通过第一信道传输,其中,所述第一信道为所述业务数据通过所述服务器的物理网卡传输到外部网络的通信通道;
所述BMC将接收到的所述第一报文通过预先配置好的虚拟网卡转发到所述BMC的物理网卡,所述第一报文经由所述物理网卡发送到外部网络。
结合本发明第一方面,在本发明第一方面的第一种可能的实现方式中,所述方法还包括:所述BMC接收第二报文,所述第二报文包含第二管理数据,且所述第二报文通过第二信道传输,其中,所述第二信道为所述第二管理数据通过所述BMC的物理网卡传输到外部网络的通信通道。
结合本发明第一方面以及本发明第一方面的第一种可能的实现方式,在本发明第一方面的第二种可能的实现方式中,所述方法还包括:所述BMC将所述第一报文或所述第二报文通过所述虚拟网卡,转发到所述BMC的控制模块,所述控制模块用于根据接收到所述第一报文中包含的所述第一管理数据或所述第二报文中包含的所述第二管理数据,监控所述服务器的运行状态。
结合本发明第一方面以及本发明第一方面的第一种和第二种可能的实现方式,在本发明第一方面的第三种可能的实现方式中,所述方法还包括:所述BMC管理所述虚拟网卡的配置信息,所述配置信息包括:媒体接入控制MAC地址。
结合本发明第一方面以及本发明第一方面的第一种和第二种可能的实现方式,在本发明第一方面的第四种可能的实现方式中,所述转发规则包括:若接收到的报文的目的MAC地址为所述BMC的MAC地址,则将所述报文转发到所述BMC的控制模块,若所述报文的目的MAC地址不为所述BMC的MAC地址,则将所述报文转发到所述物理网卡,经由所述物理网卡发送到外部网络。
结合本发明第一方面的第四种可能的实现方式,在本发明第一方面的第五种可能的实现方式中,所述虚拟网卡根据所述转发规则转发接收到的所述第一报文或所述第二报文包括:
通过所述BMC的网桥透传所述第一报文或所述第二报文;
或者,通过在所述物理网卡的驱动层增加侦测点,利用所述物理网卡的驱动层增加的侦测点识别并转发所述第一报文或所述第二报文。
结合本发明第一方面以及本发明第一方面的第一种和第二种可能的实现方式,在本发明第一方面的第六种可能的实现方式中,所述方法包括:所述服务器与所述BMC之间采用标准总线和快速外设部件互联标准PCIe接口连接,以建立所述服务器与所述BMC的数据交换通道,所述数据交换通道用于传输所述第一报文和所述第二报文。
本发明第二方面提供一种基板管理控制器BMC,包括:
收发器,所述收发器的第一接收单元用于接收第一报文,所述第一报文包含第一管理数据或业务数据,且所述第一报文通过第一信道传输,其中,所述第一信道为所述业务数据通过所述服务器的物理网卡传输到外部网络的通信通道;
虚拟网卡,用于按照转发规则将所述虚拟收发器接收到的所述第一报文转发到所述BMC的物理网卡;
所述物理网卡,用于将所述第一报文发送到外部网络。
结合本发明第二方面,在本发明第二方面的第一种可能的实现方式中,所述收发器还包括:第二接收单元;
所述第二接收单元,用于接收第二报文,所述第二报文包含第二管理数据,且所述第二报文通过第二信道传输,其中,所述第二信道为所述第二管理数据通过所述BMC的物理网卡传输到外部网络的通信通道。
结合本发明第二方面的第一种可能的实现方式,在本发明第二方面的第三种可能的实现方式中,所述第二管理数据包括:所述服务器的主板、中央处理器CPU以及风扇的温度、电压、电流。
结合本发明第二方面以及本发明第一方面的第一种可能的实现方式,在本发明第二方面的第二种可能的实现方式中,所述基板管理控制器还包括:控制模块;
所述虚拟网卡还用于:将所述第一报文或所述第二报文转发到所述控制模块;
所述控制模块,用于根据接收到所述第一报文中包含的所述第一管理数据或所述第二报文中包含的所述第二管理数据,监控服务器的运行状态。
结合本发明第二方面以及本发明第二方面的第一种和第二种可能的实现方式,在本发明第二方面的第三种可能的实现方式中,所述BMC还包括:管理模块,用于管理所述虚拟网卡的配置信息,所述配置信息包括:媒体接入控制MAC地址。
结合本发明第二方面以及本发明第二方面的第一种和第二种可能的实现方式,在本发明第二方面的第四种可能的实现方式中,所述转发规则包括:若接收到的报文的目的MAC地址为所述BMC的MAC地址,则将所述报文转发到所述BMC的控制模块,若所述报文的目的MAC地址不为所述BMC的MAC地址,则将所述报文转发到所述物理网卡,经由所述物理网卡发送到外部网络。
结合本发明第二方面的第四种可能的实现方式,在本发明第二方面的第五种可能的实现方式中,所述BMC还包括:网桥;
所述虚拟网卡具体用于:通过所述网桥透传所述第一报文或所述第二报文;
或者,通过在所述物理网卡的驱动层增加侦测点,利用所述物理网卡的驱动层增加的侦测点识别并转发所述第一报文或所述第二报文。
结合本发明第二方面以及本发明第二方面的第一种和第二种可能的实现方式,在本发明第二方面的第六种可能的实现方式中,所述服务器与所述BMC之间采用标准总线和快速外设部件互联标准PCIe接口连接,以建立所述服务器与所述BMC的数据交换通道,所述数据交换通道用于传输所述第一报文和所述第二报文。
本发明第三方面提供一种服务器,所述服务器包括:处理器、存储器、基板管理控制器BMC和系统总线,所述存储器和所述BMC通过所述系统总线与所述处理器连接并完成相互间的通信;
所述存储器,用于存储计算机可执行指令;
所述处理器,用于运行所述计算机可执行指令,以将第一报文发送给所述BMC;
所述BMC用于接收所述第一报文,所述第一报文包含第一管理数据或业务数据,且所述第一报文通过第一信道传输,其中,所述第一信道为所述业务数据通过所述服务器的物理网卡传输到外部网络的通信通道;
所述BMC还用于将接收到的所述第一报文通过预先配置好的虚拟网卡,按照转发规则,转发到所述BMC的物理网卡,所述第一报文经由所述物理网卡发送到外部网络。
结合本发明第三方面,在本发明第三方面的第一种可能的实现方式中,所述处理器还用于执行所述计算机可执行指令,以将第二报文发送给所述BMC;
相应地,所述BMC还用于接收所述第二报文,所述第二报文包含第二管理数据,且所述第二报文通过第二信道传输,其中,所述第二信道为所述第二管理数据通过所述BMC的物理网卡传输到外部网络的通信通道。
结合本发明第三方面以及本发明第三方面的第一种可能的实现方式,在本发明第三方面的第二种可能的实现方式中,所述BMC还用于:
将所述第一报文或所述第二报文通过所述虚拟网卡,转发到所述BMC的控制模块,所述控制模块用于根据接收到所述第一报文中包含的所述第一管理数据或所述第二报文中包含的所述第二管理数据,监控所述服务器的运行状态。
结合本发明第三方面以及本发明第三方面的第一种和第二种可能的实现方式,在本发明第三方面的第三种可能的实现方式中,所述转发规则包括:若接收到的报文的目的MAC地址为所述BMC的MAC地址,则将所述报文转发到所述BMC的控制模块,若所述报文的目的MAC地址不为所述BMC的MAC地址,则将所述报文转发到所述物理网卡,经由所述物理网卡发送到外部网络。
结合本发明第三方面的第三种可能的实现方式,在本发明第三方面的第四种可能的实现方式中,所述虚拟网卡根据所述转发规则转发接收到的所述第一报文或所述第二报文包括:
通过所述BMC的网桥透传所述第一报文或所述第二报文;
或者,通过在所述物理网卡的驱动层增加侦测点,利用所述物理网卡的驱动层增加的侦测点识别并转发所述第一报文或所述第二报文。
本发明实施例提供的服务器统一通信的方法、基板管理控制器和服务器,BMC通过接收服务器发送的第一报文,所述第一报文包含第一管理数据或业务数据,将接收到的所述第一报文通过预先配置好的虚拟网卡转发到所述BMC的物理网卡,所述第一报文经由所述物理网卡发送到外部网络,所述虚拟网卡还用于将所述BMC接收到的第二报文发送给所述BMC的控制模块,由所述控制模块对所述第二报文进行处理。现有技术中,所述第一报文通过带内网络发送,需要占用服务器的一个业务网卡,本实施例中,所述第一报文通过带外的所述BMC的物理网卡发送,不需要占用服务器的业务网卡,提高了服务器的业务网卡的利用率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的服务器的一种结构示意图;
图2为本发明实施例一提供的服务器统一通信的方法的流程图;
图3为本发明实施例二提供的第一报文的转发流程图;
图4为本发明实施例三提供的第一报文的响应报文的转发流程图;
图5为本发明实施例四提供的一种BMC的结构示意图;
图6为本发明实施例五提供的一种BMC的结构示意图;
图7为本发明实施例六提供的一种服务器的结构示意图;
图8为本发明实施例七提供的一种BMC的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
现有的服务器通信方法中,第一报文可以为带内报文,第二报文可以为带外报文,所述带内报文包含带内管理数据或业务数据,所述带内报文为所述业务数据和所述带内管理数据都通过服务器的物理网卡传输到外部网络的报文。当所述服务器具有多个物理网卡时,所述业务数据和所述第一管理数据可以通过所述服务器的同一个物理网卡发送,也可以通过所述服务器的不同物理网卡发送。所述带外报文包含带外管理数据,所述带外报文为所述业务数据和所述带外管理数据通过不同信道传输的报文,即所述带外管理数据通过BMC的物理网卡发送到外部网络,所述业务数据通过服务器的物理网卡传输到外部网络。本发明各实施例中,所述第一报文包括第一管理数据和业务数据,所述第二管理报文包括第二管理数据,本发明各实施例中的第一管理数据相当于现有技术中的所述带内管理数据,所述第二管理数据相当于所述带外管理数据,由此可知,现有技术中,所述第一报文通过带内网络发送,所述第二报文通过带外网络发送。本发明各实施例提供的服务器统一通信的方法中,所述第一报文和所述第二报文都可以通过所述带外网络发送。以下将通过具体的实施例对本发明的服务器统一通信的方法进行详细说明。
图1为本发明实施例提供的服务器的一种结构示意图,如图1所示,服务器包括:虚拟网卡11、虚拟网卡驱动12和BMC13,BMC13设置在服务器的基板上,服务器的基板与所述BMC13之间采用标准的PCIe接口连接。所述BMC13利用传感器来监控所述服务器的状态信息,利用获取到的状态信息进行硬件管理和故障排除等,并且所述BMC13通过独立的连接线路和系统管理员进行通信,所述BMC是智能平台控制接口(IPMI,Intelligent PlatformManagement Interface)的一部分并且通常被包含在被监控的设备的主电路板里,本实施例中所述BMC13设置在所述服务器的基板上。当然,所述BMC13也可以作为一个单独的设备与所述服务器的基板连接。
本实施例中,所述BMC13包括:虚拟收发器131、虚拟网卡驱动132、虚拟网卡133、网桥134、物理网卡135、管理模块136和控制模块137。
其中,所述虚拟网卡11,用于接收OS的上层应用发送的第一管理数据或业务数据,将所述第一管理数据或业务数据封装成第一报文发送给所述BMC13。所述虚拟网卡11由所述虚拟网卡驱动12通过软件的方式模拟得到,所述虚拟网卡11具有实际物理网卡的功能,可以被服务器的所有上层应用软件直接使用,因此,本发明实施例的方法具有更多的管理功能。而现有技术中,服务器侧的BMC驱动只能支持少量的管理功能,这些管理功能依赖于特定设备厂商开发的应用软件,BMC驱动只与该特定设备厂商提供的应用软件之间具有接口,因此,BMC驱动只能获取该特定设备厂商提供的应用软件的状态信息作为第一管理数据,不支持第三方应用软件的管理,不具有扩展性。而本发明实施例的方法中,所述虚拟网卡11具有实际物理网卡的所有功能,其具有通用性,能够支持对第三方应用软件的管理。
所述虚拟网卡11同真实的物理网卡一样,也配置有MAC地址、网络互连(InternetProtocol,简称IP)地址、虚拟局域网(Virtual Local Area Network,简称VLAN)等,所述虚拟网卡11可以由所述BMC13上的所述管理模块136进行配置和管理。
所述虚拟网卡驱动12,用于模拟出所述虚拟网卡11,实现与所述虚拟收发器131进行数据交换,在OS侧看提供了一个标准网卡的收发接口,该收发接口就是所述虚拟网卡11。
本领域技术人员可以理解的是,对于一个物理网卡来说,光有物理网卡是不能工作的,必须有网卡驱动程序来驱动物理网卡,物理网卡才能正常工作。本实施例中,可以将所述虚拟网卡11当作一个物理网卡,所述虚拟网卡11具有物理网卡的所有功能,因此,所述虚拟网卡11也需要驱动程序,所述虚拟网卡驱动12即是所述虚拟网卡11的驱动程序,图1中为了更清楚的说明所述虚拟网卡11和虚拟网卡驱动12的关系,所以将两个模块分开画。在本发明实施例的其他附图中,也可以将所述虚拟网卡11和虚拟网卡驱动12看作一个功能模块,只画所述虚拟网卡11或所述虚拟网卡驱动12。
所述虚拟网卡11将所述第一报文发送给所述BMC,以使所述BMC通过所述虚拟网卡133将第一报文发送到外部网络。第一报文中携带的第一管理数据由所述服务器的监控软件获取,所述第一管理数据主要包括OS状态参数、业务软件状态参数或硬件部件状态参数,这里的业务软件包括所述服务器自带的应用软件,以及第三方应用软件。硬件部件包括:所述服务器的CPU、内存、硬盘、光驱、网卡、显卡等,其中,CPU的状态参数具体为CPU的利用率、主频等。
所述虚拟收发器131,一方面实现与所述虚拟网卡11的数据交互,接收所述虚拟网卡11发送的所述第一报文,另一方面,所述虚拟收发器131与所述BMC13的所述虚拟网卡133对接,将接收到的所述第一报文发送给所述虚拟网卡133。
所述虚拟网卡133也需要驱动程序,所述虚拟网卡驱动132即为所述虚拟网卡133的驱动程序,所述虚拟网卡驱动132提供了一个标准网卡的收发接口,该收发接口即为所述虚拟网卡133,所述虚拟网卡133用于与所述虚拟收发器131对接,对所述虚拟收发器131接收到的所述第一报文进行转发。图1中为了更清楚的说明所述虚拟网卡133和虚拟网卡驱动132的关系,所以将两个模块分开画。在本发明实施例的其他附图中,也可以将所述虚拟网卡133和所述虚拟网卡驱动132看作一个功能模块,只画所述虚拟网卡133或所述虚拟网卡驱动132。
所述虚拟网卡133也配置有MAC地址、IP和VLAN等,所述虚拟网卡133用于将接收到所述第一报文发送给所述网桥134,或者,将接收到第二报文发送给所述网桥134。所述第二报文包括第二管理数据,所述第二管理数据包括:所述服务器的主板、CPU、风扇等设备的温度、电压、电流等信息,所述第一管理数据一般需要在所述服务器上电运行时才能获取到,而所述第二管理数据在所述服务器断电的情况下也能够获取。
所述虚拟网卡133还用于将所述第一报文或所述第二报文发送给所述控制模块137,所述控制模块137用于根据接收到所述第一报文或所述第二报文中携带的管理数据,监控所述服务器的运行状态。
所述网桥134,用于透传所述虚拟网卡133发送的第一报文或第二报文,将所述第一报文或所述第二报文发送给所述物理网卡135。或者,所述网桥134将所述虚拟网卡133发送的所述第一报文或所述第二报文透传发送给所述控制模块137。
所述物理网卡135,用于将接收到的所述第一报文或所述第二报文发送到外部网络。
现有技术中,所述第一报文通过带内网络发送,所述第二报文通过带外网络发送,所述第一报文可以是带内数据,所述第二报文可以是带外数据,本发明实施例中,所述第一报文和所述第二报文都可以通过所述物理网卡135发送到外部网络,实现了所有带内数据和带外数据通过统一的带外网卡发送,不占用所述服务器的业务网卡,提高了所述服务器的业务网卡的利用率。
所述管理模块136,用于对所述虚拟网卡133和所述虚拟收发器131进行管理,例如对所述虚拟网卡133和所述虚拟收发器131的MAC地址、IP地址、VLAN进行配置和管理,由BMC对所述虚拟网卡133和所述虚拟收发器131进行管理,而不需要通过服务器机进行管理,使得管理更加方便。所述管理模块136还用于对所述虚拟网卡11进行配置和管理,从而实现了统一的带外管理,所述管理模块136主要对用于对所述虚拟网卡11的MAC地址、IP地址、VLAN进行配置和管理,在所述服务器和BMC之间可以设置专门的PCIe管理通道发送所述虚拟网卡11的管理数据,当然,也可以使用所述BMC和所述服务器之间的数据交换通道发送所述虚拟网卡11的管理数据。
图2为本发明实施例一提供的服务器统一通信的方法的流程图,结合图1和图2对本实施例提供的服务器统一通信的方法进行详细说明,如图2所示,本实施例的方法可以包括以下步骤:
步骤101、BMC接收第一报文,所述第一报文包含第一管理数据或业务数据,且所述第一报文通过第一信道传输,其中,所述第一信道为所述业务数据通过所述服务器的物理网卡传输到外部网络的通信通道。
所述服务器与所述BMC之间采用标准总线和PCIe接口连接,以建立所述服务器与所述BMC的数据交换通道,所述数据交换通道用于传输所述第一报文。所述服务器通过所述数据交换通道将所述第一报文发送给所述BMC,具体由所述服务器的虚拟网卡11发送所述第一报文。所述BMC接收所述第一报文,所述第一报文包含第一管理数据或业务数据。具体地,所述第一报文由所述BMC的虚拟收发器131接收,所述虚拟收发器131可以采用PCIe直接内存存取(Direct Memory Access,简称DMA)方法接收所述第一报文。
现有技术中,所述第一报文可以是带内报文,通过所述服务器的带内网络发送到外部网络,具体地,所述第一报文通过第一信道传输,所述第一信道为所述业务数据通过所述服务器的物理网卡传输到外部网络的通信通道,当所述服务器具有多个物理网卡时,所述业务数据和所述第一管理数据可以通过所述服务器的同一个物理网卡发送,也可以通过所述服务器的不同物理网卡发送。
本实施例中,为了实现带内数据和带外数据通过统一的带外接口发送,所述服务器需要将所述第一报文发送给所述BMC,通过所述BMC的物理网卡135发送到外部网络,即所述第一管理数据与所述业务数据都可以通过相同的所述物理网卡135传输。
步骤102、所述BMC将接收到的所述第一报文通过预先配置好的虚拟网卡,按照转发规则,转发到所述BMC的物理网卡,所述第一报文经由所述物理网卡发送到外部网络。
所述虚拟收发器131接收到所述第一报文后,将所述第一报文发送给所述BMC的虚拟网卡133,所述虚拟网卡133根据转发规则将所述第一报文发送给所述BMC的物理网卡135,所述第一报文经由所述物理网卡135发送到外部网络。
所述虚拟网卡133的转发规则包括:若接收到的报文的目的MAC地址为所述BMC的MAC地址,则将所述报文转发到所述BMC的控制模块137,所述控制模块137根据接收到所述第一报文中包含的所述第一管理数据,监控所述服务器的运行状态。若所述报文的目的MAC地址不为所述BMC的MAC地址,则将所述报文转发到所述物理网卡135,经由所述物理网卡135发送到外部网络。
所述第一报文中还包括地址信息:源IP地址、源MAC、目的IP、目的MAC等,所述第一报文的源IP地址为所述虚拟网卡11的IP地址,所述第一报文的源MAC为所述虚拟网卡11的MAC地址,当所述第一报文要发送给所述控制模块137处理时,所述第一报文的目的MAC地址为所述BMC的MAC地址。当所述第一报文要发送到外部网络中的管理设备时,所述第一报文的目的IP地址为所述管理设备的IP地址,所述第一报文的目的MAC地址为所述管理设备的MAC地址。
所述虚拟网卡133接收到所述第一报文后,判断所述第一报文目的MAC地址是否为所述BMC的MAC地址,若所述第一报文目的MAC地址为所述BMC的MAC地址,则将所述第一报文发送给所述控制模块137,若所述第一报文目的MAC地址不为所述BMC的MAC地址,则将所述第一报文发送给所述物理网卡135。
本实施例中,所述虚拟网卡133根据所述转发规则转发接收到的所述第一报文具体为:通过所述BMC的网桥134透传所述第一报文,所述第一报文经由所述网桥134发送给所述物理网卡135。或者,通过在所述物理网卡135的驱动层增加侦测点,利用所述物理网卡135的驱动层增加侦测点识别并转发所述第一报文。
所述BMC还用于接收第二报文,所述第二报文包含第二管理数据,且所述第二管理数据与所述业务数据通过不同的逻辑信道传输。所述BMC采用所述服务器与所述BMC之间建立的数据交换通道接收所述第二报文。与现有技术相同,所述第二报文还是通过带外网络发送,所述BMC接收到所述第二报文后,将所述第二报文通过所述虚拟网卡133,转发到所述物理网卡135,经由所述物理网卡135发送到外部网络。所述虚拟网卡133仍然采用上述的转发规则转发所述第二报文,这里不再赘述。或者,所述虚拟网卡133将所述第二报文发送给所述BMC的控制模块137,所述控制模块137根据接收到所述第二报文中包含的所述第二管理数据,监控所述服务器的运行状态。
需说明的是,本实施例中,所述服务器要将所述第一报文发送给所述BMC,并通过所述BMC的虚拟网卡133发送到外部网络,需要预先配置所述第一报文的路由信息,并存储到所述服务器中,以便所述服务器根据所述路由信息对所述第一报文进行转发。本实施例中,所述第一报文要通过所述BMC的物理网卡135发送到外部网络,因此,所述服务器要配置所述物理网卡135的转发网段,所述第一报文的IP地址属于所述物理网卡135的转发网段,当服务器接收到上层应用软件发送的所述第一报文时,根据所述路由信息,确定所述第一报文应该通过所述物理网卡135发送,则所述服务器将所述第一报文发送给所述BMC,通过所述BMC的虚拟网卡133将所述第一报文发送给所述物理网卡135。
本实施例中,BMC通过接收服务器发送的第一报文,所述第一报文包含第一管理数据或业务数据,将接收到的所述第一报文通过预先配置好的虚拟网卡转发到所述BMC的物理网卡,所述第一报文经由所述物理网卡发送到外部网络,所述虚拟网卡还用于将接收到的第二报文发送给所述BMC的控制模块,由所述控制模块对所述第二报文进行处理。现有技术中,所述第一报文通过带内网络发送,需要占用服务器的一个业务网卡,本实施例中,所述第一报文和所述第二报文都通过带外的所述BMC的物理网卡发送,不需要占用服务器的业务网卡,提高了服务器的业务网卡的利用率。
在上述实施例一中,所述第一管理数据和所述业务数据都通过所述BMC的物理网卡发送到外部网络,这样做的好处是,所有的数据都通过统一的带外物理网卡发送。通常情况下,希望将业务数据和管理数据分离,即业务数据和管理数据通过不同的信道传输,因此,可选地,本发明实施例的方案中,也可以将所述业务数据通过所述服务器的业务网卡发送,只将所述第一管理数据通过所述BMC的物理网卡发送,即所有的管理数据都通过带外网络发送,所有的业务数据都通过带内网络发送,这样可以将业务数据或管理数据隔离开,保证业务数据传输的可靠性。
在上述实施例一的基础上,本发明实施例二中将对第一报文的转发流程进行详细说明,本发明实施例二中所述服务器和所述BMC之间采用收发队列交互数据。图3为本发明实施例二提供的第一报文的转发流程图,请参照图1和图3,本实施例提供的第一报文的转发流程包括以下步骤:
步骤201、虚拟网卡驱动12启动报文发送。
当所述服务器有第一报文要发送时,所述服务器的OS将要发送的第一报文压缩到协议栈,所述虚拟网卡驱动12检测到协议栈中有数据要送时,启动报文发送。
步骤202、所述虚拟网卡驱动12判断自己的发送队列是否有空闲DMA空间。
服务器与BMC之间通过PCIe DMA方式收发数据,若所述虚拟网卡驱动12的发送队列有空闲DMA空间,则执行步骤203,若所述虚拟网卡驱动12的发送队列没有空闲DMA空间,则执行步骤204。
步骤203、所述虚拟网卡驱动12将待发送的第一报文的物理地址放到自己的发送队列中。
服务器在内存中分配一个SKB(Socket Buffer)缓冲区,将待发送第一报文存储在SKB缓冲区中,所述第一报文的物理地址收到被放到所述协议栈中,所述协议栈在将所述第一报文的物理地址被放置到所述虚拟网卡驱动12发送队列中,这里所述第一报文的物理地址为所述第一报文在所述服务器的SKB缓冲区中的存储地址。
步骤203执行完之后执行步骤205。
步骤204、所述虚拟网卡驱动12将所述第一报文反压到所述协议栈。
步骤205、所述虚拟网卡驱动12通知所述BMC的虚拟收发器131启动DMA操作。
步骤206、所述虚拟收发器131确定自己的接收队列是否有空闲DMA空间。
若所述虚拟收发器131的接收队列有空闲DMA空间,则执行步骤207,若所述虚拟收发器131的接收队列没有空闲DMA空间,则执行步骤208。
步骤207、所述虚拟收发器131启动DMA操作,将所述第一报文从所述服务器的SKB缓冲区读取到所述BMC的SKB缓冲区,并在DMA操作结束之后通知所述虚拟网卡驱动12数据接收完成。
所述虚拟收发器131收到所述虚拟网卡驱动12的通知后,在所述BMC的本地内存中分配一个SKB缓冲区,所述SKB缓冲分配成功后触发DMA操作,根据所述第一报文的物理地址将所述第一报文读取到所述BMC的SKB缓冲区中。在所述DMA操作结束后,所述虚拟收发器131可以通过中断方式通知所述虚拟网卡驱动数据12数据接收成功,所述虚拟网卡驱动12释放所述服务器的内存中的SKB缓冲区,服务器侧报文发送完毕。步骤207执行完之后执行步骤209。
步骤208、所述虚拟收发器131定时等待。
当所述虚拟收发器131的接收队列没有空闲DMA空间时,所述虚拟收发器131需要等待,当等待时间到时,返回执行步骤206,继续判断所述虚拟收发器131的接收队列是否有空闲DMA空间。
步骤209、所述虚拟收发器131调用所述BMC的虚拟网卡133将所述第一报文的物理地址发送到所述虚拟网卡133的发送队列中。
本步骤以及本实施例的后续步骤中所涉及的所述第一报文的物理地址,均是指所述第一报文在所述服务器的SKB缓冲区中的地址。
步骤210、所述BMC的网桥134向所述虚拟网卡133发送回调函数获取所述第一报文的物理地址。
所述网桥134通过向所述虚拟网卡133发送回调函数将所述第一报文的物理地址添加到自己的发送队列中,所述回调函数具体可以为钩子函数。
步骤211、所述网桥134根据转发规则判断所述第一报文是否发送给所述BMC的物理网卡135。
具体地,所述网桥134判断所述第一报文的目标MAC地址是否为所述BMC的MAC,若所述第一报文的目标MAC地址不是所述BMC的MAC地址,则执行步骤212,若所述第一报文的目标MAC地址是所述BMC的MAC地址,则执行步骤213。
步骤212、所述网桥134调用所述物理网卡135的发送接口将所述第一报文的物理地址发送给所述BMC的物理网卡135。
步骤212执行完之后执行步骤214。
步骤213、所述网桥134将所述第一报文发送给所述BMC的控制模块137。
步骤214、所述物理网卡135将所述第一报文发送到外部网络。
具体地,所述物理网卡135根据所述第一报文的物理地址,从所述BMC的SKB缓冲区读取所述第一报文,将所述第一报文发送到所述外部网络。
在所述BMC将所述第一报文发送给外部网络中的管理设备之后,所述管理设备会向所述服务器返回所述第一报文的响应报文。本发明实施例三种具体描述所述第一报文的响应报文的转发流程。图4为本发明实施例三提供的第一报文的响应报文的转发流程图,请参照图1和图4,本实施例提供的第一报文的响应报文的转发流程包括以下步骤:
步骤301、物理网卡135接收第一报文的响应报文。
所述物理网卡135接收到的所述第一报文的响应报文会放置到在BMC的内存中预先分配的SKB缓冲区中。
步骤302、所述物理网卡135将所述第一报文的响应报文的物理地址放到自己的接收队列中。
所述第一报文的响应报文的物理地址为所述第一报文在所述BMC的SKB缓冲区中存储地址。
步骤303、所述物理网卡135调用所述BMC的网桥134的回调函数将所述第一报文的响应报文的物理地址发送到所述网桥134的接收队列中。
步骤304、所述网桥134判断所述第一报文的响应报文的目的MAC地址是否为所述BMC的MAC地址。
若所述第一报文的响应报文的目的MAC地址不为所述BMC的MAC地址,则执行步骤305,若所述第一报文的响应报文的目的MAC地址为所述BMC的MAC地址,则执行步骤306。
步骤305、所述网桥134调用所述BMC的虚拟网卡133的接收函数将所述第一报文的响应报文的物理地址发送到所述虚拟网卡133的接收队列中。
步骤305执行完之后执行步骤307。
步骤306、所述网桥134将所述第一报文的响应报文发送给所述BMC的控制模块137。
步骤307、所述虚拟网卡133将所述第一报文的响应报文的物理地址发送到所述BMC的虚拟收发器131的接收队列中。
步骤308、所述虚拟收发器131判断服务器的虚拟网卡驱动12的接收队列是否有空闲DMA空间。
若所述虚拟网卡驱动12的接收队列有空闲DMA空间,则执行步骤309,若所述虚拟网卡驱动12的接收队列没有空闲DMA空间,则执行步骤310。
步骤309、所述虚拟收发器131启动DMA操作,将所述第一报文的响应报文发送到所述虚拟网卡驱动12的接收队列。
步骤309之后执行步骤311。
步骤310、所述虚拟收发器131丢弃所述第一报文的响应报文。
步骤311、所述虚拟收发器131通知所述虚拟网卡驱动12数据发送成功。
所述虚拟网卡驱动12收到所述虚拟收发器131的通知后,将所述第一报文的响应报文传递到协议栈,OS侧接收完毕。
步骤312、所述虚拟收发器131释放所述BMC的SKB缓冲区。
图5为本发明实施例四提供的一种BMC的结构示意图,如图5所示,本实施例提供的BMC包括:收发器21、虚拟网卡22和物理网卡23。
其中,所述收发器21包括第一接收单元211,所述第一接收单元211用于接收第一报文,所述第一报文包含第一管理数据或业务数据,且所述第一报文通过第一信道传输,其中,所述第一信道为所述业务数据通过所述服务器的物理网卡传输到外部网络的通信通道。;
所述虚拟网卡22,用于按照转发规则将所述虚拟收发器接收到的所述第一报文转发到所述BMC的物理网卡;
所述物理网卡23,用于将所述第一报文发送到外部网络。
进一步地,所述收发器21还包括第二接收单元212,所述第二接收单元212用于:接收第二报文,所述第二报文包含第二管理数据,且所述第二报文通过第二信道传输,所述第二信道为所述第二管理数据通过所述BMC的物理网卡传输到外部网络的通信通道。
本实施例中,所述第一管理数据包括:所述服务器的操作系统OS的状态参数、业务软件的状态参数或硬件部件的状态参数,其中,所述业务软件包括所述服务器自带的应用软件以及第三方应用软件,所述硬件部件包括所述服务器的中央处理器CPU、内存、硬盘、光驱、网卡以及显卡。所述第二管理数据包括:所述服务器的主板、中央处理器CPU以及风扇的温度、电压、电流。
本实施例中,所述服务器与所述BMC之间采用标准总线和快速外设部件互联标准PCIe接口连接,以建立所述服务器与所述BMC的数据交换通道,所述数据交换通道用于传输所述第一报文和所述第二报文。
所述转发规则包括:若接收到的报文的目的MAC地址为所述BMC的MAC地址,则将所述报文转发到所述BMC的控制模块,若所述报文的目的MAC地址不为所述BMC的MAC地址,则将所述报文转发到所述物理网卡23,经由所述物理网卡23发送到外部网络。
本实施例的BMC,可用于执行方法实施例一的技术方案,其具体实现方式和技术效果类似,这里不再赘述。
图6为本发明实施例五提供的一种BMC的结构示意图,本实施例的BMC在图5所示BMC的基础上,进一步的包括网桥24、控制模块25和管理模块26。
所述控制模块25,用于根据接收到所述第一报文中包含的所述第一管理数据或所述第二报文中包含的所述第二管理数据,监控所述服务器的运行状态。相应地,所述虚拟网卡22还用于:将所述第一报文或所述第二报文转发到所述控制模块25。
所述虚拟网卡22具体用于:通过所述网桥24透传所述第一报文或所述第二报文;或者,通过在所述物理网卡23的驱动层增加侦测点,利用所述物理网卡23的驱动层增加侦测点识别并转发所述第一报文或所述第二报文。
所述管理模块26,用于管理所述虚拟网卡22的配置信息,所述配置信息:媒体接入控制MAC地址。
本实施例的BMC,可用于执行实施例一至实施例三的技术方案,其实现原理和技术效果类似,这里不再赘述。
图7为本发明实施例六提供的一种服务器的结构示意图,如图7所示,本实施例的服务器300包括:处理器31、存储器32、BMC33和系统总线34,其中,所述存储器32、所述BMC33通过所述系统总线34与所述处理器31连接并通信,所述系统总线34具体可以为PCIe总线,所述服务器与所述BMC之间采用所述PCIe总线连接,以建立所述服务器与所述BMC的数据交换通道,通过所述数据交换通道传输数据。所述存储器32中存储有计算机可执行指令321,所述处理器31用于执行所述计算机可执行指令321以获取第一报文,并将所述第一报文发送给所述BMC33,所述BMC具体用于执行如下操作:
接收第一报文,所述第一报文包含第一管理数据或业务数据,且所述第一报文通过第一信道传输,其中,所述第一信道为所述业务数据通过所述服务器300的物理网卡传输到外部网络的通信通道。
将接收到的所述第一报文通过预先配置好的虚拟网卡,按照转发规则,转发到所述BMC33的物理网卡,所述第一报文经由所述物理网卡发送到外部网络。
所述BMC33还用于接收第二报文,所述第二报文包含第二管理数据,且所述第二报文通过第二信道传输,其中,所述第二信道为所述第二管理数据通过所述BMC33的物理网卡传输到外部网络的通信通道。
其中,所述第一管理数据包括:所述服务器的操作系统OS的状态参数、业务软件的状态参数或硬件部件的状态参数,其中,所述业务软件包括所述服务器自带的应用软件以及第三方应用软件,所述硬件部件包括所述服务器的中央处理器CPU、内存、硬盘、光驱、网卡以及显卡。所述第二管理数据包括:所述服务器的主板、中央处理器CPU以及风扇的温度、电压、电流。
可选地,所述BMC33还用于:将所述第一报文或所述第二报文通过所述虚拟网卡,转发到所述BMC33的控制模块,所述控制模块用于根据接收到所述第一报文中包含的所述第一管理数据或所述第二报文中包含的所述第二管理数据,监控所述服务器的运行状态。
本实施例中,所述的转发规则包括:若接收到的报文的目的MAC地址为所述BMC33的MAC地址,则将所述报文转发到所述BMC33的控制模块,若所述报文的目的MAC地址不为所述BMC33的MAC地址,则将所述报文转发到所述物理网卡,经由所述物理网卡发送到外部网络。
所述虚拟网卡根据所述转发规则转发接收到的所述第一报文或所述第二报文具体为:通过所述BMC33的网桥透传所述第一报文或所述第二报文;或者,通过在所述物理网卡的驱动层增加侦测点,利用所述物理网卡的驱动层增加侦测点识别并转发所述第一报文或所述第二报文。
所述BMC33还用于:管理所述虚拟网卡的配置信息,所述配置信息包括:媒体接入控制MAC地址。
本实施例的服务器,可用于执行实施例一至实施例三提供的技术方案,其具体实现方式和技术效果类似,这里不再赘述。
图8为本发明实施例七提供的一种BMC的结构示意图,如图8所示,本实施例的BMC400包括:处理器41、存储器42、通信接口43和系统总线44,其中,所述存储器42、所述通信接口43通过所述系统总线44与所述处理器41连接并通信,所述通信接口43用于与其他网络设备通信,所述存储器42中存储有计算机可执行指令421,所述处理器41用于执行所述计算机可执行指令421以使所述BMC400执行如下操作:
接收第一报文,所述第一报文包含第一管理数据或业务数据,且所述第一报文通过第一信道传输,其中,所述第一信道为所述业务数据通过所述服务器的物理网卡传输到外部网络的通信通道。
将接收到的所述第一报文通过预先配置好的虚拟网卡,按照转发规则,转发到所述BMC的物理网卡,所述第一报文经由所述物理网卡发送到外部网络。
进一步地,所述BMC400还用于接收第二报文,所述第二报文包含第二管理数据,且所述第二报文通过第二信道传输,其中,所述第二信道为所述第二管理数据通过所述BMC400的物理网卡传输到外部网络的通信通道。
其中,所述第一管理数据包括:所述服务器的操作系统OS的状态参数、业务软件的状态参数或硬件部件的状态参数,其中,所述业务软件包括所述服务器自带的应用软件以及第三方应用软件,所述硬件部件包括所述服务器的中央处理器CPU、内存、硬盘、光驱、网卡以及显卡。所述第二管理数据包括:所述服务器的主板、中央处理器CPU以及风扇的温度、电压、电流。
可选地,所述BMC400还用于将所述第一报文或所述第二报文通过所述虚拟网卡,转发到所述BMC400的控制模块,所述控制模块用于根据接收到所述第一报文中包含的所述第一管理数据或所述第二报文中包含的所述第二管理数据,监控服务器的运行状态。
所述转发规则包括:若接收到的报文的目的MAC地址为所述BMC400的MAC地址,则将所述报文转发到所述BMC400的控制模块,若所述报文的目的MAC地址不为所述BMC400的MAC地址,则将所述报文转发到所述物理网卡,经由所述物理网卡发送到外部网络。
所述虚拟网卡根据所述转发规则转发接收到的所述第一报文或所述第二报文具体为:通过所述BMC400的网桥透传所述第一报文或所述第二报文;或者,通过在所述物理网卡的驱动层增加侦测点,利用所述物理网卡的驱动层增加侦测点识别并转发所述第一报文或所述第二报文。
可选地,所述服务器与所述BMC400之间采用标准总线和快速外设部件互联标准PCIe接口连接,以建立所述服务器与所述BMC400的数据交换通道,所述数据交换通道用于传输所述第一报文和所述第二报文。
可选地,所述BMC400还用于:管理所述虚拟网卡的配置信息,所述配置信息包括:媒体接入控制MAC地址。
本实施例的服务器,可用于执行实施例一至实施例三提供的技术方案,其具体实现方式和技术效果类似,这里不再赘述。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (16)
1.一种服务器统一通信的方法,其特征在于,所述方法包括:
基板管理控制器BMC接收第一报文,所述第一报文包含第一管理数据或业务数据,且所述第一报文通过第一信道传输,其中,所述第一信道为所述业务数据通过所述服务器的物理网卡传输到外部网络的通信通道,所述第一管理数据为带内管理数据;
所述BMC将接收到的所述第一报文通过预先配置好的虚拟网卡,按照转发规则,转发到所述BMC的物理网卡,所述第一报文经由所述物理网卡发送到外部网络,所述转发规则包括:若接收到的报文的目的MAC地址为所述BMC的MAC地址,则将所述报文转发到所述BMC的控制模块,若所述报文的目的MAC地址不为所述BMC的MAC地址,则将所述报文转发到所述物理网卡,经由所述物理网卡发送到外部网络。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:所述BMC接收第二报文,所述第二报文包含第二管理数据,且所述第二报文通过第二信道传输,其中,所述第二信道为所述第二管理数据通过所述BMC的物理网卡传输到外部网络的通信通道,所述第二管理数据为带外管理数据。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:所述BMC将所述第一报文或所述第二报文通过所述虚拟网卡,转发到所述BMC的控制模块,所述控制模块用于根据接收到所述第一报文中包含的所述第一管理数据或所述第二报文中包含的所述第二管理数据,监控所述服务器的运行状态。
4.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:所述BMC管理所述虚拟网卡的配置信息,所述配置信息包括:媒体接入控制MAC地址。
5.根据权利要求2所述的方法,其特征在于,所述虚拟网卡根据所述转发规则转发接收到的所述第一报文或所述第二报文包括:
通过所述BMC的网桥透传所述第一报文或所述第二报文;
或者,通过在所述物理网卡的驱动层增加侦测点,利用所述物理网卡的驱动层增加的侦测点识别并转发所述第一报文或所述第二报文。
6.根据权利要求2所述的方法,其特征在于,所述方法包括:所述服务器与所述BMC之间采用标准总线和快速外设部件互联标准PCIe接口连接,以建立所述服务器与所述BMC的数据交换通道,所述数据交换通道用于传输所述第一报文和所述第二报文。
7.一种基板管理控制器BMC,其特征在于,包括:
收发器,所述收发器包括第一接收单元,所述第一接收单元用于接收第一报文,所述第一报文包含第一管理数据或业务数据,且所述第一报文通过第一信道传输,其中,所述第一信道为所述业务数据通过服务器的物理网卡传输到外部网络的通信通道,所述第一管理数据为带内管理数据;
虚拟网卡,用于按照转发规则将所述虚拟收发器接收到的所述第一报文转发到所述BMC的物理网卡,所述转发规则包括:若接收到的报文的目的MAC地址为所述BMC的MAC地址,则将所述报文转发到所述BMC的控制模块,若所述报文的目的MAC地址不为所述BMC的MAC地址,则将所述报文转发到所述物理网卡,经由所述物理网卡发送到外部网络;
所述物理网卡,用于将所述第一报文发送到外部网络。
8.根据权利要求7所述的BMC,其特征在于,所述收发器还包括:第二接收单元;
所述第二接收单元,用于接收第二报文,所述第二报文包含第二管理数据,且所述第二报文通过第二信道传输,其中,所述第二信道为所述第二管理数据通过所述BMC的物理网卡传输到外部网络的通信通道,所述第二管理数据为带外管理数据。
9.根据权利要求8所述的BMC,其特征在于,所述BMC还包括:控制模块;
所述虚拟网卡还用于:将所述第一报文或所述第二报文转发到所述控制模块;
所述控制模块,用于根据接收到所述第一报文中包含的所述第一管理数据或所述第二报文中包含的所述第二管理数据,监控服务器的运行状态。
10.根据权利要求7或8所述的BMC,所述BMC还包括:管理模块,用于管理所述虚拟网卡的配置信息,所述配置信息包括:媒体接入控制MAC地址。
11.根据权利要求8所述的BMC,其特征在于,所述BMC还包括:网桥;
所述虚拟网卡具体用于:通过所述网桥透传所述第一报文或所述第二报文;
或者,通过在所述物理网卡的驱动层增加侦测点,利用所述物理网卡的驱动层增加的侦测点识别并转发所述第一报文或所述第二报文。
12.根据权利要求8所述的BMC,其特征在于,所述服务器与所述BMC之间采用标准总线和快速外设部件互联标准PCIe接口连接,以建立所述服务器与所述BMC的数据交换通道,所述数据交换通道用于传输所述第一报文和所述第二报文。
13.一种服务器,其特征在于,包括:处理器、存储器、基板管理控制器BMC和系统总线,所述存储器和所述BMC通过所述系统总线与所述处理器连接并完成相互间的通信;
所述存储器,用于存储计算机可执行指令;
所述处理器,用于运行所述计算机可执行指令,以将第一报文发送给所述BMC;
所述BMC用于接收所述第一报文,所述第一报文包含第一管理数据或业务数据,且所述第一报文通过第一信道传输,其中,所述第一信道为所述业务数据通过所述服务器的物理网卡传输到外部网络的通信通道,所述第一管理数据为带内管理数据;
所述BMC还用于将接收到的所述第一报文通过预先配置好的虚拟网卡,按照转发规则,转发到所述BMC的物理网卡,所述第一报文经由所述物理网卡发送到外部网络,所述转发规则包括:若接收到的报文的目的MAC地址为所述BMC的MAC地址,则将所述报文转发到所述BMC的控制模块,若所述报文的目的MAC地址不为所述BMC的MAC地址,则将所述报文转发到所述物理网卡,经由所述物理网卡发送到外部网络。
14.根据权利要求13所述的服务器,其特征在于,所述处理器还用于执行所述计算机可执行指令,以将第二报文发送给所述BMC;
相应地,所述BMC还用于接收所述第二报文,所述第二报文包含第二管理数据,且所述第二报文通过第二信道传输,其中,所述第二信道为所述第二管理数据通过所述BMC的物理网卡传输到外部网络的通信通道,所述第二管理数据为带外管理数据。
15.根据权利要求14所述的服务器,其特征在于,所述BMC还用于:
将所述第一报文或所述第二报文通过所述虚拟网卡,转发到所述BMC的控制模块,所述控制模块用于根据接收到所述第一报文中包含的所述第一管理数据或所述第二报文中包含的所述第二管理数据,监控所述服务器的运行状态。
16.根据权利要求14所述的服务器,其特征在于,所述虚拟网卡根据所述转发规则转发接收到的所述第一报文或所述第二报文包括:
通过所述BMC的网桥透传所述第一报文或所述第二报文;
或者,通过在所述物理网卡的驱动层增加侦测点,利用所述物理网卡的驱动层增加的侦测点识别并转发所述第一报文或所述第二报文。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410457803.XA CN104202195B (zh) | 2014-09-10 | 2014-09-10 | 服务器统一通信的方法、基板管理控制器和服务器 |
PCT/CN2015/081072 WO2016037504A1 (zh) | 2014-09-10 | 2015-06-09 | 服务器统一通信的方法、基板管理控制器和服务器 |
EP15840857.5A EP3176980B1 (en) | 2014-09-10 | 2015-06-09 | Unified server communication method, baseboard management controller and server |
US15/450,213 US10411971B2 (en) | 2014-09-10 | 2017-03-06 | Method for unified communication of server, baseboard management controller, and server |
US16/548,574 US10986171B2 (en) | 2014-09-10 | 2019-08-22 | Method for unified communication of server, baseboard management controller, and server |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410457803.XA CN104202195B (zh) | 2014-09-10 | 2014-09-10 | 服务器统一通信的方法、基板管理控制器和服务器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104202195A CN104202195A (zh) | 2014-12-10 |
CN104202195B true CN104202195B (zh) | 2018-05-04 |
Family
ID=52087425
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410457803.XA Active CN104202195B (zh) | 2014-09-10 | 2014-09-10 | 服务器统一通信的方法、基板管理控制器和服务器 |
Country Status (4)
Country | Link |
---|---|
US (2) | US10411971B2 (zh) |
EP (1) | EP3176980B1 (zh) |
CN (1) | CN104202195B (zh) |
WO (1) | WO2016037504A1 (zh) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104202195B (zh) | 2014-09-10 | 2018-05-04 | 华为技术有限公司 | 服务器统一通信的方法、基板管理控制器和服务器 |
CN104735176B (zh) * | 2015-03-27 | 2018-06-05 | 华为技术有限公司 | Pxe启动的方法、装置和服务器单板 |
CN105897471A (zh) * | 2016-04-05 | 2016-08-24 | 浪潮电子信息产业股份有限公司 | 一种带外管理系统及方法 |
CN106126394B (zh) * | 2016-08-22 | 2019-02-19 | 浪潮(北京)电子信息产业有限公司 | 带外监控管理获取pcie设备资产信息的方法及系统 |
CN106330567A (zh) * | 2016-09-14 | 2017-01-11 | 郑州云海信息技术有限公司 | 一种服务器集群的服务器管理控制方法及系统 |
US10521273B2 (en) | 2017-06-08 | 2019-12-31 | Cisco Technology, Inc. | Physical partitioning of computing resources for server virtualization |
CN110224917B (zh) * | 2018-03-02 | 2021-10-08 | 杭州海康威视数字技术股份有限公司 | 数据传输方法、装置及系统、服务器 |
US10521376B1 (en) * | 2018-03-15 | 2019-12-31 | Seagate Technology Llc | Enclosure management over PCIE |
CN108847959B (zh) * | 2018-05-24 | 2021-01-15 | 联想(北京)有限公司 | 服务器监控方法和服务器 |
US10324878B1 (en) * | 2018-07-13 | 2019-06-18 | Dell Products L.P. | System and method of multiplexing communications |
CN112152927B (zh) * | 2019-06-26 | 2022-09-02 | 杭州海康威视数字技术股份有限公司 | 一种报文转发方法、系统及网卡和存储介质 |
CN111177053B (zh) * | 2019-12-28 | 2022-02-18 | 山东英信计算机技术有限公司 | 一种数据通信方法、装置、系统及计算机可读存储介质 |
US12028361B2 (en) * | 2020-03-28 | 2024-07-02 | Dell Products L.P. | Intelligent detection and prevention of anomalies in interface protocols |
CN111953803A (zh) * | 2020-07-07 | 2020-11-17 | 锐捷网络股份有限公司 | Bmc启动方法、设备、系统及存储介质 |
CN111988810B (zh) * | 2020-08-13 | 2022-12-09 | 苏州浪潮智能科技有限公司 | 一种基于MIWI的无线服务器监管方法及mesh组网装置 |
TWI748652B (zh) * | 2020-09-18 | 2021-12-01 | 英業達股份有限公司 | 基於基板管理控制器的伺服器測試系統及其方法 |
CN112367183B (zh) * | 2020-09-30 | 2022-07-12 | 新华三云计算技术有限公司 | 一种服务器维护方法、装置、设备及机器可读存储介质 |
CN112256300B (zh) * | 2020-10-19 | 2024-09-17 | 曙光信息产业(北京)有限公司 | 服务器带内管理方法、装置、电子设备及可读存储介质 |
US11445028B2 (en) * | 2020-12-30 | 2022-09-13 | Dell Products L.P. | System and method for providing secure console access with multiple smart NICs using NC-SL and SPDM |
CN113207093B (zh) * | 2021-05-13 | 2022-08-26 | 新华三软件有限公司 | 一种服务器位置确定方法、装置及设备 |
CN115982081A (zh) * | 2021-10-14 | 2023-04-18 | 华为技术有限公司 | 一种与PCIe设备通信的方法、装置及系统 |
US12107832B2 (en) * | 2022-07-14 | 2024-10-01 | Bank Of America Corporation | System for establishing secure communication channels for peripheral hardware devices |
CN115914288B (zh) * | 2022-11-07 | 2024-06-25 | 苏州浪潮智能科技有限公司 | 报文的传输方法及装置、存储介质及电子装置 |
CN115562950B (zh) * | 2022-12-05 | 2023-03-17 | 苏州浪潮智能科技有限公司 | 一种数据采集方法、装置和计算机设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1508689A (zh) * | 2002-12-19 | 2004-06-30 | 联想(北京)有限公司 | 一种远程获取被监控计算机信息的系统和方法 |
CN101540694A (zh) * | 2008-03-17 | 2009-09-23 | 联想(北京)有限公司 | 一种服务器的监控方法和服务器 |
CN101661421A (zh) * | 2009-07-21 | 2010-03-03 | 浪潮电子信息产业股份有限公司 | 一种计算机cpu等关键芯片运行状态的监控方法 |
CN101686154A (zh) * | 2008-09-22 | 2010-03-31 | 联想(北京)有限公司 | 服务器以及处理服务器信息的方法 |
CN103577298A (zh) * | 2012-07-31 | 2014-02-12 | 鸿富锦精密工业(深圳)有限公司 | 基板管理控制器监控系统及方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8112513B2 (en) * | 2005-11-30 | 2012-02-07 | Microsoft Corporation | Multi-user display proxy server |
US20080046546A1 (en) * | 2006-08-18 | 2008-02-21 | Parmar Pankaj N | EFI based mechanism to export platform management capabilities to the OS |
CN101227329B (zh) * | 2008-02-18 | 2011-04-06 | 华为技术有限公司 | 网络设备管理的方法、装置及系统 |
EP2401683A4 (en) * | 2009-02-27 | 2015-07-29 | Broadcom Corp | METHOD AND SYSTEM FOR NETWORKING VIRTUAL MACHINES |
US8990824B2 (en) * | 2011-04-28 | 2015-03-24 | Dell Products L.P. | System and method for automated virtual network configuration |
CN103136048B (zh) * | 2011-11-30 | 2016-03-23 | 英业达科技有限公司 | 计算机系统 |
CN103616937B (zh) * | 2013-11-27 | 2016-09-28 | 华为技术有限公司 | 一种主板、pcie网卡和服务器系统 |
CN104202195B (zh) * | 2014-09-10 | 2018-05-04 | 华为技术有限公司 | 服务器统一通信的方法、基板管理控制器和服务器 |
-
2014
- 2014-09-10 CN CN201410457803.XA patent/CN104202195B/zh active Active
-
2015
- 2015-06-09 EP EP15840857.5A patent/EP3176980B1/en active Active
- 2015-06-09 WO PCT/CN2015/081072 patent/WO2016037504A1/zh active Application Filing
-
2017
- 2017-03-06 US US15/450,213 patent/US10411971B2/en active Active
-
2019
- 2019-08-22 US US16/548,574 patent/US10986171B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1508689A (zh) * | 2002-12-19 | 2004-06-30 | 联想(北京)有限公司 | 一种远程获取被监控计算机信息的系统和方法 |
CN101540694A (zh) * | 2008-03-17 | 2009-09-23 | 联想(北京)有限公司 | 一种服务器的监控方法和服务器 |
CN101686154A (zh) * | 2008-09-22 | 2010-03-31 | 联想(北京)有限公司 | 服务器以及处理服务器信息的方法 |
CN101661421A (zh) * | 2009-07-21 | 2010-03-03 | 浪潮电子信息产业股份有限公司 | 一种计算机cpu等关键芯片运行状态的监控方法 |
CN103577298A (zh) * | 2012-07-31 | 2014-02-12 | 鸿富锦精密工业(深圳)有限公司 | 基板管理控制器监控系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
US10986171B2 (en) | 2021-04-20 |
EP3176980A1 (en) | 2017-06-07 |
US20170180216A1 (en) | 2017-06-22 |
EP3176980A4 (en) | 2017-08-02 |
WO2016037504A1 (zh) | 2016-03-17 |
US20190379586A1 (en) | 2019-12-12 |
US10411971B2 (en) | 2019-09-10 |
EP3176980B1 (en) | 2018-10-31 |
CN104202195A (zh) | 2014-12-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104202195B (zh) | 服务器统一通信的方法、基板管理控制器和服务器 | |
US11252087B2 (en) | Data packet forwarding method, network adapter, host device, and computer system | |
TWI280006B (en) | Method, system, and program for interfacing with a network adaptor supporting a plurality of devices | |
US10210113B2 (en) | SAN fabric online path diagnostics | |
US20060280195A1 (en) | Systems and methods for providing dedicated or shared network interface functionality via a single MAC | |
TWI578161B (zh) | 集成有管理控制器的網路控制器暨網路控制的方法 | |
CN102017544B (zh) | 卸载网络处理的方法和系统 | |
US20130145072A1 (en) | High availability and I/O aggregation for server environments | |
US9860189B2 (en) | Systems and methods to enable network communications for management controllers | |
CN106020926B (zh) | 一种用于虚拟交换机技术中数据传输的方法及装置 | |
US9197490B2 (en) | System and method for providing remote management of a switching device | |
US9654421B2 (en) | Providing real-time interrupts over ethernet | |
KR100570143B1 (ko) | 상호 통신 프리프로세서 | |
CN106657279B (zh) | 一种网络业务加速方法和设备 | |
CN108228309A (zh) | 基于虚拟机的数据包发送和接收方法及装置 | |
CN108028788A (zh) | 在lan接口重置期间活动的链路 | |
CN108521341A (zh) | 报文传输方法及装置 | |
CN104144130A (zh) | 虚拟机系统互联的方法、系统和接入交换机 | |
CN109698845A (zh) | 数据传输的方法、服务器、卸载卡及存储介质 | |
CN109150724B (zh) | 一种通信方法和网卡 | |
US20130198548A1 (en) | Apparatus and method for saving power of usb device | |
CN102724099B (zh) | 提升多处理机系统控制面内部通信Qos的装置及方法 | |
CN107360102B (zh) | 以太报文接收方法及数据通信设备 | |
CN103825767B (zh) | 服务质量的实现方法和网桥 | |
CN103353848B (zh) | 多队列或设备的选择方法和计算节点 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |