CN110753054A - 基于sdn的匿名通信方法 - Google Patents

基于sdn的匿名通信方法 Download PDF

Info

Publication number
CN110753054A
CN110753054A CN201911022449.7A CN201911022449A CN110753054A CN 110753054 A CN110753054 A CN 110753054A CN 201911022449 A CN201911022449 A CN 201911022449A CN 110753054 A CN110753054 A CN 110753054A
Authority
CN
China
Prior art keywords
address
anonymous
path
sdn
bandwidth
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201911022449.7A
Other languages
English (en)
Inventor
唐勇
李明
单冉冉
汪文勇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
University of Electronic Science and Technology of China
Original Assignee
University of Electronic Science and Technology of China
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by University of Electronic Science and Technology of China filed Critical University of Electronic Science and Technology of China
Priority to CN201911022449.7A priority Critical patent/CN110753054A/zh
Publication of CN110753054A publication Critical patent/CN110753054A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0407Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the identity of one or more communicating identities is hidden
    • H04L63/0421Anonymous communication, i.e. the party's identifiers are hidden from the other party or parties, e.g. using an anonymizer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/50Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/35Switches specially adapted for specific applications
    • H04L49/354Switches specially adapted for specific applications for supporting virtual local area networks [VLAN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5046Resolving address allocation conflicts; Testing of addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/618Details of network addresses
    • H04L2101/622Layer-2 addresses, e.g. medium access control [MAC] addresses

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种基于SDN的匿名通信方法,涉及计算机通信技术领域。本发明基于SDN技术,利用SDN交换机可以修改报文IP地址字段的优势,设计实现了绑定MAC、IP、PORT三元组,然后下发三元组形式流表部署在SDN交换机上,将其作为严格的过滤准则,对所到达的数据包提取数据并根据过滤规则,进行转发或丢弃操作,设计了区别于传统匿名通信技术的更为安全、稳定、易配置的匿名通信方法。

Description

基于SDN的匿名通信方法
技术领域
本发明涉及计算机通信技术领域,更具体地说,涉及一种基于SDN的匿名通信方法。
背景技术
互联网中传输的任何数据报文都要经过TCP/IP协议栈的处理,由于TCP/IP是一种分层的网络结构,在每一层都需要对数据包封装和解封装。在TCP/IP协议栈封装IP头填充相关信息这一过程存在缺陷,报文源主机将自身IP地址填入IP头的源地址域中,主机和路由器均不对源IP地址的真实性进行检查,而仅仅只依照目标地址进行转发。这一缺陷很容易被攻击者利用,攻击者填入伪造的源IP地址,进而冒充他人,将非法报文发送到互联网中,而TCP/IP协议栈会将该非法报文转发到目的主机。攻击者从而可以获得目标主机的权限,为下一步攻击做准备,并且冒用他人身份可以达到很好的隐藏效果,使得攻击源头不易被追查。基于伪造IP地址的网络攻击给互联网用户带来了巨大的威胁和伤害,互联网安全形式严峻。由此,研究人员经过长期研究,发现并提出多种防御源地址欺骗的方法,虽说会增加一些设备的资源消耗,但减少了基于IP欺骗的网络攻击带来的伤害。
当通过不可靠的网络时,保护通信参与者的身份以及隐藏用户的通信信息也是非常重要的。即使信息加密,攻击者仍然可以通过未加密的信息发起通信信息攻击,比如IP地址、端口、通信量速率。例如,攻击者可以通过检查源地址和目的地址的流量识别发起人和终端用户,然后通过分析通信信息来揭示它们之间正在进行的操作。如果攻击者的目的是破坏目标应用程序或***,他可以很容易地找到***中的一些关键节点(如分布式文件***的元数据服务器),并发动主动攻击,如DoS/DDoS。如果目标是数据泄露,他可以很容易地找到***中的目标服务器。针对目前这些复杂性高等诸多问题,研究人员试图从网络底层架构出发,提出将网络进行抽象分层以实现网络的可编程化,来应对网络安全、自动化配置、促进网络创新等问题。
发明内容
为了克服上述现有技术中存在的缺陷和不足,本发明提供了一种基于SDN的匿名通信方法,本发明基于SDN技术,利用SDN交换机可以修改报文IP地址字段的优势,结合本发明中基于带宽利用率动态选择的路由算法及源地址认证技术,设计了区别于传统匿名通信技术的更为安全、稳定、易配置的匿名通信方法。
为了解决上述现有技术中存在的问题,本发明是通过下述技术方案实现的:
本发明基于SDN的匿名通信方法,其基于的***包括Floodlight控制器、SDN交换机群和终端客户机。其中Floodlight控制器包含了本发明主要的技术实现,包含七个模块:基本控制管理模块、路由生成模块、绑定MAC、IP和PORT模块、更改IP模块、集中计算路径过滤CPF模块、注册映射表模块和动态添加标签MPLS模块。基于带宽利用率动态选择的路由算法及源地址认证技术的创新处也在这些模块中得以实现。
基于SDN的匿名通信方法,其特征在于:包括以下步骤:
步骤A,SDN网络初始化步骤,SDN控制器获取整个网络拓扑和所有主机的地址,包括IP地址及MAC地址,保存所有IP地址与MAC地址的映射表;
步骤B、建立匿名通信通道步骤,响应端向SDN控制器注册服务名,SDN控制器根据所管理的IP和MAC地址的映射表将服务名与响应端进行绑定,并在绑定的数据上添加真实IP所对应的虚拟IP地址、真实MAC所对应的虚拟MAC地址;
步骤C、监听步骤,发起端将响应端的服务名发送给SDN控制器;发起端若指定响应端IP地址,则被判定为非匿名数据流,若指定服务名,则被判定为匿名数据流,实现发起端和响应端匿名;
步骤D、计算路由步骤,SDN控制器根据指定的响应端地址或对服务名解析出的响应端的地址,通过基于带宽利用率动态选择的路由算法计算路由信息,并为匿名数据流选取所确定路径上的两个边缘交换机作为两个变换节点,变换节点上执行修改数据报文中的IP地址和MAC地址;
步骤E、避免地址冲突步骤,SDN控制器对匿名数据流执行更改IP和MAC地址的操作,利用四元组<m_src_IP,m_dst_IP,m_src_MAC,m_dst_MAC>唯一标识匿名数据流,对非匿名数据流直接通过绑定二元组<src_IP,dst_IP>唯一标识非匿名数据流;
步骤F、控制器生产路由规则,将上述步骤E的数据流表配置到相应的交换机上,并将匿名数据流进入第一个交换节点之前的网络报文携带的地址返回给发起端,该地址为入口地址;
步骤G、匿名通信步骤,在与响应端通信过程中,发起端向入口地址发送网络报文或接收来自入口地址的网络报文;
步骤H、在匿名通道建立支护,SDN控制器更新该匿名通信通道的转发路径和变换阶段;
步骤I、关闭匿名通信步骤,发起端或响应端向SDN控制器发送关闭通知,SDM控制器删除该匿名通道的信息。
所述步骤A中获得整个网络拓扑是指SDN控制器通过周期性的发送LLDP数据包探测SDN网络中节点的活跃状态,进而维持SDN网络的活跃拓扑。
所述步骤B中,响应端向SDN控制器注册服务名,具体是指终端告知SDN控制器匿名通信***中自己的匿名名称,SDN控制器根据发起端的请求建立匿名通信通道。
所述步骤C中,所述基于带宽利用率动态选择的路由算法,具体是指,在当前环境的网络中确定一条考虑带宽的路径p,基于带宽利用率动态选择的路由算法确定出来的路径p是所有从源节点s到目的节点d的路径力带宽利用率最小的;具体步骤如下:
设定时间间隔
Figure RE-402233DEST_PATH_IMAGE002
进行测量,代表第
Figure RE-99111DEST_PATH_IMAGE006
条链路的平均带宽,则
Figure RE-556637DEST_PATH_IMAGE008
, (1)
其中,代表第
Figure RE-193472DEST_PATH_IMAGE006
条链路在
Figure RE-460505DEST_PATH_IMAGE012
时刻测量得到的数据转发量;第
Figure RE-970990DEST_PATH_IMAGE006
条链路的剩余带宽用
Figure RE-RE-DEST_PATH_IMAGE014
代表,链路已使用带宽利用率用表示,则
Figure RE-RE-DEST_PATH_IMAGE018
; (2)
Figure RE-RE-DEST_PATH_IMAGE020
; (3)
Figure RE-RE-DEST_PATH_IMAGE022
是链路的总带宽,其数值是基于SDN控制器利用OFFeaturesRequest和OFFeaturesReply消息获得;由上述式(1)、(2)和(3)获得链路的路径剩余带宽以及链路带宽使用率,最终确定的路径其路径带宽利用率是此路径中的某段链路带宽利用率最高的,即
Figure RE-RE-DEST_PATH_IMAGE024
,然后从源节点s到目的节点d的路径中找到一条路径带宽利用率最小的路径即为考虑带宽的最佳路径p。
所述步骤F中,入口地址中的IP和MAC信息是SDN控制器根据隐藏服务映射表回复的一个非真实的IP地址和MAC地址。
与现有技术相比,本发明所带来的有益的技术效果表现在:
1、为了实现源地址认证,设计实现了绑定MAC、IP、PORT三元组,然后下发三元组形式流表部署在SDN交换机上,将其作为严格的过滤准则,对所到达的数据包提取数据并根据过滤规则,进行转发或丢弃操作。
2、为了满足在选路时可能遇到的链路负载过重或对链路进行限速等特殊场景,本文选择再默认算法基础上引入了基于带宽利用率动态选路算法。这种算法可以根据场景利用useBWUAlgorithm变量动态使用,这种设计的原理也是为了可以更好地应对实时环境中的网络链路情况,即可以保证时延又可以保证链路负载均衡,减少了一些不必要的开销。
3、为了在匿名通信过程中,避免出现地址跳变过程中的路由冲突情况,提出了结合生成非重复随机序列获取更改后IP和MAC的更改IP和MAC算法通过四元组<m_src_IP, m_dst_IP, m_src_MAC, m_dst_MAC>来实现唯一标识匿名流;提出直接绑定二元组< src_IP,dst_IP >实现唯一标识非匿名流。四元组或二元组流表下发,将对应流表安装至相应交换机,实现客户端之间的匿名通信;这一系列的改进在原先的基础上更节省了控制器的计算资源。
4、在匿名通信过程中,控制器对到达链路上交换机的数据包进行了更改,为了保证在更改后不会出现继续出现伪造源地址的情况,又设计了集中计算路径过滤CPF模块,该模块将转发路径以及获得链路信息结合生成四元组<src_IP,dst_IP,inPort,outPort>,然后下发至流表部署在交换机上,形成严格的过滤规则,能够进一步的保证数据流在转发路径上以及源地址的安全。
5、步骤D中更改IP和MAC操作是本发明为了解决匿名流冲突而提出的新算法,主要是在更改IP和MAC操作中防止更改之后的IP和MAC地址对不会有重复的情况出现,保证修改之后虚拟IP和MAC地址对唯一。且为了解决非匿名流和匿名流的传输冲突,本发明提出了为非匿名流利用<src_IP,dst_IP >二元组信息唯一标识每条非匿名流,能够避免与匿名流的冲突的同时还进一步防止了非匿名流被探测到。
附图说明
图1为本发明基于SDN匿名通信方法的***架构图;
图2为本发明的带宽选路示意图;
图3为本发明实施的匿名通信实验拓扑图。
具体实施方式
下面结合说明书附图1-3,对本发明的技术方案作出进一步详细地阐述。
实施例1
参照图3,作为本技术方案的较佳实施方式,SDN交换机采用OpenVSwitch2.4版本和DELL S3048-ON系列交换机,控制器采用FloodlightV1.2版本,匿名通信的具体实施步骤如下:
步骤A、SDN网络初始化。SDN控制器获得整个网络拓扑和所有主机的地址,包括IP地址及MAC地址,并保存了所有IP地址与MAC地址的映射表。
步骤B、建立匿名通信通道。即首先需要响应端向SDN控制器注册服务名,并根据所管理的IP和MAC地址的映射表将服务名与之进行绑定,并在绑定的数据上添加真实IP所对应的虚拟IP、真实MAC所对应的虚拟MAC。这样不管是要进行发起者匿名还是接收者匿名,当要进行连接时,控制器都可以根据所管理的隐藏服务注册表完成DNS和ARP请求的回复,实现通信的连接。
步骤C、进入监听状态,发起端将响应端的服务名(或者IP地址)发送给SDN网络控制器。发起端如果指定了响应端IP地址,则为非匿名流。若指定服务名,则可以同时实现发起端和响应端匿名并执行下一步。
步骤D、计算路由。控制器根据指定的响应端地址或对服务名解析出来的响应端地址通过基于带宽利用率动态选择的路由算法计算路由信息,并为匿名数据流选取所确定路径上的两个边缘交换机作为两个个变换节点,变换节点上要执行修改数据报文中的IP地址和MAC地址。
步骤E、避免地址冲突。避免变换节点修改报文地址后出现匿名流之间的地址冲突,控制器对匿名流执行更改IP和MAC操作,利用四元组<m_src_IP, m_dst_IP, m_src_MAC, m_dst_MAC>唯一标识匿名流,对非匿名流直接通过绑定二元组<src_IP, dst_IP>唯一标识非匿名流。
步骤F、控制器生成好路由规则后,将上述流表配置到相应的交换机上,并将匿名流进入第一个变换节点之前的网络报文应携带的地址返回给发起端,该地址称为入口地址。入口地址中的IP和MAC信息是控制器根据隐藏服务映射表回复的一个并非真实的IP地址和MAC地址。
步骤G、进行匿名通信。在与响应端通信过程中,发起端向入口地址发送网络报文或者接收来自入口地址的网络报文。
步骤H、在匿名通道建立之后,SDN控制器可以更新该匿名通道的转发路径和变换节点。
步骤I、关闭匿名通道。发起端(或者响应端)向SDN控制器发送关闭通知,SDN控制器删除该匿名通道的信息。
实施例2
作为本发明又一较佳实施例,参照说明书附图1-3,本实施例公开了:
参照说明书附图1所示,本发明基于SDN的匿名通信方法,其基于的***包括Floodlight控制器、SDN交换机群和终端客户机。其中Floodlight控制器包含了本发明主要的技术实现,包含七个模块:基本控制管理模块、路由生成模块、绑定MAC、IP和PORT模块、更改IP模块、集中计算路径过滤CPF模块、注册映射表模块和动态添加标签MPLS模块。基于带宽利用率动态选择的路由算法及源地址认证技术的创新处也在这些模块中得以实现。
在本发明中,基于宽带利用率动态选择的路由算法的涉及满足以下两种需求。
1、创建网络时指定带宽要求。该算法首先确定一条路径,然后给经过此路径上的所有交换机下发一个流表。并且在边缘交换机的数据流出端口处进行配置限速队列,限速队列来确定端口出口的最大带宽,与网络初始带宽指定需求呼应。此时数据流的带宽速率一定需要小于或等于指定的带宽要求才能向外输出流量。
2、创建网络时不用指定带宽要求。在这种网络中,带宽波动和数据流都是不稳定的。控制器可以根据默认路由算法为数据流指定路由以及下发流表。
基于带宽利用率动态选择的路由算法里面设计到的有关重要定义包括下面几个,并对其进行介绍。
(1)链路带宽利用率:链路带宽利用率的值等于任意两个相邻节点之间的链路使用的带宽与链路总带宽的比率。
(2)路径带宽利用率:定义为某条路由中任意两个相邻节点的链路带宽利用率最大值。
选择的是路径带宽利用率最小的路径,就要能够避开有拥堵路段出现的链路,使用一些相对而言负载比较轻的链路,空余的链路带宽最大可以满足之后的数据流,此时整个吞吐量也会上升。
假如在当前环境的网络中确定出一条考虑带宽的路径p,此算法完成的是确定出来的路径p是所有从源节点s到目的节点d的路径里带宽利用率是最小的。
设定时间间隔来实现测量,
Figure RE-508598DEST_PATH_IMAGE004
代表第
Figure RE-262928DEST_PATH_IMAGE006
条链路的平均带宽,则
Figure RE-62257DEST_PATH_IMAGE008
(1)
Figure RE-585642DEST_PATH_IMAGE010
代表第
Figure RE-15486DEST_PATH_IMAGE006
条链路在
Figure RE-571626DEST_PATH_IMAGE012
时刻测量得到的数据转发量;第
Figure RE-846749DEST_PATH_IMAGE006
条链路的剩余带宽用
Figure RE-490220DEST_PATH_IMAGE014
代表,链路已使用带宽利用率用
Figure RE-887704DEST_PATH_IMAGE016
表示,则
Figure RE-616625DEST_PATH_IMAGE018
; (2)
Figure RE-695440DEST_PATH_IMAGE020
; (3)
Figure RE-193417DEST_PATH_IMAGE022
是链路的总带宽,其数值是基于SDN控制器利用OFFeaturesRequest和OFFeaturesReply消息获得;由上述式(1)、(2)和(3)获得链路的路径剩余带宽以及链路带宽使用率,最终需要确定的路径其路径带宽利用率是此条路径中的某段链路带宽最高利用率即
Figure RE-778113DEST_PATH_IMAGE024
,然后从所有s到d的路径中找到一条路径带宽利用率最小的路径即为考虑带宽的最佳路径p。
在本申请中,基于SDN绑定三元组信息的原理如下所示,控制器首先获取所连接主机的MAC、IP地址和所连接主机的交换机端口,将获得的数据提前绑定并存储到绑定配置表中,然后在交换机的过滤规则中配置事先处理好的三元组绑定规则<MAC, IP, PORT>,当交换机接收到具有同样源IP地址的数据包时,交换机将提取数据包中MAC地址、IP地址以及与主机连接的交换机的端口元素,然后将这些元素与交换机上的流表项进行一一对比,以实现验证数据包的源IP地址是否合法。
在本申请中,集中计算路径过滤CPF的原理如下所示:首先,控制器通过链路发现模块和拓扑管理模块获取当前网络的拓扑信息。然后,将获取到的拓扑信息根据控制器所设计的选路算法选路以及控制器中所设计的更改IP和MAC算法计算得到<m_src_IP, m_dst_IP, inPort, outPort>四元组过滤规则,并把这些信息存储到过滤配置表中。最后,将计算好的四元组过滤规则下发至相应交换机上。
基于SDN的匿名通信方法,包括以下步骤:
步骤A,SDN网络初始化步骤,SDN控制器获取整个网络拓扑和所有主机的地址,包括IP地址及MAC地址,保存所有IP地址与MAC地址的映射表;
步骤B、建立匿名通信通道步骤,响应端向SDN控制器注册服务名,SDN控制器根据所管理的IP和MAC地址的映射表将服务名与响应端进行绑定,并在绑定的数据上添加真实IP所对应的虚拟IP地址、真实MAC所对应的虚拟MAC地址;
步骤C、监听步骤,发起端将响应端的服务名发送给SDN控制器;发起端若指定响应端IP地址,则被判定为非匿名数据流,若指定服务名,则被判定为匿名数据流,实现发起端和响应端匿名;
步骤D、计算路由步骤,SDN控制器根据指定的响应端地址或对服务名解析出的响应端的地址,通过基于带宽利用率动态选择的路由算法计算路由信息,并为匿名数据流选取所确定路径上的两个边缘交换机作为两个变换节点,变换节点上执行修改数据报文中的IP地址和MAC地址;
步骤E、避免地址冲突步骤,SDN控制器对匿名数据流执行更改IP和MAC地址的操作,利用四元组<m_src_IP,m_dst_IP,m_src_MAC,m_dst_MAC>唯一标识匿名数据流,对非匿名数据流直接通过绑定二元组<src_IP,dst_IP>唯一标识非匿名数据流;
步骤F、控制器生产路由规则,将上述步骤E的数据流表配置到相应的交换机上,并将匿名数据流进入第一个交换节点之前的网络报文携带的地址返回给发起端,该地址为入口地址;
步骤G、匿名通信步骤,在与响应端通信过程中,发起端向入口地址发送网络报文或接收来自入口地址的网络报文;
步骤H、在匿名通道建立支护,SDN控制器更新该匿名通信通道的转发路径和变换阶段;
步骤I、关闭匿名通信步骤,发起端或响应端向SDN控制器发送关闭通知,SDM控制器删除该匿名通道的信息。
所述步骤A中获得整个网络拓扑是指SDN控制器通过周期性的发送LLDP数据包探测SDN网络中节点的活跃状态,进而维持SDN网络的活跃拓扑。
所述步骤B中,响应端向SDN控制器注册服务名,具体是指终端告知SDN控制器匿名通信***中自己的匿名名称,SDN控制器根据发起端的请求建立匿名通信通道。
所述步骤C中,所述基于带宽利用率动态选择的路由算法,具体是指,在当前环境的网络中确定一条考虑带宽的路径p,基于带宽利用率动态选择的路由算法确定出来的路径p是所有从源节点s到目的节点d的路径力带宽利用率最小的;具体步骤如下:
设定时间间隔
Figure RE-728752DEST_PATH_IMAGE002
进行测量,
Figure RE-611257DEST_PATH_IMAGE004
代表第
Figure RE-26058DEST_PATH_IMAGE006
条链路的平均带宽,则
Figure RE-968606DEST_PATH_IMAGE008
, (1)
其中,
Figure RE-406541DEST_PATH_IMAGE010
代表第
Figure RE-138742DEST_PATH_IMAGE006
条链路在
Figure RE-611312DEST_PATH_IMAGE012
时刻测量得到的数据转发量;第
Figure RE-724761DEST_PATH_IMAGE006
条链路的剩余带宽用代表,链路已使用带宽利用率用表示,则
Figure RE-998114DEST_PATH_IMAGE018
; (2)
Figure RE-282465DEST_PATH_IMAGE020
; (3)
Figure RE-508041DEST_PATH_IMAGE022
是链路的总带宽,其数值是基于SDN控制器利用OFFeaturesRequest和OFFeaturesReply消息获得;由上述式(1)、(2)和(3)获得链路的路径剩余带宽以及链路带宽使用率,最终确定的路径其路径带宽利用率是此路径中的某段链路带宽利用率最高的,即
Figure RE-536040DEST_PATH_IMAGE024
,然后从源节点s到目的节点d的路径中找到一条路径带宽利用率最小的路径即为考虑带宽的最佳路径p。
所述步骤F中,入口地址中的IP和MAC信息是SDN控制器根据隐藏服务映射表回复的一个非真实的IP地址和MAC地址。
实施例3
本发明中,SDN架构可以使数据包转发变得更加灵活,控制器可以预先将路由规则安装到交换机中,交换机可以通过修改数据包头以隐藏数据流的真实参与者,实现匿名通信。MAGA(M-Address Generation Algorithm)即m-address地址生成算法所用方案中提出了一种高效的网络匿名***的模拟通道MIC(Mimic Channel)。MIC背后的基本思想是通过改变多个交换机(不是主机)上的地址(例如MAC、IP、端口)来隐藏数据流的发送方和接收方。
举一个简单的例子来解释说明本发明是如何进行工作的,即假设两个客户端Alice(IP地址为10.0.0.1)和Bob(IP地址为10.0.0.8)通过三个交换机(S1、S2和S3)连接,出于匿名通信的目的,Alice不直接发送消息给Bob,但是会向MC发送请求为Alice构建一个匿名路径。在收到Alice的请求后,MC计算到Bob的转发路径。路径上的交换机会修改数据包的包头信息以隐藏Alice和Bob的身份。
具体来说,假设以一个二元组<src_IP, dst_IP>代表数据包头部。MC会响应Alice他应该将数据包发送到地址为10.0.0.2的目的地,即数据包P1是<10.0.0.1, 10.0.0.2>。交换机S1修改P1的头部,并将其转发到下一跳,即数据包P2是<10.0.0.3, 10.0.0.4>。类似地,S2和S3分别将数据包包头修改为<10.0.0.5, 10.0.0.6>和<10.0.0.7, 10.0.0.8>。值得注意的是,最后一个交换节点MN应该将目标地址修改回最初请求的目的地址,以便接收者可以无需进行协议栈或内核的修改,进而正确的处理数据包。
当两个或多个流通过交换机上的同一端口转发时,可能会发生地址冲突,有可能发生两个m-flow之间的路由出现冲突的情况,或者一条m-flow和非m-flow之间的地址冲突,这都将产生错误信息。为了简化描述,我们假设两元组<src_IP, dst_IP>标识每个交换机上的流。
(1)两个流f1、f2的数据包地址在同一个交换机上变为同一个,如6(a)所示。
(2)流f1数据包地址修改后与同一交换机上另一流f2相同,如6(b)所示。
(3)两个流f1,f2的数据包地址在到达同一个交换机之前是相同的,但是交换机不会改变这两个流的地址。
地址冲突的根本原因在于m-flow在通信期间使用了变量地址。因此,m-flow可能会占用非m-flow的地址,或者两个m-flow可能同时被修改成相同的地址并使用。为了避免上述所述的地址冲突,设计了避免冲突机制MAGA,基本思想是确保每个流在任何交换机上都有唯一的匹配认证。
MAGA中的关键点是构建哈希函数f(x, y, z)。对于f(x, y, z),算法的目标是对于给定的函数值V,可以得到满足f(a, b, c)=V的三元组(a, b, c)。所以,函数f(x, y, z)必须在至少一个变量上是可逆的。在这种情况下,可以首先随机确定两个变量,然后使用逆反函数确定剩余变量,最后得到三元组的m-address。为了确保此函数的所有变量都是整数,使用XOR或移位操作来构建函数。
例如,一个简单的f(x, y, z)如下进行构造。
f(x, y, z)=[(x⊕A0)>>A1]⊕[(x⊕A2)<<A3]⊕[(y⊕B0)>>B1]⊕[(y⊕B2)<<B3]⊕
[(z⊕C0)>>C1]
然后对于变量z的逆反函数如下求得:
fz-1(v, x, y)=v⊕[(x⊕A0)>>A1]⊕[(x⊕A2)<<A3]⊕[(y⊕B0)>>B1]⊕[(y⊕B2)<<B3]<<C1⊕C0
A0,A1,A2,A2,B0,B1,B2,B3,C0,C1是参数,这些参数为构建不同的哈希函数对于不同的MN来说可能是不同。
避免冲突机制的原理就是通过添加MPLS标识,对任意一个变换节点上能够通过三元组<源IP、目的IP、MPLS标识>来唯一标识一个匿名通道。控制器在生成源、目的IP时是随机的,为了利用MPLS唯一标识,控制器便会为不同的数据流递增的赋予全局标识,如图3中变换节点S2,虽然源、目的IP相同,但是赋予两条数据流的全局标识不同,根据哈希逆函数计算得到的MPLS值也不同,说明实现了唯一标识每条数据流。

Claims (5)

1.基于SDN的匿名通信方法,其特征在于:包括以下步骤:
步骤A,SDN网络初始化步骤,SDN控制器获取整个网络拓扑和所有主机的地址,包括IP地址及MAC地址,保存所有IP地址与MAC地址的映射表;
步骤B、建立匿名通信通道步骤,响应端向SDN控制器注册服务名,SDN控制器根据所管理的IP和MAC地址的映射表将服务名与响应端进行绑定,并在绑定的数据上添加真实IP所对应的虚拟IP地址、真实MAC所对应的虚拟MAC地址;
步骤C、监听步骤,发起端将响应端的服务名发送给SDN控制器;发起端若指定响应端IP地址,则被判定为非匿名数据流,若指定服务名,则被判定为匿名数据流,实现发起端和响应端匿名;
步骤D、计算路由步骤,SDN控制器根据指定的响应端地址或对服务名解析出的响应端的地址,通过基于带宽利用率动态选择的路由算法计算路由信息,并为匿名数据流选取所确定路径上的两个边缘交换机作为两个变换节点,变换节点上执行修改数据报文中的IP地址和MAC地址;
步骤E、避免地址冲突步骤,SDN控制器对匿名数据流执行更改IP和MAC地址的操作,利用四元组<m_src_IP,m_dst_IP,m_src_MAC,m_dst_MAC>唯一标识匿名数据流,对非匿名数据流直接通过绑定二元组<src_IP,dst_IP>唯一标识非匿名数据流;
步骤F、控制器生产路由规则,将上述步骤E的数据流表配置到相应的交换机上,并将匿名数据流进入第一个交换节点之前的网络报文携带的地址返回给发起端,该地址为入口地址;
步骤G、匿名通信步骤,在与响应端通信过程中,发起端向入口地址发送网络报文或接收来自入口地址的网络报文;
步骤H、在匿名通道建立支护,SDN控制器更新该匿名通信通道的转发路径和变换阶段;
步骤I、关闭匿名通信步骤,发起端或响应端向SDN控制器发送关闭通知,SDM控制器删除该匿名通道的信息。
2.如权利要求1所述的基于SDN的匿名通信方法,其特征在于:所述步骤A中获得整个网络拓扑是指SDN控制器通过周期性的发送LLDP数据包探测SDN网络中节点的活跃状态,进而维持SDN网络的活跃拓扑。
3.如权利要求1所述的基于SDN的匿名通信方法,其特征在于:所述步骤B中,响应端向SDN控制器注册服务名,具体是指终端告知SDN控制器匿名通信***中自己的匿名名称,SDN控制器根据发起端的请求建立匿名通信通道。
4. 如权利要求1所述的基于SDN的匿名通信方法,其特征在于:所述步骤C中,所述基于带宽利用率动态选择的路由算法,具体是指,在当前环境的网络中确定一条考虑带宽的路径p,基于带宽利用率动态选择的路由算法确定出来的路径p是所有从源节点s到目的节点d的路径力带宽利用率最小的;具体步骤如下:
设定时间间隔
Figure DEST_PATH_IMAGE002
进行测量,代表第
Figure DEST_PATH_IMAGE006
条链路的平均带宽,则
Figure DEST_PATH_IMAGE008
, (1)
其中,代表第
Figure 597302DEST_PATH_IMAGE006
条链路在
Figure DEST_PATH_IMAGE012
时刻测量得到的数据转发量;第
Figure 514442DEST_PATH_IMAGE006
条链路的剩余带宽用
Figure DEST_PATH_IMAGE014
代表,链路已使用带宽利用率用
Figure DEST_PATH_IMAGE016
表示,则
Figure DEST_PATH_IMAGE018
; (2)
Figure DEST_PATH_IMAGE020
; (3)
Figure DEST_PATH_IMAGE022
是链路的总带宽,其数值是基于SDN控制器利用OFFeaturesRequest和OFFeaturesReply消息获得;由上述式(1)、(2)和(3)获得链路的路径剩余带宽以及链路带宽使用率,最终确定的路径其路径带宽利用率是此路径中的某段链路带宽利用率最高的,即
Figure DEST_PATH_IMAGE024
,然后从源节点s到目的节点d的路径中找到一条路径带宽利用率最小的路径即为考虑带宽的最佳路径p。
5.如权利要求1所述的基于SDN的匿名通信方法,其特征在于:所述步骤F中,入口地址中的IP和MAC信息是SDN控制器根据隐藏服务映射表回复的一个非真实的IP地址和MAC地址。
CN201911022449.7A 2019-10-25 2019-10-25 基于sdn的匿名通信方法 Pending CN110753054A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911022449.7A CN110753054A (zh) 2019-10-25 2019-10-25 基于sdn的匿名通信方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911022449.7A CN110753054A (zh) 2019-10-25 2019-10-25 基于sdn的匿名通信方法

Publications (1)

Publication Number Publication Date
CN110753054A true CN110753054A (zh) 2020-02-04

Family

ID=69280004

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911022449.7A Pending CN110753054A (zh) 2019-10-25 2019-10-25 基于sdn的匿名通信方法

Country Status (1)

Country Link
CN (1) CN110753054A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111327628A (zh) * 2020-03-04 2020-06-23 北京计算机技术及应用研究所 一种基于sdn的匿名通信***
CN114257538A (zh) * 2021-12-07 2022-03-29 中国人民解放军63891部队 一种基于sdn的地址随机变换方法
CN114844670A (zh) * 2022-03-22 2022-08-02 电子科技大学 一种基于命名网络的ip地址隐藏的方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105391635A (zh) * 2015-10-16 2016-03-09 电子科技大学 一种基于sdn的网络虚拟化方法
CN106027527A (zh) * 2016-05-23 2016-10-12 华中科技大学 一种基于sdn环境的匿名通信方法
CN107302496A (zh) * 2017-05-26 2017-10-27 重庆邮电大学 一种基于带内控制的软件定义网络链路故障恢复方法
US20180077113A1 (en) * 2016-09-09 2018-03-15 Hongfujin Precision Electronics (Tianjin) Co.,Ltd. Method for automatic distribution of ip address, system and client using the same
CN109787913A (zh) * 2019-03-15 2019-05-21 北京工业大学 一种基于sdn的数据中心网络动态负载均衡方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105391635A (zh) * 2015-10-16 2016-03-09 电子科技大学 一种基于sdn的网络虚拟化方法
CN106027527A (zh) * 2016-05-23 2016-10-12 华中科技大学 一种基于sdn环境的匿名通信方法
US20180077113A1 (en) * 2016-09-09 2018-03-15 Hongfujin Precision Electronics (Tianjin) Co.,Ltd. Method for automatic distribution of ip address, system and client using the same
CN107302496A (zh) * 2017-05-26 2017-10-27 重庆邮电大学 一种基于带内控制的软件定义网络链路故障恢复方法
CN109787913A (zh) * 2019-03-15 2019-05-21 北京工业大学 一种基于sdn的数据中心网络动态负载均衡方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
单冉冉: "《基于SDN的源地址认证和匿名通信***的设计与实现》", 《万方数据库》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111327628A (zh) * 2020-03-04 2020-06-23 北京计算机技术及应用研究所 一种基于sdn的匿名通信***
CN111327628B (zh) * 2020-03-04 2022-04-05 北京计算机技术及应用研究所 一种基于sdn的匿名通信***
CN114257538A (zh) * 2021-12-07 2022-03-29 中国人民解放军63891部队 一种基于sdn的地址随机变换方法
CN114257538B (zh) * 2021-12-07 2023-08-25 中国人民解放军63891部队 一种基于sdn的地址随机变换方法
CN114844670A (zh) * 2022-03-22 2022-08-02 电子科技大学 一种基于命名网络的ip地址隐藏的方法
CN114844670B (zh) * 2022-03-22 2023-03-10 电子科技大学 一种基于命名网络的ip地址隐藏的方法

Similar Documents

Publication Publication Date Title
US8966270B2 (en) Methods and systems for providing controlled access to the internet
Basescu et al. SIBRA: Scalable internet bandwidth reservation architecture
Zhang et al. Towards a SDN-based integrated architecture for mitigating IP spoofing attack
CN106936811B (zh) 安全设备、***和方法
US20130333029A1 (en) Techniques for traffic diversion in software defined networks for mitigating denial of service attacks
CN110753054A (zh) 基于sdn的匿名通信方法
CN113132342A (zh) 方法、网络装置、隧道入口点装置及存储介质
US10057236B2 (en) Method for operating a network and a network
US20150207728A1 (en) Verifying data plane paths based on a validated secure control plane
CN103701700A (zh) 一种通信网络中的节点发现方法及***
US9722919B2 (en) Tying data plane paths to a secure control plane
US8547848B2 (en) Traffic control within a network architecture providing many-to-one transmission with denial-of-service protection
Athira et al. Study on network performance of interior gateway protocols—RIP, EIGRP and OSPF
Shi et al. OverDoSe: A generic DDoS protection service using an overlay network
WO2017012471A1 (zh) 负载均衡处理方法及装置
Hossain et al. Detecting Black hole attack by selecting appropriate routes for authentic message passing using SHA-3 and Diffie-Hellman algorithm in AODV and AOMDV routing protocols in MANET
Saharan et al. Prevention of DrDoS amplification attacks by penalizing the attackers in SDN environment
CN112615851A (zh) CoLoR架构下多种安全检验机制相结合的边界路由器
CN111327628B (zh) 一种基于sdn的匿名通信***
CN108234495B (zh) 一种基于自治***多维属性的网络带宽分配方法
Simsek Blind packet forwarding in a hierarchical level-based locator/identifier split
Varshney et al. Rectifying flow of duplicacy using Bloom-filter
Yonghui et al. Deterministic packet marking based on the coordination of border gateways
US20190166044A1 (en) Methods and systems for flow virtualization and visibility
Doucette An architectural approach for mitigating next-generation denial of service attacks

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20200204

RJ01 Rejection of invention patent application after publication