基于单片机控制实现网卡bypass功能的方法及电路与流程

文档序号:32517275发布日期:2022-12-13 16:47阅读:245来源:国知局
基于单片机控制实现网卡bypass功能的方法及电路与流程

1.本技术涉及网络安全领域,尤其涉及一种基于单片机控制实现网卡bypass功能的方法及电路。


背景技术:

2.网络安全设备一般应用在两个或更多的网络之间,如内网与外网之间,网络安全设备内的应用程序会通过其网络封包进行分析,判断是否存在威胁,再按照一定路由规则将封包转发出去。当网络安全设备故障时,为保障各个网络处于连通状态需要适用bypass解决,具体通过特定的触发状态,如断电或死机,让两个网络不通过网络安全设备系统,而直接物理上导通,故bypass功能即旁路功能属于网络安全产品中所必须的一项功能。
3.目前,市面上带有bypass功能的网卡要实现bypass功能,需要配备专门的服务器来实现,不具备通用性。


技术实现要素:

4.有鉴于此,本技术提出了一种基于单片机控制实现网卡bypass功能的方法及电路,通过增设单片机控制驱动器,能够使网卡适用于不同的服务器,有效的提高了网卡的通用性。
5.根据本技术的一方面,提供了一种基于单片机控制实现网卡bypass功能的方法,包括如下步骤:
6.s100、通过pciex8网卡获取当前服务器状态信息;
7.s200、由单片机对所述服务器状态信息进行解析,确定所述服务器的实时状态;
8.s300、所述单片机根据所述实时状态控制驱动器,并通过所述驱动器控制电源方向;
9.s400、通过改变所述电源方向,切换网口连通状态,由此控制所述pciex8网卡实现bypass功能。
10.作为本技术的一种可选实施方案,可选地,在步骤s100中,所述通过pciex8网卡获取当前服务器状态信息,包括:
11.s110、通过smbus总线获取pciex8槽位信息,实现所述pciex8网卡与所述服务器之间的通信;
12.s120、由smbus信号传输接收到的所述服务器状态信息。
13.作为本技术的一种可选实施方案,可选地,在步骤s200中,所述由单片机对所述服务器状态信息进行解析,确定所述服务器的实时状态,包括:
14.s210、所述单片机接收所述服务器通过所述smbus总线发送的i2c控制信号由所述单片机执行所述服务器状态信息;
15.s220、所述单片机针对所述服务器信息对所述服务器实时状态进行判断。
16.作为本技术的一种可选实施方案,可选地,在步骤s300中,所述单片机根据所述实
时状态控制驱动器,并由所述驱动器控制电源方向,包括:
17.s310、所述单片机根据收到的i2c信号通过io口控制所述驱动器输出两路信号;
18.s320、所述两路信号通过mos管分别控制所述电源方向。
19.作为本技术的一种可选实施方案,可选地,在步骤s400中,所述通过改变所述电源方向,控制所述pciex8网卡实现bypass功能,包括:
20.s410、通过所述电源方向的改变来控制带锁存的继电器进行状态切换;
21.s420、所述电源方向为正方向时,所述pciex8网卡的bypass功能失效,所述pciex8网卡正常通讯;
22.s430、所述电源方向为反方向时,所述pciex8网卡的bypass功能启用,通过带锁存的继电器控制的所述网口相互导通,保证网络能够连接至备用服务器。
23.根据本技术的另一方面,提供了一种实现所述的基于单片机控制实现网卡bypass功能的方法的电路,包括pciex8网卡;
24.所述pciex8网卡上集成有单片机、驱动器组、pciex8金手指和bypass模块;
25.所述单片机的数量为一个;所述单片机的输入端与所述pciex8金手指一端电连接,所述单片机的输出端与所述驱动器组的输入端电连接;所述pciex8金手指适用于引入服务器检测状态及服务器控制信息;
26.所述bypass模块包括pcie switch、网卡芯片组、继电器组和网卡电口组;
27.所述pcie switch的输入端与所述pciex8金手指一端电连接,所述pcie switch的输出端与所述网卡芯片组的输入端电连接,所述网卡芯片组的输出端与所述继电器组的输入端电连接,所述继电器组的输入端还与所述驱动器组的输出端电连接,所述继电器组的输出端与所述网卡电口组电连接,其中,所述网卡电口组包括多个网卡电口。
28.作为本技术的一种可选实施方案,可选地,所述网卡芯片组包括第一网卡芯片和第二网卡芯片;
29.所述第一网卡芯片和所述第二网卡芯片均为千兆网卡芯片。
30.作为本技术的一种可选实施方案,可选地,所述继电器组包括第一继电器组、第二继电器组、第三继电器组和第四继电器组;
31.所述第一继电器组和所述第二继电器组的输入端与所述第一网卡芯片的输出端电连接;
32.所述第三继电器组和所述第四继电器组的输入端与所述第二网卡芯片的输出端电连接;
33.所述第一继电器组、所述第二继电器组、所述第三继电器组和所述第四继电器组各包括八个继电器。
34.作为本技术的一种可选实施方案,可选地,所述驱动器组包括第一驱动器、第二驱动器、第三驱动器和第四驱动器;
35.所述第一驱动器与所述第一继电器组电连接,所述第二驱动器与所述第二继电器组电连接,所述第三驱动器与所述第三继电器组电连接,所述第四驱动器与所述第四继电器组电连接。
36.作为本技术的一种可选实施方案,可选地,还包括第一mos管、第二mos管、第三mos管、第四mos管、第一电阻和第二电阻;
37.所述第一驱动器的第六管脚电连接所述第一mos管的g端,所述第一mos管的d端与所述第二mos管的g端电连接,所述第二mos管的d端连接第一电阻一端,所述第一电阻另一端分别与所述第一继电器组中的多个所述继电器第一管脚电连接;
38.所述第一驱动器的第三管脚与所述第三mos管的g端电连接,所述第三mos管的d端与所述第四mos管的g端电连接,所述第四mos管的d端连接所述第二电阻一端,所述第二电阻另一端分别与所述第一继电器组中的多个所述继电器的第八管脚电连接。
39.作为本技术的一种可选实施方案,可选地,所述网卡电口组包括多个网卡电口,每四个所述继电器连接一个所述网卡电口。
40.本发明通过在网卡主板上增设一个单片机,服务器通过发送控制信号至单片机,由单片机根据所获取的服务器信息及检测的实时状态,通过驱动器实现对继电器状态的控制,具体的,电源方向改变时继电器的状态相继切换,从而在服务器故障时触发网卡bypass功能,实现服务器异常时网络状态的切换;通过网卡上原有的smbus信号控制单片机,并以单片机控制继电器,无需专门配备特殊的服务器,有效的提升了带有bypass功能网卡的通用性。
41.根据下面参考附图对示例性实施例的详细说明,本技术的其它特征及方面将变得清楚。
附图说明
42.包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本技术的示例性实施例、特征和方面,并且用于解释本技术的原理。
43.图1示出本技术实施例的基于单片机控制实现网卡bypass功能的方法流程图;
44.图2示出本技术实施例的电路连接示意图;
45.图3示出本技术实施例的另一电路连接示意图;
46.图4示出本技术实施例的pciex8金手指电路连接示意图;
47.图5示出本技术实施例的单片机的电路连接示意图;
48.图6示出本技术实施例的第一驱动器的电路连接示意图;
49.图7示出本技术实施例的第一驱动器控制第一继电器组的电路连接示意图;
50.图8示出本技术实施例的第一继电器组中的四个继电器的电路连接示意图;
51.图9示出本技术实施例的网卡电口连接示意图;
52.图10示出本技术实施例的服务器上电时bypass网卡的工作过程示意图;
53.图11示出本技术实施例的服务器重启过程单片机对网卡bypass控制过程示意图;
54.图12示出本技术实施例的服务器断电过程单片机对网卡bypass控制过程示意图。
具体实施方式
55.以下将参考附图详细说明本技术的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。
56.其中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”、“顺时针”、“逆时针”、“轴
向”、“径向”、“周向”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本技术或简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本技术的限制。
57.此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本技术的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
58.在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
59.另外,为了更好的说明本技术,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本技术同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本技术的主旨。
60.下面将参考附图并结合实施例来详细说明本技术。
61.如图1所示,本发明提供一种基于单片机控制实现网卡bypass功能的方法包括:s100、通过pciex8网卡获取当前服务器状态信息;s200、由单片机对所述服务器状态信息进行解析,确定所述服务器的实时状态;s300、所述单片机根据所述实时状态控制驱动器,并通过所述驱动器控制电源方向;s400、通过改变所述电源方向,切换网口连通状态,由此控制所述pciex8网卡实现bypass功能。
62.在此实施例中,通过pciex8网卡主板获取所连接服务器信息,依据所获取的服务器信息确定此时的服务器状态,并根据pciex8网卡主板上设置的单片机执行检测到的服务器信息,控制继电器切换状态,从而在服务器故障时,保障pciex8网卡实现bypass功能。需要说明的是,以单片机控制继电器的方式,可以无需配备专门的服务器,能够有效的提高网卡通用性。具体的,服务器信息自pcixe8金手指向单片机引入,由prsnt信号作为pciex8网卡插卡检测信号,当prsnt信号为低电平时,pciex8网卡插入对应插槽,建立与服务器之间的信号传输,同时由smclk引脚和smdat引脚传输smb_ipmb_scl和smb_ipmb_sda信号至单片机,由单片机对服务器状态信息进行解析。在发明一具体实施例中,在步骤s100中,所述通过pciex8网卡获取当前服务器状态信息,包括:s110、通过smbus总线获取pciex8槽位信息,实现所述pciex8网卡与所述服务器之间的通信;s120、由smbus信号传输接收到的所述服务器状态信息。
63.在此实施例中,pciex8网卡与pciex8槽位相匹配,便于pciex8网卡与服务器之间交换信息,pciex8网卡上原有的smbus信号控制单片机,由单片机据此执行服务器信息,由此实现pciex8网卡接收服务器信息的目的。其中,单片机的pa10_rx、pa9_tx作为信号输入输出接口,用于进行信号传输。
64.在发明一具体实施例中,在步骤s200中,所述由单片机对所述服务器状态信息进行解析,确定所述服务器的实时状态,包括:s210、所述单片机接收所述服务器通过所述smbus总线发送的i2c控制信号由所述单片机执行所述服务器状态信息;s220、所述单片机针对所述服务器信息对所述服务器实时状态进行判断。
65.在此实施例中,服务器信息由smbus信号直接传入单片机中,单片机在接收到smbus信号后进行解析,确定此时服务器状态是否正常,来判断是否开启网卡bypass功能,
需要说明的是,pciex8网卡上的smbus信号控制单片机,并由单片机执行从服务器获取得状态及控制信息,无需配备专门的服务器,使得网卡具备通用性,具体的,单片机pa9管脚发送usarto_tx信号,由pa10管脚接收usarto_rx信号。
66.在发明一具体实施例中,在步骤s300中,所述单片机根据所述实时状态控制驱动器,并由所述驱动器控制电源方向,包括:s310、所述单片机根据收到的i2c信号通过io口控制所述驱动器输出两路信号;s320、所述两路信号通过mos管分别控制所述电源方向。
67.在此实施例中,单片机根据收到的i2c信号通过五路io口来控制驱动器,,其中一路信号为使能信号控制各驱动器有效,另外四路信号分别控制四个驱动器。具体的,控制驱动器输出两路信号,且两路信号电平方向总是相反,四个驱动器均包括vcc端、gnd端,其中vcc端与电源相连,gnd端接地,1y端和2y端分别输出relay_bypass_a_dis和relay_bypass_a_en信号。
68.在发明一具体实施例中,在步骤s400中,所述通过改变所述电源方向,控制所述pciex8网卡实现bypass功能,包括:s410、通过所述电源方向的改变来控制带锁存的继电器进行状态切换;s420、所述电源方向为正方向时,所述pciex8网卡的bypass功能失效,所述pciex8网卡正常通讯;s430、所述电源方向为反方向时,所述pciex8网卡的bypass功能启用,通过带锁存的继电器控制的所述网口相互导通,保证网络能够连接至备用服务器。
69.在此实施例中,当5v电源为正方向时,pciex8网卡正常通讯,但当5v电源为反方向时,pciex8网卡的bypass功能启用,此时与带锁存继电器相连的八个rj45网口,每两个为一组,相互导通,在服务器异常时保障网络连接到备用服务器,从而使服务器异常时造成的损失降到最低。
70.综上所述,服务器上电时基于单片机实现bypass网卡的具体工作过程如下,如图10所示,网卡上自t1时刻单片机开始供电,其中单片机所用电源为服务器备用电源,自t2时刻12v电源开始供电,t3时刻继电器电源开始供电,具体的,继电器电源为12v电源经dc-dc转换而来。t4时刻pcie复位信号即pcie_rstn开始变高,此时单片机引脚检测到此信号,故在t5时刻单片机发出bypass_gate_en使能信号,通过驱动器控制继电器,继而控制网卡的bypass开启与关闭,此处采用服务器预先设置的方式来实现。自t6时刻控制结束,此时网卡bypass状态稳定。
71.还需要说明的是,在服务器重启过程中,由单片机控制网卡bypass。具体如图11所示,重启过程中12v电源、5v电源、3.3v电源无变化。当pcie复位信号为低时,表示此时服务器状态异常,由单片机控制bypass_gate_en切换bypass网卡进入异常状态;当pcie复位信号为高时,表示此时服务器正常工作,单片机控制bypass_gate_en切换bypass网卡进入正常状态。
72.需要特别说明的是,本技术还由单片机在服务器突然断电时对网卡实现bypass控制,具体如图12所示,为当服务器突然断电时,t1时刻pcie复位信号变低,t2时刻单片机开始控制驱动器和继电器切换网卡状态,t3时刻12v电源断电,t4时刻网卡状态切换完成,t5时刻继电器电源掉电,此时网卡状态切换已完成,t6时刻单片机电源掉电。因此,单片机根据所获取的服务器状态,通过驱动器实现对继电器的控制,无需配备专门特殊的服务器即可在服务器故障时实现网卡bypass功能。
73.如图所示,本发明还提供一种实现上述任一具体实施例的基于单片机控制实现网
卡bypass功能的方法的电路,包括pciex8网卡100;pciex8网卡100上集成有单片机120、驱动器组130、pciex8金手指110和bypass模块200;单片机120的数量为一个;单片机120的输入端与pciex8金手指110一端电连接,单片机120的输出端与驱动器组130的输入端电连接;pciex8金手指110适用于引入服务器检测状态及服务器控制信息;bypass模块200包括pcie switch210、网卡芯片组220、继电器组230和网卡电口组240;pcie switch210的输入端与pciex8金手指110一端电连接,pcie switch210的输出端与网卡芯片组220的输入端电连接,网卡芯片组220的输出端与继电器组230的输入端电连接,继电器组230的输入端还与驱动器组130的输出端电连接,继电器组230的输出端与网卡电口组240电连接,网卡电口组包括多个网卡电口。
74.在此实施例中,pciex8金手指110接入pciex8插槽中,实现pciex8网卡与服务器之间的连通,保障服务器信息得以向单片机120中传输。其中,单片机120通过控制驱动器从而实现控制继电器的目的。当服务器状态异常时,关于服务器异常的信号由pciex8金手指110引入pciex8网卡,通过单片机120执行从服务器处获得的服务器状态及服务器控制信息,其中单片机120的型号为gd32f303-cct6。需要说明的是,继电器组230中所采用的继电器均为带锁存功能的继电器,型号不限于g6ju-2p-y dc4.5,可能达到所需功能即可。具体包括两种状态,第一种为千兆网卡与外网直通,第二种为外网与外网相通,当服务器异常时,单片机120通过驱动器控制带锁存的继电器,实现网卡bypass功能,此时的网络信息不经过网卡,防止因服务器损坏出现问题。在保障网卡bypass功能的同时,使网卡具有通用性。
75.在发明一具体实施例中,网卡芯片组220包括第一网卡芯片221和第二网卡芯片222;第一网卡芯片221和第二网卡芯片222均为千兆网卡芯片。
76.在发明一具体实施例中,继电器组230包括第一继电器组231、第二继电器组232、第三继电器组233和第四继电器组234;第一继电器组231和第二继电器组232的输入端与第一网卡芯片221的输出端电连接;第三继电器组233和第四继电器组234的输入端与第二网卡芯片222的输出端电连接;第一继电器组231、第二继电器组232、第三继电器组233和第四继电器组234各包括八个继电器。
77.在发明一具体实施例中,驱动器组130包括第一驱动器131、第二驱动器132、第三驱动器133和第四驱动器134;第一驱动器131与第一继电器组231电连接,第二驱动器132与第二继电器组232电连接,第三驱动器133与第三继电器组233电连接,第四驱动器133与第四继电器组234电连接。
78.在此实施例中,采用的驱动器的型号为sn74lvc2g126dcur,需要说明的是,带锁存功能的继电器只有当驱动器有效时,自身状态才会改变,才能够控制网络与服务器的连通。
79.在发明一具体实施例中,还包括第一mos管q10、第二mos管q7、第三mos管q8、第四mos管q9、第一电阻r169和第二电阻r172;第一驱动器131的第六管脚电连接第一mos管q10的g端,第一mos管q10的d端与第二mos管q7的g端电连接,第二mos管q7的d端连接第一电阻r169一端,第一电阻r169另一端分别与第一继电器组231中的多个继电器第一管脚电连接;第一驱动器131的第三管脚与第三mos管q7的g端电连接,第三mos管q7的d端与第四mos管q9的g端电连接,第四mos管q9的d端连接第二电阻r172一端,第二电阻r172另一端分别与第一继电器组231中的多个继电器的第八管脚电连接。
80.在此实施例中,通过继电器第一引脚和第八引脚的电平高低不同,确定p5v_
bypass_a_en及p5v_bypass_a_dis的电平高低。此处,需要说明的是,当p5v_bypass_a_en的电平为high(高),也即继电器的第八管脚pin8的电平为high(高)时,p5v_bypass_a_dis的电平为low(低),也即继电器的第一管脚pin1的电平为low(低),此时服务器状态异常;当p5v_bypass_a_en的电平为low(低),也即继电器的第八管脚pin8的电平为low(低)时,p5v_bypass_a_dis的电平为high(高),也即继电器的第一管脚pin1的电平为高(high),此时服务器状态正常。
81.需要说明的是,在各继电器第一引脚和第八引脚的电平高低不同时,还包括在继电器第八引脚为高电平,第一引脚为低电平时,继电器的第三引脚和第二引脚连接,第六引脚和第七引脚连接,实现bypass功能的开;在继电器第八引脚为低电平,第一引脚为高电平时,继电器的第三引脚和第四引脚连接,第六引脚和第五引脚连接,实现bypass功能的关。
82.进一步的,网卡主板上集成的网卡芯片通过各继电器与外网连通,具体由网卡上的smbus信号控制单片机,单片机120控制继电器切换实现,故当服务器状态异常,需要启动网卡bypass功能时,单片机120执行所检测的信号控制继电器第一管脚和第八管脚电平高低改变,服务器异常时的继电器第八引脚为高电平,第一引脚为低电平,此时继电器的第三引脚和第二引脚连接,第六引脚和第七引脚连接,网卡bypass功能得以实现。
83.在发明一具体实施例中,网卡电口组240包括多个网卡电口241,每四个继电器连接一个网卡电口241。
84.在此实施例中,采用多个千兆电口连接继电器的方式,在服务器故障时,直接实现外网与外网物理上的导通;其中,每四个带锁存功能的继电器连接一个千兆电口rj45。此处,需要说明的是,采用的千兆电口型号为jdka4t826-g/d1,可在服务器异常时,直接物理上导通外网与外网,控制网络信息不经过网卡,防止因为服务器损坏而产生问题。
85.以上已经描述了本技术的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1