可编程交换机、流量统计方法、防御方法和报文处理方法技术

技术编号:29843033 阅读:18 留言:0更新日期:2021-08-27 14:34
本申请实施例提供了可编程交换机、流量统计方法、防御方法和报文处理方法。该可编程交换机包括可编程交换芯片和采用X86架构的处理器,可编程交换芯片与处理器通信连接,处理器被配置成向可编程交换芯片传输控制信息,控制信息用于控制可编程交换芯片在执行报文转发逻辑之前执行目标操作逻辑;可编程交换芯片被配置成响应于接收到报文,执行目标操作逻辑;在目标操作逻辑执行结束后,执行报文转发逻辑。该可编程交换机可在报文转发功能的基础上融合其他网络设备的功能,减少了数据中心建设过程中作为基础网络设施的网络设备的部署数量,降低了网络基础设施建设成本。

【技术实现步骤摘要】
可编程交换机、流量统计方法、防御方法和报文处理方法
本申请实施例涉及通信
,特别是涉及一种可编程交换机、流量统计方法、防御方法和报文处理方法。
技术介绍
可编程交换机是一种利用可编程交换芯片执行报文转发逻辑的交换机。可编程交换芯片提供了与包处理相关的可编程功能,用户可通过编程灵活地对匹配-动作表(match-actiontable)进行扩展,从而使报文的转发逻辑能够通过编程控制。现有的可编程交换机,其中的可编程交换芯片仅具备执行报文转发逻辑的功能。在接收到报文后,可编程交换芯片立即自动执行报文转发逻辑,从而进行报文转发。然而,在数据中心等网络基础设施的建设过程中,通常还需除交换机以外的其他网络设备来实现更多网络功能,如流量统计、安全防御、负载均衡、网关功能等。这些功能的实现需要部署大量网络设备,因而需要提供一种可以降低网络基础设施建设成本的方案。
技术实现思路
本申请实施例提出了一种可编程交换机、流量统计方法、防御方法和报文处理方法,以在实现报文转发功能的基础上融合其他网络设备的功能,减少了网络设备部署的数量,降低了网络基础设施建设成本。本申请实施例提供了一种可编程交换机,包括:可编程交换芯片和采用X86架构的处理器,可编程交换芯片与处理器通信连接。本申请实施例还提供了一种可编程交换机,包括:处理器,被配置成向所述可编程交换芯片传输流量统计表项;可编程交换芯片,被配置成响应于所述报文与所述流量统计表项匹配,将所述报文作为目标报文,对所述目标报文进行流量统计,生成流量统计结果,并转发所述报文;所述处理器,进一步被配置成从所述可编程交换芯片获取所述流量统计结果。本申请实施例还提供了一种可编程交换机,包括:可编程交换芯片,被配置成响应于接收到报文,截取所述报文中的关键信息,将所述关键信息镜像至处理器;所述处理器,被配置成对所接收到的关键信息进行解析,生成防御表项和所述防御表项对应的防御策略;将所述防御表项和所述防御策略传输至所述可编程交换芯片;所述可编程交换芯片,进一步被配置成将后续接收到的报文作为待测报文,检测所述待测报文与所述防御表项是否匹配;响应于匹配,基于所述防御策略对所述待测报文进行防御;响应于不匹配,转发所述待测报文。本申请实施例还提供了一种可编程交换机,包括:可编程交换芯片,被配置成响应于接收到报文,确定所述报文中的目的IP地址的类别;响应于所述类别为任一目标类别,将所述报文传输至处理器;所述处理器,被配置成将所述目的IP地址作为第一目的IP地址,基于所述第一目的IP地址的类别,确定第二目的IP地址;将所述第一目的IP地址替换为所述第二目的IP地址,得到目标报文;将所述目标报文传输至所述可编程交换芯片;所述可编程交换芯片,进一步被配置成向所述第二目的IP地址转发所述目标报文。本申请实施例还提供了一种流量统计方法,应用于可编程交换机中的可编程交换芯片,所述可编程交换机中还包括处理器,该方法包括:接收所述处理器传输的流量统计表项;响应于接收到报文,检测所述报文与所述流量统计表项是否匹配;响应于所述报文与所述流量统计表项匹配,将所述报文作为目标报文,对所述目标报文进行流量统计,生成流量统计结果,并转发所述报文;向所述处理器传输所述流量统计结果。本申请实施例还提供了一种安全防御方法,应用于可编程交换机中的可编程交换芯片,所述可编程交换机中还包括处理器,该方法包括:响应于接收到报文,截取所述报文中的关键信息,将所述关键信息镜像至处理器;接收所述处理器传输的防御表项和防御策略,所述防御表项和所述防御策略由所述处理器对所述关键信息解析后生成;将后续接收到的报文作为待测报文,检测所述待测报文与所述防御表项是否匹配;响应于匹配,基于所述防御策略对所述待测报文进行防御。本申请实施例还提供了一种报文处理方法,应用于可编程交换机中的处理器,所述可编程交换机中还包括可编程交换芯片,该方法包括:接收所述可编程交换芯片传输的报文,其中,所述报文中的目的IP地址的类别为任一目标类别;将所述报文中的目的IP地址作为第一目的IP地址,基于所述第一目的IP地址的类别,确定第二目的IP地址,;将所述第一目的IP地址替换为所述第二目的IP地址,得到目标报文;将所述目标报文传输至所述可编程交换芯片,以使所述可编程交换芯片向所述第二目的IP地址转发所述目标报文。本申请实施例还提供了一种流量统计装置,应用于可编程交换机中的可编程交换芯片,所述可编程交换机中还包括处理器,所述装置包括:接收单元,被配置成接收所述处理器传输的流量统计表项;检测单元,被配置成响应于接收到报文,检测所述报文与所述流量统计表项是否匹配;统计单元,被配置成响应于所述报文与所述流量统计表项匹配,将所述报文作为目标报文,对所述目标报文进行流量统计,生成流量统计结果,并转发所述报文;传输单元,被配置成向所述处理器传输所述流量统计结果。本申请实施例还提供了一种安全防御装置,应用于可编程交换机中的可编程交换芯片,所述可编程交换机中还包括处理器,所述装置包括:镜像单元,被配置成响应于接收到报文,截取所述报文中的关键信息,将所述关键信息镜像至处理器;接收单元,被配置成接收所述处理器传输的防御表项和防御策略,所述防御表项和所述防御策略由所述处理器对所述关键信息解析后生成;匹配单元,被配置成将后续接收到的报文作为待测报文,检测所述待测报文与所述防御表项是否匹配;防御单元,被配置成响应于匹配,基于所述防御策略对所述待测报文进行防御。本申请实施例还提供了一种报文处理装置,应用于可编程交换机中的处理器,所述可编程交换机中还包括可编程交换芯片,所述装置包括:接收单元,被配置成接收所述可编程交换芯片传输的报文,其中,所述报文中的目的IP地址的类别为任一目标类别;确定单元,被配置成将所述报文中的目的IP地址作为第一目的IP地址,基于所述第一目的IP地址的类别,确定第二目的IP地址,;替换单元,被配置成将所述第一目的IP地址替换为所述第二目的IP地址,得到目标报文;传输单元,被配置成将所述目标报文传输至所述可编程交换芯片,以使所述可编程交换芯片向所述第二目的IP地址转发所述目标报文本申请实施例还提供了一个或多个机器可读介质,其上存储有可执行代码,当所述可执行代码被执行时,使得处理器执行如本申请实施例中一个或多个所述的流量统计方法、安全防御方法或报文处理方法。与现有技术相比,本申请实施例包括以下优点:在本申请实施例中,通过将可编程芯片和采用X86架构的处理器融合在一台设备上,能够使可编程交换机可在报文转发功能的基础上融合其他网络设备的功能,减少了数据中心建设过程中作为基础网络设施的网络设备的部署数量,降低了网络基础设施建设成本。附图说明通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:图1A是本申请实施例的一种可编程交换机的示例性架构图;图1B是本申请实施例的一种可编程交换机的处理过程示意图;图2A是本申请实施例的一本文档来自技高网...

【技术保护点】
1.一种可编程交换机,其特征在于,所述可编程交换机包括可编程交换芯片和采用X86架构的处理器,所述可编程交换芯片与所述处理器通信连接。/n

【技术特征摘要】
1.一种可编程交换机,其特征在于,所述可编程交换机包括可编程交换芯片和采用X86架构的处理器,所述可编程交换芯片与所述处理器通信连接。


2.根据权利要求1所述的可编程交换机,其特征在于,
所述处理器,被配置成向可编程交换芯片传输控制信息,其中,所述控制信息用于控制所述可编程交换芯片在执行报文转发逻辑之前执行目标操作逻辑;
所述可编程交换芯片,被配置成响应于接收到报文,执行所述目标操作逻辑;在所述目标操作逻辑执行结束后,执行所述报文转发逻辑。


3.根据权利要求2所述的可编程交换机,其特征在于,所述控制信息包括流量统计表项,所述目标操作逻辑包括流量统计操作逻辑;以及
所述可编程交换芯片,进一步被配置成通过如下步骤执行所述流量统计操作逻辑:
检测所述报文与所述流量统计表项是否匹配;
响应于所述报文与所述流量统计表项匹配,将所述报文作为目标报文,对所述目标报文进行流量统计,生成流量统计结果。


4.根据权利要求3所述的可编程交换机,其特征在于,所述流量统计表项中包括以下至少一项字段:互联网协议IP地址、传输控制协议、用户数据报协议、控制报文协议、同步序列编号、确认字符、端口号;以及
所述可编程交换芯片,进一步被配置成通过如下步骤检测所述报文与所述流量统计表项是否匹配:
响应于接收到报文,读取所述报文的报文头;
检测所述报文头中是否包含所述流量统计表项中的字段;
响应于所述报文头中包含所述流量统计表项中的字段,确定所述报文与所述流量统计表项匹配。


5.根据权利要求3所述的可编程交换机,其特征在于,所述可编程交换芯片,进一步被配置成通过如下步骤生成流量统计结果:
统计目标报文总数和目标报文的总字节数;
生成包含所述总数和所述总字节数的流量统计结果。


6.根据权利要求5所述的可编程交换机,其特征在于,所述处理器,进一步被配置成:
在第一时间从所述可编程交换芯片获取第一流量统计结果;
在第二时间从所述可编程交换芯片获取第二流量统计结果;
确定所述第二时间与所述第一时间的时间差;
确定所述第二流量统计结果中的目标报文总数与所述第一流量统计结果中的目标报文总数的第一差值,并确定所述第二流量统计结果中的总字节数与所述第一流量统计结果中的总字节数的第二差值;
将所述第一差值与所述时间差的比值,确定为包转发率;
将所述第二差值与所述时间差的比值,确定为比特率;
生成包含所述包转发率和所述比特率的目标流量统计结果。


7.根据权利要求6所述的可编程交换机,其特征在于,所述处理器,进一步被配置成:
将所述目标流量统计结果进行封装,得到封装后的报文,所述封装后的报文中包括目标服务器的IP地址;
将所述封装后的报文传输至所述可编程交换芯片;以及
所述可编程交换芯片,进一步被配置成向所述目标服务器的IP地址转发所述封装后的报文。


8.根据权利要求2所述的可编程交换机,其特征在于,所述控制信息包括防御表项和防御策略,所述目标操作逻辑包括对流量攻击的防御操作逻辑;以及
所述可编程交换芯片,进一步被配置成通过如下步骤执行所述防御操作逻辑:
将所述报文作为待测报文,检测所述待测报文与所述防御表项是否匹配;
响应于所述报文与所述防御表项匹配,基于所述防御策略对所述待测报文进行防御。


9.根据权利要求8所述的可编程交换机,其特征在于,所述可编程交换芯片,进一步被配置成通过如下步骤对所述待测报文进行防御:
检测单位时长内所述待测报文的相同来源报文的转发数量,其中,所述相同来源报文为与所述待测报文包含相同的源IP的报文;
响应于所述转发数量大于或等于第一预设阈值,丢弃所述待测报文。


10.根据权利要求8所述的可编程交换机,其特征在于,所述可编程交换芯片,进一步被配置成通过如下步骤对所述待测报文进行防御:
获取所述待测报文的第一接收时间;
获取所述待测报文的目标相同来源报文的第二接收时间,其中,所述目标相同来源报文为接收时间最晚的相同来源报文,所述相同来源报文为与所述待测报文包含相同的源IP的报文;
确定所述第一接收时间与所述第二接收时间的时间差;
响应于所述时间差小于第二预设阈值,丢弃所述待测报文。


11.根据权利要求8所述的可编程交换机,其特征在于,
所述可编程交换芯片,进一步被配置成在接收到所述控制信息之前,截取所接收到的报文中的关键信息,将所述关键信息镜像至所述处理器;以及
所述处理器,进一步被配置成对所接收到的关键信息进行解析,生成防御表项和所述防御表项对应的防御策略。


12.根据权利要求11所述的可编程交换机,其特征在于,所述关键信息包括源IP地址;以及
所述处理器,进一步被配置成通过如下步骤生成防御表项和所述防御表项对应的防御策略:
对目标时长内所接收到的关键信息进行统计,确定所述目标时长内的相同关键信息的数量;
将数量大于第三预设阈值的相同关键信息作为攻击报文中的关键信息,从所述攻击报文中的关键信息中提取至少一项字段,生成防御表项,并创建所述防御表项对应的防御策略。


13.根据权利要求2所述的可编程交换机,其特征在于,所述目标操作逻辑包括IP地址类别检测逻辑;以及
所述可编程交换芯片,进一步被配置成通过如下步骤执行所述IP地址类别检测逻辑:
从所述报文的报文头中读取目的IP地址;
检测所述目的IP地址的类别;
响应于所述类别为任一目标类别,将所述报文传输至处理器,并将所述报文替换为所述处理器返回的目标报文,其中,所述目标报文由所述处理器对所述报文中的目的IP地址进行修改后所生成。


14.根据权利要求13所述的可编程交换机,其特征在于,所述目标类别包括虚拟服务器集群的虚拟IP地址类;以及
所述处理器,进一步被配置成通过如下步骤生成所述目标报文:
将所述目的IP地址作为第一目的IP地址,响应于所述第一目的IP地址的类别为所述虚拟服务器集群的虚拟IP地址类,通过负载均衡算法选取真实服务器;
将所述真实服务器的IP地址作为第二目的IP地址,并将所述报文的第一目的IP地址替换为所述第二目的IP地址,生成目标报文。


15.根据权利要求13所述的可编程交换机,其特征在于,所述目标类别包括以下至少一项:云服务器的公网IP地址类、边缘云IP地址类、云数据中心IP地址类;以及
所述处理器,进一步被配置成通过如下步骤生成所述目标报文:
将所述目的IP地址作为第一目的IP地址,响应于所述第一目的IP地址的类别为所述云服务器的公网IP地址类、所述边缘云IP地址类、所述云数据中心IP地址类中的任一类,确定承载所述第一目的IP地址的物理服务器的IP地址;
将所述物理服务器的IP地址作为第二目的IP地址,并将所述报文的第一目的IP地址替换为所述第二目的IP地址,生成目标报文。


16.一种可编程交换机,其特征在于,包括:
处理器,被配置成向所述可编程交换芯片传输流量统计表项;
可编程交换芯片,被配置成响应于所述报文与所述流量统计表项匹配,将所述报文作为目标报文,对所述目标报文进行流量统计,生成流量统计结果,并转发所述报文;
所述处理器,进一步被配置成从所述可编程交换芯片获取所述流量统计结果。


17.一种可编程交换机,其特征在于,包括:
可编程交换芯片,被配置成响应于接收到报文,截取所述报文中的关键信息,将所述关键信息镜像至处理器;
所述处理器,被配置成对所接收到的关键信息进行解析,生成防御表项和所述防御表项对应的防御策略;将所述防御表项和所述防御策略传输至所述可编程交换芯片;
所述可编程交换芯片,进一步被配置成将后续接收到的报文作为待测报文,检测所述待测报文与所述防御表项是否匹配;响应于匹配,基于所述防御策略对所述待测报文进行防御;响应于不匹配,转发所述待测报文。


18.一种可编程...

【专利技术属性】
技术研发人员:汤明
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛;KY

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1