一种GRE隧道建立方法及其设备技术

技术编号:18662462 阅读:67 留言:0更新日期:2018-08-11 16:22
本申请提供一种GRE隧道建立方法及其设备,该方法包括:当需要在网络设备上建立GRE隧道时,获取GRE隧道的源地址和目的地址、所述GRE隧道的隧道名称,所述隧道名称在所述网络设备上具有唯一性;向所述网络设备发送GRE隧道建立请求,所述GRE隧道建立请求携带所述隧道名称、所述源地址和所述目的地址,以使所述网络设备建立与所述隧道名称、所述源地址和所述目的地址对应的GRE隧道。通过本申请的技术方案,控制器在网络设备上建立GRE隧道时,是为GRE隧道设置具有唯一性的隧道名称,即使有多个控制器在网络设备上建立GRE隧道,不同控制器在网络设备上建立的GRE隧道也不会存在冲突,可以避免一个网络设备包括隧道名称相同的多个GRE隧道。

A method and equipment for building GRE tunnels

The present application provides a GRE tunnel establishment method and equipment, including: when a GRE tunnel needs to be built on a network device, obtaining the source and destination address of the GRE tunnel, the tunnel name of the GRE tunnel, the tunnel name having uniqueness on the network device, and sending the GRE tunnel to the network device. The GRE tunnel establishment request carries the tunnel name, the source address and the destination address so that the network device establishes a GRE tunnel corresponding to the tunnel name, the source address and the destination address. Through the technical scheme of this application, when a controller establishes a GRE tunnel on a network device, it sets a unique tunnel name for the GRE tunnel. Even if multiple controllers establish a GRE tunnel on a network device, the GRE tunnel established by different controllers on the network device will not conflict, and a network setup can be avoided. Prepare multiple GRE tunnels with the same tunnel name.

【技术实现步骤摘要】
一种GRE隧道建立方法及其设备
本申请涉及通信
,尤其是涉及一种GRE隧道建立方法及其设备。
技术介绍
GRE(GenericRoutingEncapsulation,通用路由封装)隧道用于对某些网络层协议的报文进行封装,使这些被封装的报文能够在IP网络中传输。为了在网络设备上创建GRE隧道,则控制器确定GRE隧道的源地址和目的地址,为GRE隧道分配接口号(interfacenumber),如100等,并将该源地址、该目的地址和接口号100下发给网络设备,以使网络设备创建接口号100的GRE隧道。通常情况下,控制器可以配置接口号段,该接口号段包括多个接口号,如1-200等,控制器在网络设备上创建GRE隧道时,是从接口号段中选择未使用的接口号。但是,控制器是分布式系统时,则多个控制器在网络设备创建的GRE隧道可能会存在接口号冲突,即一个网络设备包括接口号相同的多个GRE隧道。例如,控制器1在网络设备A上创建接口号100的GRE隧道后,控制器2在网络设备A上创建接口号100的GRE隧道。因此,网络设备A接收到出接口为接口号100的报文后,无法获知从哪个GRE隧道发送,导致报文传输异常。
技术实现思路
本申请提供一种GRE隧道建立方法,应用于控制器,包括:当需要在网络设备上建立GRE隧道时,获取GRE隧道的源地址和目的地址、所述GRE隧道的隧道名称,所述隧道名称在所述网络设备上具有唯一性;向所述网络设备发送GRE隧道建立请求,所述GRE隧道建立请求携带所述隧道名称、所述源地址和所述目的地址,所述GRE隧道建立请求用于使所述网络设备建立与所述隧道名称、所述源地址和所述目的地址对应的GRE隧道。本申请提供一种GRE隧道建立方法,应用于网络设备,包括:接收控制器发送的GRE隧道建立请求,所述GRE隧道建立请求携带GRE隧道的隧道名称、源地址和目的地址,所述隧道名称在所述网络设备上具有唯一性;建立与所述隧道名称、所述源地址和所述目的地址对应的GRE隧道。本申请提供一种控制器,包括:处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令;所述处理器用于执行机器可执行指令,以实现上述的方法步骤。本申请提供一种网络设备,包括:处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令;所述处理器用于执行机器可执行指令,以实现上述的方法步骤。基于上述技术方案,本申请实施例中,控制器在网络设备上建立GRE隧道时,是为GRE隧道设置具有唯一性的隧道名称,而不是为GRE隧道设置接口号(interfacenumber),这样,即使有多个控制器在网络设备上建立GRE隧道,不同控制器在网络设备上建立的GRE隧道也不会存在冲突,从而可以避免一个网络设备包括隧道名称相同的多个GRE隧道。例如,由于不同GRE隧道的隧道名称不同,因此,网络设备在接收到的报文的下一跳出接口对应的是隧道名称时,可以根据该隧道名称查询到该隧道名称对应的GRE隧道,并通过该GRE隧道正确传输该报文。附图说明为了更加清楚地说明本申请实施例或者现有技术中的技术方案,下面将对本申请实施例或者现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据本申请实施例的这些附图获得其他的附图。图1是本申请一种实施方式中的应用场景示意图;图2是本申请一种实施方式中的GRE隧道建立方法的流程图;图3是本申请一种实施方式中的GRE隧道建立装置的结构图;图4是本申请一种实施方式中的控制器的硬件结构图;图5是本申请另一种实施方式中的GRE隧道建立装置的结构图;图6是本申请一种实施方式中的网络设备的硬件结构图。具体实施方式在本申请实施例使用的术语仅仅是出于描述特定实施例的目的,而非限制本申请。本申请和权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其它含义。还应当理解,本文中使用的术语“和/或”是指包含一个或多个相关联的列出项目的任何或所有可能组合。应当理解,尽管在本申请实施例可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,此外,所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。本申请实施例中提出一种GRE隧道建立方法,该方法可以应用于包括控制器和网络设备的系统,参见图1所示,为本申请实施例的应用场景示意图。当然,图1只是本申请的一个示例,对此应用场景不做限制,所有通过控制器在网络设备上建立GRE隧道的应用场景,均在本申请实施例的保护范围之内。参见图1所示,用户的IDC(InternetDataCenter,互联网数据中心)可以部署在城市A,而用户租用的VPC(VirtualPrivateCloud,虚拟私有云)可以部署在城市B。其中,VPC内的主机可以为虚拟机,也可以为物理服务器,在主机是物理服务器时,还可以在主机上虚拟出多个虚拟机,对此主机的类型不做限制。此外,网络设备可以是接入网关(也可以称为专线接入网关),网络设备可以是独立的物理设备,也可以是采用NFV(NetworkFunctionVirtualization,网络功能虚拟化)技术虚拟出的逻辑设备,对此网络设备的类型不做限制。参见图1所示,为了使IDC内的设备访问VPC内的主机,控制器可以在网络设备上建立GRE隧道,并在网络设备上配置静态路由。例如,控制器131在网络设备111上建立GRE隧道,该GRE隧道的源地址为网络设备111的IP地址,目的地址为主机121的IP地址,且该GRE隧道的接口号为100。控制器131可以在网络设备111上配置静态路由,参见表1所示,为静态路由的示例。表1目的IP地址出接口IP地址1211GRE隧道100其中,IP地址1211是主机121上的虚拟机1211的IP地址,网络设备111接收到目的IP地址为IP地址1211的报文(即IDC内的设备发送给虚拟机1211的报文)后,通过静态路由确定出接口为GRE隧道100,并确定GRE隧道100对应网络设备111的IP地址和主机121的IP地址,因此,利用网络设备111的IP地址和主机121的IP地址对报文进行GRE隧道封装,并将封装后的报文发送给主机121,且主机121可以将报文转发给虚拟机1211,从而完成报文传输。在一个例子中,控制器131和控制器132均可以配置接口号段,该接口号段可以包括接口号1-200,且控制器131和控制器132在网络设备上建立GRE隧道时,可以从接口号段中选择未使用的接口号,该方案可能导致以下问题:1、控制器131在网络设备111上建立接口号为100的GRE隧道,该GRE隧道的源地址为网络设备111的IP地址,目的地址为主机121的IP地址。然后,假设控制器132也在网络设备111上建立接口号为100的GRE隧道,该GRE隧道的源地址为网络设备111的IP地址,目的地址为主机122的IP地址。显然,上述两个GRE隧本文档来自技高网...

【技术保护点】
1.一种GRE隧道建立方法,其特征在于,应用于控制器,包括:当需要在网络设备上建立GRE隧道时,获取GRE隧道的源地址和目的地址、所述GRE隧道的隧道名称,所述隧道名称在所述网络设备上具有唯一性;向所述网络设备发送GRE隧道建立请求,所述GRE隧道建立请求携带所述隧道名称、所述源地址和所述目的地址,所述GRE隧道建立请求用于使所述网络设备建立与所述隧道名称、所述源地址和所述目的地址对应的GRE隧道。

【技术特征摘要】
1.一种GRE隧道建立方法,其特征在于,应用于控制器,包括:当需要在网络设备上建立GRE隧道时,获取GRE隧道的源地址和目的地址、所述GRE隧道的隧道名称,所述隧道名称在所述网络设备上具有唯一性;向所述网络设备发送GRE隧道建立请求,所述GRE隧道建立请求携带所述隧道名称、所述源地址和所述目的地址,所述GRE隧道建立请求用于使所述网络设备建立与所述隧道名称、所述源地址和所述目的地址对应的GRE隧道。2.根据权利要求1所述的方法,其特征在于,所述获取所述GRE隧道的隧道名称,包括:根据所述源地址和所述目的地址获取所述GRE隧道的隧道名称。3.根据权利要求2所述的方法,其特征在于,所述根据所述源地址和所述目的地址获取所述GRE隧道的隧道名称,包括:根据所述源地址和所述目的地址拼接生成所述GRE隧道的隧道名称。4.根据权利要求1所述的方法,其特征在于,所述向所述网络设备发送GRE隧道建立请求之后,所述方法还包括:在接收到删除命令后,根据所述删除命令获取待删除的GRE隧道的源地址和目的地址,根据所述源地址和所述目的地址获取该GRE隧道的隧道名称,向所述网络设备发送携带该隧道名称的GRE隧道删除请求,以使所述网络设备删除与该隧道名称对应的GRE隧道;和/或,在接收到路由生成命令后,根据所述路由生成命令获取静态路由对应的GRE隧道的源地址和目的地址,根据所述源地址和所述目的地址获取该GRE隧道的隧道名称,将静态路由的出接口设置为该隧道名称,并将所述静态路由发送给网络设备,以使网络设备生成所述静态路由。5.一种GRE隧道建立方法,其特征在于,应用于网络设备,包括:接收控制器发送的GRE隧道建立请求,所述GRE隧道建立请求携带GRE隧道的隧道名称、源地址和目的地址,所述隧道名称在所述网络设备上具有唯一性;建立与所述...

【专利技术属性】
技术研发人员:杨裕斌
申请(专利权)人:新华三技术有限公司
类型:发明
国别省市:浙江,33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1