1.一种基于SDN的IP源地址验证方法,其特征在于,包括以下步骤:A1、SDN控制器将域内网络拓扑转化成一棵以边界网关设备为根节点的数据包转发视图树;
A2、SDN控制器对数据包转发视图树上的每个节点进行分析,找出部署节点并部署为SDN节点,用SDN交换机替代部署节点上的传统交换机;
A3、SDN控制器计算转发规则并部署于SDN交换机上;
A4、SDN交换机根据转发规则,对到达的数据包进行匹配。
2.如权利要求1所述的方法,其特征在于,步骤A1包括:若网络中只有一个边界网关设备,则以此设备为根节点;若网络中有多个边界网关设备,则找出其共同且最近的设备作为根节点,同时将设备间存在的多条链路视为一条链路。
3.如权利要求1所述的方法,其特征在于,步骤A1包括:SDN控制器根据域内路由表或单源最短路径算法,将域内网络拓扑转化成一棵以边界网关设备为根节点的数据包转发视图树。
4.如权利要求3所述的方法,其特征在于,所述单源最短路径算法为Dijkstra算法。
5.如权利要求1所述的方法,其特征在于,步骤A2包括:SDN控制器根据效用函数对数据包转发视图树上每个节点的效用值进行计算,并将节点按效用值由高到底的顺序进行排序;按照节点排序结果,依次选取节点,根据启发式算法找出SDN节点。
6.如权利要求4所述的方法,其特征在于,步骤A2中所述效用函数为如下公式:
其中,pci:i节点所覆盖的IP前缀数目;ui:i节点为SDN节点时可检测的假冒前辍效用值,即不可伪造的IP前缀对数量;Child[i]:i节点的所有孩子节点的编号。
7.如权利要求4所述的方法,其特征在于,步骤A2中所述启发式算法为:
其中,λ:网络或用户对不可伪造IP前缀比例的最低需求;N:节点的总数目;Distinct():当多个节点同时部署时,消除重复产生的效用。
8.如权利要求1所述的方法,其特征在于,步骤A3包括:SDN控制器生成执行转发的合法转发规则集和执行丢弃的非法转发规则集。
9.如权利要求1所述的方法,其特征在于,步骤A4包括:SDN交换机根据A3步骤下发的转发规则对数据包进行匹配;匹配成功,则执行命中转发规则所定义的转发或丢弃操作;匹配不成功,则将数据包转交SDN控制器,由SDN控制器分析其合法性并下发转发规则。
10.如权利要求1所述的方法的系统,其特征在于,该系统包括转化模块、部署SDN节点模块、计算转发规则模块和数据包匹配模块;
其中,转化模块用于:SDN控制器将域内网络拓扑转化成一棵以边界网关设备为根节点的数据包转发视图树;
部署SDN节点模块用于:SDN控制器对数据包转发视图树上的每个节点进行分析,找出部署节点并部署SDN节点,用SDN交换机替代部署节点上的传统交换机;
计算转发规则模块用于:SDN控制器计算转发规则并部署于SDN交换机上;
数据包匹配模块用于:SDN交换机根据转发规则,对到达的数据包进行匹配。