数据通信的基础网络主要由路由器、交换机组成,由这些设备完成数据报文的转发。随着数据网络的逐步发展,数据网络上运行的业务越来越多,但是传统的路由器、交换机并不适合处理很多新兴业务,因此产生了一些专门处理某些业务的产品,如防火墙、IDS(Intrusion Detection System,入侵检测系统)、IPS(Intrusion Prevention System,入侵抵御系统)等安全产品及语音、无线等产品。
为了更好地支撑新兴业务,传统网络设备(这里指路由器、交换机)生产厂家纷纷推出多种专用业务板(业务卡),或者提供一套软硬件接口,允许其他厂家提供板(卡)或者设备的硬件或软件,插入或连接到传统网络设备上,协作处理这些业务,从而能发挥各厂家在各自领域的优势,更有效地支撑新兴业务,同时减少用户投资。OAA(Open Application Architecture,开放应用架构)就是基于该思想而提出的开放业务架构,它能够让众多不同厂商生产的设备和软件集成在一起,象一台设备那样工作,为客户提供一体化的解决方案。
ACFP(Application Control Forwarding Protocol,应用控制转发协议)是基于OAA架构设计的应用控制转发协议,联动的IPS/IDS卡或者IPS/IDS设备作为ACFP客户端,上面运行其他厂家的软件,支撑IPS/IDS业务。路由器或交换机收到IP报文后,通过匹配ACFP的联动策略规则,将报文镜像或重定向给ACFP客户端,ACFP客户端上的软件对报文做监控、检测等业务处理,然后根据监控、检测的结果,再通过联动MIB(Management Information Base,管理信息库)反馈给路由器或交换机,指示路由器或交换机做出相应处理(如过滤某些报文)。
图1 ACFP体系结构示意图
如图1所示,ACFP体系可以分成三部分:
l 路由交换部件:是路由器和交换机的主体部分,这部分有着完整的路由器或交换机的功能,也是用户管理控制的核心,此部分称为ACFP server;
l 独立业务部件:也可以叫做OAP(Open Application Platform,开放应用平台),可以开放给第三方合作开发的主体,主要用来提供各种独特的业务服务功能,此部分称为ACFP client;
l 接口连接部件:是路由交换部件和独立业务部件的接口连接体,通过这个部件将两个不同厂商的设备连接在一起,以形成一个整体。
ACFP联动就是指独立业务部件可以向路由交换部件发指令,改变路由交换部件的功能。联动功能主要是通过SNMP协议实现的:独立业务部件仿照网管系统的功能,向路由交换部件发送各种SNMP命令;而路由交换部件上支持SNMP Agent功能,可以执行收到的这些命令。在这个过程中,联系双方的关键就是联动的MIB。
ACFP联动提供了一套机制,使得ACFP client能够控制ACFP server上的流量,包括:
l 将ACFP server上的流量镜像、重定向到ACFP client;
l 允许、拒绝ACFP server上的流量通过;
l 对ACFP server上的流量进行限速;
l 在报文中携带上下文ID,通过上下文ID使得ACFP server和ACFP client能互通报文上下文环境。具体过程如下:ACFP server中维护一个上下文表,通过上下文ID查询上下文表,每个上下文ID对应一个ACFP联动策略(联动策略的内容包括报文入接口、报文出接口、联动规则等信息)。当ACFP server收到的报文由于匹配某个联动规则而被重定向或镜像到ACFP client时,报文中会携带该联动规则所在联动策略对应的上下文ID;当被重定向的报文从ACFP client返回时,报文中也会携带该上下文ID,通过上下文ID,ACFP server就知道该报文是重定向返回的报文,然后进行正常的转发处理。
为便于ACFP client更好地控制流量,联动内容中设置联动策略与联动规则两级组织,基于策略管理匹配规则的流量,达到一种弹性管理的目的。
为有效支撑Client/Server这种联动模式,细粒度、弹性地设置各种规则,联动内容分成四块组织:ACFP server信息、ACFP client信息、ACFP联动策略、ACFP联动规则。这四块内容存储在ACFP server中。
由于一个ACFP server可以支持多个ACFP client,因此,ACFP client信息、ACFP联动策略、ACFP联动规则都是以表的形式组织的。
ACFP server信息由ACFP server自己生成,ACFP client信息、ACFP联动策略、ACFP联动规则都是由ACFP client生成并通过联动MIB或联动协议发送到ACFP server。
ACFP server信息包含的内容及其含义如下:
l 所能支持的工作模式:分为主机、穿透、镜像、重定向四种。ACFP server可以同时支持其中的多种工作模式。只有当ACFP server所支持的工作模式包含ACFP client的工作模式时,这两个主体才能进行联动。
l 联动策略的最长有效期:说明了ACFP server的联动策略所能存活的最长时间。
l 联动策略存储的持久性:说明了ACFP server是否具备永久保存联动策略的能力,主要指ACFP server重新启动后还能否保有原来的联动策略。
l 当前所支持的上下文ID的类型:不同的ACFP server中,上下文ID在报文中所处的位置可能不同。上下文ID的类型分为5种:no-context(不携带上下文ID)、HG-context(使用HG前导码作为上下文ID)、HGPlus-context(使用加强版HG前导码作为上下文ID)、FlowID-context(使用FlowID前导码作为上下文ID)、VLANID-context(使用VLAN ID作为上下文ID)。
上述这些信息表明了一个ACFP server的联动能力,各ACFP client可通过联动协议、联动MIB的途径来获取这些信息。
ACFP client信息包含的内容及其含义如下:
l ACFP client ID:ACFP client的标识,可以通过联动协议由ACFP server分配,也可以由网络管理员指定,目的都是要确保各ACFP client在ACFP server中client ID的唯一性。
l 描述:ACFP client的描述信息。
l 硬件版本:ACFP client的硬件类别及版本号等信息。
l 操作系统版本:ACFP client的系统名称及版本号等信息。
l 应用软件版本:ACFP client的应用软件类别名称及其版本号等信息。
l IP地址:ACFP client的IP地址。
l 支持的工作模式:ACFP client当前所能支持的工作模式,指主机、穿透、镜像、重定向这些模式的组合。
ACFP联动策略指ACFP client发送给ACFP server所要实施的联动策略,策略信息包含的内容及其含义如下:
l ACFP client ID:ACFP client的标识。
l 策略号:策略的标识。
l 策略入接口:报文进入ACFP server的接口。
l 策略出接口:报文被正常转发的出接口。
l 策略目的接口:ACFP server连接该ACFP client的接口。
l 报文上下文ID:会在镜像或重定向报文给ACFP client时用到,允许为0,表示不支持互通上下文;当发送的策略指定了连接ACFP client的接口时,由ACFP server为该策略分配一个全局的序号,即报文上下文ID,每个上下文ID对应一个ACFP联动策略。
l 策略管理状态:表示该策略是否允许生效。
l 策略有效期:表示该策略有效的期限,借此来控制策略下的所有规则有效期限。
l 策略开始时间:表示该策略生效的起始时间,单位为每天的时、分、秒,借此来控制策略下的所有规则。
l 策略结束时间:表示该策略生效的结束时间,单位为每天的时、分、秒,借此来控制策略下的所有规则。
l 策略目的接口down时,该策略下所有规则处理动作:对于转发优先设备,在目的接口down后希望重定向和镜像的报文继续转发,此时选择delete动作;对于安全优先设备,在目的接口down后希望重定向和镜像的报文直接丢弃,此时选择reserve动作。
l 策略优先级:表示该策略的优先级,用数字1~8表示,数字越大,优先级越高。
ACFP联动规则指ACFP client发送给ACFP server所要实施的联动规则,联动规则可以分为3类:
l 监控规则:即将哪些报文递给ACFP client做监控分析,业务处理。该规则对应的动作类型目前有重定向、镜像。
l 过滤规则:即明确哪些报文被丢弃,哪些报文允许通过。该规则对应的动作类型有丢弃、通过。
l 限制规则:即明确哪些报文将被限速。该规则对应的动作类型为限速。
规则信息包含的内容及其含义如下:
l ACFP client ID:ACFP client的标识;
l 策略号:策略的标识;
l 规则号:规则的标识;
l 规则操作状态:表示规则是否应用成功;
l 动作类型:包括镜像、重定向、丢弃、通过、限速5种动作;
l 是否匹配所有报文:表示该规则是否要匹配所有的报文,如果是的话,则不需要进行下面的匹配;
l 源MAC地址;
l 目的MAC地址;
l 起始VLAN ID;
l 结束VLAN ID;
l IP中的协议号;
l 源IP地址;
l 源IP地址反掩码;
l 源端口号操作符:类型为等于、不等于、大于、小于、之间,只有类型为之间时,下面的结束源端口号才有意义,标识所匹配的报文的源端口应该大于起始源端口号而小于结束源端口号;
l 起始源端口号;
l 结束源端口号;
l 目的IP地址;
l 目的IP地址反掩码;
l 目的端口号操作符:类型为等于、不等于、大于、小于、之间,只有类型为之间时,下面的结束目的端口号才有意义,标识所匹配的报文的目的端口应该大于起始目的端口号而小于结束目的端口号;
l 起始目的端口号;
l 结束目的端口号;
l 报文的协议类型:包括GRE、ICMP、IGMP、OSPF、TCP、UDP、IP等;
l IP优先级:报文优先级,用数字表示,取值范围为0~7;
l IP ToS:IP报文的服务类型;
l IP DSCP:IP报文的差分服务编码点;
l TCP标志:表示关心TCP六个标志位(URG、ACK、PSH、RST、SYN、FIN)中的某些位;
l IP分片:是否是IP分片报文;
l 限制速率。
联动规则隶属于联动策略,通过联动策略可以管理策略下的规则。