一种检测报文的方法和装置
技术领域
本发明涉及互联网通信领域,特别涉及一种检测报文的方法和装置。
背景技术
企业网是在一个企业内部和一个企业与其相关联的企业之间建立的,为企业的经营活动提供服务的专用网或虚拟专用网,企业网的出现让许多企业将分开的部门或工作组网络与企业内网络互连,使得企业内部的数据访问和信息交流更加便捷。
随着企业化信息时代的到来,越来越多的企业拥有自己的企业网,同时企业网的信息安全问题也越来越被重视,为了防止企业网遭受安全威胁,要对在企业网中传输的报文进行安全检测,以保证企业网的信息安全。在目前大多数大型的企业网中,采用的组网技术大多是BGPMPLSIPVPN(bordergatewayprotocolmulti-protocollabelswitchingInternetProtocolVirtualPrivateNetwork,边界网关协议多协议标签交换网络之间互连的协议虚拟专用网络)的方式,当企业网采用BGPMPLSIPVPN的组网方式时,无法对报文进行安全检测。
发明内容
为了实现BGPMPLSIPVPN场景下对MPLS报文的安全检测,本发明提供了一种检测报文的方法和装置。所述技术方案如下:
第一方面,一种检测报文的方法,所述方法包括:
接收路由器发送的报文,所述报文携带私网标签;
根据所述私网标签和/或所述报文携带的五元组确定出需要对所述报文进行安全检测,从所述报文中去除所述私网标签得到网络之间互连的协议IP报文,所述五元组包括源地址、源端口号、目的地址、目的端口号和协议类型;
将所述IP报文发送给安全检测设备,以使所述安全检测设备对所述IP报文进行安全检测。
结合第一方面,在上述第一方面的第一种可能的实现方式中,所述报文还携带公网标签,所述公网标签嵌套于所述私网标签的外部;
所述根据所述私网标签和/或所述报文携带的五元组确定出需要对所述报文进行安全检测,从所述报文中去除所述私网标签得到网络之间互连的协议IP报文之前,还包括:
根据所述公网标签确定出需要去除所述公网标签,从所述报文中去除所述公网标签,呈现出所述报文携带的所述私网标签。
结合第一方面或第一方面的第一种可能的实现方式,在上述第一方面的第二种可能的实现方式中,所述根据所述公网标签确定出需要去除所述公网标签,从所述报文中去除所述公网标签,呈现出所述报文携带的所述私网标签,包括:
根据所述公网标签从标签转发表中查找出对应的操作指示信息,所述标签转发表用于存储标签、操作指示信息和VPN实例的序号的对应关系;
如果所述操作指示信息用于指示去除所述报文携带的公网标签,则从所述报文中去除所述公网标签,呈现出所述报文携带的所述私网标签。
结合第一方面,在上述第一方面的第三种可能的实现方式中,所述根据所述私网标签确定出需要对所述报文进行安全检测,包括:
根据所述私网标签,从标签转发表中查找出所述报文属于的虚拟网络VPN实例的序号,所述标签转发表用于存储标签、操作指示信息和VPN实例的序号的对应关系;
查找已存储的策略路由表中是否存在所述报文属于的VPN实例的序号,所述策略路由表用于存储需要进行安全检测的VPN实例的序号;
如果存在,则确定出需要对所述报文进行安全检测。
结合第一方面,在上述第一方面的第四种可能的实现方式中,所述根据所述报文携带的五元组确定出需要对所述报文进行安全检测,包括
查找已存储的策略路由表中是否存在所述报文携带的五元组,所述策略路由表用于存储需要进行安全检测的报文携带的五元组;
如果存在,则确定出需要对所述报文进行安全检测。
结合第一方面,在上述第一方面的第五种可能的实现方式中,所述根据所述私网标签和/或所述报文携带的五元组确定出需要对所述报文进行安全检测,还包括:
根据所述私网标签,从标签转发表中查找出所述报文属于的虚拟网络VPN实例的序号,所述标签转发表用于存储标签、操作指示信息和VPN实例的序号的对应关系;
查找已存储的策略路由表中是否存在所述报文携带的五元组和所述报文属于的VPN实例的序号,所述策略路由表用于存储需要进行安全检测的VPN实例包括的报文携带的五元组和所述VPN实例的序号;
如果所述策略路由表中存在所述报文携带的五元组和所述报文属于的VPN实例的序号,则确定出需要对所述报文进行安全检测。
结合第一方面,在上述第一方面的第六种可能的实现方式中,将所述IP报文发送给安全检测设备之后,所述方法还包括:
接收所述安全检测设备发送的经过安全检测的IP报文,将所述经过安全检测的IP报文发送给用户终端。
结合第一方面,在上述第一方面的第七种可能的实现方式中,
如果确定出所述IP报文不需要进行安全检测,根据所述IP报文携带的五元组,将所述IP报文发送给用户终端。
第二方面,一种检测报文的装置,所述装置包括:
第一接收模块,用于接收路由器发送的报文,所述报文携带私网标签;
第一确定模块,用于根据所述私网标签和/或所述报文携带的五元组确定出需要对所述报文进行安全检测,从所述报文中去除所述私网标签得到网络之间互连的协议IP报文,所述五元组包括源地址、源端口号、目的地址、目的端口号和协议类型;
第一发送模块,用于将所述IP报文发送给安全检测设备,以使所述安全检测设备对所述IP报文进行安全检测。
结合第二方面,在上述第二方面的第一种可能的实现方式中,所述报文还携带公网标签,所述公网标签嵌套于所述私网标签的外部;
所述装置还包括:
第二确定模块,用于所述根据所述私网标签和/或所述报文携带的五元组确定出需要对所述报文进行安全检测,从所述报文中去除所述私网标签得到网络之间互连的协议IP报文之前,根据所述公网标签确定出需要去除所述公网标签,从所述报文中去除所述公网标签,呈现出所述报文携带的所述私网标签。
结合第二方面,在上述第二方面的第二种可能的实现方式中,所述第二确定模块包括:
第一查找单元,用于根据所述公网标签从标签转发表中查找出对应的操作指示信息,所述标签转发表用于存储标签、操作指示信息和VPN实例的序号的对应关系;
第一确定单元,用于如果所述操作指示信息用于指示去除所述报文携带的公网标签,则从所述报文中去除所述公网标签,呈现出所述报文携带的所述私网标签。
结合第二方面,在上述第二方面的第三种可能的实现方式中,所述第一确定模块,包括:
第二查找单元,用于根据所述私网标签,从标签转发表中查找出所述报文属于的虚拟网络VPN实例的序号,所述标签转发表用于存储标签、操作指示信息和VPN实例的序号的对应关系;
第三查找单元,用于查找已存储的策略路由表中是否存在所述报文属于的VPN实例的序号,所述策略路由表用于存储需要进行安全检测的VPN实例的序号;
第二确定单元,用于如果存在,则确定出需要对所述报文进行安全检测。
结合第二方面,在上述第二方面的第四种可能的实现方式中,所述第一确定模块,包括
第四查找单元,用于查找已存储的策略路由表中是否存在所述报文携带的五元组,所述策略路由表用于存储需要进行安全检测的报文携带的五元组;
第三确定单元,用于如果存在,则确定出需要对所述报文进行安全检测。
结合第二方面,在上述第二方面的第五种可能的实现方式中,所述第一确定模块,还包括:
第五查找单元,用于根据所述私网标签,从标签转发表中查找出所述报文属于的虚拟网络VPN实例的序号,所述标签转发表用于存储标签、操作指示信息和VPN实例的序号的对应关系;
第六查找单元,用于查找已存储的策略路由表中是否存在所述报文携带的五元组和所述报文属于的VPN实例的序号,所述策略路由表用于存储需要进行安全检测的VPN实例包括的报文携带的五元组和所述VPN实例的序号;
第四确定单元,用于如果所述策略路由表中存在所述报文携带的五元组和所述报文属于的VPN实例的序号,则确定出需要对所述报文进行安全检测。
结合第二方面,在上述第二方面的第六种可能的实现方式中,所述装置还包括:
第二发送模块,用于接收所述安全检测设备发送的经过安全检测的IP报文,将所述经过安全检测的IP报文发送给用户终端。
结合第二方面,在上述第二方面的第七种可能的实现方式中,所述装置还包括:
第三发送模块,用于如果确定出所述IP报文不需要进行安全检测,根据所述IP报文携带的五元组,将所述IP报文发送给用户终端。
第三方面,一种检测报文的装置,所述装置包括第一存储器和第一处理器,用于执行上述第一方面包括的任一项所述的一种检测报文的方法。
在本发明实施例中,边缘路由器接收路由器发送的报文,该报文携带私网标签,根据该私网标签和/或该报文携带的五元组确定出需要对该报文进行安全检测,从该报文中去除该私网标签得到IP报文,将该IP报文发送给安全检测设备,以使所述安全检测设备对该IP报文进行安全检测,由于边缘路由器在接收到报文后,从报文中去除了标签,再确定出报文是否需要检测,进而将需要进行检测的报文发送给安全检测设备进行检测,使得采用BGPMPLSIPVPN方式组网的企业网可以对报文进行安全检测。
附图说明
图1是本发明实施例1提供的一种检测报文的方法流程图;
图2是本发明实施例2提供的一种检测报文的方法流程图;
图3是本发明实施例2提供的一种发送报文的过程图;
图4是本发明实施例3提供的一种检测报文的方法流程图;
图5是本发明实施例4提供的一种检测报文的装置结构示意图;
图6是本发明实施例5提供的一种检测报文的装置结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
实施例1
本发明实施例提供了一种检测报文的方法,如图1,该方法包括:
步骤101:接收路由器发送的报文,所述报文携带私网标签;
步骤102:根据所述私网标签和/或所述报文携带的五元组确定出需要对所述报文进行安全检测,从所述报文中去除所述私网标签得到网络之间互连的协议IP报文,所述五元组包括源地址、源端口号、目的地址、目的端口号和协议类型;
步骤103:将所述IP报文发送给安全检测设备,以使所述安全检测设备对所述IP报文进行安全检测。
在本发明实施例中,边缘路由器接收路由器发送的报文,该报文携带私网标签,根据该私网标签和/或该报文携带的五元组确定出需要对该报文进行安全检测,从该报文中去除该私网标签得到IP报文,将该IP报文发送给安全检测设备,以使所述安全检测设备对该IP报文进行安全检测,由于边缘路由器在接收到报文后,从报文中去除了标签,再确定出报文是否需要检测,进而将需要进行检测的报文发送给安全检测设备进行检测,使得采用BGPMPLSIPVPN方式组网的企业网可以对报文进行安全检测。
实施例2
本发明实施例提供了一种检测报文的方法,如图2,该方法包括:
步骤201:第一边缘路由器接收路由器发送的报文,该报文携带私网标签;
具体地,第一边缘路由器接收骨干路由器或边缘路由器发送的报文。
其中,假设,第一用户终端需要发送报文给第二用户终端,首先第一用户终端先将报文发送给MPLS(multi-protocollabelswitching,多协议标签交换)网络中的与其直接相连的第二边缘路由器,第二边缘路由器接收该报文,根据接收该报文的端口确定出该报文属于的VPN(VirtualPrivateNetwork,虚拟专用网络)实例的信息,根据该报文属于的VPN实例的信息和该报文携带的五元组在私网路由表中查找出私网标签和公网标签,将该私网标签和公网标签封装到该报文上,并将该报文发送给下一跳路由器,该下一跳路由器可以为骨干路由器或边缘路由器,其中,该公网标签嵌套于该私网标签的外部。
其中,该报文携带的五元组包括源地址、源端口号、目的地址、目的端口号和协议类型
其中,如果骨干路由器接收该报文,则骨干路由器从该报文中提取最外层的公网标签,根据提取的公网标签,从标签转发表中获取对应的操作指示信息,该标签转发表用于存储标签、操作指示信息和VPN实例的序号的对应关系,如果该操作指示信息为一个标签,将该标签作为公网标签,并将该报文中最外层的公网标签替换为该标签,再将该报文发送给下一跳路由器,其中,该下一跳路由器可以为骨干路由器或边缘路由器,如果该操作指示不是标签且该操作指标信息用于指示去除该公网标签,则该骨干路由器为和第二用户终端直接连接的第一边缘路由器的上一跳路由器,该骨干路由器从该报文中去除公网标签,并把该报文发送给第一边缘路由器。
其中,如果边缘路由器(该边缘路由器为除第一边缘路由器和第二边缘路由器以外其他边缘路由器)接收该报文,该边缘路由器接收骨干路由器发送的该报文或其他边缘路由器发送的该报文,根据该报文携带的公网标签从已存储的标签转发表中查找出公网标签对应的操作指示信息,如果该操作指示信息为一个标签,则将该标签作为公网标签,将该报文的最外层的公网标签替换为该标签,将该报文发送给下一跳路由器;如果该操作指标信息不是标签且该操作指标信息用于指示去除该公网标签,则该边缘路由器为和第二用户终端直接连接的第一边缘路由器的上一跳路由器,该边缘路由器从该报文中去除公网标签,并把该报文发送给第一边缘路由器,第一边缘路由器接收该报文,该报文携带私网标签。
例如,参见图3,第一用户终端CE1需要发送报文给第二用户终端CE2,首先第一用户终端CE1先将报文发送给MPLS网络中的与其直接相连的第二边缘路由器PE2;第二边缘路由器PE2接收该报文,根据接收该报文的端口确定出该报文属于的VPN实例的信息,根据该报文属于的VPN实例的信息和该报文携带的五元组在私网路由表中查找出私网标签B和公网标签B1,并将该私网标签B和公网标签封B1装到该报文上,将该报文发送给下一跳路由器,该下一跳路由器为骨干路由器P。
其中,该公网标签B1嵌套于该私网标签B的外部。
其中,骨干路由器P事先存储有如表1所示的标签转发表,骨干路由器P接收该报文,提取该报文携带的公网标签B1,根据公网标签B1从如表1所示的标签转发表中获取对应的操作指示信息,该操作指示信息为Action,操作指示信息Action用于指示去除该报文携带的公网标签B1,骨干路由器P从该报文中去除该公网标签B1,将该报文发送给下一跳路由器,该下一跳路由器为与第二用户终端CE2直接相连的第一边缘路由器PE1,第一边缘路由器PE1接收该报文,该报文携带私网标签B。
表1
标签 |
操作指示信息 |
VPN实例的序号 |
B1 |
Action |
-- |
...... |
...... |
...... |
步骤202:第一边缘路由器根据该私网标签和/或该报文携带的五元组确定出需要对该报文进行安全检测,从该报文中去除该私网标签得到IP报文,该报文携带的五元组包括源地址、源端口号、目的地址、目的端口号和协议类型;
具体地,根据该私网标签从标签转发表中查找出该报文属于的VPN实例的序号,该标签转发表用于存储标签、操作指示信息和VPN实例的序号的对应关系,查找已存储的策略路由表中是否存在该报文属于的VPN实例的序号,该策略路由表用于存储需要进行安全检测的VPN实例的序号,如果存在,则确定出需要对该报文进行安全检测,从该报文中去除该私网标签得到IP报文;或
根据该报文携带的五元组查找已存储的策略路由表中是否存在该报文携带的五元组,该策略路由表用于存储需要进行安全检测的报文携带的五元组,如果存在,则确定出需要对该报文进行安全检测,从该报文中去除该私网标签得到IP报文;或
根据该私网标签从标签转发表中查找出该报文属于的VPN实例的序号,该标签转发表用于存储标签、操作指示信息和VPN实例的序号的对应关系,查找已存储的策略路由表中是否存在该报文携带的五元组和该报文属于的VPN实例的序号,该策略路由表用于存储需要进行安全检测的VPN实例包括的报文携带的五元组和该VPN实例的序号,如果该策略路由表中存在该报文携带的五元组和该报文属于的VPN实例的序号,则确定出需要对该报文进行安全检测,从该报文中去除该私网标签得到IP报文。
其中,策略路由表是根据网络管理者制定的标准来进行报文转发的机制,网络管理者可以根据实际情况来决定报文转发的路径,网络管理者也可以根据报文携带的五元组包括的源地址、源端口号、目的地址、目的端口号和/或协议类型制定策略路由,还可以根据报文的五元组和/或报文属于的VPN实例制定策略路由。
其中,策略路由可以配置在VPN实例中,也可以配置在全局中。
其中,如果第一边缘路由器确定出该报文不需要进行安全检测,则根据该IP报文携带的五元组将该IP报文发送给用户终端。
例如,参见图3,第一边缘路由器PE1收到的报文携带私网标签B,第一边缘路由器提取私网标签B,根据私网标签B从如表2所示的标签转发表中查找出该报文属于的VPN实例的序号VPN1和私网标签B对应的操作指示信息,然后根据该报文属于的VPN实例的序号VPN1查找已存储的如表3所示的策略路由表,查找出该策略路由表中存在该报文属于的VPN实例的序号VPN1,则确定出需要对该报文进行安全检测,进而根据用于指示去除该报文携带的标签的操作指示信息Action,从该报文中去除私网标签B得到IP报文。其中,第一边缘路由器事先存储有如表2所示的标签转发表和如表3所示的策略路由表。
表2
标签 |
操作指示信息 |
VPN实例的序号 |
B |
Action |
VPN1 |
...... |
...... |
...... |
表3
VPN实例的序号 |
VPN1 |
VPN2 |
...... |
步骤203:第一边缘路由器将该IP报文发送给安全检测设备,以使安全检测设备对该IP报文进行安全检测;
其中,安全检测设备接收到该IP报文,对该IP设备进行安全检测,并将经过安全检测的IP报文发送给第一边缘路由器,以使第一边缘路由器将该检测过的IP报文发送给用户终端。
步骤204:第一边缘路由器接收安全检测设备发送的经过安全检测的IP报文,并将该IP报文发送给用户终端。
在本发明实施例中,第一边缘路由器接收路由器发送的报文,该报文携带私网标签,根据该私网标签和/或该报文携带的五元组确定出需要对该报文进行安全检测,从该报文中去除该私网标签得到IP报文,将该IP报文发送给安全检测设备,以使所述安全检测设备对该IP报文进行安全检测,由于第一边缘路由器在接收到报文后,从报文中去除了标签,再确定出报文是否需要检测,进而将需要进行检测的报文发送给安全检测设备进行检测,使得采用BGPMPLSIPVPN方式组网的企业网可以对报文进行安全检测。
实施例3
本发明实施例提供了一种检测报文的方法,如图4,该方法包括:
步骤301:第一边缘路由器接收路由器发送的报文,该报文携带公网标签和私网标签,公网标签嵌套于私网标签的外部;
具体地,第一边缘路由器接收骨干路由器或边缘路由器发送的报文。
其中,假设,第一用户终端需要发送报文给第二用户终端,首先第一用户终端先将报文发送给MPLS(multi-protocollabelswitching,多协议标签交换)网络中的与其直接相连的第二边缘路由器,第二边缘路由器接收该报文,根据接收该报文的端口确定出该报文属于的VPN(VirtualPrivateNetwork,虚拟专用网络)实例的信息,根据该报文属于的VPN实例的信息和该报文携带的五元组在私网路由表中查找出私网标签和公网标签,并将该私网标签和公网标签封装到该报文上,并将该报文发送给下一跳路由器,该下一跳路由器可以为骨干路由器或边缘路由器。
其中,该公网标签嵌套于该私网标签的外部。
其中,该报文携带的五元组包括源地址、源端口号、目的地址、目的端口号和协议类型。
其中,如果骨干路由器接收该报文,则骨干路由器从该报文中提取最外层的公网标签,根据提取的公网标签,从标签转发表中获取对应的操作指示信息,该标签转发表用于存储标签、操作指示信息和VPN实例的序号的对应关系,且该获取的对应的操作指示信息为一个标签,将该标签作为公网标签,并将该报文中最外层的公网标签替换为该标签,再将该报文发送给下一跳路由器,其中,该下一跳路由器可以为骨干路由器或边缘路由器。
其中,如果边缘路由器(该边缘路由器为除第二边缘路由器以外其他边缘路由器)接收该报文,该边缘路由器接收骨干路由器发送的该报文或其他边缘路由器发送的该报文,根据该报文携带的公网标签从已存储的标签转发表中查找出公网标签对应的操作指示信息,如果该操作指示信息为一个标签,则将该标签作为公网标签,将该报文的最外层的公网标签替换为该标签,将该报文发送给下一跳路由器;如果该操作指标信息不是标签且该操作指标信息用于指示去除该公网标签,则该边缘路由器的下一跳为第二用户终端,且该边缘路由器为第一边缘路由器。
例如,参见图3,第一用户终端CE1需要发送报文给第二用户终端CE2,首先第一用户终端CE1先将报文发送给MPLS网络中的与其直接相连的第二边缘路由器PE2;第二边缘路由器PE2接收该报文,根据接收该报文的端口确定出该报文属于的VPN实例的信息,根据该报文属于的VPN实例的信息和该报文携带的五元组在私网路由表中查找出私网标签B和公网标签B1,并将该私网标签B和公网标签B1封装到该报文上,将该报文发送给下一跳路由器,该下一跳路由器为骨干路由器P。
其中,骨干路由器P事先存储有如表4所示的标签转发表,骨干路由器P接收该报文,提取该报文携带的公网标签B1,根据公网标签B1从如表4所示的标签转发表中获取对应的操作指示信息,该操作指示信息为标签B2,将该标签B2作为公网标签,将该报文携带的公网标签B1替换为该标签B2,将该报文发送给下一跳路由器,该下一跳路由器为与第二用户终端CE2直接相连的第一边缘路由器PE1,第一边缘路由器PE1接收该报文。
表4
标签 |
操作指示信息 |
VPN实例的序号 |
B1 |
B2 |
-- |
...... |
...... |
...... |
步骤302:第一边缘路由器根据公网标签确定出需要去除公网标签,则从该报文中去除公网标签,呈现出该报文携带的私网标签;
具体地,根据公网标签从标签转发表中查找出对应的操作指示信息,如果查找到公网标签对应的操作指示信息用于指示去除该报文携带的标签,则从该报文中去除公网标签,去除公网标签后,呈现出该报文携带的私网标签。
其中,如果查找到公网标签对应的操作指示信息为一个标签,则将该标签作为公网标签,将该报文最外层的公网标签替换为该标签,将该报文发送给下一跳路由器,该下一跳路由器可以是骨干路由器或边缘路由器。
例如,第一边缘路由器事先存储有如表5所示的标签转发表,根据该报文携带的公网标签B2从如表5所示的标签转发表中查找出对应的操作指示信息为Action,操作指示信息Action用于指示去除该报文携带的标签,则确定出需要去除该公网标签B2,从该报文中去除公网标签B2,去除公网标签B2后,呈现出该报文携带的私网标签B。
表5
标签 |
操作指示信息 |
VPN实例的序号 |
B2 |
Action |
-- |
...... |
...... |
...... |
步骤303:第一边缘路由器根据私网标签和/或该报文携带的五元组确定出需要对该报文进行安全检测,该报文携带的五元组包括源地址、源端口号、目的地址、目的端口号和协议类型,从该报文中去除私网标签得到IP报文;
具体地,根据私网标签从标签转发表中查找出该报文属于的VPN实例的序号,标签转发表用于存储标签、操作指示信息和VPN实例的序号的对应关系,查找已存储的策略路由表中是否存在该报文属于的VPN实例的序号,该策略路由表用于存储需要进行安全检测的VPN实例的序号,如果存在,则确定出需要对该报文进行安全检测,从该报文中去除私网标签得到IP报文;或
根据该报文携带的五元组查找已存储的策略路由表中是否存在该报文携带的五元组,该策略路由表用于存储需要进行安全检测的报文携带的五元组,如果存在,则确定出需要对该报文进行安全检测,从该报文中去除私网标签得到IP报文;或
根据私网标签从标签转发表中查找出该报文属于的VPN实例的序号,标签转发表用于存储标签、操作指示信息和VPN实例的序号的对应关系,查找已存储的策略路由表中是否存在该报文携带的五元组和该报文属于的VPN实例的序号,该策略路由表用于存储需要进行安全检测的VPN实例包括的报文携带的五元组和该VPN实例的序号,如果该策略路由表中存在该报文携带的五元组和该报文属于的VPN实例的序号,则确定出需要对该报文进行安全检测,从该报文中去除私网标签得到IP报文。
其中,策略路由表是根据网络管理者制定的标准来进行报文转发的机制,网络管理者可以根据实际情况来决定报文转发的路径,网络管理者也可以根据报文携带的五元组包括的源地址、源端口号、目的地址、目的端口号和/或协议类型制定策略路由,还可以根据报文的五元组和/或报文属于的VPN实例制定策略路由。
其中,策略路由可以配置在VPN实例中,也可以配置在全局中。
其中,如果第一边缘路由器确定出该报文不需要进行安全检测,则根据该IP报文携带的五元组将该IP报文发送给用户终端。
例如,参见图3,第一边缘路由器PE1去除公网标签B2后,呈现出该报文携带的私网标签B,第一边缘路由器提取私网标签B,根据私网标签B从如表6所示的标签转发表中查找出该报文属于的VPN实例的序号VPN1和私网标签B对应的操作指示信息,然后根据该报文属于的VPN实例的序号VPN1查找已存储的如表7所示的策略路由表,查找出该策略路由表中存在该报文属于的VPN实例的序号VPN1,则确定出需要对该报文进行安全检测,根据查找出的用于指示去除私网标签B的操作指示信息Action,从该报文中去除私网标签B得到IP报文。其中,第一边缘路由器事先存储有如表6所示的标签转发表和如表7所示的策略路由表。
表6
标签 |
操作指示信息 |
VPN实例的序号 |
B |
Action |
VPN1 |
...... |
...... |
...... |
表7
VPN实例的序号 |
VPN1 |
VPN2 |
...... |
步骤304:第一边缘路由器将该IP报文发送给安全检测设备,以使安全检测设备对该IP报文进行安全检测;
其中,安全检测设备接收到该IP报文,对该IP设备进行安全检测,并将经过安全检测的IP报文发送给第一边缘路由器,以使第一边缘路由器将该检测过的IP报文发送给用户终端。
步骤305:第一边缘路由器接收安全检测设备发送的经过安全检测的IP报文,并将该IP报文发送给用户终端。
在本发明实施例中,第一边缘路由器接收路由器发送的报文,该报文携带公网标签和私网标签,根据公网标签确定出需要去除该公网标签,从该报文中去除公网标签,根据私网标签和/或该报文携带的五元组确定出需要对该报文进行安全检测,从该报文中去除私网标签得到IP报文,将该IP报文发送给安全检测设备,以使所述安全检测设备对该IP报文进行安全检测,由于第一边缘路由器在接收到报文后,从报文中去除了标签,再确定出报文是否需要检测,进而将需要进行检测的报文发送给安全检测设备进行检测,使得采用BGPMPLSIPVPN方式组网的企业网可以对报文进行安全检测。
实施例4
本发明实施例提供了一种检测报文的装置,如图5,该装置包括:
第一接收模块401,用于接收路由器发送的报文,所述报文携带私网标签;
第一确定模块402,用于根据所述私网标签和/或所述报文携带的五元组确定出需要对所述报文进行安全检测,从所述报文中去除所述私网标签得到网络之间互连的协议IP报文,所述五元组包括源地址、源端口号、目的地址、目的端口号和协议类型;
第一发送模块403,用于将所述IP报文发送给安全检测设备,以使所述安全检测设备对所述IP报文进行安全检测。
进一步地,该装置还包括:
第二确定模块404,用于所述根据所述私网标签和/或所述报文携带的五元组确定出需要对所述报文进行安全检测,从所述报文中去除所述私网标签得到网络之间互连的协议IP报文之前,根据所述公网标签确定出需要去除所述公网标签,从所述报文中去除所述公网标签,呈现出所述报文携带的所述私网标签。
其中,该第二确定模块404,包括:
第一查找单元4041,用于根据所述公网标签从标签转发表中查找出对应的操作指示信息,所述标签转发表用于存储标签、操作指示信息和VPN实例的序号的对应关系;
第一确定单元4042,用于如果所述操作指示信息用于指示去除所述报文携带的公网标签,则从所述报文中去除所述公网标签,呈现出所述报文携带的所述私网标签。
其中,该第一确定模块402,包括:
第二查找单元4021,用于根据所述私网标签,从标签转发表中查找出所述报文属于的虚拟网络VPN实例的序号,所述标签转发表用于存储标签、操作指示信息和VPN实例的序号的对应关系;
第三查找单元4022,用于查找已存储的策略路由表中是否存在所述报文属于的VPN实例的序号,所述策略路由表用于存储需要进行安全检测的VPN实例的序号;
第二确定单元4023,用于如果存在,则确定出需要对所述报文进行安全检测。
其中,该第一确定模块402,包括
第四查找单元4024,用于查找已存储的策略路由表中是否存在所述报文携带的五元组,所述策略路由表用于存储需要进行安全检测的报文携带的五元组;
第三确定单元4025,用于如果存在,则确定出需要对所述报文进行安全检测。
其中,该第一确定模块402,还包括:
第五查找单元4026,用于根据所述私网标签,从标签转发表中查找出所述报文属于的虚拟网络VPN实例的序号,所述标签转发表用于存储标签、操作指示信息和VPN实例的序号的对应关系;
第六查找单元4027,用于查找已存储的策略路由表中是否存在所述报文携带的五元组和所述报文属于的VPN实例的序号,所述策略路由表用于存储需要进行安全检测的VPN实例包括的报文携带的五元组和所述VPN实例的序号;
第四确定单元4028,用于如果所述策略路由表中存在所述报文携带的五元组和所述报文属于的VPN实例的序号,则确定出需要对所述报文进行安全检测。
进一步地,该装置还包括:
第二发送模块405,用于接收所述安全检测设备发送的经过安全检测的IP报文,将所述经过安全检测的IP报文发送给用户终端。
进一步地,该装置还包括:
第三发送模块406,用于如果确定出所述IP报文不需要进行安全检测,根据所述IP报文携带的五元组,将所述IP报文发送给用户终端。
在本发明实施例中,边缘路由器接收路由器发送的报文,该报文携带私网标签,根据该私网标签和/或该报文携带的五元组确定出需要对该报文进行安全检测,从该报文中去除该私网标签得到IP报文,将该IP报文发送给安全检测设备,以使所述安全检测设备对该IP报文进行安全检测,由于边缘路由器在接收到报文后,从报文中去除了标签,再确定出报文是否需要检测,进而将需要进行检测的报文发送给安全检测设备进行检测,使得采用BGPMPLSIPVPN方式组网的企业网可以对报文进行安全检测。
实施例5
本发明实施例提供了一种检测报文的装置,如图6,该装置包括:
第一存储器501和第一处理器502,用于执行如下检测报文的方法:
接收路由器发送的报文,所述报文携带私网标签;
根据所述私网标签和/或所述报文携带的五元组确定出需要对所述报文进行安全检测,从所述报文中去除所述私网标签得到网络之间互连的协议IP报文,所述五元组包括源地址、源端口号、目的地址、目的端口号和协议类型;
将所述IP报文发送给安全检测设备,以使所述安全检测设备对所述IP报文进行安全检测。
所述报文还携带公网标签,所述公网标签嵌套于所述私网标签的外部;
所述根据所述私网标签和/或所述报文携带的五元组确定出需要对所述报文进行安全检测,从所述报文中去除所述私网标签得到网络之间互连的协议IP报文之前,还包括:
根据所述公网标签确定出需要去除所述公网标签,从所述报文中去除所述公网标签,呈现出所述报文携带的所述私网标签。
所述根据所述公网标签确定出需要去除所述公网标签,从所述报文中去除所述公网标签,呈现出所述报文携带的所述私网标签,包括:
根据所述公网标签从标签转发表中查找出对应的操作指示信息,所述标签转发表用于存储标签、操作指示信息和VPN实例的序号的对应关系;
如果所述操作指示信息用于指示去除所述报文携带的公网标签,则从所述报文中去除所述公网标签,呈现出所述报文携带的所述私网标签。
所述根据所述私网标签确定出需要对所述报文进行安全检测,包括:
根据所述私网标签,从标签转发表中查找出所述报文属于的虚拟网络VPN实例的序号,所述标签转发表用于存储标签、操作指示信息和VPN实例的序号的对应关系;
查找已存储的策略路由表中是否存在所述报文属于的VPN实例的序号,所述策略路由表用于存储需要进行安全检测的VPN实例的序号;
如果存在,则确定出需要对所述报文进行安全检测。
所述根据所述报文携带的五元组确定出需要对所述报文进行安全检测,从所述报文中去除所述私网标签得到网络之间互连的协议IP报文,包括
查找已存储的策略路由表中是否存在所述报文携带的五元组,所述策略路由表用于存储需要进行安全检测的报文携带的五元组;
如果存在,则确定出需要对所述报文进行安全检测。
所述根据所述私网标签和/或所述报文携带的五元组确定出需要对所述报文进行安全检测,还包括:
根据所述私网标签,从标签转发表中查找出所述报文属于的虚拟网络VPN实例的序号,所述标签转发表用于存储标签、操作指示信息和VPN实例的序号的对应关系;
查找已存储的策略路由表中是否存在所述报文携带的五元组和所述报文属于的VPN实例的序号,所述策略路由表用于存储需要进行安全检测的VPN实例包括的报文携带的五元组和所述VPN实例的序号;
如果所述策略路由表中存在所述报文携带的五元组和所述报文属于的VPN实例的序号,则确定出需要对所述报文进行安全检测。
将所述IP报文发送给安全检测设备之后,所述方法还包括:
接收所述安全检测设备发送的经过安全检测的IP报文,将所述经过安全检测的IP报文发送给用户终端。
所述方法还包括:
如果确定出所述IP报文不需要进行安全检测,根据所述IP报文携带的五元组,将所述IP报文发送给用户终端。
在本发明实施例中,边缘路由器接收路由器发送的报文,该报文携带私网标签,根据该私网标签和/或该报文携带的五元组确定出需要对该报文进行安全检测,从该报文中去除该私网标签得到IP报文,将该IP报文发送给安全检测设备,以使所述安全检测设备对该IP报文进行安全检测,由于边缘路由器在接收到报文后,从报文中去除了标签,再确定出报文是否需要检测,进而将需要进行检测的报文发送给安全检测设备进行检测,使得采用BGPMPLSIPVPN方式组网的企业网可以对报文进行安全检测。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。