1.本发明涉及通信网络领域技术领域,尤其涉及一种智能网络协作装置及方法。
背景技术:2.随着互联网的发展,网络设备不断出现,但网络设备在硬件性能(如存储,计算能力等)方面参差不齐,随着深度学习等模型规模的不断扩大,数据规模和计算速度等方面的要求都在高速增长,现有网络设备在支撑智能方面存在明显的弊端。
3.深度学习等智能技术的准确性高度依赖数据规模,对计算能力的要求极高,虽然随着芯片技术的不断进步,云计算的供给能力越来越完善,但是对于一些高实时性的人工智能任务,依然需要网络设备本身拥有足够的算力才能训练和执行复杂的算法模型。
4.基于以上背景,需要一种的网络设备,在保证基本转发能力的前提下,同时能够实时完成对网络数据包的智能协作处理。
技术实现要素:5.本发明旨在至少在一定程度上解决相关技术中的技术问题之一。
6.为此,本发明的目的在于提出一种智能网络协作装置,在传统可编程网络的基础上增加智能协作模块和gpu模块,同时通过cpu模块统一调度和管理,cpu模块与可编程交换模块、智能协作模块和gpu模块之间均通过高速pcie总线互联,通过该总线同时实现对设备的管理和设备间数据的收发。在保证可编程交换能力的前提下,使可编程交换设备同时具备了存储,学习推理,计算等能力。
7.本发明的另一个目的在于提出一种智能网络协作方法。
8.为达上述目的,本发明一方面提出了一种智能网络协作装置,包括:
9.可编程交换模块,用于通过网络侧接收第一数据包,对所述第一数据包进行识别和转发,同时按照所述可编程交换模块的第一规则解析所述第一数据包得到第二数据包,并将所述第二数据包转发给智能协作模块;
10.所述智能协作模块,用于对所述第二数据包进行学习推理,根据学习推理的结果确定第二规则,并将所述第二规则推送给所述可编程交换模块,同时所述可编程交换模块通过网口将所述第二数据包发送给gpu服务器;
11.所述gpu服务器,用于对所述第二数据包进行深度学习计算得到计算结果,并将所述计算结果返回所述可编程交换模块;
12.所述可编程交换模块接收所述gpu服务器的计算结果和所述智能协作模块返回的第二规则,以及接收cpu模块的第三规则,并将所述第三规则与所述第一规则合并为第四规则,以利用所述可编程交换模块根据所述第四规则完成数据包的智能协作及转发。
13.另外,根据本发明上述实施例的智能网络协作装置还可以具有以下附加的技术特征:
14.进一步地,在本发明的一个实施例中,所述cpu模块,还用于对所述可编程交换模
块、所述智能协作模块和所述gpu服务器进行管理,同时修改和制定所述第三规则。
15.进一步地,在本发明的一个实施例中,所述智能协作模块,包括:数据包交换功能模块、智能学习推理模块、管理侧数据接口和交换侧数据接口;其中,所述数据包交换功能模块,用于接收所述可编程交换模块发送的第二数据包;所述智能学习推理模块,用于所述对所述第二数据包进行学习推理,根据学习推理的结果确定第二规则;所述管理侧数据接口和交换侧数据接口,分别用于所述第二数据包和所述第二规则的接收和转发。
16.进一步地,在本发明的一个实施例中,所述可编程交换模块,还包括:存储模块,所述存储模块,用于数据包的缓存和预设规模表项的存储。
17.进一步地,在本发明的一个实施例中,所述可编程转发模块,还用于对正常数据包进行识别,将所述正常数据包经过所述可编程转发模块进行流水线转发。
18.进一步地,在本发明的一个实施例中,所述可编程转发模块,还用于将恶意流量数据包转发给所述智能协作模块,所述智能协作模块,用于对所述恶意流量数据包进行过滤,同时进行学习和推理确定所述第二规则。
19.进一步地,在本发明的一个实施例中,所述装置,还包括:网络训练模块,所述网络训练模块,用于接收所述深度学习计算得到的计算结果,并进行网络模型训练,以指导所述可编程转发模块进行数据转发。
20.进一步地,在本发明的一个实施例中,所述装置,还包括:端口,用于通过所述端口将所述可编程转发模块转发的数据包发送给用户。
21.本发明实施例的智能网络协作装置,通过在传统可编程交换机的基础上集成了智能协作模块和gpu模块,实现了存储计算转发一体化,能够实现对网络数据包的实时逐包智能化处理,极大的提升了网络的智能协作能力和智能运维能力。
22.为达到上述目的,本发明另一方面提出了一种智能网络协作方法,包括:
23.通过网络侧接收第一数据包,对所述第一数据包进行识别和转发,同时按照可编程交换模块的第一规则解析所述第一数据包得到第二数据包,并将所述第二数据包转发给智能协作模块;
24.对所述第二数据包进行学习推理,根据学习推理的结果确定第二规则,并将所述第二规则推送给所述可编程交换模块,同时所述可编程交换模块通过网口将所述第二数据包发送给gpu服务器;
25.对所述第二数据包进行深度学习计算得到计算结果,并将所述计算结果返回所述可编程交换模块;
26.所述可编程交换模块接收所述gpu服务器的计算结果和所述智能协作模块返回的第二规则,以及接收cpu模块的第三规则,并将所述第三规则与所述第一规则合并为第四规则,以利用所述可编程交换模块根据所述第四规则完成数据包的智能协作及转发。
27.本发明实施例的智能网络协作方法,通过在传统可编程交换机的基础上集成了智能协作模块和gpu模块,实现了存储计算转发一体化,能够实现对网络数据包的实时逐包智能化处理,极大的提升了网络的智能协作能力和智能运维能力。
28.本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
29.本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
30.图1为根据本发明实施例的智能网络协作装置的结构示意图;
31.图2为根据本发明实施例的智能网络协同装置的系统框图;
32.图3为根据本发明实施例的智能协作模块的功能示意图;
33.图4为根据本发明实施例的智能协作模块的数据包处理流程示意图;
34.图5为根据本发明实施例的gpu服务器数据包处理流程示意图;
35.图6为根据本发明实施例的智能网络协作装置应用场景示意图;
36.图7为根据本发明实施例的智能网络协作方法的流程图;
37.图8为根据本发明实施例的网络数据处理流程图。
具体实施方式
38.需要说明的是,在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
39.为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
40.下面参照附图描述根据本发明实施例提出的智能网络协作装置及方法。
41.图1是本发明实施例的智能网络协作装置的结构示意图。
42.如图1所示,该装置包括可编程交换模块100、cpu模块200、智能协作模块300和gpu服务器400:
43.可编程交换模块100,用于通过网络侧接收第一数据包,对第一数据包进行识别和转发,同时按照可编程交换模块100的第一规则解析第一数据包得到第二数据包,并将第二数据包转发给智能协作模块300;
44.智能协作模块300,用于对第二数据包进行学习推理,根据学习推理的结果确定第二规则,并将第二规则推送给可编程交换模块100,同时可编程交换模块100通过网口将第二数据包发送给gpu服务器400;
45.gpu服务器400,用于对第二数据包进行深度学习计算得到计算结果,并将计算结果返回可编程交换模块100;
46.可编程交换模块100接收gpu服务器的计算结果和智能协作模块300返回的第二规则,以及接收cpu模块200的第三规则,并将第三规则与第一规则合并为第四规则,以利用可编程交换模块100根据第四规则完成数据包的智能协作及转发。
47.作为一种示例,cpu模块200,还用于实现对可编程交换模块100、智能协作模块300、gpu服务器400的管理,同时cpu模块200可修改和制定数据包识别和转发规则,即是第三规则。
48.进一步的,图2为根据本发明实施例的智能网络协同装置系统框图,如图2所示:
49.可编程交换模块100通过网络侧接收数据包,可编程交换模块可将cpu模块200制定的第三规则合并为第一规则,对数据包进行智能识别和智能转发;
50.cpu模块200可与可编程交换模块通信,修改和制定数据包识别和转发规则,即是第三规则;
51.智能协作模块300把接收到的数据包包头放内存里面,同时对数据包进行一些拆包的工作,提取其中的有用信息;
52.可编程交换模块100通过网口将数据包发送给gpu服务器400,gpu服务器400对数据包进行并行计算;
53.gpu服务器400对数据包进行深度学习的运算,得到确定的结果,并将结果送回可编程交换模块100。
54.进一步的,图3为根据本发明实施例的智能协作模块功能图,如图3所示:
55.智能协作模块300,包括:数据包交换功能模块500、智能学习推理模块600、管理侧数据接口700和交换侧数据接口800;其中,
56.数据包交换功能模块500,用于接收可编程交换模块发送的第二数据包;
57.智能学习推理模块600,用于对第二数据包进行学习推理,根据学习推理的结果确定第二规则;
58.管理侧数据接口700和交换侧数据接口800,分别用于第二数据包和第二规则的接收和转发。
59.进一步的,智能协作模块300,还包括:存储模块900,可用于数据包的缓存和大规模表项的存储。
60.进一步的,图4为根据本发明实施例的智能协作模块300数据包处理流程,如图4所示:
61.数据进入智能硬件设备后,可编程交换模块100通过解析器解析数据包,对数据包进行识别,正常数据包经过可编程交换模块100流水线转发,恶意流量数据包转发给智能协作模块300,智能协作模块300对恶意流量数据进行过滤,同时学习和推理形成一定的规则,智能协作模块300的存储模块900可用于数据包的缓存和大规模表项的存储。
62.进一步的,图5为根据本发明实施例的gpu服务器400的数据包处理流程示意图,如图5所示:
63.可编程交换模块100转发数据给gpu服务器400,gpu服务器400完成对数据和参数的并行计算,用于智能网络数据模型的训练,网络训练模块训练的模型可用于指导可编程交换模块100转发数据。
64.进一步的,图6为根据本发明实施例的智能网络协作装置10的应用场景示意图,如图6所示:
65.图6中用户1或者服务器数据通过可编程交换机接入(也可以是传统交换机),智能网络协作装置10通过端口1接收可编程交换机的数据。
66.进一步地,可编程交换模块100可以接收数据包并完成后续流水线处理,并通过端口2或者端口3转发数据给用户。
67.根据本发明实施例的智能网络协作装置,通过在传统可编程交换机的基础上集成了智能协作模块和gpu模块,实现了存储计算转发一体化,能够实现对网络数据包的实时逐
包智能化处理,极大的提升了网络的智能协作能力和智能运维能力。
68.为了实现上述实施例,如图7所示,本实施例中还提供了智能网络协作方法,该方法包括:
69.s1,通过网络侧接收第一数据包,对第一数据包进行识别和转发,同时按照可编程交换模块的第一规则解析第一数据包得到第二数据包,并将第二数据包转发给智能协作模块;
70.s2,对第二数据包进行学习推理,根据学习推理的结果确定第二规则,并将第二规则推送给可编程交换模块,同时可编程交换模块通过网口将第二数据包发送给gpu服务器;
71.s3,对第二数据包进行深度学习计算得到计算结果,并将计算结果返回可编程交换模块;
72.s4,利用可编程交换模块接收gpu服务器的计算结果和智能协作模块返回的第二规则,以及接收cpu模块的第三规则,并将第三规则与第一规则合并为第四规则,以利用可编程交换模块根据第四规则完成数据包的智能协作及转发。
73.进一步地,该方法,还包括:对可编程交换模块、智能协作模块和gpu服务器进行管理,同时修改和制定第三规则。
74.作为一种示例,图8为根据本发明实施例的网络数据处理流程图,如图8所示:
75.可编程交换模块通过网络侧接收数据包,可编程交换模块可合并cpu模块制定的转发规则对数据包进行智能识别和智能转发。
76.可编程交换模块通过内部的自定义程序解析数据包包头,通过设置一定的规则,把特定的数据包通过专用数据通道转发给智能协作模块。
77.智能协作模块把接收到的数据包包头放内存里面,同时对数据包进行一些拆包的工作,提取其中的有用信息。
78.可编程转发模块通过网口将数据包发送给gpu服务器,gpu服务器对数据包进行并行计算。
79.gpu服务器对数据包进行深度学习的运算,得到确定的结果,并将结果送回可编程转发模块。
80.可编程交换模块接收智能协作模块送回的数据包和自定义程序,根据自定义程序转发数据包,完成数据包的智能协作及转发。
81.根据本发明实施例的智能网络协作方法,通过在传统可编程交换机的基础上集成了智能协作模块和gpu模块,实现了存储计算转发一体化,能够实现对网络数据包的实时逐包智能化处理,极大的提升了网络的智能协作能力和智能运维能力。
82.需要说明的是,前述对智能网络协作装置实施例的解释说明也适用于该实施例的智能网络协作方法,此处不再赘述。
83.流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
84.在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用
于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
85.应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。
86.本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
87.此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
88.上述提到的存储介质可以是只读存储器,磁盘或光盘等。
89.在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
90.尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在不脱离本发明的原理和宗旨的情况下在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。