CN108390811A - 一种gre隧道建立方法及其设备 - Google Patents

一种gre隧道建立方法及其设备 Download PDF

Info

Publication number
CN108390811A
CN108390811A CN201810265128.9A CN201810265128A CN108390811A CN 108390811 A CN108390811 A CN 108390811A CN 201810265128 A CN201810265128 A CN 201810265128A CN 108390811 A CN108390811 A CN 108390811A
Authority
CN
China
Prior art keywords
gre tunneling
tunnel
title
destination address
address
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.)
Granted
Application number
CN201810265128.9A
Other languages
English (en)
Other versions
CN108390811B (zh
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.)
New H3C Technologies Co Ltd
Original Assignee
New H3C Technologies Co Ltd
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 New H3C Technologies Co Ltd filed Critical New H3C Technologies Co Ltd
Priority to CN201810265128.9A priority Critical patent/CN108390811B/zh
Publication of CN108390811A publication Critical patent/CN108390811A/zh
Application granted granted Critical
Publication of CN108390811B publication Critical patent/CN108390811B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4633Interconnection of networks using encapsulation techniques, e.g. tunneling
    • 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/5007Internet protocol [IP] addresses

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Small-Scale Networks (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

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

Description

一种GRE隧道建立方法及其设备
技术领域
本申请涉及通信技术领域,尤其是涉及一种GRE隧道建立方法及其设备。
背景技术
GRE(Generic Routing Encapsulation,通用路由封装)隧道用于对某些网络层协议的报文进行封装,使这些被封装的报文能够在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隧道设置接口号(interface number),这样,即使有多个控制器在网络设备上建立GRE隧道,不同控制器在网络设备上建立的GRE隧道也不会存在冲突,从而可以避免一个网络设备包括隧道名称相同的多个GRE隧道。例如,由于不同GRE隧道的隧道名称不同,因此,网络设备在接收到的报文的下一跳出接口对应的是隧道名称时,可以根据该隧道名称查询到该隧道名称对应的GRE隧道,并通过该GRE隧道正确传输该报文。
附图说明
为了更加清楚地说明本申请实施例或者现有技术中的技术方案,下面将对本申请实施例或者现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据本申请实施例的这些附图获得其他的附图。
图1是本申请一种实施方式中的应用场景示意图;
图2是本申请一种实施方式中的GRE隧道建立方法的流程图;
图3是本申请一种实施方式中的GRE隧道建立装置的结构图;
图4是本申请一种实施方式中的控制器的硬件结构图;
图5是本申请另一种实施方式中的GRE隧道建立装置的结构图;
图6是本申请一种实施方式中的网络设备的硬件结构图。
具体实施方式
在本申请实施例使用的术语仅仅是出于描述特定实施例的目的,而非限制本申请。本申请和权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其它含义。还应当理解,本文中使用的术语“和/或”是指包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请实施例可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,此外,所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
本申请实施例中提出一种GRE隧道建立方法,该方法可以应用于包括控制器和网络设备的系统,参见图1所示,为本申请实施例的应用场景示意图。当然,图1只是本申请的一个示例,对此应用场景不做限制,所有通过控制器在网络设备上建立GRE隧道的应用场景,均在本申请实施例的保护范围之内。
参见图1所示,用户的IDC(Internet Data Center,互联网数据中心)可以部署在城市A,而用户租用的VPC(Virtual Private Cloud,虚拟私有云)可以部署在城市B。其中,VPC内的主机可以为虚拟机,也可以为物理服务器,在主机是物理服务器时,还可以在主机上虚拟出多个虚拟机,对此主机的类型不做限制。此外,网络设备可以是接入网关(也可以称为专线接入网关),网络设备可以是独立的物理设备,也可以是采用NFV(NetworkFunction Virtualization,网络功能虚拟化)技术虚拟出的逻辑设备,对此网络设备的类型不做限制。
参见图1所示,为了使IDC内的设备访问VPC内的主机,控制器可以在网络设备上建立GRE隧道,并在网络设备上配置静态路由。例如,控制器131在网络设备111上建立GRE隧道,该GRE隧道的源地址为网络设备111的IP地址,目的地址为主机121的IP地址,且该GRE隧道的接口号为100。控制器131可以在网络设备111上配置静态路由,参见表1所示,为静态路由的示例。
表1
目的IP地址 出接口
IP地址1211 GRE隧道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隧道存在冲突,网络设备111在接收到目的IP地址为IP地址1211的报文后,通过静态路由确定出接口为GRE隧道100,但是,网络设备是通过主机121的IP地址对报文进行封装?还是通过主机122的IP地址对报文进行封装?因此,上述方式存在报文传输异常问题,甚至会导致业务中断。
2、控制器131在网络设备111上建立接口号为100的GRE隧道,GRE隧道的源地址为网络设备111的IP地址,目的地址为主机121的IP地址。控制器132在网络设备112上建立接口号为100的GRE隧道,GRE隧道的源地址为网络设备112的IP地址,目的地址为主机122的IP地址。然后,若将主机121的流量从网络设备111迁移到网络设备112,则控制器131从网络设备111删除接口号为100的GRE隧道,并在网络设备112上建立接口号为100的GRE隧道,GRE隧道的源地址为网络设备112的IP地址,目的地址为主机121的IP地址。
显然,上述两个GRE隧道也存在冲突,网络设备112在接收到目的IP地址为IP地址1211的报文后,也无法获知应该通过哪个GRE隧道进行封装。
在本申请实施例中,控制器在网络设备上建立GRE隧道时,是为该GRE隧道配置隧道名称,而不是为GRE隧道配置接口号,由于隧道名称在网络设备上可以具有唯一性,因此,可以解决多个GRE隧道存在冲突的问题,即可以避免一个网络设备包括隧道名称相同的多个GRE隧道,从而避免数据传输异常。
参见图2所示,为GRE隧道建立方法的流程示意图,该方法可以包括:
步骤201,当需要在网络设备上建立GRE隧道时,控制器获取该GRE隧道的源地址和目的地址、该GRE隧道的隧道名称,该隧道名称在该网络设备上具有唯一性。
其中,隧道名称在该网络设备上具有唯一性即该网络设备建立的不同GRE隧道的隧道名称是不同的。
例如,为了使IDC内的设备访问VPC内的主机121,控制器131可以在网络设备111上建立GRE隧道,该GRE隧道的源地址为网络设备111的IP地址(如10.2.1.1),该GRE隧道的目的地址为主机121的IP地址(如192.168.1.1)。
其中,控制器确定需要在网络设备上建立GRE隧道,并获取该GRE隧道的源地址和目的地址,可以包括:控制器接收配置命令(如用户输入的配置命令,或者,其它设备发送的配置命令),该配置命令用于指示建立GRE隧道,且该配置命令携带该GRE隧道的源地址和目的地址。基于此,控制器可以根据该配置命令确定需要在网络设备上建立GRE隧道,并从该配置命令中解析出该GRE隧道的源地址和目的地址。当然,上述方式只是示例,对此不做限制。
其中,上述隧道名称具有唯一性可以是指:一个控制器为不同的GRE隧道配置的隧道名称不同,不同控制器为不同的GRE隧道配置的隧道名称也不同,也就是说,在一个网络设备上建立的所有GRE隧道的隧道名称均不同。
为了使隧道名称具有唯一性,则控制器获取该GRE隧道的隧道名称,可以包括:根据该GRE隧道的源地址和目的地址获取该GRE隧道的隧道名称。显然,由于GRE隧道由源地址和目的地址组成,即GRE隧道对应唯一的源地址和目的地址,因此,根据源地址和目的地址获取的隧道名称,具有唯一性。
其中,控制器根据源地址和目的地址获取GRE隧道的隧道名称,可以包括:根据源地址和目的地址拼接生成GRE隧道的隧道名称。当然,上述方式只是一个示例,只要GRE隧道的隧道名称包括源地址的信息和目的地址的信息即可。
例如,假设GRE隧道的源地址为网络设备111的IP地址10.2.1.1,GRE隧道的目的地址为主机121的IP地址192.168.1.1,则可以将10.2.1.1和192.168.1.1拼接成隧道名称10211-19216811,也可以将10.2.1.1和192.168.1.1拼接成隧道名称0a020101-c0A80101(源地址和目的地址的16进制数值)。当然,上述方式只是示例,对此不做限制,隧道名称包括源地址和目的地址的信息即可。
在一个例子中,隧道名称还可以包括GRE,以表示GRE隧道,即隧道名称可以为GRE-10211-19216811,或者GRE-0a020101-c0A80101,对此不做限制。
当然,上述“根据该GRE隧道的源地址和目的地址获取该GRE隧道的隧道名称”的方式只是一个示例,对此不做限制,只要隧道名称具有唯一性即可。
步骤202,控制器向网络设备发送GRE隧道建立请求,该GRE隧道建立请求可以携带上述隧道名称、源地址和目的地址。其中,该GRE隧道建立请求用于使网络设备建立与该隧道名称、该源地址和该目的地址对应的GRE隧道。
步骤203,网络设备接收GRE隧道建立请求,GRE隧道建立请求携带GRE隧道的隧道名称、源地址和目的地址,隧道名称在本网络设备上具有唯一性。
例如,控制器131可以向网络设备111发送GRE隧道建立请求,且网络设备111可以接收该GRE隧道建立请求,该GRE隧道建立请求可以携带上述隧道名称GRE-0a020101-c0A80101、源地址10.2.1.1、目的地址192.168.1.1。
步骤204,网络设备建立与该隧道名称、该源地址和该目的地址对应的GRE隧道,并可以通过该隧道名称索引到该GRE隧道。
其中,网络设备在接收到GRE隧道建立请求后,可以检查本地是否存在该隧道名称对应的GRE隧道。如果否,可以建立与该隧道名称、该源地址和该目的地址对应的GRE隧道;如果是,拒绝建立该隧道名称对应的GRE隧道,并向控制器返回GRE隧道已存在的提示消息,以使控制器调整隧道名称,并向网络设备发送携带新隧道名称的GRE隧道建立请求,对此过程不再赘述。
其中,网络设备建立与该隧道名称、该源地址和该目的地址对应的GRE隧道,可以包括:
方式一、网络设备记录该隧道名称、该源地址和该目的地址的对应关系。
方式二、网络设备为该隧道名称分配隧道索引,该隧道索引是网络设备上具有唯一性的数字,并记录该隧道名称和该隧道索引的对应关系;并记录该隧道索引、该源地址和该目的地址的对应关系。
针对方式一,网络设备111在接收到上述GRE隧道建立请求后,可以记录GRE-0a020101-c0A80101、10.2.1.1、192.168.1.1的对应关系,参见表2所示。
表2
隧道名称 源地址 目的地址
GRE-0a020101-c0A80101 10.2.1.1 192.168.1.1
针对方式二,网络设备111在接收到GRE隧道建立请求后,还可以为该隧道名称GRE-0a020101-c0A80101分配一个隧道索引(如隧道索引为100),记录GRE-0a020101-c0A80101与100的对应关系,并记录100、10.2.1.1、192.168.1.1的对应关系,参见表3所示,为上述对应关系的一个示例。
表3
隧道索引 源地址 目的地址
100 10.2.1.1 192.168.1.1
在方式二中,网络设备可以维护隧道索引区间,该隧道索引区间包括多个隧道索引,这些隧道索引可以是数字,如1-200等。网络设备每次建立GRE隧道时,可以为隧道名称分配一个未使用的隧道索引。由于网络设备是为隧道名称分配未使用的隧道索引,因此可以保证隧道索引在网络设备上具有唯一性。
需要注意的是,该隧道名称是控制器为GRE隧道分配的,而该隧道索引是网络设备为GRE隧道分配的,网络设备并不需要将该隧道索引通知给控制器。
在方式二中,网络设备为隧道名称分配隧道索引后,还可以记录该隧道名称和该隧道索引的对应关系,例如,在映射表中记录该隧道名称和该隧道索引的对应关系,参见表4所示,为映射表的一个示例。
表4
隧道名称 隧道索引
GRE-0a020101-c0A80101 100
其中,采用方式二的优势在于:由于隧道索引是1-200等数字,而使用数字进行查询操作时,其查询效率更高,查询速度更快。因此,在通过隧道索引查询表3所示的对应关系时,可以快速查询到结果,从而可以提高查询速度。
在网络设备建立GRE隧道后,可以涉及GRE隧道的删除过程、基于GRE隧道的静态路由下发过程,以下结合具体实施例,对上述两个过程进行说明。
情况一:GRE隧道的删除过程。
在一个例子中,控制器在接收到删除命令后,还可以根据所述删除命令获取待删除的GRE隧道的源地址和目的地址,根据该源地址和该目的地址获取该GRE隧道的隧道名称,并向网络设备发送携带该隧道名称的GRE隧道删除请求。网络设备接收到携带该隧道名称的GRE隧道删除请求后,删除与该隧道名称对应的GRE隧道。例如,网络设备在接收到携带隧道名称的GRE隧道删除请求后,删除该隧道名称、源地址和目的地址的对应关系;或者,网络设备在接收到携带隧道名称的GRE隧道删除请求后,删除该隧道名称和隧道索引的对应关系,并删除该隧道索引、源地址和目的地址的对应关系。
其中,控制器根据所述删除命令获取待删除的GRE隧道的源地址和目的地址,可以包括:
控制器接收删除命令(如用户输入的删除命令,或者,其它设备发送的删除命令),该删除命令用于指示删除GRE隧道,且该删除命令携带该GRE隧道的源地址和目的地址。基于此,控制器可以从该删除命令中解析出待删除的GRE隧道的源地址和目的地址。当然,上述方式只是示例,对此不做限制。
其中,网络设备在接收到携带隧道名称GRE-0a020101-c0A80101的GRE隧道删除请求后,若网络设备是采用上述方式一建立的GRE隧道,则网络设备可以从表2中删除GRE-0a020101-c0A80101、10.2.1.1、192.168.1.1的对应关系。若网络设备是采用上述方式二建立的GRE隧道,则网络设备可以从表4中删除GRE-0a020101-c0A80101、100的对应关系,并从表3中删除100、10.2.1.1、192.168.1.1的对应关系。
在传统方式中,控制器需要在本地创建映射表,并通过所述映射表记录源地址10.2.1.1、目的地址192.168.1.1和接口号100的对应关系。基于此,控制器获取到待删除的GRE隧道的源地址10.2.1.1和目的地址192.168.1.1后,可以从映射表中查询到接口号100,并通知网络设备删除接口号100对应的GRE隧道。与上述方式不同的是,控制器不需要在本地创建映射表,也不需要记录源地址10.2.1.1、目的地址192.168.1.1和隧道名称GRE-0a020101-c0A80101的对应关系,在获取到待删除的GRE隧道的源地址10.2.1.1和目的地址192.168.1.1后,控制器可以直接根据源地址10.2.1.1和目的地址192.168.1.1拼接出隧道名称GRE-0a020101-c0A80101,并通知网络设备删除该隧道名称对应的GRE隧道。上述方式不用查询映射表,从而节省映射表的资源,继而节省存储资源。
情况二:基于GRE隧道的静态路由下发过程
在一个例子中,控制器在接收到路由生成命令后,根据所述路由生成命令获取静态路由对应的GRE隧道的源地址和目的地址,根据该源地址和该目的地址获取该GRE隧道的隧道名称,将静态路由的出接口设置为该隧道名称,并将静态路由发送给网络设备,网络设备可以在本地生成该静态路由。
进一步的,网络设备接收到的报文与该静态路由匹配时(如该报文的目的IP地址命中该静态路由的匹配选项),若该静态路由的出接口为隧道名称,则查询该隧道名称对应的隧道索引对应的源地址和目的地址,或者,查询该隧道名称对应的源地址和目的地址;然后,利用查询到的源地址和目的地址为该报文封装GRE隧道头,并发送封装后的报文。
其中,控制器根据所述路由生成命令获取静态路由对应的GRE隧道的源地址和目的地址,可以包括:
控制器可以接收路由生成命令(如用户输入的路由生成命令,或其它设备发送的路由生成命令),该路由生成命令用于指示生成静态路由,路由生成命令携带GRE隧道的源地址和目的地址。基于此,控制器从路由生成命令中解析出GRE隧道的源地址和目的地址。当然,上述方式只是示例,对此不做限制。
其中,基于表5所示的静态路由,网络设备111接收到目的IP地址为IP地址1211的报文之后,可以通过所述静态路由确定下一跳出接口为隧道名称GRE-0a020101-c0A80101。若网络设备111是采用上述方式一建立的GRE隧道,则可以从表2中查询该出接口对应的隧道的源地址为10.2.1.1,目的地址为192.168.1.1。若网络设备111是采用上述方式二建立的GRE隧道,则可以根据静态路由确定出下一跳出接口为隧道名称之后,进一步的从表4中查询到隧道索引100,并根据隧道索引从表3中查询到出接口对应的隧道的源地址为10.2.1.1,目的地址为192.168.1.1。
然后,网络设备111利用源地址10.2.1.1和目的地址192.168.1.1为报文封装GRE隧道头,并将封装后的报文发送给主机121,且主机121可以将报文转发给虚拟机1211,从而完成报文传输,对此报文传输过程不再赘述。
表5
目的IP地址 出接口
IP地址1211 GRE-0a020101-c0A80101
在一个例子中,在采用本申请实施例之前,假设已经在网络设备下发接口号100的GRE隧道,在采用本申请实施例之后,控制器还可以将接口号100转换为隧道名称。例如,每个控制器可以存储保留关键字,且不同控制器的保留关键字不同,如控制器1的保留关键字为1_GRE_Tunnel_,控制器2的保留关键字为2_GRE_Tunnel_,控制器3的保留关键字为3_GRE_Tunnel_,以此类推。
控制器将接口号100转换为隧道名称时,向网络设备发送携带保留关键字的转换请求,网络设备可以利用保留关键字将接口号100转换为隧道名称。具体的可以将保留关键字和接口号进行拼接。例如,网络设备接收到控制器1发送的携带保留关键字1_GRE_Tunnel_的转换请求时,可以将接口号100转换为隧道名称1_GRE_Tunnel_100;或者,网络设备接收到控制器2发送的携带保留关键字2_GRE_Tunnel_的转换请求时,可以将接口号100转换为隧道名称2_GRE_Tunnel_100。综上所述,可以将接口号100转换为隧道名称,即可以将本申请实施例之前下发的GRE隧道的接口号转换为隧道名称,实现了版本兼容。
基于上述技术方案,本申请实施例中,控制器在网络设备上建立GRE隧道时,是为GRE隧道设置具有唯一性的隧道名称,而不是为GRE隧道设置接口号(interface number),这样,即使有多个控制器在网络设备上建立GRE隧道,不同控制器在网络设备上建立的GRE隧道也不会存在冲突,从而可以避免一个网络设备包括隧道名称相同的多个GRE隧道。例如,由于不同GRE隧道的隧道名称不同,因此,网络设备在接收到的报文的下一跳出接口对应的是隧道名称时,可以根据该隧道名称查询到该隧道名称对应的GRE隧道,并通过该GRE隧道正确传输该报文。
基于与上述方法同样的申请构思,本申请实施例中还提出一种GRE隧道建立装置,应用于控制器,如图3所示,为所述装置的结构图,所述装置包括:
获取模块301,用于当需要在网络设备上建立GRE隧道时,获取GRE隧道的源地址和目的地址、所述GRE隧道的隧道名称,所述隧道名称在所述网络设备上具有唯一性;
发送模块302,用于向所述网络设备发送GRE隧道建立请求,所述GRE隧道建立请求携带所述隧道名称、所述源地址和所述目的地址,所述GRE隧道建立请求用于使所述网络设备建立与所述隧道名称、所述源地址和所述目的地址对应的GRE隧道。
在一个例子中,所述获取模块301获取所述GRE隧道的隧道名称时具体用于:根据所述源地址和所述目的地址获取所述GRE隧道的隧道名称。
进一步的,所述获取模块301根据所述源地址和所述目的地址获取所述GRE隧道的隧道名称时具体用于:根据所述源地址和所述目的地址拼接生成所述GRE隧道的隧道名称。
在一个例子中,所述获取模块301,还用于在接收到删除命令后,根据所述删除命令获取待删除的GRE隧道的源地址和目的地址,根据所述源地址和所述目的地址获取该GRE隧道的隧道名称;所述发送模块302,还用于向所述网络设备发送携带该隧道名称的GRE隧道删除请求,以使所述网络设备删除与该隧道名称对应的GRE隧道;和/或,
所述获取模块301,还用于在接收到路由生成命令后,根据所述路由生成命令获取静态路由对应的GRE隧道的源地址和目的地址,根据所述源地址和所述目的地址获取该GRE隧道的隧道名称,将静态路由的出接口设置为该隧道名称;所述发送模块302,还用于将所述静态路由发送给网络设备,以使网络设备生成所述静态路由。
本申请实施例提供的控制器,从硬件层面而言,其硬件架构示意图具体可以参见图4所示。包括:机器可读存储介质和处理器,其中:所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令;所述处理器用于执行机器可执行指令,以实现本申请上述示例公开的GRE隧道建立操作。
基于与上述方法同样的申请构思,本申请实施例中还提出一种GRE隧道建立装置,应用于网络设备,如图5所示,为所述装置的结构图,所述装置包括:
接收模块501,用于接收控制器发送的GRE隧道建立请求,所述GRE隧道建立请求携带GRE隧道的隧道名称、源地址和目的地址,所述隧道名称在所述网络设备上具有唯一性;
建立模块502,用于建立与所述隧道名称、所述源地址和所述目的地址对应的GRE隧道。
在一个例子中,所述GRE隧道的隧道名称是所述控制器根据所述GRE隧道的源地址和目的地址获取的。
在一个例子中,所述建立模块502建立与所述隧道名称、所述源地址和所述目的地址对应的GRE隧道时具体用于:为所述隧道名称分配隧道索引,所述隧道索引是所述网络设备上具有唯一性的数字,并记录所述隧道名称和所述隧道索引的对应关系,并记录所述隧道索引、所述源地址和所述目的地址的对应关系;或者,记录所述隧道名称、所述源地址和所述目的地址的对应关系。
在一个例子中,所述GRE隧道建立装置还包括(在图中未示出):
删除模块,用于在接收到携带隧道名称的GRE隧道删除请求后,删除所述隧道名称和隧道索引的对应关系,并删除所述隧道索引、源地址和目的地址的对应关系;或者,在接收到携带隧道名称的GRE隧道删除请求后,删除所述隧道名称、源地址和目的地址的对应关系;和/或,
查询模块,用于在接收到的报文与静态路由匹配时,若所述静态路由的出接口为隧道名称,则查询所述隧道名称对应的隧道索引对应的源地址和目的地址,或者,查询所述隧道名称对应的源地址和目的地址;利用查询到的源地址和目的地址为所述报文封装GRE隧道头,并发送封装后的报文。
本申请实施例提供的网络设备,从硬件层面而言,其硬件架构示意图具体可以参见图6所示。包括:机器可读存储介质和处理器,其中:所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令;所述处理器用于执行机器可执行指令,以实现本申请上述示例公开的GRE隧道建立操作。
在上述实施例中,机器可读存储介质可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据等。例如,机器可读存储介质可以是:RAM(Radom Access Memory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可以由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其它可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其它可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
而且,这些计算机程序指令也可以存储在能引导计算机或其它可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或者多个流程和/或方框图一个方框或者多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其它可编程数据处理设备上,使得在计算机或者其它可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其它可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (10)

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隧道的隧道名称、源地址和目的地址,所述隧道名称在所述网络设备上具有唯一性;
建立与所述隧道名称、所述源地址和所述目的地址对应的GRE隧道。
6.根据权利要求5所述的方法,其特征在于,所述GRE隧道的隧道名称是所述控制器根据所述GRE隧道的源地址和目的地址获取的。
7.根据权利要求5所述的方法,其特征在于,所述建立与所述隧道名称、所述源地址和所述目的地址对应的GRE隧道,具体包括:
为所述隧道名称分配隧道索引,所述隧道索引是所述网络设备上具有唯一性的数字,并记录所述隧道名称和所述隧道索引的对应关系;并记录所述隧道索引、所述源地址和所述目的地址的对应关系;或者,
记录所述隧道名称、所述源地址和所述目的地址的对应关系。
8.根据权利要求7所述的方法,其特征在于,所述建立与所述隧道名称、所述源地址和所述目的地址对应的GRE隧道之后,还包括:
在接收到携带隧道名称的GRE隧道删除请求后,删除所述隧道名称和隧道索引的对应关系,并删除所述隧道索引、源地址和目的地址的对应关系;或者,在接收到携带隧道名称的GRE隧道删除请求后,删除所述隧道名称、源地址和目的地址的对应关系;和/或,
在接收到的报文与静态路由匹配时,若所述静态路由的出接口为隧道名称,则查询所述隧道名称对应的隧道索引对应的源地址和目的地址,或者,查询所述隧道名称对应的源地址和目的地址;利用查询到的源地址和目的地址为所述报文封装GRE隧道头,并发送封装后的报文。
9.一种控制器,其特征在于,包括:处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令;所述处理器用于执行机器可执行指令,以实现权利要求1-4任一所述的方法步骤。
10.一种网络设备,其特征在于,包括:处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令;所述处理器用于执行机器可执行指令,以实现权利要求5-8任一所述的方法步骤。
CN201810265128.9A 2018-03-28 2018-03-28 一种gre隧道建立方法及其设备 Active CN108390811B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810265128.9A CN108390811B (zh) 2018-03-28 2018-03-28 一种gre隧道建立方法及其设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810265128.9A CN108390811B (zh) 2018-03-28 2018-03-28 一种gre隧道建立方法及其设备

Publications (2)

Publication Number Publication Date
CN108390811A true CN108390811A (zh) 2018-08-10
CN108390811B CN108390811B (zh) 2020-12-29

Family

ID=63072971

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810265128.9A Active CN108390811B (zh) 2018-03-28 2018-03-28 一种gre隧道建立方法及其设备

Country Status (1)

Country Link
CN (1) CN108390811B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110147344A (zh) * 2019-05-21 2019-08-20 优刻得科技股份有限公司 在多个物理机之间通信的方法、装置、存储介质和系统
CN114499935A (zh) * 2021-12-17 2022-05-13 阿里巴巴(中国)有限公司 云平台的访问方法、装置、设备及存储介质
CN115567439A (zh) * 2021-06-30 2023-01-03 中国电信股份有限公司 报文转发方法、节点、系统以及网络节点和存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101640635A (zh) * 2009-07-31 2010-02-03 北京师范大学 一种6over4隧道中避免报文重组的方法及系统
CN103259736A (zh) * 2013-05-24 2013-08-21 杭州华三通信技术有限公司 一种隧道建立方法和网络设备
CN104243270A (zh) * 2014-09-25 2014-12-24 杭州华三通信技术有限公司 一种建立隧道的方法和装置
CN105703999A (zh) * 2016-03-29 2016-06-22 华为技术有限公司 建立gre隧道的方法和设备
CN106209636A (zh) * 2015-05-04 2016-12-07 杭州华三通信技术有限公司 从vlan至vxlan的组播数据报文转发方法和设备
CN106992915A (zh) * 2016-01-21 2017-07-28 中兴通讯股份有限公司 一种报文解封装处理、数据写入方法及装置
CN106992917A (zh) * 2017-03-03 2017-07-28 新华三技术有限公司 报文转发方法和装置
CN107306222A (zh) * 2016-04-25 2017-10-31 华为技术有限公司 标签交换路径上的流量工程隧道建立的方法和设备

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101640635A (zh) * 2009-07-31 2010-02-03 北京师范大学 一种6over4隧道中避免报文重组的方法及系统
CN103259736A (zh) * 2013-05-24 2013-08-21 杭州华三通信技术有限公司 一种隧道建立方法和网络设备
CN104243270A (zh) * 2014-09-25 2014-12-24 杭州华三通信技术有限公司 一种建立隧道的方法和装置
CN106209636A (zh) * 2015-05-04 2016-12-07 杭州华三通信技术有限公司 从vlan至vxlan的组播数据报文转发方法和设备
CN106992915A (zh) * 2016-01-21 2017-07-28 中兴通讯股份有限公司 一种报文解封装处理、数据写入方法及装置
CN105703999A (zh) * 2016-03-29 2016-06-22 华为技术有限公司 建立gre隧道的方法和设备
CN107306222A (zh) * 2016-04-25 2017-10-31 华为技术有限公司 标签交换路径上的流量工程隧道建立的方法和设备
CN106992917A (zh) * 2017-03-03 2017-07-28 新华三技术有限公司 报文转发方法和装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110147344A (zh) * 2019-05-21 2019-08-20 优刻得科技股份有限公司 在多个物理机之间通信的方法、装置、存储介质和系统
CN110147344B (zh) * 2019-05-21 2022-02-11 优刻得科技股份有限公司 在多个物理机之间通信的方法、装置、存储介质和系统
CN115567439A (zh) * 2021-06-30 2023-01-03 中国电信股份有限公司 报文转发方法、节点、系统以及网络节点和存储介质
CN114499935A (zh) * 2021-12-17 2022-05-13 阿里巴巴(中国)有限公司 云平台的访问方法、装置、设备及存储介质
CN114499935B (zh) * 2021-12-17 2023-08-29 阿里巴巴(中国)有限公司 云平台的访问方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN108390811B (zh) 2020-12-29

Similar Documents

Publication Publication Date Title
CN108259347A (zh) 一种报文传输方法和装置
CN107547391A (zh) 一种报文传输方法和装置
CN108718278A (zh) 一种报文传输方法和装置
CN108390811A (zh) 一种gre隧道建立方法及其设备
CN107547242B (zh) Vm配置信息的获取方法及装置
CN105282003B (zh) 建立隧道的方法和系统以及隧道控制器和虚拟交换机
CN108737224A (zh) 一种基于微服务架构的报文处理方法和装置
US20150088995A1 (en) Method and apparatus for sharing contents using information of group change in content oriented network environment
CN107547283B (zh) 分布式聚合组的管理方法及装置
CN109412949A (zh) 一种数据报文传输方法和装置
CN108259346A (zh) 一种等价路由表项建立方法和装置
CN104994022B (zh) 一种报文传输的方法和业务板
US11627169B2 (en) Network-based Media Processing (NBMP) workflow management through 5G Framework for Live Uplink Streaming (FLUS) control
CN108259218A (zh) 一种ip地址分配方法和装置
CN108964964A (zh) 一种网络拓扑显示方法和装置
CN107371151A (zh) 数据传输方法及装置
CN107547675A (zh) 一种用户设备迁移方法和装置
CN108418752A (zh) 一种聚合组的创建方法和装置
CN106302861A (zh) 一种地址分配方法及装置
CN104780110A (zh) 一种虚拟机迁移时的报文传输方法和设备
US20120173678A1 (en) Network aware provisioning in a mobility supporting cloud computing environment
CN107046503A (zh) 一种报文传输方法、系统及其装置
US20180103493A1 (en) Dynamic generation of geographically bound manet ids
CN107547382A (zh) 一种邻居关系发现方法和装置
WO2021017969A1 (zh) 数据导流方法、装置、设备及介质

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