CN108259292B - 建立隧道的方法及装置 - Google Patents
建立隧道的方法及装置 Download PDFInfo
- Publication number
- CN108259292B CN108259292B CN201611248613.2A CN201611248613A CN108259292B CN 108259292 B CN108259292 B CN 108259292B CN 201611248613 A CN201611248613 A CN 201611248613A CN 108259292 B CN108259292 B CN 108259292B
- Authority
- CN
- China
- Prior art keywords
- router
- address
- information
- identifier
- private network
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4633—Interconnection of networks using encapsulation techniques, e.g. tunneling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
- Small-Scale Networks (AREA)
Abstract
本申请提供了一种建立隧道的方法,能够提高隧道建立的灵活性。该方法方法中,控制器接收第一路由器发送的请求消息,所述请求消息包括第二私网地址和所述第一路由器的标识;所述控制器根据第二映射表项和所述第二私网地址,获得第二公网IP地址和第二隧道信息,所述第二映射表项包括所述第二私网地址、所述第二公网IP地址和所述第二隧道信息,所述第二公网IP地址为所述第二路由器被分配的公网IP地址,所述第二隧道信息为所述第二路由器的隧道信息;所述控制器根据所述第一路由器的标识,向所述第一路由器发送第一响应消息,所述第一响应消息包括所述第二公网IP地址和所述第二隧道信息。
Description
技术领域
本申请涉及通信领域,尤其涉及一种建立隧道的方法及装置。
背景技术
企业的总部和企业的办事处之间都设置有路由器,以保证企业的总部和企业的办事处之前的通信。每个路由器可连接一个或多个私有网络。如图1所示,R1、R2和R3是设置在不同城市或地区的路由器。R1、R2和R3分别连接一个或多个私有网络,比如R1连接第一私有网络,R2连接第二私有网络,R3连接第三私有网络。如果R1所连接的第一私有网络为企业的总部所采用的私有网络,第三私有网络中的设备要与第二私有网络中的设备通信,则R2与R3之间需要建立一条隧道,比如第三隧道。具体地,R2与R1建立第一隧道,比如R2根据预先配置的R1的公网互联网协议(Internet Protocol,IP)地址,与R1建立第一隧道。R2通过第一隧道与R1通信,获得作为目的路由器的R3的公网IP地址。同理,R3与R1建立第二隧道,并通过第二隧道与R1通信,以获得作为目的路由器的R2的公网IP地址。R2和R3分别利用目的路由器的公网IP地址,建立第三隧道。R2和R3可通过建立的第三隧道进行通信。
上述方法中,作为分支路由器的R2和R3之间的第三隧道的建立过程需要作为中心路由器的R1的参与,且第三隧道的建立之前需要完成第一隧道的第二隧道的建立。在需要交互的私有网络较多的情况下,R1需要接收每个分支路由器发送的请求消息并提供相应的信息,增加了R1的负荷,降低了隧道建立的灵活性。
发明内容
本申请实施例提供了一种建立隧道的方法及装置,能够提高隧道建立的灵活性。
第一方面,提供了一种建立隧道的方法,所述方法包括:控制器接收第一路由器发送的请求消息,所述请求消息包括第二私网地址和所述第一路由器的标识;所述控制器根据第二映射表项和所述第二私网地址,获得第二公网IP地址和第二隧道信息,所述第二映射表项包括所述第二私网地址、所述第二公网IP地址和所述第二隧道信息,所述第二公网IP地址为所述第二路由器被分配的公网IP地址,所述第二隧道信息为所述第二路由器的隧道信息;所述控制器根据所述第一路由器的标识,向所述第一路由器发送第一响应消息,所述第一响应消息包括所述第二公网IP地址和所述第二隧道信息。
上述方法中,控制器可对管辖不同私网的路由器的请求消息进行处理,获得请求建立隧道的第一路由器建立隧道所需的第二公网IP地址和第二隧道信息。这样,所述控制器可灵活控制不同私网中的路由器间隧道的建立,有助于提高隧道建立的灵活性。
其中,所述第二私网地址为所述第二路由器所管辖的私网中主机的地址。所述第二路由器被分配的公网IP地址可以是动态主机配置协议(Dynamic Host ConfigurationProtocol,DHCP)服务器通过DHCP协议为所述第二路由器分配的IP地址。所述第二公网IP地址还可以是其他的服务器或设备为所述第二路由器分配的IP地址。所述第二路由器可利用被分配的所述第二公网IP地址,通过非对称数字用户线路(asymmetric digitalsubscriber line,ADSL)线路、以太网线路或无线链路发送数据或信息。所述第二路由器的隧道信息为所述第二路由器作为入口节点或出口节点的隧道的信息。
其中,所述第一路由器的标识是所述控制器上用来识别所述第一路由器的信息。所述第二路由器的标识是所述控制器上用来识别所述第二路由器的信息。
可选地,所述控制器根据所述第一路由器的标识,向所述第一路由器发送第一响应消息之前,所述方法还包括:所述控制器从所述第二映射表项获得所述第二路由器的标识,所述第二映射表项还包括所述第二路由器的标识;所述控制器根据所述第一路由器的标识和所述第二路由器的标识,查找通信策略,所述通信策略包括能够进行通信的N个路由器的标识,N为大于或等于2的整数,所述N个路由器的标识包括所述第一路由器的标识和所述第二路由器的标识;所述控制器根据所述通信策略,确定所述第一路由器和所述第二路由器之间能够进行通信;
所述控制器根据所述第一路由器的标识,向所述第一路由器发送所述第一响应消息包括:所述控制器基于所述第一路由器和所述第二路由器之间能够进行通信的确定,根据所述第一路由器的标识向所述第一路由器发送所述第一响应消息。
其中,所述通信策略用于标识所述N个路由器处于相同的通信权限,即所述相同的通信权限表示能够进行通信,不同的通信权限表示禁止进行通信。通过通信策略的设置,有助于提高通信的安全性和避免机密信息的泄露。
可选地,所述控制器还可采用其他方式确定所述第一路由器和所述第二路由器之间能否通信。例如:所述控制器可根据所述第一路由器的标识,确定所述第一路由器的权限,所述第一路由器的权限可表示所述第一路由器的安全等级。所述控制器可根据所述第二路由器的标识,确定所述第二路由器的权限,所述第二路由器的权限可表示所述第二路由器的安全等级。所述控制器确定所述第一路由器的权限和所述第二路由器的权限均大于预设的安全等级,则确定所述第一路由器和所述第二路由器之间能够进行通信。
可选地,所述控制器接收第一路由器发送的请求消息之后,所述方法还包括:所述控制器根据第一映射表项和所述第一路由器的标识,获得第一私网地址段、第一公网IP地址和第一隧道信息,所述第一映射表项包括所述第一私网地址段、所述第一公网IP地址、所述第一隧道信息和所述第一路由器的标识,所述第一公网IP地址为所述第一路由器被分配的公网IP地址,所述第一隧道信息为所述第一路由器的隧道信息,所述第一私网地址段为所述第一路由器所管辖的私网被分配的地址段;所述控制器从所述第二映射表项获得所述第二路由器的标识,所述第二映射表项还包括所述第二路由器的标识;所述控制器根据所述第二路由器的标识,向所述第二路由器发送第二响应消息,所述第二响应消息包括所述第一私网地址段、所述第一公网IP地址和所述第一隧道信息。
上述方法中,所述控制器还可在接收到所述第一路由器的请求消息后,将所述第一路由器的对端路由器建立隧道所需的第一公网IP地址、第一隧道信息和第一私网地址段发送给所述对端路由器,所述对端路由器为上述第二路由器。
其中,第一私网地址包括的任一私网地址,比如第一私网地址,为所述第一路由器所管辖的私网中主机的地址。所述第一路由器被分配的公网IP地址可以是DHCP服务器通过DHCP协议为所述第一路由器分配的IP地址。所述第一公网IP地址还可以是其他的服务器或设备为所述第一路由器分配的IP地址。所述第一路由器可利用被分配的所述第一公网IP地址,通过ADSL线路、以太网线路或无线链路发送数据或信息。所述第一路由器的隧道信息为所述第一路由器作为入口节点或出口节点的隧道的信息。
可选地,所述控制器接收第一路由器发送的请求消息之前,所述方法还包括:所述控制器接收所述第二路由器发送的第三信息,所述第三信息包括第二私网地址段和所述第二路由器的标识,所述第二私网地址段为所述第二路由器所管辖的私网被分配的地址段,所述第二私网地址段包括所述第二私网地址;所述控制器接收所述第二路由器发送的第四信息,所述第四信息包括所述第二公网IP地址、所述第二隧道信息和所述第二路由器的标识;所述控制器根据所述第三信息和所述第四信息,生成所述第二映射表项,所述第二映射表项还包括所述第二私网地址段。
可选地,所述控制器接收第一路由器发送的请求消息之前,所述方法还包括:所述控制器接收所述第一路由器发送的第一信息,所述第一信息包括所述第一公网IP地址、所述第一隧道信息和所述第一路由器的标识;所述控制器接收所述第一路由器发送的第二信息,所述第二信息包括所述第一私网地址段和所述第一路由器的标识;所述控制器根据所述第一信息和所述第二信息,生成所述第一映射表项。
第二方面,提供了一种建立隧道的方法,所述方法包括:第一路由器向控制器发送请求消息,所述请求消息包括第二私网地址和所述第一路由器的标识,所述第二私网地址是第二路由器所管辖的私网中被分配的地址段中的地址;所述第一路由器接收所述控制器发送的响应消息,所述响应消息包括第二公网IP地址和第二隧道信息,所述第二公网IP地址是所述第二路由器被分配的公网IP地址,所述第二隧道信息是所述第二路由器的隧道信息;所述第一路由器利用所述第二公网IP地址和所述第二隧道信息,对第一报文进行封装,获得第二报文,所述第一报文包括所述第二私网地址,所述第二报文包括所述第二公网IP地址、所述第二隧道信息和所述第二私网地址;所述第一路由器向所述第二路由器发送所述第二报文。
上述方法中,第一路由器在直接向控制器请求用于建立隧道所需的信息,无需向私网中的充当管理角色的路由器请求用于建立隧道所需的信息,简化了充当管理角色的路由器的负担。此外,所述第一路由器在向控制器请求用于建立隧道所需的信息之前,无需与所述控制器建立用于通信的隧道,节省了网络资源。
可选地,所述方法还包括:所述第一路由器向所述控制器发送第一信息,所述第一信息包括所述第一公网IP地址、所述第一隧道信息和所述第一路由器的标识,所述第一公网IP地址为所述第一路由器被分配的公网IP地址,所述第一隧道信息为所述第一路由器的隧道信息;所述第一路由器向所述控制器发送第二信息,所述第二信息包括第一私网地址段和所述第一路由器的标识,所述第一私网地址段为所述第一路由器所管辖的私网被分配的地址段。
可选地,所述方法还包括:所述第一路由器接收所述第一路由器所管辖的私网中的主机发送的所述第一报文,所述第一报文包括所述第二私网地址;所述第一路由器根据所述第二私网地址和所述第一路由器的标识,生成所述请求消息。
第三方面,提供了一种建立隧道的方法,所述方法包括:第二路由器接收控制器发送的响应消息,所述响应消息包括第一公网IP地址、第一隧道信息和第一私网地址段;所述第二路由器接收到携带第一私网地址的第一报文后,根据所述第一公网IP地址和所述第一隧道信息对所述第一报文进行封装,获得第二报文,所述第一私网地址为所述第一私网地址段中的地址;所述第二路由器向所述第一路由器发送所述第二报文。
上述方法中,第二路由器的对端路由器为第一路由器,即所述第二路由器和所述第一路由器是位于隧道两端的节点。所述第一路由器向控制器发送了请求消息后,所述控制器会向所述第二路由器发送响应消息。所述第二路由器可根据所述响应消息中的第一私网地址段,确定有发往所述第一私网地址段内的地址的第一报文后,用第一公网IP地址和第一隧道信息对所述第一报文进行封装,获得第二报文,实现了与所述第一路由器之间通过隧道进行通信。这样,所述第二路由器无需再向所述控制器请求用于建立隧道的信息。
可选地,所述方法还包括:所述第二路由器向所述控制器发送第一信息,所述第一信息包括第二私网地址段和所述第二路由器的标识,所述第二私网地址段为所述第二路由器所管辖的私网被分配的地址段;所述第二路由器向所述控制器发送第二信息,所述第二信息包括包括第二公网IP地址、第二隧道信息和所述第二路由器的标识。
第四方面,提供了一种控制装置,所述控制装置包括用于实现上述第一方面或第一方面的任意一种实现方式提供的方法的模块。所述控制装置可以是上述第一方面或第一方面的任意一种实现方式提供的方法中的控制器。
第五方面,提供了一种第一转发装置,所述第一转发装置包括用于实现上述第二方面或第二方面的任意一种实现方式提供的方法的模块。所述第一转发装置可以是上述第二方面或第二方面的任意一种实现方式提供的方法中的第一路由器。
第六方面,提供了一种第二转发装置,所述第二转发装置包括用于实现上述第三方面或第三方面的任意一种实现方式提供的方法的模块。所述第二转发装置可以是上述第三方面或第三方面的任意一种实现方式提供的方法中的第二路由器。
第七方面,提供了一种控制装置,所述控制装置包括:处理器、存储器和通信接口。所述处理器、所述存储器和所述通信接口通过通信总线连接。所述存储器用于存储程序。所述处理器根据从所述存储器中读取的程序所包括的可执行指令,执行上述第一方面或第一方面的任意一种可能的实现方式提供的方法。
第八方面,提供了一种第一转发装置,所述第一转发装置包括:处理器、存储器和通信接口。所述处理器、所述存储器和所述通信接口通过通信总线连接。所述存储器用于存储程序。所述处理器根据从所述存储器中读取的程序所包括的可执行指令,执行上述第二方面或第二方面的任意一种可能的实现方式提供的方法。
第九方面,提供了一种第二转发装置,所述第二转发装置包括:处理器、存储器和通信接口。所述处理器、所述存储器和所述通信接口通过通信总线连接。所述存储器用于存储程序。所述处理器根据从所述存储器中读取的程序所包括的可执行指令,执行上述第三方面或第三方面的任意一种可能的实现方式提供的方法。
第十方面,提供了一种建立隧道的系统,所述建立隧道的系统包括第四方面或第四方面的任意一种可能的实现方式提供的控制装置、第五方面或第五方面的任意一种可能的实现方式提供的第一转发装置、以及第六方面或第六方面的任意一种可能的实现方式提供的第二转发装置;或者
所述建立隧道的系统包括第七方面或第七方面的任意一种可能的实现方式提供的控制装置、第八方面或第八方面的任意一种可能的实现方式提供的第一转发装置、以及第九方面或第九方面的任意一种可能的实现方式提供的第二转发装置。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为现有的网络场景示意图。
图2为本申请实施例提供的一种网络场景示意图。
图3为本申请实施例提供的建立隧道的方法流程图。
图4为本申请实施例提供的控制装置的结构示意图。
图5为本申请实施例提供的第一转发装置的结构示意图。
图6为本申请实施例提供的控制装置的结构示意图。
图7为本申请实施例提供的第一转发装置的结构示意图。
具体实施方式
本申请实施例描述的应用场景是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着网络架构的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
本申请实施例提供的建立隧道的方法中,控制器接收第一路由器发送的请求消息,所述请求消息包括第二私网地址和所述第一路由器的标识;所述控制器根据第二映射表项和所述第二私网地址,获得第二公网IP地址和第二隧道信息,所述第二映射表项包括所述第二私网地址、所述第二公网IP地址和所述第二隧道信息,所述第二公网IP地址为所述第二路由器被分配的公网IP地址,所述第二隧道信息为所述第二路由器的隧道信息;所述控制器根据所述第一路由器的标识,向所述第一路由器发送第一响应消息,所述第一响应消息包括所述第二公网IP地址和所述第二隧道信息。
图2为本申请实施例提供的一种网络场景示意图。如图2所示,R1、R2和R3可以是A设置在不同地区的路由器,A可以表示公司、机关、机构等。R1所管辖的M个私有网络、R2所管辖的L个私有网络以及R3所管辖的K个私有网络为A的私有网络。其中,M、L和K均为大于或等于1的整数。R1所管辖的M个私有网络表示所述M个私有网络需要通过R1与其他服务器或路由器进行通信。R2所管辖的L个私有网络表示所述L个私有网络需要通过R2与其他服务器或路由器进行通信。R3所管辖的K个私有网络表示所述K个私有网络需要通过R3与其他服务器或路由器进行通信。R1包括接口212、接口210和接口213。其中,接口210是能够访问骨干网的接口,所述骨干网可以是互联网(Internet)。接口212是能够与R2建立隧道的接口。接口213是能够与R3建立隧道的接口。接口212和接口213属于逻辑接口,从接口212的收发动作或接口213的收发动作在物理层由接口210的收发动作来实现。R2包括接口221、接口220和接口223。其中,接口221是能够与R1建立隧道的接口。接口220是能够访问所述骨干网的接口。接口223是能够与R3建立隧道的接口。接口221和接口223属于逻辑接口,接口221的收发动作或接口223的收发动作在物理层由接口220的收发动作来实现。R3包括接口231、接口230和接口232。其中,接口231是能够与R1建立隧道的接口。接口230是能够访问所述骨干网的接口。接口232是能够与R2建立隧道的接口。接口231和接口232属于逻辑接口,接口231的收发动作或接口232的收发动作在物理层由接口210的收发动作来实现。控制器24能够与R1、R2和R3进行通信。图2仅以3个路由器为例进行了说明,本申请实施例并不局限于上述数目的路由器,可在上述数目的路由器的基础上进行扩展,在此不再对其他可能的实现方式进行举例说明。
图3为本申请实施例提供的建立隧道的方法流程图。下面结合图2和图3,对本申请实施例提供的建立隧道的方法进行说明。
301,R1向控制器发送第一信息和第二信息。
举例说明,所述第一信息包括第一公网IP地址、第一隧道信息和R1的标识。其中,所述第一公网IP地址为R1被分配的公网IP地址,具体可以是R1的接口210被分配的公网IP地址。所述第一隧道信息为R1的隧道信息。R1可配置一个接口来实现多个隧道的建立,即接口212和接口213可共用一个物理接口,接口212和接口213可被分配相同的隧道信息,该相同的隧道信息为所述第一隧道信息。R1可配置多个接口来实现多个隧道的建立,即接口212和接口213在物理上为不同的接口,接口212的隧道信息和接口213的隧道信息不同,接口212的隧道信息和接口213的隧道信息中的一个或多个可作为所述第一隧道信息,即所述第一隧道信息可以是一个地址集。
其中,所述第一公网IP地址可以是DHCP服务器通过DHCP协议为R1分配的IP地址。所述第一公网IP地址还可以是其他的服务器或设备为R1分配的IP地址。R1可利用被分配的所述第一公网IP地址,通过ADSL线路、以太网线路或无线链路发送数据或信息。R1的隧道信息为R1作为入口节点或出口节点的隧道的信息。R2的标识是能够被所述控制器识别的用来标识R1的信息。
举例说明,所述第二信息包括第一私网地址段和R1的标识。所述第一私网地址段是R1所管辖的私网被分配的地址段。R1所管辖的私网中的设备可利用所述第一私网地址段中的地址与其他私网中的设备进行通信。可选地,R1可将其管辖的M个私有网络被分配的地址段发送至所述控制器。在本申请实施例中仅以一个私网地址段为例进行说明,对于多个私网地址段的处理方式与本申请实施例提供的方法相似,在此不再赘述。
举例说明,R1可以通过不同的消息,向所述控制器发送所述第一信息和所述第二信息。具体的,R1可向所述控制器发送第一消息,所述第一消息携带所述第一信息。R1每次重启后,会重新申请公网IP地址,即所述第一公网IP地址有可能发生改变。R1可在每次重启后向所述控制器发送所述第一消息,以便所述控制器能够及时和有效地更新相应的映射表项。R1可向所述控制器发送第二消息,所述第二消息携带所述第二信息。R1可在所述第一私网地址段发生变化后,向所述控制器发送所述第二消息,以便所述控制器能够及时和有效地更新相应的映射表项。本申请实施例对R1发送所述第一消息和所述第二消息的顺序不进行限定。
可选地,如果R1将所述第一信息和所述第二信息携带在同一个消息中,发送给所述控制器,则R1可对所述第一信息和所述第二信息包括的参数进行优化,R1可删除所述第一信息包括的R1的标识或删除所述第二信息包括的R1的标识。
举例说明,R1与所述控制器之间采用边界网关协议(Border Gateway Protocol,BGP)进行通信,R1可采用边界网关协议更新(BGP update)消息上报所述第一信息和所述第二信息。R1向所述控制器发送第一BGP update消息,所述第一BGP update消息包括所述第一信息。所述第一BGP update包括的网络层可达信息(network layer reachabilityinformation,NLRI)的类型为虚拟专用网参数(virtual private networkspecification,VPN specification),所述第一BGP update消息中的NLRI可用于携带所述第一信息,具体可携带在NLRI值(value)字段,表示为:
<type,length,第一公网IP地址>
<type,length,第一隧道信息>
<type,length,R1的标识>
R1向所述控制器发送第二BGP update消息,所述第二BGP update消息包括所述第二信息。所述第二BGP update消息包括的NLRI的类型为VPN specification,所述第二BGPupdate消息中的NLRI可用于携带所述第二信息,具体可携带在NLRI value字段,表示为:
<type,length,第一私网地址段>
<type,length,R1的标识>
可选地,R1与所述控制器之间可采用开放流(Openflow)协议进行通信。R1可通过第一表状态(table status)消息,向所述控制器发送所述第一信息。R1可通过第二tablestatus消息,向所述控制器发送所述第二信息。其中,table status消息的格式可表示为:
其中,所述第一table status消息包括的ofp_table_desc table可用来携带所述第一信息,所述第二table status消息包括的ofp_table_desc table可用来携带所述第二信息。
可选地,R1与所述控制器通过Openflow协议进行通信,R1还可利用流删除(flowremoved)消息,向所述控制器发送所述第一信息和所述第二信息,在此不再举例说明。
可选地,R1与所述控制器之间可通过网络配置协议(Network ConfigurationProtocol,NETCONF)进行通信。R1向所述控制器发送通知(notification)消息,所述notification消息包括所述第一信息和所述第二信息。其中,所述notification消息可表示为:
可选地,R1可通过发送第一notification消息,向所述控制器发送所述第一信息,所述第一notification消息包括所述第一信息。R1可通过发送第二notification消息,向所述控制器发送所述第二信息,所述第二notification消息包括所述第二信息。所述第一notification消息和所述第二notification消息的内容可参照上述notification消息,在此不再对所述第一notification消息和所述第二notification消息的内容进行赘述。
302,所述控制器根据所述第一信息和所述第二信息,生成第一映射表项。
举例说明,所述控制器可根据所述第一信息和所述第二信息所包括的R1的标识,确定所述第一信息和所述第二信息是与R1相关的信息。所述第一映射表项包括所述第一公网IP地址、所述第一隧道信息、所述第一私网地址段和R1的标识。其中,所述第一公网IP地址、所述第一隧道信息、所述第一私网地址段和R1的标识间是一一对应的关系。
303,R2向控制器发送第三信息和第四信息。
举例说明,所述第三信息包括第二公网IP地址、第二隧道信息和R2的标识。其中,所述第二公网IP地址为R2被分配的公网IP地址,具体可以是R2的接口220被分配的公网IP地址。所述第二隧道信息为R2的隧道信息。R2可配置一个接口来实现多个隧道的建立,即接口221和接口223在物理上为一个接口,接口221和接口223可被分配相同的隧道信息,该相同的隧道信息为所述第二隧道信息。R2可配置多个接口来实现多个隧道的建立,即接口221和接口223在物理上为不同的接口,接口221的隧道信息和接口223的隧道信息不同,接口221的隧道信息和接口223的隧道信息中的一个或多个可作为所述第二隧道信息,即所述第二隧道信息可以是一个地址集。
其中,所述第二公网IP地址可以是DHCP服务器通过DHCP协议为R2分配的IP地址。所述第二公网IP地址还可以是其他的服务器或设备为R2分配的IP地址。R2可利用被分配的所述第二公网IP地址,通过ADSL线路、以太网线路或无线链路发送数据或信息。R2的隧道信息为R2作为入口节点或出口节点的隧道的信息。R2的标识是能够被所述控制器识别的用来标识R2的信息。
举例说明,所述第四信息包括第二私网地址段和R2的标识。所述第二私网地址段是R2所管辖的私网被分配的地址段。R2所管辖的私网中的设备可利用所述第二私网地址段中的地址与其他私网中的设备进行通信。可选地,R2可将其管辖的L个私有网络被分配的地址段发送至所述控制器。在本申请实施例中仅以一个私网地址段为例进行说明,对于多个私网地址段的处理方式与本申请实施例提供的方法相似,在此不再赘述。
举例说明,R2可以通过不同的消息,向所述控制器发送所述第三信息和所述第四信息。具体的,R2可向所述控制器发送第三消息,所述第三消息携带所述第三信息。R2每次重启后,会重新申请公网IP地址,即所述第二公网IP地址有可能发生改变。R2可在每次重启后向所述控制器发送所述第三消息,以便所述控制器能够及时和有效地更新相应的映射表项。R2可向所述控制器发送第四消息,所述第四消息携带所述第四信息。R2可在所述第二私网地址段发生变化后,向所述控制器发送所述第四消息,以便所述控制器能够及时和有效地更新相应的映射表项。本申请实施例对R2发送所述第三消息和所述第四消息的顺序不进行限定。
可选地,如果R2将所述第三信息和所述第四信息携带在同一个消息中,发送给所述控制器,则R2可对所述第三信息和所述第四信息包括的参数进行优化,R2可删除所述第三信息包括的R2的标识或删除所述第四信息包括的R2的标识。
举例说明,R2可采用301中R1所采用的任一种协议,向所述控制器发送所述第三信息和所述第四信息,在此不再对R2采用的消息的格式进行赘述。
304,所述控制器根据所述第三信息和所述第四信息,生成第二映射表项。
举例说明,所述控制器可根据所述第三信息和所述第四信息所包括的R2的标识,确定所述第三信息和所述第四信息是与R2相关的信息。所述第二映射表项包括所述第二公网IP地址、所述第二隧道信息、所述第二私网地址段和R2的标识。其中,所述第二公网IP地址、所述第二隧道信息、所述第二私网地址段和R2的标识间是一一对应的关系。
305,R3向控制器发送第五信息和第六信息。
举例说明,所述第五信息包括第三公网IP地址、第三隧道信息和R3的标识。其中,所述第三公网IP地址为R3被分配的公网IP地址,具体可以是R3的接口230被分配的公网IP地址。所述第三隧道信息为R3的隧道信息。R3可配置一个接口来实现多个隧道的建立,即接口231和接口232在物理上为一个接口,接口231和接口232可被分配相同的隧道信息,该相同的隧道信息为所述第三隧道信息。R3可配置多个接口来实现多个隧道的建立,即接口231和接口232在物理上为不同的接口,接口231的隧道信息和接口232的隧道信息不同,接口231的隧道信息和接口232的隧道信息中的一个或多个可作为所述第三隧道信息,即所述第三隧道信息可以是一个地址集。
其中,所述第三公网IP地址可以是DHCP服务器通过DHCP协议为R3分配的IP地址。所述第三公网IP地址还可以是其他的服务器或设备为R3分配的IP地址。R3可利用被分配的所述第三公网IP地址,通过ADSL线路、以太网线路或无线链路发送数据或信息。R3的隧道信息为R3作为入口节点或出口节点的隧道的信息。R3的标识是能够被所述控制器识别的用来标识R3的信息。
举例说明,所述第六信息包括第三私网地址段和R3的标识。所述第三私网地址段是R3所管辖的私网被分配的地址段。R3所管辖的私网中的设备可利用所述第三私网地址段中的地址与其他私网中的设备进行通信。可选地,R3可将其管辖的K个私有网络被分配的地址段发送至所述控制器。在本申请实施例中仅以一个私网地址段为例进行说明,对于多个私网地址段的处理方式与本申请实施例提供的方法相似,在此不再赘述。
举例说明,R3可以通过不同的消息,向所述控制器发送所述第五信息和所述第六信息。具体的,R3可向所述控制器发送第五消息,所述第五消息携带所述第五信息。R3每次重启后,会重新申请公网IP地址,即所述第三公网IP地址有可能发生改变。R3可在每次重启后向所述控制器发送所述第五消息,以便所述控制器能够及时和有效地更新相应的映射表项。R3可向所述控制器发送第六消息,所述第六消息携带所述第六信息。R3可在所述第三私网地址段发生变化后,向所述控制器发送所述第六消息,以便所述控制器能够及时和有效地更新相应的映射表项。本申请实施例对R3发送所述第五消息和所述第六消息的顺序不进行限定。
可选地,如果R3将所述第五信息和所述第六信息携带在同一个消息中,发送给所述控制器,则R3可对所述第五信息和所述第六信息包括的参数进行优化,R3可删除所述第五信息包括的R3的标识或删除所述第六信息包括的R3的标识。
举例说明,R3可采用301中R1所采用的任一种协议,向所述控制器发送所述第三信息和所述第四信息,在此不再赘述。
306,所述控制器根据所述第五信息和第六信息,生成第三映射表项。
举例说明,所述控制器可根据所述第五信息和所述第六信息所包括的R3的标识,确定所述第五信息和所述第六信息是与R3相关的信息。所述第三映射表项包括所述第三公网IP地址、所述第三隧道信息、所述第三私网地址段和R3的标识。其中,所述第三公网IP地址、所述第三隧道信息、所述第三私网地址段和R3的标识间是一一对应的关系。
本申请实施例提供的方法不对301、303和305的发生顺序进行限定,只要保证301早于302执行,303早于304执行,305早于306发生即可。
本申请实施例提供的方法,仅以在R1与R2建立隧道为例进行说明,即307至310的内容。对于R1和R3间、以及R2和R3建立隧道的方法可参见307至310的内容,本申请实施例不再逐一举例说明。
307,R1向所述控制器发送请求消息。
举例说明,所述请求消息包括第二私网地址和R1的标识。所述第二私网地址属于所述第二私网地址段。所述第二私网地址可以是R1所管辖的私网中的主机向R1发送的第一报文中携带的,还可以是R1上预先配置的。
可选地,R1可在接收到R1所管辖的私网中的主机发送的所述第一报文后,生成所述请求消息,并执行向所述控制器发送所述请求消息。
为了提高报文转发效率,R1可在配置了所述第二私网地址后,生成所述请求消息,并执行向所述控制器发送所述请求消息。
举例说明,所述请求消息可以是301中R1采用的任一种协议下的消息,即R1可采用301中的三种消息来向所述控制器发送所述请求消息。
308,所述控制器根据所述请求消息,获得第一响应消息和第二响应消息。
举例说明,所述控制器从所述请求消息中获得所述第二私网地址和R1的标识。所述控制器利用所述第二私网地址和R1的标识查找生成的映射表,所述映射表包括所述第一映射表项、所述第二映射表项和所述第三映射表项。所述控制器根据所述第二私网地址,确定所述第二映射表项包括的所述第二私网地址段包括所述第二私网地址。所述控制器根据所述第二映射表包括的R2的标识,确定R1需要与R2建立隧道。
在不考虑R1和R2之间的通信策略的情况下,所述控制器根据所述第二映射表项,生成所述第一响应消息。所述第一响应消息包括所述第二公网IP地址和所述第二隧道信息。所述控制器根据R1的标识,向R1发送所述第一响应消息。同时或之后,所述控制器根据R1的标识,确定所述第一映射表项包括R1的标识。所述控制器根据所述第一映射表项,生成所述第二响应消息。
可选地,所述第一响应消息还包括所述第二私网地址段。这样,R1可根据所述第二私网地址段,在接收到携带所述第二私网地址段内的地址的报文后,可利用所述第二公网IP地址和所述第二隧道信息,向R2发送报文。
举例说明,本申请实施例中的通信策略可以是基于安全等因素考虑设置的多个路由器之间的通信规则。所述通信策略包括能够进行通信的N个路由器的标识,N为大于或等于2的整数。若所述N个路由器的标识包括R1的标识和R2的标识,则表示R1和R2之间能够建立隧道。
在考虑R1和R2之间的通信策略的情况下,所述控制器可在确定R1和R2之间能建立隧道之后,生成所述第一响应消息。
举例说明,所述第一响应消息除了用于向R1传递建立隧道所需的信息之外,还用于指示R1建立隧道。所述第二响应消息除了用于向R2传递建立隧道所需的信息之外,还用于指示R2建立隧道。
可选地,所述控制器还可采用其他方式确定R和R2之间能否通信。例如:所述控制器可根据R1的标识,确定R1的权限,R1的权限可表示R1的安全等级。所述控制器可根据R2的标识,确定R2的权限,R2的权限可表示R2的安全等级。所述控制器确定R1的权限和R2的权限均大于预设的安全等级,则确定所述第一路由器和所述第二路由器之间能够进行通信。
309,所述控制器向R1发送所述第一响应消息。
举例说明,所述控制器根据R1的标识,向所述R1发送所述第一响应消息。
在R1在接收到所述第一报文后发送所述请求消息的情况下,R1可利用所述第一响应消息包括的所述第二公网IP地址和所述第二隧道信息,对所述第一报文进行封装,获得第二报文。所述第二报文包括所述第二公网IP地址、所述第二隧道信息和所述第二私网地址。所述第二报文包括的所述第二隧道信息为出口节点的隧道信息。可选地,R1还可将所述第一公网IP地址和所述第一隧道信息,添加至所述第二报文中。所述第一隧道信息为入口节点的隧道信息。R1可通过所述第一隧道信息对应的接口,向R2发送所述第二报文。如图2所示,如果R1与R2进行通信,则所述第一隧道信息对应的接口可以是接口212,在物理层面所述第二报文通过接口210进行发送。可选地,所述第二报文还包括所述第一公网IP地址和所述第一隧道信息。以隧道信息为隧道的IP地址为例,所述第一隧道信息表示隧道的源IP地址,所述第二隧道信息表示隧道的目的IP地址。所述第一公网IP地址表示物理层面的源IP地址,所述第二公网IP地址表示物理层面的目的IP地址。
可选地,所述第一响应消息还可包括所述第二私网地址段。R1接收到其所管辖的私网中的设备发送的第三报文,所述第三报文包括第三私网地址,所述第三私网地址属于所述第二私网地址段。R1确定所述第三私网地址属于所述第二私网地址段后,用所述第二公网IP地址和所述第二隧道信息对所述第三报文进行封装,获得第四报文,所述第四报文包括所述第二公网IP地址、所述第二隧道信息和所述第三报文。如图2所示,如果R1与R2进行通信,则所述第一隧道信息对应的接口可以是接口212,在物理层面所述第二报文通过接口210进行发送。
在R1与所述控制器之间采用BGP协议通信的情况下,所述第一响应消息为第三BGPupdate消息,所述第三BGP update消息包括类型为VPN操作(operation)的NLRI。所述第三BGP update消息包括的所述NLRI可表示为:
<type,length,操作类型>
<type,length,第二私网网段>
<type,length,第二隧道信息>
<type,length,第二公网IP地址>
其中,第一条的操作类型用于指示对所述第一响应消息包括的参数进行的操作。所述操作类型可以是创建、删除或更新。若操作类型是创建,R1可将所述第一响应消息包括的参数保存于本地。若操作类型是删除,R1可删除本地保存的与所述第一响应消息包括的参数相同的参数。若操作类型是更新,R1可用所述第一响应消息包括的参数更新本地保存的参数。
在R1与所述控制器之前采用Openflow协议通信的情况下,所述第一响应消息可以为流表配置(flow table configuration)消息。所述flow table configuration消息包括的匹配(match)字段可用于携带所述第二私网地址段,所述flow table configuration消息包括的指令(instruction)字段可用于携带所述第二隧道信息和所述第二公网IP地址。
在R1与所述控制器之前采用NETCONF协议通信的情况下,所述第一响应消息可以为NETCONF配置(configuration)消息。所述NETCONF configuration消息可用于携带所述第二私网网关、所述第二隧道信息和所述第二公网IP地址。
310,所述控制器向R2发送所述第二响应消息。
举例说明,所述控制器根据R2的标识,向所述R2发送所述第二响应消息。所述第二响应消息也可采用309中第一响应消息的格式,在此不再赘述。
举例说明,R2可保存所述第二请求消息包括的所述第一私网地址段、所述第一公网IP地址和所述第一隧道信息。这样,如果R2所管辖的私网中的设备发送的第四报文中携带了所述第一私网地址段中的地址,则R2无需再向所述控制器请求用于建立隧道所需的信息,R2可利用所述第一公网IP地址和所述第一隧道信息,对所述第四报文进行封装,获得第五报文。所述第五报文包括所述第一公网IP地址和所述第一隧道信息。所述第五报文包括的所述第一隧道信息为出口节点的隧道信息,可选地,R2还可将所述第二公网IP地址和所述第二隧道信息,添加至所述第五报文中。所述第二隧道信息为入口节点的隧道信息。
本申请实施例提供的方法中,控制器可对处于不同私网中的路由器的请求消息进行处理,查找获得请求建立隧道的R1建立隧道所需的第二公网IP地址和第二隧道信息。所述控制器还可在接收到R1的请求消息后,将R1的对端路由器建立隧道所需的第一公网IP地址、第一隧道信息和第一私网地址段发送给所述对端路由器,所述对端路由器为R2。这样,所述控制器可灵活控制不同私网中的路由器间隧道的建立,有助于提高隧道建立的灵活性。
本申请实施例中的路由器被配置的隧道信息包括隧道的标识,所述隧道的标识可以是隧道的IP地址。可选地,所述路由器被配置的隧道信息还可包括隧道的类型。可选地,所述路由器被配置的隧道信息还可包括其他建立隧道所需的信息和参数,在此不再逐一举例说明。
图4为本申请实施例提供的控制装置的结构示意图。图4对应的控制装置可以是上述图2中的控制器,还可以是图3对应的实施例中的控制器。图4对应的控制装置可执行图3对应的实施例提供的方法中控制器执行的方法。如图4所示,本申请实施例提供的控制装置包括第一接收模块401、第一获得模块402和第一发送模块404。
所述第一接收模块401用于接收第一转发装置发送的请求消息,所述请求消息包括第二私网地址和所述第一转发装置的标识。
所述第一获得模块402用于根据第二映射表项和所述第二私网地址,获得第二公网IP地址和第二隧道信息。所述第二映射表项包括所述第二私网地址、所述第二公网IP地址和所述第二隧道信息。所述第二公网IP地址为所述第二转发装置被分配的公网IP地址。所述第二隧道信息为所述第二转发装置的隧道信息。可选地,所述第二映射表项还包括所述第二转发装置的标识。
所述第一发送模块404用于根据所述第一转发装置的标识,向所述第一转发装置发送第一响应消息,所述第一响应消息包括所述第二公网IP地址和所述第二隧道信息。
可选地,所述第一获得模402块还用于从所述第二映射表项获得所述第二转发装置的标识。所述控制装置还包括:第二获得模块403和第二发送模块405。所述第二获得模块403用于根据第一映射表项和所述第一转发装置的标识,获得第一私网地址段、第一公网互联网协议IP地址和第一隧道信息。所述第一映射表项包括所述第一私网地址段、所述第一公网IP地址、所述第一隧道信息和所述第一转发装置的标识。所述第一公网IP地址为所述第一转发装置被分配的公网IP地址。所述第一隧道信息为所述第一转发装置的隧道信息。所述第一私网地址段为所述第一转发装置所管辖的私网被分配的地址段。所述第二发送模块405用于根据所述第二转发装置的标识,向所述第二转发装置发送第二响应消息,所述第二响应消息包括所述第一私网地址段、所述第一公网IP地址和所述第一隧道信息。
可选地,所述第一获得模402块还用于从所述第二映射表项获得所述第二转发装置的标识。所述控制装置还包括:查找模块406和判定模块407。所述查找模块406用于根据所述第一转发装置的标识和所述第二转发装置的标识,查找通信策略,所述通信策略包括能够进行通信的N个转发装置的标识,N为大于或等于2的整数,所述N个转发装置的标识包括所述第一转发装置的标识和所述第二转发装置的标识。所述判定模块407用于根据所述通信策略,确定所述第一转发装置和所述第二转发装置之间能够进行通信后,触发所述第一发送模块404。可选地,所述判定模块407还可在确定所述第一转发装置和所述第二转发装置之间能够进行通信后,触发所述第二发送模块405。
可选地,所述控制装置还包括:第二接收模块、第三接收模块和第一生成模块。所述第二接收模块用于接收所述第一转发装置发送的第一信息,所述第一信息包括所述第一公网IP地址、所述第一隧道信息和所述第一转发装置的标识。所述第三接收模块用于接收所述第一转发装置发送的第二信息,所述第二信息包括所述第一私网地址段和所述第一转发装置的标识。所述第一生成模块用于根据所述第一信息和所述第二信息,生成第一映射表项。
可选地,所述控制装置还包括:第四接收模块、第五接收模块和第二生成模块。所述第四接收模块用于接收所述第二转发装置发送的第三信息,所述第三信息包括第二私网地址段和所述第二转发装置的标识,所述第二私网地址段为所述第二转发装置所管辖的私网被分配的地址段,所述第二私网地址段包括所述第二私网地址。所述第五接收模块用于接收所述第二转发装置发送的第四信息,所述第四信息包括所述第二公网IP地址、所述第二隧道信息和所述第二转发装置的标识。所述第二生成模块用于根据所述第三信息和所述第四信息,生成所述第二映射表项,所述第二映射表项包括所述第二私网地址段、所述第二公网IP地址、所述第二隧道信息和所述第二转发装置的标识。
图5为本申请实施例提供的第一转发装置的结构示意图。图5对应的第一转发装置可以是图2中的R1或图3对应的实施例中的R1。图5对应的第一转发装置可以采用图3对应的实施例中R1所采用的方法。本申请实施例提供的第一转发装置包括第一发送模块501、第一接收模块502、第一生成模块503和第二发送模块504。
所述第一发送模块501用于向控制装置发送请求消息。所述请求消息包括第二私网地址和所述第一转发装置的标识。所述第二私网地址是第二转发装置所管辖的私网中被分配的地址段中的地址。
所述第一接收模块502用于接收所述控制装置发送的响应消息。所述响应消息包括第二公网互联网协议IP地址和第二隧道信息。所述第二公网IP地址是所述第二转发装置被分配的公网IP地址。所述第二隧道信息是所述第二转发装置的隧道信息。
所述第一生成模块503用于利用所述第二公网IP地址和所述第二隧道信息,对第一报文进行封装,获得第二报文。所述第一报文包括所述第二私网地址。所述第二报文包括所述第二公网IP地址、所述第二隧道信息和所述第二私网地址。
所述第二发送模块504用于向所述第二转发装置发送所述第二报文。
可选地,所述第一转发装置还包括:第三发送模块和第四发送模块。所述第三发送模块用于向所述控制装置发送第一信息,所述第一信息包括所述第一公网IP地址、所述第一隧道信息和所述第一转发装置的标识,所述第一公网IP地址为所述第一转发装置被分配的公网IP地址,所述第一隧道信息为所述第一转发装置的隧道信息。所述第四发送模块用于向所述控制装置发送第二信息,所述第二信息包括第一私网地址段和所述第一转发装置的标识,所述第一私网地址段为所述第一转发装置所管辖的私网被分配的地址段。
可选地,所述第一转发装置还包括:第二接收模块和第二生成模块。所述第二接收模块用于接收所述第一转发装置所管辖的私网中的用户发送的第一报文,所述第一报文包括所述第二私网地址。所述第二生成模块用于根据所述第二私网地址和所述第一转发装置的标识,生成所述请求消息。
本申请实施例中的所述第二转发装置是所述第一转发装置的对端设备,即所述第一转发装置和所述第二转发装置是处于隧道两端的设备。
图6为本申请实施例提供的控制装置的结构示意图。该实施例的控制装置可以与图4对应实施例的控制装置为同一装置。该实施例的控制装置可以执行图3对应的实施例中控制器所采用的方法。该实施例提供的控制装置包括:处理器601、存储器602和通信接口603。所述处理器601、所述存储器602和所述通信接口603通过通信总线604连接。所述存储器602用于存储程序。所述处理器601根据从所述存储器602中读取的程序所包括的可执行指令,执行上述图3对应的实施例中控制器所执行的方法步骤。
图7为本申请实施例提供的第一转发装置的结构示意图。该实施例的第一转发装置可以与图5对应实施例的第一转发装置为同一装置。该实施例的第一转发装置可以执行图3对应的实施例中R1所采用的方法。该实施例提供的第一转发装置包括:处理器701、存储器702和通信接口703。所述处理器701、所述存储器702和所述通信接口703通过通信总线704连接。所述存储器702用于存储程序。所述处理器701根据从所述存储器702中读取的程序所包括的可执行指令,执行上述图3对应的实施例中R1所执行的方法步骤。如果所述第一转发装置为其他转发装置需要建立的隧道的对端设备,则所述处理器701还可根据从所述存储器702中读取的程序所包括的可执行指令,执行上述图3对应的实施例中R2所执行的方法步骤。
本申请实施例中提及的“第一”和“第二”不表示先后顺序。本申请实施例中的“第一”和“第二”表示不同的设备和信息。
上述处理器可以是微处理器或者该处理器也可以是任何常规的处理器。结合本发明实施例所公开的方法的步骤,可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。当使用软件实现时,可以将实现上述功能的代码存储在计算机可读介质中。计算机可读介质包括计算机存储介质。存储介质可以是计算机能够存取的任何可用介质。以此为例但不限于:计算机可读介质可以是随机存取存储器(英文全称为random access memory,英文缩写为RAM)、只读存储器(英文全称为read-only memory,英文缩写为ROM)、电可擦可编程只读存储器(英文全称为electrically erasableprogrammable read-only memory,英文缩写为EEPROM)、只读光盘(英文全称为compactdisc read-only memory,英文缩写为CD-ROM)或其他光盘存储、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的程序代码并能够由计算机存取的任何其他介质。计算机可读介质可以是压缩光碟(英文全称为compact disc,英文缩写为CD)、激光碟、光碟、数字视频光碟(英文全称为digital video disc,英文缩写为DVD)、软盘或者蓝光光碟。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (10)
1.一种建立隧道的方法,其特征在于,所述方法包括:
控制器接收第一路由器发送的请求消息,所述请求消息包括第二私网地址和所述第一路由器的标识;
所述控制器根据第二映射表项和所述第二私网地址,获得第二公网IP地址和第二隧道信息,所述第二映射表项包括所述第二私网地址、所述第二公网IP地址和所述第二隧道信息,所述第二公网IP地址为第二路由器被分配的公网IP地址,所述第二隧道信息为所述第二路由器的隧道信息;
所述控制器从所述第二映射表项获得所述第二路由器的标识,所述第二映射表项还包括所述第二路由器的标识;
所述控制器根据所述第一路由器的标识和所述第二路由器的标识,查找通信策略;
所述控制器根据所述通信策略,确定所述第一路由器和所述第二路由器之间能够进行通信;
所述控制器基于所述第一路由器和所述第二路由器之间能够进行通信的确定,根据所述第一路由器的标识,向所述第一路由器发送第一响应消息,所述第一响应消息包括所述第二公网IP地址和所述第二隧道信息。
2.根据权利要求1所述的方法,其特征在于,
所述控制器根据所述第一路由器的标识和所述第二路由器的标识,查找通信策略,
所述通信策略包括能够进行通信的N个路由器的标识,N为大于或等于2的整数,所述N个路由器的标识包括所述第一路由器的标识和所述第二路由器的标识。
3.根据权利要求1所述的方法,其特征在于,所述控制器接收第一路由器发送的请求消息之后,所述方法还包括:
所述控制器根据第一映射表项和所述第一路由器的标识,获得第一私网地址段、第一公网IP地址和第一隧道信息,所述第一映射表项包括所述第一私网地址段、所述第一公网IP地址、所述第一隧道信息和所述第一路由器的标识,所述第一公网IP地址为所述第一路由器被分配的公网IP地址,所述第一隧道信息为所述第一路由器的隧道信息,所述第一私网地址段为所述第一路由器所管辖的私网被分配的地址段;
所述控制器从所述第二映射表项获得所述第二路由器的标识,所述第二映射表项还包括所述第二路由器的标识;
所述控制器根据所述第二路由器的标识,向所述第二路由器发送第二响应消息,所述第二响应消息包括所述第一私网地址段、所述第一公网IP地址和所述第一隧道信息。
4.根据权利要求1至3任一所述的方法,其特征在于,所述控制器接收第一路由器发送的请求消息之前,所述方法还包括:
所述控制器接收所述第二路由器发送的第三信息,所述第三信息包括第二私网地址段和所述第二路由器的标识,所述第二私网地址段为所述第二路由器所管辖的私网被分配的地址段,所述第二私网地址段包括所述第二私网地址;
所述控制器接收所述第二路由器发送的第四信息,所述第四信息包括所述第二公网IP地址、所述第二隧道信息和所述第二路由器的标识;
所述控制器根据所述第三信息和所述第四信息,生成所述第二映射表项,所述第二映射表项还包括所述第二私网地址段。
5.根据权利要求3所述的方法,其特征在于,所述控制器接收第一路由器发送的请求消息之前,所述方法还包括:
所述控制器接收所述第一路由器发送的第一信息,所述第一信息包括所述第一公网IP地址、所述第一隧道信息和所述第一路由器的标识;
所述控制器接收所述第一路由器发送的第二信息,所述第二信息包括所述第一私网地址段和所述第一路由器的标识;
所述控制器根据所述第一信息和所述第二信息,生成所述第一映射表项。
6.一种控制装置,其特征在于,所述控制装置包括:
第一接收模块,用于接收第一转发装置发送的请求消息,所述请求消息包括第二私网地址和所述第一转发装置的标识;
第一获得模块,用于根据第二映射表项和所述第二私网地址,获得第二公网IP地址和第二隧道信息,所述第二映射表项包括所述第二私网地址、所述第二公网IP地址和所述第二隧道信息,所述第二公网IP地址为第二转发装置被分配的公网IP地址,所述第二隧道信息为所述第二转发装置的隧道信息;
所述第一获得模块还用于从所述第二映射表项获得所述第二转发装置的标识,所述第二映射表项还包括所述第二转发装置的标识;
第一查找模块,用于根据所述第一转发装置的标识和所述第二转发装置的标识,查找通信策略;
第一判定模块,用于根据所述通信策略,确定所述第一转发装置和所述第二转发装置之间是否能够进行通信;
第一发送模块,用于基于所述第一转发装置和所述第二转发装置之间能够进行通信的确定,根据所述第一转发装置的标识,向所述第一转发装置发送第一响应消息,所述第一响应消息包括所述第二公网IP地址和所述第二隧道信息。
7.根据权利要求6所述的控制装置,其特征在于,
第一查找模块,用于根据所述第一转发装置的标识和所述第二转发装置的标识,查找通信策略,所述通信策略包括能够进行通信的N个转发装置的标识,N为大于或等于2的整数,所述N个转发装置的标识包括所述第一转发装置的标识和所述第二转发装置的标识。
8.根据权利要求6所述的控制装置,其特征在于,
所述第一获得模块还用于从所述第二映射表项获得所述第二转发装置的标识,所述第二映射表项还包括所述第二转发装置的标识;
所述控制装置还包括:
第二获得模块,用于根据第一映射表项和所述第一转发装置的标识,获得第一私网地址段、第一公网IP地址和第一隧道信息,所述第一映射表项包括所述第一私网地址段、所述第一公网IP地址、所述第一隧道信息和所述第一转发装置的标识,所述第一公网IP地址为所述第一转发装置被分配的公网IP地址,所述第一隧道信息为所述第一转发装置的隧道信息,所述第一私网地址段为所述第一转发装置所管辖的私网被分配的地址段;
第二发送模块,用于根据所述第二转发装置的标识,向所述第二转发装置发送第二响应消息,所述第二响应消息包括所述第一私网地址段、所述第一公网IP地址和所述第一隧道信息。
9.根据权利要求6至8任一所述的控制装置,其特征在于,所述控制装置还包括:
第四接收模块,用于接收所述第二转发装置发送的第三信息,所述第三信息包括第二私网地址段和所述第二转发装置的标识,所述第二私网地址段为所述第二转发装置所管辖的私网被分配的地址段,所述第二私网地址段包括所述第二私网地址;
第五接收模块,用于接收所述第二转发装置发送的第四信息,所述第四信息包括所述第二公网IP地址、所述第二隧道信息和所述第二转发装置的标识;
第二生成模块,用于根据所述第三信息和所述第四信息,生成所述第二映射表项,所述第二映射表项包括还所述第二私网地址段。
10.根据权利要求8所述的控制装置,其特征在于,所述控制装置还包括:
第二接收模块,用于接收所述第一转发装置发送的第一信息,所述第一信息包括所述第一公网IP地址、所述第一隧道信息和所述第一转发装置的标识;
第三接收模块,用于接收所述第一转发装置发送的第二信息,所述第二信息包括所述第一私网地址段和所述第一转发装置的标识;
第一生成模块,用于根据所述第一信息和所述第二信息,生成所述第一映射表项。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611248613.2A CN108259292B (zh) | 2016-12-29 | 2016-12-29 | 建立隧道的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611248613.2A CN108259292B (zh) | 2016-12-29 | 2016-12-29 | 建立隧道的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108259292A CN108259292A (zh) | 2018-07-06 |
CN108259292B true CN108259292B (zh) | 2020-12-15 |
Family
ID=62721345
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611248613.2A Active CN108259292B (zh) | 2016-12-29 | 2016-12-29 | 建立隧道的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108259292B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111064670B (zh) * | 2019-12-30 | 2021-05-11 | 联想(北京)有限公司 | 一种获取下一跳路由信息的方法和装置 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102546349B (zh) * | 2012-02-09 | 2015-11-25 | 杭州华三通信技术有限公司 | 一种报文转发方法和设备 |
CN102447752B (zh) * | 2012-02-09 | 2014-05-07 | 杭州华三通信技术有限公司 | 基于二层隧道协议的业务访问方法、系统和装置 |
CN102594678B (zh) * | 2012-02-15 | 2015-01-14 | 杭州华三通信技术有限公司 | 一种dvpn大规模组网的方法和客户端 |
CN102739497B (zh) * | 2012-06-07 | 2015-07-08 | 杭州华三通信技术有限公司 | 一种路由自动生成方法及其装置 |
CN102739540B (zh) * | 2012-06-29 | 2015-05-06 | 华为技术有限公司 | 分支接入总部的方法、系统和分支设备 |
CN103023783B (zh) * | 2012-12-03 | 2016-06-29 | 杭州华三通信技术有限公司 | 一种基于dvpn的数据传输方法和设备 |
CN103023667A (zh) * | 2012-12-03 | 2013-04-03 | 杭州华三通信技术有限公司 | 一种基于dvpn的组播数据传输方法和设备 |
CN103209108B (zh) * | 2013-04-10 | 2016-03-02 | 杭州华三通信技术有限公司 | 一种基于dvpn的路由生成方法和设备 |
CN104427010B (zh) * | 2013-08-30 | 2018-02-09 | 新华三技术有限公司 | 应用于动态虚拟专用网络的网络地址转换方法和装置 |
CN104883287B (zh) * | 2014-02-28 | 2018-06-12 | 杭州迪普科技股份有限公司 | IPSec VPN系统控制方法 |
-
2016
- 2016-12-29 CN CN201611248613.2A patent/CN108259292B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN108259292A (zh) | 2018-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113261248B (zh) | 安全sd-wan端口信息分发 | |
US10263808B2 (en) | Deployment of virtual extensible local area network | |
CN110324165B (zh) | 网络设备的管理方法、装置及系统 | |
CN102571587B (zh) | 报文转发方法和设备 | |
CN103580980A (zh) | 虚拟网络自动发现和自动配置的方法及其装置 | |
CN105812259A (zh) | 一种报文转发方法和设备 | |
CN112491701B (zh) | 转发报文方法和装置 | |
US20220255837A1 (en) | Routing Information Transmission Method and Apparatus, and Data Center Interconnection Network | |
CN113472622A (zh) | 一种网络中传输业务的方法和设备 | |
EP3989512A1 (en) | Method for controlling traffic forwarding, device, and system | |
US20190215191A1 (en) | Deployment Of Virtual Extensible Local Area Network | |
JP2019519146A (ja) | ルーティング確立、パケット送信 | |
US9438475B1 (en) | Supporting relay functionality with a distributed layer 3 gateway | |
US20230336377A1 (en) | Packet forwarding method and apparatus, and network system | |
CN104038427A (zh) | 路由更新方法和路由更新装置 | |
CN113162779B (zh) | 一种多云互联的方法及设备 | |
CN102946350B (zh) | 一种基于优先级的数据传输方法和设备 | |
US11929851B2 (en) | Gateway selection method, device, and system | |
JP2016012909A (ja) | 通信装置、通信方法および通信システム | |
CN113037883B (zh) | 一种mac地址表项的更新方法及装置 | |
EP3503484B1 (en) | Message transmission methods and devices | |
CN108259292B (zh) | 建立隧道的方法及装置 | |
CN114389992A (zh) | 一种控制流量转发方法、设备及系统 | |
CN113300998A (zh) | 实现数据加密传输的方法及装置、通信系统 | |
CN117424778B (zh) | 跨控制域sd-wan网络实现大二层通信的方法 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |