CN111327545B - 数据发送方法、装置、网络***及交换机 - Google Patents

数据发送方法、装置、网络***及交换机 Download PDF

Info

Publication number
CN111327545B
CN111327545B CN201811540293.7A CN201811540293A CN111327545B CN 111327545 B CN111327545 B CN 111327545B CN 201811540293 A CN201811540293 A CN 201811540293A CN 111327545 B CN111327545 B CN 111327545B
Authority
CN
China
Prior art keywords
routing information
data packet
switch
physical machine
destination 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.)
Active
Application number
CN201811540293.7A
Other languages
English (en)
Other versions
CN111327545A (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.)
Beijing Kingsoft Cloud Network Technology Co Ltd
Beijing Kingsoft Cloud Technology Co Ltd
Original Assignee
Beijing Kingsoft Cloud Network Technology Co Ltd
Beijing Kingsoft Cloud Technology 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 Beijing Kingsoft Cloud Network Technology Co Ltd, Beijing Kingsoft Cloud Technology Co Ltd filed Critical Beijing Kingsoft Cloud Network Technology Co Ltd
Priority to CN201811540293.7A priority Critical patent/CN111327545B/zh
Publication of CN111327545A publication Critical patent/CN111327545A/zh
Application granted granted Critical
Publication of CN111327545B publication Critical patent/CN111327545B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers

Landscapes

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

Abstract

本发明提供了一种数据发送方法、装置、网络***及交换机,涉及网络通信的技术领域,该方法包括:接收第一设备发送的数据包,解析数据包,得到与数据包对应的目的地址;从预先存储的路由信息中,查找与目的地址对应的路由信息;预先存储的路由信息包括:指向各个物理机和/或虚拟机的路由信息;基于查找的路由信息,转发数据包。本发明提供的数据发送方法、装置、网络***及交换机,在通信过程中无需借助于网关,有效避免了由网关引起的通信受阻的情形发生,进而提高了用户的体验度。

Description

数据发送方法、装置、网络***及交换机
技术领域
本发明涉及网络通信的领域,尤其是涉及一种数据发送方法、装置、网络***及交换机。
背景技术
现有技术中,网络子网之间的通信,通常采用集中式通信方式,所有子网的通信都要经过网关,同时,网络控制器为网关配置网络中所有的物理机的路由信息和虚拟机的路由信息,使得物理机与物理机之间的通信,以及物理机与虚拟机之间的通信都要通过网关实现。
图1示出了一种现有技术中的集中式网络架构图,如图1所示,包括多个物理机,多个虚拟机,每个物理机均与服务器连接,并通过服务器连接至交换机,每个虚拟机均与网关连接,交换机与网关之间通过核心节点连接。
具体地,处于服务器1所管理的子网内的一个物理机1与虚拟机1进行通信时,数据包的流向依次为:物理机1——服务器1——交换机1——核心节点——网关——虚拟机1;处于服务器1所管理的子网内的一个物理机1与处于服务器2所管理的子网内的一个物理机2之间通信时,数据包的流向依次为:物理机1——服务器1——交换机1——核心节点——网关——核心节点——交换机2——服务器2——物理机2等等;这种方式,随着子网,以及跨子网的通信流量的增多,网关的负担也越大,进而可能导致子网之间的虚拟机和物理机,或者子网之间的物理机和物理机之间的通信受阻,甚至出现网络中断的情形,降低了用户的体验度。
针对上述通信受阻导致降低用户的体验度的技术问题,目前尚未提出有效的解决方案。
发明内容
有鉴于此,本发明的目的在于提供一种数据发送方法、装置、网络***及交换机,以缓解上述通信受阻的技术问题。
第一方面,本发明实施例提供了一种数据发送方法,该方法包括:接收第一设备发送的数据包,解析数据包,得到与数据包对应的目的地址;从预先存储的路由信息中,查找与目的地址对应的路由信息;预先存储的路由信息包括:指向各个物理机和/或虚拟机的路由信息;基于查找的路由信息,转发数据包。
结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中,在接收第一设备发送的数据包,解析数据包,得到与数据包对应的目的地址之前,上述方法还包括:接收路由反射器发送的路由信息,其中,路由反射器中保存有各个物理机对应的路由信息,以及各个虚拟机对应的路由信息;虚拟机对应的路由信息为路由反射器通过边界网关协议栈获取的;保存路由信息。
结合第一方面的第一种可能的实施方式,本发明实施例提供了第一方面的第二种可能的实施方式,其中,上述虚拟机对应的路由信息为经边界网关协议栈转化为EVPN协议支持的路由信息后,发送给路由反射器的路由信息。
结合第一方面,本发明实施例提供了第一方面的第三种可能的实施方式,其中,上述基于查找的路由信息,转发数据包的步骤包括:如果查找到的路由信息为指向物理机的路由信息,查找目的地址对应的物理机所属的交换机;将数据包转发至物理机所属的交换机,通过交换机将数据包发送至与目的地址对应的物理机。
结合第一方面,本发明实施例提供了第一方面的第四种可能的实施方式,其中,上述基于查找的路由信息,转发数据包的步骤包括:如果查找到的路由信息为指向虚拟机的路由信息,根据查找到的路由信息,将数据包直接发送至虚拟机。
第二方面,本发明实施例还提供一种数据发送装置,该装置包括:第一接收模块,用于接收第一设备发送的数据包,解析数据包,得到与数据包对应的目的地址;查找模块,用于从预先存储的路由信息中,查找与目的地址对应的路由信息;预先存储的路由信息包括:指向各个物理机和/或虚拟机的路由信息;转发模块,用于基于查找的路由信息,转发数据包。
结合第二方面,本发明实施例提供了第二方面的第一种可能的实施方式,其中,上述装置还包括:第二接收模块,用于在接收第一设备发送的数据包,解析数据包,得到与数据包对应的目的地址之前,接收路由反射器发送的路由信息,其中,路由反射器中保存有各个物理机对应的路由信息,以及各个虚拟机对应的路由信息;虚拟机对应的路由信息为路由反射器通过边界网关协议栈获取的;保存模块,用于保存路由信息。
结合第二方面的第一种可能的实施方式,本发明实施例提供了第二方面的第二种可能的实施方式,其中,上述虚拟机对应的路由信息为经过边界网关协议栈转化为EVPN协议支持的路由信息后,发送给路由反射器的路由信息。
结合第二方面,本发明实施例提供了第二方面的第三种可能的实施方式,其中,上述转发模块用于:如果查找到的路由信息为指向物理机的路由信息,查找目的地址对应的物理机所属的交换机;将数据包转发至物理机所属的交换机,通过交换机将数据包发送至与目的地址对应的物理机。
结合第二方面,本发明实施例提供了第二方面的第四种可能的实施方式,其中,上述转发模块还用于:如果查找到的路由信息为指向虚拟机的路由信息,根据查找到的路由信息,将数据包直接发送至虚拟机。
第三方面,本发明实施例还提供了一种网络***,该网络***包括一个或多个交换机,一个或多个物理机,一个或多个虚拟机;交换机与交换机对应的物理机连接,每个交换机中预先存储有指向网络***中的所有物理机和所有虚拟机的路由信息;物理机,用于向与物理机对应的交换机发送数据包;交换机,用于在接收到物理机发送的数据包的情况下,解析数据包,得到与数据包对应的目的地址;从交换机预先存储的路由信息中,查找与目的地址对应的路由信息;基于查找的路由信息,转发数据包。
结合第三方面,本发明实施例提供了第三方面的第一种可能的实施方式,其中,上述***中还包括:路由反射器和边界网关协议栈,其中,路由反射器与边界网关协议栈和一个或多个交换机连接;边界网关协议栈,用于获取指向所有虚拟机的路由信息,将获取的指向所有虚拟机的路由信息转化为EVPN协议支持的路由信息,将转化后的路由信息发送给路由反射器;路由反射器,用于接收一个或多个交换机中的每个交换机发送的指向对应物理机的路由信息和边界网关协议栈发送的路由信息;并将接收到的路由信息发送给一个或多个交换机。
第四方面,本发明实施例还提供了一种交换机,用于存储器和处理器,所述存储器用于存储计算机程序;处理器,用于执行所述存储器上所存放的程序时,实现第一方面所述的方法步骤。
第五方面,本发明实施例还提供了一种计算机存储介质,用于存储计算机程序指令,当计算机执行计算机程序指令时,执行第一方面所述的方法。
本发明实施例带来了以下有益效果:
本发明实施例提供的一种数据发送方法、装置、网络***及交换机,能够接收第一设备发送的数据包,解析该数据包,得到与数据包对应的目的地址,并从预先存储的路由信息中,查找与目的地址对应的路由信息,并基于查找的路由信息,转发该数据包,由于预先存储的路由信息中包括:指向各个物理机和/或虚拟机的路由信息,因此,即通过交换机中存储了指向各个物理机和/或虚拟机的路由信息,因而在接收到某个物理机发送来的数据包的情况下,可以基于交换机中预先存储的路由信息查到该数据包中的目的地址对应的路由信息,进而可以使得数据包能够被发送到该目的地址对应的设备中,因而在通信过程中无需借助于网关,就实现了设备(物理机与物理机之间或物理机与虚拟机之间等)之间的通信,因而也能解决网络之间通信受阻的技术问题,进而提高了用户的体验度。
本发明的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为一种现有技术中的网络架构示意图;
图2为另一种现有技术中的网络架构示意图;
图3为本发明实施例提供的一种数据发送方法的流程图;
图4为本发明实施例提供的一种网络***的网络架构示意图;
图5为本发明实施例提供的一种数据发送装置的结构示意图;
图6为本发明实施例提供的另一种数据发送装置的结构示意图;
图7为本发明实施例提供的一种交换机的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
目前,子网之间的通信,通常采用集中式的通信方式,需要借助于网关来实现物理机与物理机或者物理机与虚拟机之间的通信,极大地增加了网关的负担,导致通信受阻。
针对上述情况,现有技术中通常采用在原有网络架构的基础上,增加路有反射器的方式来缓解网关的网络负担。具体地,如图2所示的另一种现有技术中的网络架构图,在图1的基础上,增加了路由反射器。该路由反射器与该网络架构中的多个交换机均通信连接,可以获取到每个交换机对应的所有物理机的路由信息,然后通过EVPN(EthernetVirtual Private Network,以太网虚拟专用网络)协议使得每个交换机能够获取到所有交换机所对应的所有物理机的路由信息,进而可以通过这种方式实现不同子网的物理机之间的通信;但是,由于网络控制器不支持EVPN协议,无法将虚拟机的路由信息配置给路有反射器,因而通过这种方式,交换机只能同步到物理机的路由信息,不能同步到虚拟机的路由信息,即这种方式虽然能够减轻网关的负担,但是,仅能实现物理机之间的通信,不能实现虚拟机和物理机之间的通信。因此,物理机与虚拟机之间的通信,还需借助网关实现,当网络架构中的虚拟机较多时,同样也会出现通信受阻的情况。
基于此,本发明实施例提供的一种数据发送方法、装置、网络***及交换机,以缓解上述通信受阻的技术问题。
为便于对本实施例进行理解,首先对本发明实施例所公开的一种数据发送方法进行详细介绍。
在一种可能的实施方式中,本发明实施例提供了一种数据发送方法,该方法可以应用于网络***中的交换机,如图3所示的一种数据发送方法的流程图,该方法包括以下步骤:
步骤S302,接收第一设备发送的数据包,解析该数据包,得到与数据包对应的目的地址;
通常,该数据包可以是网络架构中,物理机与物理机之间通信时某个物理机转发的数据包,也可以是物理机与虚拟机之间通信时某个物理机或某个虚拟机转发的数据包。
具体地,为了便于对数据包进行转发,该数据包中至少包括目的IP地址、源IP地址、目的MAC地址和源MAC地址,上述目的地址通常为数据包中携带的目的MAC地址。
步骤S304,从预先存储的路由信息中,查找与上述目的地址对应的路由信息;
其中,该预先存储的路由信息通常存储在交换机中,并且该预先存储的路由信息包括:指向各个物理机和/或虚拟机的路由信息;
步骤S306,基于查找的路由信息,转发上述数据包。
具体实现时,由于上述预先存储的路由信息中包括指向各个物理机和/或虚拟机的路由信息;因此,本发明实施例所述的数据发送方法,通过交换机中存储了指向各个物理机和/或虚拟机的路由信息,因而在接收到某个物理机发送来的数据包的情况下,可以基于交换机中预先存储的路由信息查到该数据包中的目的地址对应的路由信息,进而可以使得数据包能够被发送到该目的地址对应的设备中,因而可以实现物理机与物理机之间的数据发送,也可以实现物理机与虚拟机之间的数据发送。
例如,如果上述数据包是由图1或者图2中的物理机1向物理机2发送的数据包,交换机可以从预先存储的路由信息中查找到该物理机2对应的路由信息,并基于该路由信息将数据包发送至物理机2;如果,上述数据包是由物理机1向一个虚拟机发送的数据包,则上述目的地址可以是虚拟机的目的MAC地址,上述目的地址对应的路由信息就可以包括该虚拟机的路由信息,因此可以基于该路由信息将数据包发送至该虚拟机。
本发明实施例提供的一种数据发送方法,能够接收第一设备发送的数据包,解析该数据包,得到与数据包对应的目的地址,并从预先存储的路由信息中,查找与目的地址对应的路由信息,并基于查找的路由信息,转发该数据包,由于预先存储的路由信息中包括:指向各个物理机和/或虚拟机的路由信息,因此,在通信过程中无需借助于网关,并且,也能有效避免虚拟机和物理机之间的通信受阻情况的发生,进而提高了用户的体验度。
在实际使用时,上述第一设备通常为网络***中的物理机,或者虚拟机,上述预先存储的路由信息通常是由路由反射器发送给交换机的路由信息,在交换机所在的网络***中,通常都配置有路由反射器,上述虚拟机或者物理机的路由信息通常都是该路由反射器进行广播后,由交换机进行存储的。
因此,上述步骤S302在执行之前,上述方法还包括:接收路由反射器发送的路由信息,其中,路由反射器中保存有各个物理机对应的路由信息,以及各个虚拟机对应的路由信息;虚拟机对应的路由信息为路由反射器通过边界网关协议栈获取的;交换机接收到路由反射器发送的路由信息后,可以保存该路由信息。
具体地,上述虚拟机对应的路由信息为经边界网关协议栈转化为EVPN协议支持的路由信息后,发送给路由反射器的路由信息。
在实际使用时,上述预先存储的路由信息是由网络控制器进行配置的,具体地,网络控制器可以将虚拟机对应的路由信息发送给边界网关协议栈,即BGP(Border GatewayProtocol,边界网关协议)协议栈,BGP协议栈将这些路由信息转化为EVPN协议能够支持的路由信息后发送给路由反射器,然后路由反射器将这些路由信息告知每个交换机,这样每个交换机中除了包括每个物理机对应的路由信息外,还包括了每个虚拟机对应的路由信息。
因此,可以在网络架构中除配置有路由反射器外,通常还需要边界网关协议栈,通过该边界网关协议栈配置上述路由信息,并将上述路由信息发送至路由反射器,以使路由反射器将路由信息广播至与路由反射器通信连接的交换机中,由交换机进行存储。
由于在数据包转发过程中,上述虚拟机对应的路由信息为路由反射器通过边界网关协议栈获取的,并且交换机可以直接查找到该路由信息,因此在将数据包发送至虚拟机的过程中并没有网关的参与,因此,本发明实施例提供的数据发送方法进行数据包发送的网络***,可以取消网关的部署,在缓解网络受阻的同时,也降低了成本。
同时,本发明实施例提供的上述数据发送方法,并不局限于上述虚拟机和物理机之间的通信,还可以应用于不支持EVPN协议的网络架构中,实现物理机或虚拟机与支持EVPN协议的网络架构中的物理机之间的通信,具体以实际使用情况为准,本发明实施例对此不进行限制。
为了便于理解,图4示出了一种基于本发明实施例提供的数据发送方法的网络架构示意图。其中,在图4所示的网络架构中,相对于现有技术中的图1或图2所示的网络架构,增加了边界网关协议栈,即,BGP协议栈,并取消了网关,使多个物理机与虚拟机之间形成分布式网络架构。在实际使用时,上述边界网关协议栈的增加过程为软件配置的过程,可以在路由反射器上进行软件配置,为了便于理解,图4中以框图的形式表示该边界网关协议栈,其中,边界网关协议栈也称为BGP协议栈,是运行于TCP(Transmission Control Protocol传输控制协议)上的一种自治***的路由协议。具体地,BGP协议栈遵从BGP协议,其主要功能是和其他的基于BGP协议的网络***交换网络可达信息,该网络可达信息包括列出的自治***的信息。这些信息有效地构造了自治***互联的拓朴图以便于妥善处理不相关路由域间的多路连接。在其他实施方式中,可以设置其他协议的协议栈,具体以实际使用情况为准,本发明实施例对此不进行限制。
具体地,与图1或者图2所示网络架构类似,在图4所示的网络架构中,也包括多个物理机,多个虚拟机,每个物理机均与服务器连接,并通过服务器连接至交换机,每个交换机均连接至核心节点,同时,每个虚拟机均也均连接至核心节点。在图4所示的网络架构中,取消了网关的部署,使虚拟机直接与核心节点通信,能够形成纯分布式的网络架构。
具体地,网络控制器将包含有虚拟机对应的路由信息的配置信息发送给边界网关协议栈,边界网关协议栈将这些配置信息转化为EVPN协议能够支持的路由信息后发送给路由反射器,然后路由反射器将这些路由信息以广播的方式告知每个交换机,这样每个交换机中除了包括了原有的每个物理机对应的路由信息之后,还包括了每个虚拟机对应的路由信息。
应当理解,图4所示的网络架构中,其物理机和虚拟机的数量可以是多个,为了便于说明,图4中仅仅示出了三个,在其他实施方式中,上述物理机和虚拟机的数量,以及服务器和交换机的数量都可以根据实际使用情况进行设置,本发明实施例对此不进行限制。
基于图4所示的网络架构,上述配置该网络架构的网络***接收到数据包后,可以解析该数据包,以获取该数据包对应的目的地址,从预先存储的路由信息中,查找与该目的地址对应的路由信息,以及基于查找的路由信息,转发该数据包,具体的转发过程可以包括:
(1)如果查找到的路由信息为指向物理机的路由信息,查找目的地址对应的物理机所属的交换机;将该数据包转发至物理机所属的交换机,通过交换机将数据包发送至与目的地址对应的物理机。
(2)如果查找到的路由信息为指向虚拟机的路由信息,根据查找到的路由信息,将数据包直接发送至虚拟机。
为了便于理解,下面结合图4,以服务器1中的物理机1与虚拟机1之间通信,以及服务器1中的物理机1与服务器2中的物理机2之间通信为例进行说明,包括以下过程:
(1)物理机1向服务器1发送数据包,其中,该数据包中至少包括:目的IP地址,源IP地址,目的MAC地址,源MAC地址;
(2)服务器1将接收到的数据包发送给交换机1,交换机1在接收到该数据包后,解析该数据包获得该数据包对应的目的地址,如上述目的MAC地址,根据该目的MAC地址从预先存储的路由信息中,查找对应的路由信息;
(3)如果目的MAC地址为物理机2的MAC地址,那么匹配到的路由信息为与物理机2对应的路由信息,交换机1根据匹配到的路由信息将该数据包经由交换机2,服务器2发送给物理机2;
(4)如果目的MAC地址为虚拟机1的MAC地址,那么交换机1根据目的MAC地址匹配到的路由信息为虚拟机1对应的路由信息,此时交换机1根据虚拟机1对应的路由信息将该数据包发送给虚拟机1,实现了物理机向虚拟机的数据发送的过程。
上述通过增加边界网关协议栈的方式,能够将包含虚拟机对应的路由信息转化为EVPN协议能够支持的路由信息后发送给路由反射器,路由反射器将所有虚拟机的路由信息和所有交换机下的物理机的路由信息以广播的形式告知每个交换机,使得每个交换机获知到所有的虚拟机和所有物理机的路由信息,进而实现了上述虚拟机和物理机之间通信,并且,在通信过程中无需借助于网关,因此,可以取消网关在网络架构中的部署,有效避免了网关引起的通信受阻的情形发生,进而提高了用户的体验度。
对应于上述实施方式所述的数据发送方法,本发明实施例还提供了一种数据发送装置,位于交换机中,如图5所示的一种数据发送装置的结构示意图,该装置包括:
第一接收模块50,用于接收第一设备发送的数据包,解析数据包,得到与数据包对应的目的地址;
查找模块52,用于从预先存储的路由信息中,查找与目的地址对应的路由信息;预先存储的路由信息包括:指向各个物理机和/或虚拟机的路由信息;
转发模块54,用于基于查找的路由信息,转发数据包。
进一步,如图6所示的另一种数据发送装置的结构示意图,除图5所示的结构外,上述装置还包括:
第二接收模块56,用于在接收第一设备发送的数据包,解析数据包,得到与数据包对应的目的地址之前,接收路由反射器发送的路由信息,其中,路由反射器中保存有各个物理机对应的路由信息,以及各个虚拟机对应的路由信息;虚拟机对应的路由信息为路由反射器通过边界网关协议栈获取的;
保存模块58,用于保存路由信息。
具体地,上述虚拟机对应的路由信息为经过边界网关协议栈转化为EVPN协议支持的路由信息后,发送给路由反射器的路由信息。
上述转发模块用于:如果查找到的路由信息为指向物理机的路由信息,查找目的地址对应的物理机所属的交换机;将数据包转发至物理机所属的交换机,通过交换机将数据包发送至与目的地址对应的物理机。
上述转发模块还用于:如果查找到的路由信息为指向虚拟机的路由信息,根据查找到的路由信息,将数据包直接发送至虚拟机。
本发明实施例提供的数据发送装置,与上述实施例提供的数据发送方法具有相同的技术特征,所以也能解决相同的技术问题,达到相同的技术效果。
本发明实施例还提供了一种网络***,该网络***包括一个或多个交换机,一个或多个物理机,一个或多个虚拟机;该网络***可以参考图4所示的网络架构示意图。
具体地,交换机与交换机对应的物理机连接,每个交换机中预先存储有指向网络***中的所有物理机和所有虚拟机的路由信息;
物理机,用于向与物理机对应的交换机发送数据包;
交换机,用于在接收到物理机发送的数据包的情况下,解析数据包,得到与数据包对应的目的地址;从交换机预先存储的路由信息中,查找与目的地址对应的路由信息;基于查找的路由信息,转发数据包。
进一步,上述网络***中还包括:路由反射器和边界网关协议栈,其中,路由反射器与边界网关协议栈和一个或多个交换机连接;
边界网关协议栈,用于获取指向所有虚拟机的路由信息,将获取的指向所有虚拟机的路由信息转化为EVPN协议支持的路由信息,将转化后的路由信息发送给路由反射器;
路由反射器,用于接收一个或多个交换机中的每个交换机发送的指向对应物理机的路由信息和所述边界网关协议栈发送的路由信息;并将接收到的路由信息发送给一个或多个交换机。
此外,本发明实施例还提供了一种交换机,包括存储器和处理器,存储器用于存储计算机程序;所述处理器用于执行所述存储器上所存放的程序时,实现上述实施例所述的数据发送方法的步骤。
进一步,本发明实施例还提供了一种计算机存储介质,用于存储计算机程序指令,当计算机执行所述计算机程序指令时,执行上述数据发送方法。
参见图7,本发明实施例还提供了一种交换机的结构示意图,包括:处理器700,存储器701,总线702和通信接口703,处理器700、通信接口703和存储器701通过总线702连接;处理器700用于执行存储器701中存储的可执行模块,例如计算机程序。其中,存储器701可能包含高速随机存取存储器(RAM,RandomAccess Memory),也可能还包括非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器。通过至少一个通信接口703(可以是有线或者无线)实现该***网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。总线702可以是ISA总线、PCI总线或EISA总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。其中,存储器701用于存储程序,处理器700在接收到执行指令后,执行程序,前述本发明实施例任一实施例揭示的数据发送装置所执行的方法可以应用于处理器700中,或者由处理器700实现。处理器700可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器700中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器700可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application Specific Integrated Circuit,简称ASIC)、现成可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器701,处理器700读取存储器701中的信息,结合其硬件完成上述方法的步骤。
本发明实施例所提供的数据发送方法、装置、网络***及交换机的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
另外,在本发明实施例的描述中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (9)

1.一种数据发送方法,其特征在于,应用于交换机,所述方法包括:
接收路由反射器发送的路由信息,其中,所述路由反射器中保存有各个物理机对应的路由信息,以及各个虚拟机对应的路由信息;所述虚拟机对应的路由信息为经边界网关协议栈转化为EVPN协议支持的路由信息后,发送给所述路由反射器的路由信息;保存所述路由信息;
接收第一设备发送的数据包,解析所述数据包,得到与所述数据包对应的目的地址;
从预先存储的路由信息中,查找与所述目的地址对应的路由信息;所述预先存储的路由信息包括:指向各个物理机和/或虚拟机的路由信息;
基于查找的所述路由信息,转发所述数据包。
2.根据权利要求1所述的方法,其特征在于,所述基于查找的所述路由信息,转发所述数据包的步骤包括:
如果查找到的所述路由信息为指向物理机的路由信息,查找所述目的地址对应的物理机所属的交换机;
将所述数据包转发至所述物理机所属的交换机,通过所述交换机将所述数据包发送至与所述目的地址对应的物理机。
3.根据权利要求1所述的方法,其特征在于,所述基于查找的所述路由信息,转发所述数据包的步骤包括:
如果查找到的所述路由信息为指向虚拟机的路由信息,根据查找到的所述路由信息,将所述数据包直接发送至所述虚拟机。
4.一种数据发送装置,其特征在于,所述装置包括:
第一接收模块,用于接收第一设备发送的数据包,解析所述数据包,得到与所述数据包对应的目的地址;
第二接收模块,用于在接收第一设备发送的数据包,解析所述数据包,得到与所述数据包对应的目的地址之前,接收路由反射器发送的路由信息,其中,所述路由反射器中保存有各个物理机对应的路由信息,以及各个虚拟机对应的路由信息;所述虚拟机对应的路由信息为经过边界网关协议栈转化为EVPN协议支持的路由信息后,发送给所述路由反射器的路由信息;
保存模块,用于保存所述路由信息;
查找模块,用于从预先存储的路由信息中,查找与所述目的地址对应的路由信息;所述预先存储的路由信息包括:指向各个物理机和/或虚拟机的路由信息;
转发模块,用于基于查找的所述路由信息,转发所述数据包。
5.根据权利要求4所述的装置,其特征在于,所述转发模块用于:
如果查找到的所述路由信息为指向物理机的路由信息,查找所述目的地址对应的物理机所属的交换机;
将所述数据包转发至所述物理机所属的交换机,通过所述交换机将所述数据包发送至与所述目的地址对应的物理机。
6.根据权利要求4所述的装置,其特征在于,所述转发模块用于:
如果查找到的所述路由信息为指向虚拟机的路由信息,根据查找到的所述路由信息,将所述数据包直接发送至所述虚拟机。
7.一种网络***,其特征在于,所述网络***包括一个或多个交换机,一个或多个物理机,一个或多个虚拟机;所述交换机与所述交换机对应的物理机连接,每个所述交换机中预先存储有指向所述网络***中的所有物理机和所有虚拟机的路由信息;
所述物理机,用于向与所述物理机对应的交换机发送数据包;
所述交换机,用于在接收到所述物理机发送的数据包的情况下,解析所述数据包,得到与所述数据包对应的目的地址;从所述交换机预先存储的路由信息中,查找与所述目的地址对应的路由信息;基于查找的所述路由信息,转发所述数据包;
所述***中还包括:路由反射器和边界网关协议栈,其中,所述路由反射器与所述边界网关协议栈和所述一个或多个交换机连接;
所述边界网关协议栈,用于获取指向所有虚拟机的路由信息,将获取的指向所有虚拟机的路由信息转化为EVPN协议支持的路由信息,将转化后的路由信息发送给所述路由反射器;
所述路由反射器,用于接收所述一个或多个交换机中的每个所述交换机发送的指向对应物理机的路由信息和所述边界网关协议栈发送的路由信息;并将接收到的路由信息发送给所述一个或多个交换机。
8.一种交换机,其特征在于,包括存储器和处理器,所述存储器用于存储计算机程序;所述处理器,用于执行所述存储器上所存放的程序时,实现权利要求1-3任一所述的方法步骤。
9.一种计算机存储介质,其特征在于,用于存储计算机程序指令,当计算机执行所述计算机程序指令时,执行如权利要求1至3任一项所述的方法。
CN201811540293.7A 2018-12-14 2018-12-14 数据发送方法、装置、网络***及交换机 Active CN111327545B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811540293.7A CN111327545B (zh) 2018-12-14 2018-12-14 数据发送方法、装置、网络***及交换机

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811540293.7A CN111327545B (zh) 2018-12-14 2018-12-14 数据发送方法、装置、网络***及交换机

Publications (2)

Publication Number Publication Date
CN111327545A CN111327545A (zh) 2020-06-23
CN111327545B true CN111327545B (zh) 2021-10-15

Family

ID=71170840

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811540293.7A Active CN111327545B (zh) 2018-12-14 2018-12-14 数据发送方法、装置、网络***及交换机

Country Status (1)

Country Link
CN (1) CN111327545B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112165430B (zh) * 2020-09-24 2024-02-13 阿波罗智联(北京)科技有限公司 数据路由方法、装置、设备以及存储介质
CN115333994B (zh) * 2022-08-01 2024-05-31 北京金山云网络技术有限公司 实现vpn路由快速收敛的方法、装置以及电子设备
CN115174473A (zh) * 2022-08-09 2022-10-11 展讯通信(上海)有限公司 数据处理方法、装置及中继设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106470155A (zh) * 2015-08-14 2017-03-01 中国电信股份有限公司 一种虚拟机数据的转发方法、sdn控制器和sdn***
CN106789664A (zh) * 2016-03-29 2017-05-31 新华三技术有限公司 一种路由聚合方法及装置
CN107181691A (zh) * 2013-12-06 2017-09-19 华为技术有限公司 一种网络中实现报文路由的方法、设备和***

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040034702A1 (en) * 2002-08-16 2004-02-19 Nortel Networks Limited Method and apparatus for exchanging intra-domain routing information between VPN sites
US8121136B2 (en) * 2009-06-24 2012-02-21 Cisco Technology, Inc. Dynamic discovery mechanisms via inter-domain routing protocol
US9590824B1 (en) * 2014-08-05 2017-03-07 Cisco Technology, Inc. Signaling host move in dynamic fabric automation using multiprotocol BGP
US9900250B2 (en) * 2015-03-26 2018-02-20 Cisco Technology, Inc. Scalable handling of BGP route information in VXLAN with EVPN control plane
US9985867B2 (en) * 2015-12-11 2018-05-29 Cisco Technology, Inc. Optimizing EVPN for data centers with redundant top-of-rack deployments
CN106161253B (zh) * 2016-06-23 2020-12-25 新华三技术有限公司 一种报文处理方法及装置
CN106453023B (zh) * 2016-11-01 2019-06-07 优刻得科技股份有限公司 一种用于物理设备与虚拟网络的通信方法、设备与***

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107181691A (zh) * 2013-12-06 2017-09-19 华为技术有限公司 一种网络中实现报文路由的方法、设备和***
CN106470155A (zh) * 2015-08-14 2017-03-01 中国电信股份有限公司 一种虚拟机数据的转发方法、sdn控制器和sdn***
CN106789664A (zh) * 2016-03-29 2017-05-31 新华三技术有限公司 一种路由聚合方法及装置

Also Published As

Publication number Publication date
CN111327545A (zh) 2020-06-23

Similar Documents

Publication Publication Date Title
US10057158B2 (en) Control device discovery in networks having separate control and forwarding devices
CN100542111C (zh) 基于共享风险链路群组信息确定网络路由选择信息的方法和装置
CN107026791B (zh) 虚拟专用网络vpn业务优化方法和设备
CN111510379A (zh) Evpn报文处理方法、设备及***
CN108809847B (zh) 实现负载均衡的方法、装置和网络***
CN111327545B (zh) 数据发送方法、装置、网络***及交换机
US20060056411A1 (en) Method and apparatus for determining neighboring routing elements and rerouting traffic in a computer network
KR20130109141A (ko) 계층적 라벨 적층을 이용하여 ldp 컨버전스를 개선하기 위한 방법 및 장치
CN106254152B (zh) 一种流量控制策略处理方法和装置
EP4191966A1 (en) Method and device for processing data message, storage medium, and electronic device
JP7389091B2 (ja) トラフィックフォワーディングを制御するための方法、装置及びシステム
JP2021534669A (ja) パケット処理方法およびゲートウェイ・デバイス
CN113923161A (zh) 一种报文转发方法及装置
CN111327530B (zh) 数据发送方法、装置、网络***及交换机
US11343153B2 (en) BGP logical topology generation method, and device
CN113765800B (zh) 传输报文的方法、装置、***、设备及可读存储介质
CN107786441B (zh) 一种通信方法、OpenFlow交换机及通信***
CN112491709A (zh) 交叉SR/SRv6路径下发方法和装置、存储介质及电子装置
CN113037691A (zh) 报文处理方法、装置及***
CN113518104B (zh) 一种数据报文的处理方法、中转设备及***
CN110601982B (zh) 路由传递方法、装置及路由器
CN108259292B (zh) 建立隧道的方法及装置
CN114760244A (zh) 一种传输绑定段标识bsid的方法、装置和网络设备
JP6801075B2 (ja) データ・パケットのパス情報を得る方法及びデバイス
CN113014481B (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