1.一种基于SDN流的安全认证方法,其特征在于,所述基于SDN流的安全认证方法包括:接收客户端通过源SDN交换机上报的认证请求;所述认证请求包括流特征码、用户名和密码;
提取所述流特征码,计算SDN流的转发路径;
根据所述认证请求中包含的流特征码、用户名和密码匹配SDN流安全认证策略;
根据匹配认证结果,向所述源SDN交换机下发流表;所述流表包括所述SDN流的转发路径;
若所述流表表示认证通过,则使所述源SDN交换机转发所述客户端的报文;若所述流表表示认证失败,则使所述源SDN交换机丢弃所述客户端的报文。
2.根据权利要求1所述的基于SDN流的安全认证方法,其特征在于,所述计算SDN流的转发路径的实现过程包括:根据MAC地址信息,LLDP信息和所述流特征码,计算所述SDN流的转发路径;所述流特征码包括目的MAC地址,源MAC地址,目的IP地址和源IP地址。
3.根据权利要求1所述的基于SDN流的安全认证方法,其特征在于,所述基于SDN流的安全认证方法还包括:接收客户端通过源SDN交换机上报的认证终结请求;
从所述认证终结请求中解析出流特征码;
根据解析出的流特征码匹配所述SDN流安全认证策略;
移除所述源SDN交换机的流表,使所述源SDN交换机丢弃所述客户端的报文。
4.根据权利要求1所述的基于SDN流的安全认证方法,其特征在于,所述基于SDN流的安全认证方法还包括:所述源SDN交换机监听客户端发送的SDN流,查询流表;
若所述流表表示认证通过,则所述源SDN交换机将所述SDN流的源MAC地址和源端口学习或更新到MAC地址表;
所述源SDN交换机上报新学习的所述SDN流的源MAC地址和源端口;
若所述流表表示认证失败,则所述源SDN交换机丢弃报文。
5.根据权利要求3所述的基于SDN流的安全认证方法,其特征在于:所述认证请求和终结认证请求的报文格式相同,均包括目的MAC字段,源MAC字段,流源MAC字段和流目的MAC字段。
6.一种基于SDN流的安全认证系统,其特征在于,所述基于SDN流的安全认证系统包括SDN控制器,所述SDN控制器包括:接收模块,与SDN交换机相连,接收客户端通过源SDN交换机上报的认证请求;所述认证请求包括流特征码、用户名和密码;
提取模块,与所述接收模块相连,从所述认证请求中提取出流特征码;
计算模块,与所述提取模块相连,根据所述流特征码计算SDN流的转发路径;
匹配模块,与所述接收模块相连,根据所述认证请求中包含的流特征码、用户名和密码匹配SDN流安全认证策略;
认证模块,与所述计算模块和匹配模块相连,根据匹配认证结果,向所述源SDN交换机下发流表;所述流表包括所述SDN流的转发路径;若所述流表表示认证通过,则使所述源SDN交换机转发所述客户端的报文;若所述流表表示认证失败,则使所述源SDN交换机丢弃所述客户端的报文。
7.根据权利要求6所述的基于SDN流的安全认证系统,其特征在于,所述SDN控制器还包括:所述接收模块接收客户端通过源SDN交换机上报的认证终结请求;
所述提取模块从所述认证终结请求中解析出流特征码;
所述匹配模块根据解析出的流特征码匹配所述SDN流安全认证策略;
终结模块,与所述匹配模块和认证模块分别相连,移除所述源SDN交换机的流表,使所述源SDN交换机丢弃所述客户端的报文。
8.根据权利要求6所述的基于SDN流的安全认证系统,其特征在于,所述源SDN交换机包括:监听模块,监听客户端发送的SDN流,查询流表;
学习或更新模块,与所述监听模块相连,若所述流表表示认证通过,则将所述SDN流的源MAC地址和源端口学习或更新到MAC地址表;
学习上报模块,与所述监听模块和所述SDN控制器分别相连,向所述SDN控制器上报新学习的所述SDN流的源MAC地址和源端口;
丢弃模块,与所述监听模块相连,若所述流表表示认证失败,则所述源SDN交换机丢弃报文。
9.根据权利要求7所述的基于SDN流的安全认证系统,其特征在于:所述认证请求和终结认证请求的报文格式相同,均包括目的MAC字段,源MAC字段,流源MAC字段和流目的MAC字段。