一种NCSI信号的在线切换装置及方法与流程

文档序号:25783345发布日期:2021-07-09 10:10阅读:842来源:国知局
一种NCSI信号的在线切换装置及方法与流程
一种ncsi信号的在线切换装置及方法
技术领域
1.本发明涉及服务器网络管理领域,特别涉及一种ncsi信号的在线切换装置及方法。


背景技术:

2.服务器的网络管理,可分为带外管理和带内管理两种模式。带内管理,即管理控制信息和数据信息使用同一物理通道传送,带外管理,则通过不同的物理通道分别传送控制信息和数据信息,二者完全独立互不影响。ncsi(network controller sideband interface,网络控制器边带接口)正是一个由分布式管理任务组定义的、用于支持服务器带外管理的边带接口网络控制器的工业标准,由一个管理控制器和多个网络控制器组成。ncsi业务可绑定到服务器的多个网络设备,如板载网卡、ocp(open compute project,开放计算项目)网卡以及pcie(peripheral component interconnect express,一种高速串行计算机扩展总线标准)网卡等,通过bmc(baseboard management controller,基板管理控制器)发送控制信号实现ncsi信号的切换与管理功能。
3.当前ncsi信号管理方法有两种,一是通过bmc的硬件设置切换ncsi信号,缺乏灵活性;二是在bmc和ncsi设备之间增加切换芯片,利用切换芯片内部设置实现第一网卡设备和第二网卡设备的切换,但这种方法仅能解决两路ncsi信号的切换,缺乏扩展性,不能满足实际服务器应用场景中多个网络设备的切换需求。
4.因此,如何提供一种解决上述技术问题的方案是目前本领域技术人员需要解决的问题。


技术实现要素:

5.有鉴于此,本发明的目的在于提供一种兼备灵活性和扩展性的ncsi信号的在线切换装置及方法。其具体方案如下:
6.一种ncsi信号的在线切换装置,包括bmc、cpld、多个高速切换芯片、多个ncsi设备:
7.每个所述高速切换芯片的第一ncsi端口均与所述bmc连接,每个所述高速切换芯片的第二ncsi端口和第三ncsi端口分别连接一个所述ncsi设备,每个所述高速切换芯片的控制端口均与所述cpld连接;
8.所述bmc生成控制信号发给所述cpld;
9.所述cpld根据所述控制信号确定并使能对应的所述高速切换芯片和对应的所述ncsi设备,使所述控制信号对应的所述ncsi设备通过对应的所述高速切换芯片与所述bmc进行ncsi信号通信。
10.优选的,所述bmc具体用于:
11.获取并解析ipmi命令,以生成所述控制信号发给所述cpld。
12.优选的,所述ncsi设备具体为板载网卡、ocp网卡或pcie网卡。
13.优选的,所述cpld具体用于:
14.根据所述控制信号中的芯片id位确定对应的所述高速切换芯片;
15.根据所述控制信号中的设备id位确定对应的所述ncsi设备。
16.优选的,所述cpld还用于:
17.在未收到所述控制信号前,按照默认设置使能对应的所述高速切换芯片和对应的所述ncsi设备。
18.优选的,所述cpld还用于:
19.记录每个所述高速切换芯片的第二ncsi端口和第三ncsi端口是否连接有所述ncsi设备。
20.优选的,所述cpld还用于:
21.当所述控制信号对应的所述高速切换芯片未连接所述控制信号对应的所述ncsi设备,向所述bmc发送切换失败的信息。
22.相应的,本申请还公开了一种ncsi信号的在线切换方法,包括:
23.bmc生成控制信号发给cpld;
24.所述cpld根据所述控制信号确定并使能对应的高速切换芯片和对应的ncsi设备,使所述控制信号对应的所述ncsi设备通过对应的所述高速切换芯片与所述bmc进行ncsi信号通信。
25.优选的,所述bmc生成控制信号发给cpld的过程,包括:
26.所述bmc获取并解析ipmi命令,以生成控制信号发给cpld。
27.优选的,所述在线切换方法还包括:
28.在未收到所述控制信号前,所述cpld按照默认设置使能对应的所述高速切换芯片和对应的所述ncsi设备。
29.本申请公开了一种ncsi信号的在线切换装置,包括bmc、cpld、多个高速切换芯片、多个ncsi设备:所述bmc生成控制信号发给所述cpld;所述cpld根据所述控制信号确定并使能对应的所述高速切换芯片和对应的所述ncsi设备,使所述控制信号对应的所述ncsi设备通过对应的所述高速切换芯片与所述bmc进行ncsi信号通信。本申请利用cpld即可完成实时在线ncsi设备的切换,没有额外增加bmc的io口需求的同时具有较高的扩展性,允许cpld扩展更多高速切换芯片和ncsi设备,满足服务器对多ncsi设备的连接和切换需求。
附图说明
30.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
31.图1为本发明实施例中一种ncsi信号的在线切换装置的结构分布图;
32.图2为本发明实施例中一种ncsi信号的在线切换方法的步骤流程图。
具体实施方式
33.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完
整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
34.当前ncsi信号管理方法有两种,一是通过bmc的硬件设置切换ncsi信号,缺乏灵活性;二是在bmc和ncsi设备之间增加切换芯片,利用切换芯片内部设置实现第一网卡设备和第二网卡设备的切换,但这种方法仅能解决两路ncsi信号的切换,缺乏扩展性,不能满足实际服务器应用场景中多个网络设备的切换需求。本申请利用cpld即可完成实时在线ncsi设备的切换,没有额外增加bmc的io(input/output,输入/输出)口需求的同时具有较高的扩展性,允许cpld扩展更多高速切换芯片和ncsi设备,满足服务器对多ncsi设备的连接和切换需求。
35.本发明实施例公开了一种ncsi信号的在线切换装置,参见图1所示,包括bmc 1、cpld 2、多个高速切换芯片3、多个ncsi设备4:
36.每个高速切换芯片3的第一ncsi端口均与bmc 1连接,每个高速切换芯片3的第二ncsi端口和第三ncsi端口分别连接一个ncsi设备4,每个高速切换芯片3的控制端口均与cpld 2连接;
37.bmc 1生成控制信号发给cpld 2;
38.cpld 2根据控制信号确定并使能对应的高速切换芯片3和对应的ncsi设备4,使控制信号对应的ncsi设备4通过对应的高速切换芯片3与bmc 1进行ncsi信号通信。
39.可以理解的是,cpld(complex programmable logic device,复杂可编程逻辑器件)2对控制信号进行解码,可以确定该控制信号对应的高速切换芯片3,每个高速切换芯片3连接有两个ncsi设备4,cpld 2进一步利用控制信号确定要切换到对应的高速切换芯片3的哪个ncsi设备4,然后使能对应的高速切换芯片3,使该高速切换芯片3建立bmc 1和对应的ncsi设备4之间的ncsi信号通路,使该ncsi设备4能够通过该高速切换芯片3与bmc 1进行ncsi信号通信。
40.其中,ncsi设备4为利用ncsi信号与服务器进行通讯的设备,具体类型为板载网卡、ocp网卡或pcie网卡。
41.进一步的,bmc 1具体用于获取并解析ipmi(intelligent platform management interface,智能平台管理接口)命令,以生成控制信号发给cpld2。该ipmi命令一般由用户发送给bmc 1,内含关于ncsi设备4的切换指令。
42.进一步的,cpld 2具体用于:
43.根据控制信号中的芯片id位确定对应的高速切换芯片3;
44.根据控制信号中的设备id位确定对应的ncsi设备4。
45.例如,当服务器只需要4个ncsi设备41

44时,在线切换装置中包括2个高速切换芯片31和32,高速切换芯片31负责切换ncsi设备41和42,高速切换芯片32负责切换ncsi设备43和44,cpld 2根据控制信号进行使能的判断过程如下表1所示,其中cpld 2的使能信号为实际使能过程中向每个高速切换芯片3发送的具体引脚信号,其中pd信号为低电平时该高速切换芯片3使能,此时,sel信号为低电平时该高速切换芯片3切换至第二ncsi端口的ncsi设备4,sel信号为高电平时该高速切换芯片3切换至第三ncsi端口的ncsi设备4。
46.表1 cpld 2的使能控制逻辑
[0047][0048]
可以理解的是,在只有两个高速切换芯片31和32时,芯片id位仅一位有效即可,如果有两个以上的高速切换芯片3连接在cpld 2上,则需要判断的芯片id位的有效位更多。表1中的使能控制逻辑是在二进制的基础上确定了对应的高速切换芯片3,除此外,ipmi命令和控制信号还可通过其他算法或进制确定要切换的高速切换芯片3和ncsi设备4,例如直接确定要切换的ncsi设备4的id,然后再确定控制该ncsi设备4的高速切换芯片3,ipmi命令和控制信号的具体内容和编码形式均不作限制。
[0049]
进一步的,cpld 2还用于:在未收到控制信号前,按照默认设置使能对应的高速切换芯片3和对应的ncsi设备4。
[0050]
可以理解的是,cpld 2内部存有默认设置,在未收到控制信号前,默认的ncsi设备4通过相应的高速切换芯片3与bmc 1进行ncsi通信。
[0051]
进一步的,cpld 2还用于记录每个高速切换芯片3的第二ncsi端口和第三ncsi端口是否连接有ncsi设备4。
[0052]
可以理解的是,由于连接不稳定或特殊设置原因,高速切换芯片3未必连接了两个ncsi设备4,因此为了保证切换成功,cpld 2可以预先记录连接好、处于在位状态的ncsi设备4。
[0053]
进一步的,cpld 2还用于:当控制信号对应的高速切换芯片3未连接控制信号对应的ncsi设备4,向bmc 1发送切换失败的信息。
[0054]
可以理解的是,如果控制信号对应需要切换的ncsi设备4不存在,需要向bmc 1发送切换失败的信息,也即待切换ncsi设备4不存在的信息。cpld 2判断待切换的ncsi设备4是否存在的依据,可以是上文的记录信息,也可以重新尝试切换,然后得到高速切换芯片3的反馈。
[0055]
本申请公开了一种ncsi信号的在线切换装置,包括bmc、cpld、多个高速切换芯片、多个ncsi设备:所述bmc生成控制信号发给所述cpld;所述cpld根据所述控制信号确定并使能对应的所述高速切换芯片和对应的所述ncsi设备,使所述控制信号对应的所述ncsi设备通过对应的所述高速切换芯片与所述bmc进行ncsi信号通信。本申请利用cpld即可完成实时在线ncsi设备的切换,没有额外增加bmc的io口需求的同时具有较高的扩展性,允许cpld扩展更多高速切换芯片和ncsi设备,满足服务器对多ncsi设备的连接和切换需求。
[0056]
相应的,本申请实施例还公开了一种ncsi信号的在线切换方法,参见图2所示,包括:
[0057]
s1:bmc生成控制信号发给cpld;
[0058]
具体的,该步骤包括bmc获取并解析ipmi命令,以生成控制信号发给cpld。
[0059]
s2:cpld根据控制信号确定并使能对应的高速切换芯片和对应的ncsi设备,使控制信号对应的ncsi设备通过对应的高速切换芯片与bmc进行ncsi信号通信。
[0060]
在一些具体的实施例中,在线切换方法还包括:
[0061]
在未收到控制信号前,cpld按照默认设置使能对应的高速切换芯片和对应的ncsi设备。
[0062]
本实施例利用cpld即可完成实时在线ncsi设备的切换,没有额外增加bmc的io口需求的同时具有较高的扩展性,允许cpld扩展更多高速切换芯片和ncsi设备,满足服务器对多ncsi设备的连接和切换需求。
[0063]
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0064]
以上对本发明所提供的一种ncsi信号的在线切换装置及方法进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1