CN107770298A - 传输数据的方法和装置 - Google Patents

传输数据的方法和装置 Download PDF

Info

Publication number
CN107770298A
CN107770298A CN201710917482.0A CN201710917482A CN107770298A CN 107770298 A CN107770298 A CN 107770298A CN 201710917482 A CN201710917482 A CN 201710917482A CN 107770298 A CN107770298 A CN 107770298A
Authority
CN
China
Prior art keywords
container
mapping relations
container group
group
routing device
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
CN201710917482.0A
Other languages
English (en)
Other versions
CN107770298B (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.)
Huawei Cloud Computing Technologies Co Ltd
Original Assignee
Huawei 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201710917482.0A priority Critical patent/CN107770298B/zh
Priority to CN202010663979.6A priority patent/CN111953805B/zh
Publication of CN107770298A publication Critical patent/CN107770298A/zh
Application granted granted Critical
Publication of CN107770298B publication Critical patent/CN107770298B/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
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5007Internet protocol [IP] addresses
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • 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/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/255Maintenance or indexing of mapping tables
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

本申请提供了一种传输数据的方法和装置,应用于包括至少一个计算设备、至少一个路由设备的通信系统中执行,每个计算设备中配置至少一个容器,该通信系统中配置有多个容器组,该多个容器组中的每个容器组包括至少一个容器,一个容器仅属于一个容器组,该方法包括:路由设备确定第一映射关系和多个第二映射关系,该第一映射关系用于指示多个容器组与多个外部标识之间的一一映射关系,该多个第二映射关系和该多个容器组一一对应,每个第二映射关系用于指示所对应的容器组中的多个容器与多个内部标识之间的一一映射关系;路由设备根据该第一映射关系和该第二映射关系,控制容器与外部设备之间的数据传输,能够容易地实现容器与外部设备之间的通信。

Description

传输数据的方法和装置
技术领域
本申请实施例涉及通信领域,并且更具体地,涉及管理网络切片的方法、装置和系统。
背景技术
容器是应用服务器中位于组件和平台之间的接口集合。容器是伴随着瘦客户端系统的发展而诞生的。在开发瘦客户端系统时,开发人员要花费大量的精力去关注线程安全、事务、网络、资源等等细节,从而降低了开发效率。由于这些对这些细节的解决方法一般是固定不变,或者只有参数改变的,所以从代码重用和设计模式的角度出发,开发人员将这些底层细节提取出来,做成平台,并提供一定的接口。这样,业务开发人员就不需要在关注与这些底层细节的实现,而专注于业务逻辑的实现。
容器配置在计算设备(例如,应用服务器)之内,由计算设备负责加载和维护。一个容器只能存在于一个计算设备之内,一个计算设备可以建立和维护多个容器。
在现有技术中,可以通过以下方式实现容器与外部设备之间的通信需要经过计算设备的通信。
方式1,容器可以使用计算设备的网络信息(例如,网际协议(Internet Protocol)IP地址)与外部设备进行通信,但是,在该方式中,当计算设备中运行有多个容器时,多个容器共用同一IP地址,容易导致通信出现错误,因而,该方式不易实现容器与外部设备之间的通信。
方式2,可以考虑为每个容器分配独立的网络信息(例如,IP地址),但是,随着通信技术的发展,通信系统中可能存在海量的容器,导致该方式对IP地址的开销极大,因而,该方式不易实现容器与外部设备之间的通信。
因此,希望提供一种技术,能够容易地实现容器与外部设备之间的通信。
发明内容
本申请提供一种传输数据的方法和装置,能够容易地实现容器与外部设备之间的通信。
第一方面,提供了一种传输数据的方法在包括至少一个计算设备和至少一个路由设备的通信系统中执行,每个计算设备中配置至少一个容器,该通信系统中配置有多个容器组,该多个容器组中的每个容器组包括至少一个容器,一个容器仅属于一个容器组,该方法包括:该路由设备确定第一映射关系和多个第二映射关系,该第一映射关系用于指示多个容器组与多个外部标识之间的一一映射关系,该多个第二映射关系和该多个容器组一一对应,每个第二映射关系用于指示所对应的容器组中的多个容器与多个内部标识之间的一一映射关系;该路由设备根据该第一映射关系和该第二映射关系,控制该容器与外部设备之间的数据传输。
根据本申请实施例的传输数据的方法,通过为每个容器组设置一个外部标识,并未该容器组内的每个容器配置内部标识,能够实现基于一个外部标识和一个内部标识构成的标识对唯一地指示一个容器,从而,能够基于该标识对,容易地实现外部设备与容器之间的通信。
可选地,至少两个不同的容器组之间存在至少两个内部标识相同的容器。
从而,能够实现同一内部标识在不同容器组之间的复用,能够减少内部标识的开销。
可选地,该路由设备根据该第一映射关系和该第二映射关系,控制该容器与该外部设备之间的数据传输,包括:该路由设备从第一外部设备接收携带有所第一内部标识和第一外部标识的第一数据包;该路由设备根据该第一映射关系,确定与该第一外部标识对应的第一容器组;该路由设备根据该第一容器组对应的第二映射关系,从该第一容器组中确定与该第一内部标识对应的第一容器;该路由设备向该第一容器发送该第一数据包中携带的第一数据。
从而,路由设备能够基于外部设备发送的数据包中携带的标识对(第一内部标识和第一外部标识),唯一地确定该数据包需要发送至的容器,进而能够实现外部设备向容器发送数据的过程。
可选地,该路由设备根据该第一映射关系和该第二映射关系,控制该容器与该外部设备之间的数据传输,包括:该路由设备从第二容器接收第二数据;该路由设备确定该第二容器所属于的第二容器组;该路由设备根据该第一映射关系,确定与该第二容器组对应的该第二外部标识;该路由设备根据该第二容器组对应的第二映射关系,确定与该第二容器对应的第二内部标识,该路由设备对该第二数据进行封装,以生成携带有该第二外部标识和该第二内部标识的第二数据包;该路由设备向第二外部设备发送该第二数据包。
从而,路由设备能够基于发送数据的容器,确定该容器对应的标识对(第二内部标识和第二外部标识),通过将该标识对和数据进行封装而生成数据包,能够使外部设备基于该数据包中携带的标识对,唯一地确定该数据包中的数据所来自于的容器,进而能够实现容器向外部设备发送数据的过程。
可选地,每个容器组仅用于处理一个用户的业务。
即,每个外部标识能够唯一地对应一个用户,从而,能够实现通过不同外部标识,对不同用户的隔离,避免同一容器处理不用用户的业务而导致对通信的安全性的影响。
可选地,该至少一个容器组中包括至少一个公共容器组,该公共容器组包括配置在至少两个计算节点上的容器。
从而,能够实现通过分布在多个计算节点上的公共容器组处理同一业务,能够避免单个计算节点的资源的显示而导致无法实现容器组的配置,进而,能够易于实现公共容器组中容器的配置,提高本申请实施例的传输数据的方法的实用性和可靠性。
可选地,该公共容器组对应的外部标识为该路由设备的网际协议IP地址。
从而,通过使用路由设备的IP地址作为公共容器组的外部标识,能够节约外部标识的开销。
可选地,分配给同一用户的多个容器属于同一公共容器组。
从而,能够实现外部标识与用户的一一对应,即,为一个用户服务的容器均处于同一容器组,或者说,为一个用户服务的容器对应同一外部标识,从而,用户(或者说,用户对应的外部设备)需要访问容器时,仅需要记录并保存一个外部标识,从而便于同一用户对容器的访问。
可选地,该至少一个容器组中包括至少一个专用容器组,该专用容器组中的容器配置在同一计算节点上。
通过将一个容器组中的容器配置在同一计算节点上,能够提高数据传输的速度和效率。
可选地,该外部标识为IP地址,该内部标识为端口号。
第二方面,提供了一种传输数据的方法,在包括控制设备、至少一个计算设备和至少一个路由设备的通信系统中执行,该方法包括:该控制设备控制该计算设备配置多个容器组,该多个容器组中的每个容器组包括至少一个容器,一个容器仅属于一个容器组;该控制设备向该路由设备发送第一映射关系和多个第二映射关系,该第一映射关系用于指示多个容器组与多个外部标识之间的一一映射关系,该多个第二映射关系和该多个容器组一一对应,每个第二映射关系用于指示所对应的容器组中的多个容器与多个内部标识之间的一一映射关系,以便于该路由设备根据该第一映射关系和该第二映射关系控制该容器与外部设备之间的数据传输。
根据本申请实施例的传输数据的方法,通过为每个容器组设置一个外部标识,并未该容器组内的每个容器配置内部标识,能够实现基于一个外部标识和一个内部标识构成的标识对唯一地指示一个容器,从而,能够基于该标识对,容易地实现外部设备与容器之间的通信。
可选地,该控制设备控制该计算设备配置多个容器组,包括:该控制设备从第一模式和第二模式中,确定目标模式,其中,基于该第一模式创建的容器组包括配置在至少两个计算节点上的容器,基于该第二模式创建的容器组中的容器配置在同一计算节点上;该控制设备根据该目标模式,为第一用户创建至少一个第一容器组。
可选地,该控制设备从第一模式和第二模式中,确定目标模,包括:该控制设备根据所述路由设备对应的路由模式,从第一模式和第二模式中,确定目标模式。
可选地,该控制设备从第一模式和第二模式中,确定目标模,包括:该控制设备根据该数据对应的业务的业务信息和该容器组被分配给的用户的用户信息中的至少一种信息,从第一模式和第二模式中,确定目标模式。
通过第一模式,能够实现通过分布在多个计算节点上的公共容器组处理同一业务,能够避免单个计算节点的资源的显示而导致无法实现容器组的配置,进而,能够易于实现公共容器组中容器的配置,提高本申请实施例的传输数据的方法的实用性和可靠性。通过第二模式,能够实现将一个容器组中的容器配置在同一计算节点上,能够提高数据传输的速度和效率。
可选地,该外部标识为IP地址,该内部标识为端口号。
息被泄露,进而能够提高通信的安全性。
第三方面,提供了一种传输数据的装置,包括用于执行上述第一方面以及第一方面的各实现方式中的传输数据的方法的各步骤的单元。
第四方面,提供了一种传输数据的装置,包括用于执行上述第二方面以及第二方面的各实现方式中的传输数据的方法的各步骤的单元。
第五方面,提供了一种传输数据的设备,该设备具有实现上述第一方面以及第一方面的各实现方式中的路由设备的行为的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多于一个与上述功能相对应的模块。
第六方面,提供了一种传输数据的设备,该设备具有实现上述第二方面以及第二方面的各实现方式中的控制设备的行为的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多于一个与上述功能相对应的模块。
第七方面,提供了一种传输数据的设备,传输数据的设备的结构中包括处理器。该处理器被配置为支持传输数据的设备执行第一方面以及第一方面的各实现方式中的相应的功能,在一个可能的设计中,该传输数据的设备还可以包括收发器,用于支持传输数据的设备接收或发送信息。在一个可能的设计中,该传输数据的设备还可以包括存储器,该存储器用于与处理器耦合,保存传输数据的设备必要的程序指令和数据。或者说,该传输数据的设备包括存储器和处理器,该存储器用于存储计算机程序,该处理器用于从存储器中调用并运行该计算机程序,使得传输数据的设备执行上述第一方面及其各种实现方式中的任一种传输数据的方法。
第八方面,提供了一种传输数据的设备,传输数据的设备的结构中包括处理器。该处理器被配置为支持传输数据的设备执行第二方面以及第二方面的各实现方式中的相应的功能,在一个可能的设计中,该传输数据的设备还可以包括收发器,用于支持服务器接收或发送信息。在一个可能的设计中,该传输数据的设备还可以包括存储器,该存储器用于与处理器耦合,保存传输数据的设备必要的程序指令和数据。或者说,该传输数据的设备包括存储器和处理器,该存储器用于存储计算机程序,该处理器用于从存储器中调用并运行该计算机程序,使得传输数据的设备执行上述第二方面及其各种实现方式中的任一种传输数据的方法。
第九方面,提供了一种计算机程序产品,所述计算机程序产品包括:计算机程序代码,当所述计算机程序代码被路由设备的处理单元、通信单元或处理器、收发器运行时,使得路由设备的执行上述第一方面及其各种实现方式中的任一种传输数据的方法。
第十方面,提供了一种计算机程序产品,所述计算机程序产品包括:计算机程序代码,当所述计算机程序代码被控制设备的处理单元、通信单元或处理器、收发器运行时,使得控制设备的执行上述第二方面及其各种实现方式中的任一种传输数据的方法。
第十一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有程序,所述程序使得路由设备执行上述第一方面及其各种实现方式中的任一种传输数据的方法。或者说,该计算机可读存储介质用于储存为上述路由设备所用的计算机软件指令,其包含用于执行上述第一方面的方法所设计的程序。
第十二方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有程序,所述程序使得控制设备执行上述第二方面及其各种实现方式中的任一种传输数据的方法。或者说,该计算机可读存储介质用于储存为上述控制设备所用的计算机软件指令,其包含用于执行上述第二方面的方法所设计的程序。
第十三方面,提供了一种芯片系统,该芯片系统包括处理器,用于支持路由设备实现上述第一方面中所涉及的功能,例如,确定第一映射关系和多个第二映射关系,并根据该第一映射关系和该第二映射关系,控制该容器与该外部设备之间的数据传输。在一种可能的设计中,所述芯片系统还包括存储器,用于保存实现上述功能必要的程序指令和数据。
第十四方面,提供了一种芯片系统,该芯片系统包括处理器,用于支持控制设备实现上述第二方面中所涉及的功能,例如,该控制设备控制该计算设备配置多个容器组,向该路由设备发送第一映射关系和多个第二映射关系。在一种可能的设计中,所述芯片系统还包括存储器,用于保存实现上述功能必要的程序指令和数据。
通过为每个容器组设置一个外部标识,并未该容器组内的每个容器配置内部标识,能够实现基于一个外部标识和一个内部标识构成的标识对唯一地指示一个容器,从而,能够基于该标识对,容易地实现外部设备与容器之间的通信。
附图说明
图1是适用传输数据的方法和装置的通信系统的一例的示意性结构图。
图2是计算设备与路由设备的连接方式的一例的示意图。
图3是计算设备与路由设备的连接方式的另一例的示意图。
图4是计算设备与路由设备的连接方式的再一例的示意图。
图5是适用传输数据的方法和装置的通信系统的再一例的示意性结构图。
图6是本申请实施例的创建容器的方法的示意性流程图。
图7是本申请实施例的传输数据的方法的一例的示意性流程图。
图8是本申请实施例的传输数据的方法的另一例的示意性流程图。
图9是本申请实施例的输数据的装置的一例的示意图。
图10是本申请实施例的输数据的装置的另一例示意图。
图11是本申请实施例的输数据的设备的一例的示意图。
图12是本申请实施例的输数据的设备的另一例示意图。
具体实施方式
下面将结合附图,对本申请中的技术方案进行描述。
本申请实施例提供的传输数据的方法和装置,可以应用于计算机上,该计算机包括硬件层、运行在硬件层之上的操作系统层,以及运行在操作系统层上的应用层。该硬件层包括中央处理器(Central Processing Unit,CPU)、内存管理单元(Memory ManagementUnit,MMU)和内存(也称为主存)等硬件。
该操作系统可以是任意一种或多种通过进程(Process)实现业务处理的计算机操作系统,例如,Linux操作系统、Unix操作系统、Android操作系统、iOS操作系统或windows操作系统等。
该应用层包含浏览器、通讯录、文字处理软件、即时通信软件等应用。
并且,在本申请实施例中,该计算机可以是智能手机等手持设备,也可以是个人计算机等终端设备,本申请并未特别限定,只要能够通过运行记录有本申请实施例的传输数据的方法的代码的程序,以根据本申请实施例的传输数据的方法对数据进行传输即可。
本申请实施例的传输数据的方法的执行主体可以是计算机设备,或者,是计算机设备中能够调用程序并执行程序的功能模块。
此外,本申请的各个方面或特征可以实现成方法、装置或使用标准编程和/或工程技术的制品。
本申请中使用的术语“制品”涵盖可从任何计算机可读器件、载体或介质访问的计算机程序。例如,计算机可读介质可以包括,但不限于:磁存储器件(例如,硬盘、软盘或磁带等),光盘(例如,压缩盘(Compact Disc,CD)、数字通用盘(Digital Versatile Disc,DVD)等),智能卡和闪存器件(例如,可擦写可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM)、卡、棒或钥匙驱动器等)。
另外,本文描述的各种存储介质可代表用于存储信息的一个或多个设备和/或其它机器可读介质。
其中,术语“机器可读介质”可包括但不限于,无线信道和能够存储、包含和/或承载指令和/或数据的各种其它介质。
首先,结合图1和图5对适用传输数据的方法和装置的通信系统置的系统的架构进行说明。
图1是适用本申请实施例的传输数据的方法的系统100的一例示意图。如图1所示,该系统包括:
至少一个计算设备110;
至少一个路由设备120。
首先,对上述各设备的功能进行说明。
1.计算设备
在本申请实施例中,计算设备用于运行容器(container),具体地说,每个计算设备110中配置(或者说,运行)有至少一个容器。
并且,在本申请实施例中,通信系统100中存在多个(两个或两个以上)容器组,其中每个容器组包括至少一个容器,且一个容器仅属于一个容器组。
首先,对容器组的功能进行说明。
在本申请实施例中,一个容器组能够提供规定服务,例如,计算或数据处理等。并且,在本申请实施例中,一个容器组需要实现的功能可以由该容器组中的一个容器完成,也可以由两个或两个以上容器协作完成,本申请并未特别限定。
其中,在计算设备中配置容器的方法和过程可以与现有技术相似,这里,为了避免赘述,省略其详细说明。并且,在本申请实施例中,容器的实现其功能的方法和过程(例如,对来自外部设备的数据进行处理的方法和过程,或生产需要发送给外部设备的数据的方法和过程)可以与现有技术相似,这里,为了避免赘述,省略其详细说明。
这里,上述“外部设备”可以是终端设备等,例如,该终端设备可以安装有一个或多个容器组对应的软件,从而,该外部设备通过与该容器或容器组的数据传输,实现业务访问。
作为示例而非限定,在本申请实施例中,终端设备也可以称为用户设备(UserEquipment,UE)、接入终端、用户单元、用户站、移动站、移动台、远方站、远程终端、移动设备、用户终端、终端、无线通信设备、用户代理或用户装置。终端设备可以是WLAN中的站点(STAION,ST),可以是蜂窝电话、无绳电话、会话启动协议(Session Initiation Protocol,SIP)电话、无线本地环路(Wireless Local Loop,WLL)站、个人数字处理(PersonalDigital Assistant,PDA)设备、具有无线通信功能的手持设备、计算设备或连接到无线调制解调器的其它处理设备、车载设备、可穿戴设备以及下一代通信系统,例如,5G网络中的终端设备或者未来演进的公共陆地移动网络(Public Land Mobile Network,PLMN)网络中的终端设备等。此外,在本申请实施例中,终端设备还可以是物联网(Internet of Things,IoT)系统中的终端设备。
作为示例而非限定,在本申请实施例中,该终端设备还可以是可穿戴设备。可穿戴设备也可以称为穿戴式智能设备,是应用穿戴式技术对日常穿戴进行智能化设计、开发出可以穿戴的设备的总称,如眼镜、手套、手表、服饰及鞋等。可穿戴设备即直接穿在身上,或是整合到用户的衣服或配件的一种便携式设备。可穿戴设备不仅仅是一种硬件设备,更是通过软件支持以及数据交互、云端交互来实现强大的功能。广义穿戴式智能设备包括功能全、尺寸大、可不依赖智能手机实现完整或者部分的功能,例如:智能手表或智能眼镜等,以及只专注于某一类应用功能,需要和其它设备如智能手机配合使用,如各类进行体征监测的智能手环、智能首饰等。
或者,在本申请实施例中,该终端设备也可以是计算机等设备。
下面,对容器组的配置进行说明。
在本申请实施例中,通信系统100中可以存在以下至少一种配置的容器组:
配置a
一个容器组中至少包括两个配置在不同计算设备110中的容器。或者说,配置a的容器组(具体地说,是配置a的容器组中的容器)分布配置在至少两个计算设备110中。
配置b
一个容器组中的全部容器配置在一个计算设备110中。或者说,配置b的容器组(具体地说,是配置b的容器组中的容器)集中配置在至少两个计算设备110中。
2.路由设备
在本申请实施例中,路由设备用于对需要在容器和外部设备之前传输的数据或信息进行转发。
即,在本申请实施例中,一个计算设备可以与一个或多个路由设备通信连接,并且,路由设备可以与外部设备通信连接,从而,外部设备与配置在计算设备中的容器组能够经由路由设备进行通信(例如,数据传输),进而,实现容器组对外部设备提供服务。
作为示例而非限定,在本申请实施例中,该路由设备可以是在计算机或服务器等硬件设备中运行的虚拟路由器。并且,此情况下,容器与虚拟路由器可以运行在同一硬件设备中,或者,容器与虚拟路由器也可以运行在不同的硬件设备中,即,在本申请实施例中,计算设备与路由设备可以为同一硬件设备(或者说,计算设备与路由设备可以配置在同一硬件设备中),或者,计算设备与路由设备可以为不同的硬件设备(或者说,计算设备与路由设备可以配置在不同的硬件设备),本申请并未特别限定。
并且,在本申请实施例中,计算设备与路由设备之间的通信连接方式可以与现有技术相似,这里,为了避免赘述,省略其详细说明。
下面,对本申请实施例中,路由设备与计算设备之间的通信连接方式进行说明。
在本申请实施例中,路由设备和计算设备之间可以通过例如,虚拟可扩展局域网(Virtual Extensible Local Area Network,VXLAN)或虚拟局域网(Virtual Local AreaNetwork,VLAN)等网络实现通信连接。
在本申请实施例中,路由设备120可以包括多个计算设备110(以下,为了便于理解,称为计算设备110A)共用的路由设备(以下,为了便于理解,称为路由设备120A),即情况1,或者,路由设备120可以包由一个计算设备110(以下,为了便于理解,称为计算设备110B)专用的路由设备(以下,为了便于理解,称为路由设备120B),即,情况2,下面,分别对上述两种情况下,计算设备110与路由设备120之间的连接方式进行说明。
情况1
如图2所示,在计算设备110A中可以配置有:
安全组网桥(qbr):用于设置并实现安全组规则
虚拟网桥(br-int):用于实现二层网络数据报文的转发
隧道封装桥(br-tun):用于实现vxlan封装
网卡桥(br-eth):计算机系统内的流量转发,提供的vxlan通道以及管理面、存储面的通路。
并且,在路由设备120A中可以配置有br-int、br-tun、br-eth等。
情况2
如图3所示,在计算设备110B中可以配置有qbr、br-int等。
并且,在计算设备110B中还可以配置有外网网桥(br-ex):用于计算机系统与外部网络的流量转发。
并且,在路由设备120B中可以配置有:br-int、br-tun、br-eth等。
应理解,以上列举的路由设备与计算设备之间的通信方式仅为示例性说明,本申请并未限定于此,例如,如图4所示,在本申请实施例中,路由设备120可以包括上述路由设备120A和路由设备120B双方。
并且,应理解,以上列举的路由设备和计算设备之间的通信的实现方式仅为示例性说明,本申请并未限定于此,其他能够实现不同硬件设备之间的通信或同一硬件中不同的虚拟机之间的通信的方式均落入本申请的保护范围内。例如,在本申请实施例中,路由设备和计算设备之间可以通过有线连接方式进行通信,或者,路由设备和计算设备之间也可以通过无线方式(例如,蓝牙、WIFI等方式)通信连接。
另外,在本申请实施例中,计算设备110和路由设备120可以配置在同一硬件设备中也可以配置在不同的硬件设备中,本申请并未特别限定。
需要说明的是,在本申请实施例中,当计算设备110和路由设备120配置在同一设备(例如,服务器)中时,各计算设备可以通过总线(例如,PCIE总线)与路由设备连接,即,可以通过总线实现FPGA计算设备110和路由设备120之间的信令或数据传输。另外,当计算设备110和路由设备120配置在不同设备中时,可以在计算设备110和路由设备120中配置信息或信号收发器,并通过传输线缆连接计算设备110和路由设备120中的收发器,以实现计算设备110和路由设备120之间的信令或数据传输。
应理解,以上列举的通信100的结构仅为示例性说明,本申请并未限定于此,例如,如图5所示,在本申请实施例中,通信系统还可以包括控制设备130。
如图5所示,在本申请实施例中,控制设备130与计算设备110通信连接,并且,控制设备130可以控制各计算设备110中的容器的配置(或者说,创建)。
例如,在本申请实施例中,控制设备130可以用于确定容器组的创建模式。
这里,容器组的创建模式可以是包括但不限于以下模式:
模式A,即,基于模式A创建的容器组中的容器配置在同一计算设备中。
模式B,即,基于模式B创建的容器组中的容器配置在至少两个计算设备中。
并且,控制设备130可以为各容器组分配外部标识和内部标识。
首先,对内部标识和外部标识的功能进行说明。
在本申请实施例中,一个外部标识用于唯一地标识一个容器组,并且,在路由设备和外部设备之间交互的数据包中携带有该外部标识。从而,路由设备和外部设备能够根据数据包中携带的外部标识,确定用于处理该数据包中的数据的容器组,随后,对该过程进行详细说明。
需要说明的是,例如,如上述配置b所示,一个容器组可以配置在一个计算设备上,因此,一个外部标识可以对应一个计算设备(即,对应模式A),即,一个外部标识仅用于指示设置在同一计算设备中的一个容器组。
再例如,如上述配置a所示,一个容器组可以配置在多个计算设备上,因此,一个外部标识可以对应多个计算设备,即,一个外部标识可以用于指示设置在多个计算设备中的一个容器组(即,对应模式B)。
作为示例而非限定,在本申请实施例中,一个外部标识可以包括一个外部IP地址(即,外部设备访问容器服务器时使用的IP地址)和一个外部端口号(即,外部设备访问容器服务器时使用的端口号)中的至少一方。
例如,在本申请实施例中,一个路由设备120可以具有能够唯一指示该路由设备的标识(例如,IP地址或端口号),因此,作为示例而非限定,对于一个容器组(以下,为了便于理解和区分,记作容器组#1),可以将能够与该容器组#1中的容器通信的一个路由设备(以下,为了便于理解和区分,记作路由设备#1)的标识,作为该容器组#1的外部标识。从而,能够节约标识资源(例如,IP地址)的开销。
或者,在本申请实施例中,也可以不使用路由设备#1的标识作为容器组#1的外部标识,而为容器组#1单独分配一个标识。
需要说明的是,在本申请实施例中,当一个容器组配置在多个计算设备上,为了能够使该容器组中的每个容器与外部设备的通信,需要是该多个计算设备均与路由设备通信连接,此情况下,能够容易地实现将路由设备的标识作为容器组的外部标识。
或者,在本申请实施例中,也可以不使用路由设备#1的标识作为容器组#1的外部标识,而为容器组#1单独分配一个标识。
在本申请实施例中,在本申请实施例中,一个容器组可以对应多个内部标识,该多个内部标识可以与该容器组中的多个容器一一对应,即,一个内部标识可以唯一地标识所对应的容器组中的一个容器,从而,能够通过一个外部标识可以一个内部标识唯一地确定一个容器组中的一个容器。
作为示例而非限定,在本申请实施例中,一个外部标识可以包括一个内部IP地址(即,容器在通信系统100中使用的IP地址)和一个外部端口号(即,容器在通信系统100中使用的端口号)中的至少一方。
可选地,不同的容器组所对应的多个内部标识之间,可以存在相同的内部标识,从而,能够节约内部标识的开销。
或者,不同的容器组所对应的多个内部标识之间,也可以所有内部标识均相异,本申请并特别限定。
并且,在路由设备和外部设备之间交互的数据包中携带有该内部标识。从而,路由设备和外部设备能够根据数据包中携带的外部标识和内部标识,确定用于处理该数据包中的数据的容器组合该容器组中用于处理该数据包中的数据的容器,随后,对该过程进行详细说明。
在本申请实施例中,控制设备130还可以生成用于指示容器组与外部标识之间的一一映射关系的表项(以下,为了便于理解和区分,记作映射关系A),并且,控制设备130还可以生成用于指示一个容器组中的多个容器与多个该容器组所对应的多个内部标识之间的一一映射关系的表项(以下,为了便于理解和区分,记作映射关系B)
并且,如图5所示,在本申请实施例中,控制设备130与路由设备120通信连接,并且,控制设备130可以将该映射关系A和多个映射关系B发送至路由设备130,从而,路由设备可以基于映射关系A和映射关系B控制数据传输,随后,对该过程进行详细说明。
以下表1示出了映射关系A的一例。
表1
在表1中示出了一个容器组对应的外部标识,但本申请并未限定于此,例如,如表2所示也可以在一个表项中记录多个容器组与多个外部标识之间的映射关系。
表2
容器组的索引 容器组对应的外部标识
ID-1 NodeIP-1
1D-2 NodeIP-2
…… ……
另外,除容器组的索引和容器对应的外部标识外,在本申请实施例中,在映射关系A中还可以记录有容器组的其他信息,例如,以下表3示出了映射关系A的另一例。
表3
以下表4示出了映射关系B的一例
表4
字段名称 类型 含义
ID Int 容器的索引
NodeIP String(15) 该容器所属于的容器组对应的外部标识
LocalIP Int 该容器对应的内部标识
在表4中示出了一个容器组中的一个容器对应的内部标识,但本申请并未限定于此,例如,如表5所示也可以在一个表项中记录一个容器组中的容器组与多个内部标识之间的映射关系。
表5
在表4和表5中示出了一个容器组对应的外部标识,但本申请并未限定于此,例如,如表6所示也可以在一个表项中记录多个容器组中的容器与多个内部标识之间的映射关系。
表6
另外,除容器的索引和容器对应的外部标识外,在本申请实施例中,在映射关系B中还可以记录有容器的其他信息,例如,以下表7示出了映射关系B的另一例。
表7
应理解,以上列举的映射关系A和映射关系B的具体形式和指示的信息仅为示例性说明,在能够实现映射关系A的功能(即,用于指示外部标识和容器组的对应关系)和映射关系B的功能(即,用于指示内部标识和容器的对应关系)的情况下,可以与映射关系A和映射关系B的具体形式和指示的信息进行任意变更。
需要说明的是,在本申请实施例中,计算设备110与控制设备130也可以为同一设备,或者说,计算设备110与控制设备130可以配置在同一设备(例如,服务器)中,当计算设备110与控制设备130配置在同一设备(例如,服务器)中时,计算设备110可以通过总线(例如,PCIE总线)与控制设备130连接,即,可以通过总线实现计算设备110和控制设备130之间的信令或数据传输。另外,控制设备130与计算设备110配置在不同设备中时,可以在控制设备130和计算设备110中配置信息或信号收发器,并通过传输线缆连接控制设备130和计算设备110中的收发器,以实现控制设备130和计算设备110之间的信令或数据传输。
类似地,在本申请实施例中,路由设备120与控制设备130也可以为同一设备,或者说,路由设备120与控制设备130可以配置在同一设备(例如,服务器)中,当路由设备120与控制设备130配置在同一设备(例如,服务器)中时,路由设备120可以通过总线(例如,PCIE总线)与控制设备130连接,即,可以通过总线实现路由设备120和控制设备130之间的信令或数据传输。另外,控制设备130与路由设备120配置在不同设备中时,可以在控制设备130和路由设备120中配置信息或信号收发器,并通过传输线缆连接控制设备130和路由设备120中的收发器,以实现控制设备130和路由设备120之间的信令或数据传输。
下面,结合图6对控制设备130为一个用户(以下,为了便于理解和说明,记作用户1)创建容器组(以下,为了便于理解和说明,记作容器组#1),以及为该容器组#1分配内部标识和外部标识的方法200进行详细说明。
如图6所示,在S210,控制设备可以确定容器组#1对应的路由模式,具体地说,在本申请实施例中,路由模式可以包括但不限于集中式模式和分布式模式。
其中,在集中式模式下,容器组#1中的容器可以分部在多个计算设备中,并且,在通信系统100中配置有针对容器组#1的传统(Legacy)路由设备。具体地说,该容器组#1的容器的所有流量均经由该针对容器组#1的传统路由设备的转发。
从而,当控制设备在S210确定该容器组#1对应的路由模式为集中式模式的情况下,控制设备可以执行S220A。
在S220A,控制设备可以将针对容器组#1的传统路由设备的IP地址和/端口号,作为该容器组#1的外部标识。
另外,在分布式模式下容器组#1中的容器可以分部在一个计算设备中,并且,在通信系统100中配置有针对容器组#1的分布式路由(Distributed Virtual Route,DVR)设备。具体地说,在计算设备中可以配置该分布式路由设备,从而,将该容器组#1的东西向流量和南北向流量可以均通过该分布式路由设备的转发。需要说明的是,在分布式模式下,在通信系统中仍然可以存在多个计算设备共用的传统路由设备。容器组#1可以使用该传统路由设备进行流量转发,或者,容器组#1也可以使用分布式路由设备进行流量转发。
从而,当控制设备在S210确定该容器组#1对应的路由模式为分布式模式的情况下,控制设备可以执行S220B。
在S220B,控制设备可以确定容器组#1对应的处理模式,具体地说,在本申请实施例中,处理模式可以包括但不限于低速模式和高速模式。
其中,低速模式适用于集中式路由模式和分布式路由模式两种模式。即,在低速模式下,包括容器组#1被认为是由一个传统路由设备服务器的一个或多个计算设备中部署的多个容器,即,该容器组#1的所有流量均经由该传统路由设备的转发。
从而,当控制设备在S220B确定该容器组#1对应的处理模式为低速模式的情况下,控制设备可以执行上述S220A。
另外,高速模式仅适用于分布式路由模式。即,在高速模式下,容器组#1有一个专用的路由设备(该路设备可以为虚拟路由设备),即,该容器组#1的所有流量均经由该专用的路由设备转发,而不经过上述传统路由设备的转发
从而,当控制设备在S220B确定该容器组#1对应的处理模式为高速模式的情况下,控制设备可以执行S230。
在S230,控制设备可以为该专用的分布时路由器申请IP地址和端口号,并将针对容器组#1的专用的分布式路由设备的IP地址和/端口号,作为该容器组#1的外部标识。
由此,控制设备可以确定容器组#1对应的外部标识,从而,在S240,控制设备可以生成用于指示该容器组#1所对应的外部标识的映射关系表项,并将该映射关系表项发送给用于实现该容器组#1与外部设备之间的通信的路由设备。
并且,虽然图示中没有说明,但是控制设备还可以为容器组#1的每个容器分配内部标识,并且,控制设备可以记录有该容器组#1中的每个容器所对应的内部标识的映射关系表项,并将该映射关系表项发送给用于实现该容器组#1与外部设备之间的通信的路由设备。
在本申请实施例中,容器与外部设备之间的通信包括,来自外部设备的数据传输至容器的方法300,以及来自容器的数据传输至外部设备的方法400,下面,结合图7和图8分别对上述两个方法的过程进行详细说明。
图7示出了来自外部设备#A的数据经由路由设备#A传输至容器组#A中的容器#a的过程,如图7所示,在S310,路由设备#A可以确定映射关系#1,该映射关系#1用于指示多个容器组与多个外部标识之间的映射关系,不失一般性,设该容器组#A与外部标识#A相对应。
如上所述,当容器组#A中的容器分布在多个计算设备中时,该容器组#A对应的外部标识可以是为该多个计算设备服务的传统路由设备的IP地址和/或端口。
或者,如上所述,当容器组#A中的容器分布在一个计算设备中时,该容器组#A对应的外部标识可以是为多个计算设备服务的传统路由设备的IP地址和/或端口号。或者,该容器组#A对应的外部标识也可以是为该容器组#A独立申请的IP地址和/或端口号。
并且,在S310,路由设备#A还可以确定映射关系#2,该映射关系#2用于指示该容器组#A中的多个容器与多个内部标识之间的映射关系,不失一般性,设该容器#a与内部标识#a相对应。
需要说明的是,该映射关系#1和/或映射关系#2可以是网络管理员输入至路由设备#A中的,或者,该映射关系#1和/或映射关系#2也可以是在路由设备#A出厂时预配置在路由设备#A中的,再或者,该映射关系#1和/或映射关系#2也可以是通信系统100中的控制设备确定并下发至路由设备#A,并且,该过程可以与上述方法200中描述的过程相似,这里,为了避免赘述,省略其详细说明。
并且,在本申请实施例中,外部设备#A可以确定容器组#A对应的外部标识#A,以及容器#a与内部标识#a。作为示例而非限定,该容器组#A对应的外部标识#A,以及容器#a与内部标识#a可以是该外部设备的用户在办理业务时由该提供容器服务的运营商通知并下发给该外部设备的。或者,该容器组#A对应的外部标识#A,以及容器#a与内部标识#a也可以是控制设备通知给外部设备的。应理解,以上列举的外部设备获知容器组的外部标识以及容器的内部标识的方法和过程仅为示例性说明,本申请并未特别限定,其他能够使外部设备获知容器组的外部标识以及容器的内部标识的方法和过程均落入本申请的保护范围内。
另外,在本申请实施例中,可能存在两个容器组中的容器使用同一内部标识的情况,因此,在本申请实施例中,路由设备#A还可以记录该映射关系#2与该容器组#A(或者说,映射关系#1)之间的映射关系(以下,为了便于理解和说明,记作,映射关系#3)。
在S320,外部设备#A可以对需要发送给容器a处理的业务的数据#A进行封装,以生成路由设备#A能够解析的数据包#A,其中,该数据包#A中可以携带有外部标识#A和内部标识#a。并且,该外部设备#A可以将该数据包#A发送给路由设备#A。
在S330,路由设备#A可以基于映射关系#1,查找该外部标识#A对应的容器组,进而确定该数据包#A中的是数据#A所需要发送至的容器所属于的容器组(即,容器组#A)。
并且,在S330,路由设备可以基于映射关系#3,确定该容器组#A对应的映射关系2,进而,根据该映射关系#2,确定该内部标识#a对应的容器(即,容器#a)。
在S340,路由设备#A可以将该数据#A发送给容器#a,由此,完成了外部设备至容器的数据传输。
图8示出了来自容器组#B中的容器#b的数据经由路由设备#B传输至外部设备#B的过程,如图8所示,在S410,路由设备#B可以确定映射关系#4,该映射关系#4用于指示多个容器组与多个外部标识之间的映射关系,不失一般性,设该容器组#B与外部标识#B相对应。
如上所述,当容器组#B中的容器分布在多个计算设备中时,该容器组#B对应的外部标识可以是为该多个计算设备服务的传统路由设备的IP地址和/或端口。
或者,如上所述,当容器组#B中的容器分布在一个计算设备中时,该容器组#B对应的外部标识可以是为多个计算设备服务的传统路由设备的IP地址和/或端口号。或者,该容器组#B对应的外部标识也可以是为该容器组#B独立申请的IP地址和/或端口号。
并且,在S410,路由设备#B还可以确定映射关系#5,该映射关系#5用于指示该容器组#B中的多个容器与多个内部标识之间的映射关系,不失一般性,设该容器#b与内部标识#b相对应。
需要说明的是,该映射关系#4和/或映射关系#5可以是网络管理员输入至路由设备#B中的,或者,该映射关系#4和/或映射关系#5也可以是在路由设备#A出厂时预配置在路由设备#B中的,再或者,该映射关系#4和/或映射关系#5也可以是通信系统100中的控制设备确定并下发至路由设备#B,并且,该过程可以与上述方法200中描述的过程相似,这里,为了避免赘述,省略其详细说明。
并且,在本申请实施例中,外部设备#B可以确定容器组#B对应的外部标识#B,以及容器#b与内部标识#b。作为示例而非限定,外部设备#B可以确定容器组#B对应的外部标识#B,以及容器#b与内部标识#b可以是该外部设备的用户在办理业务时由该提供容器服务的运营商通知并下发给该外部设备的。或者,外部设备#B可以确定容器组#B对应的外部标识#B,以及容器#b与内部标识#b也可以是控制设备通知给外部设备的。应理解,以上列举的外部设备获知容器组的外部标识以及容器的内部标识的方法和过程仅为示例性说明,本申请并未特别限定,其他能够使外部设备获知容器组的外部标识以及容器的内部标识的方法和过程均落入本申请的保护范围内。
另外,在本申请实施例中,可能存在两个容器组中的容器使用同一内部标识的情况,因此,在本申请实施例中,路由设备#B还可以记录该映射关系#4与该容器组#B(或者说,映射关系#5)之间的映射关系(以下,为了便于理解和说明,记作,映射关系#6)。
在S420,容器#b可以将需要发送给外部设备#B的数据#B发送给路由设备#B。
在S430,路由设备#B可以确定该容器#b所属于的容器组(即,容器组#B),进而,可以基于映射关系#6确定用于记载该容器#b所对应的内部标识的映射关系#5,从而,路由设备#B可以基于该映射关系#5,确定该容器#b对应的内部标识(即,内部标识#b)。
并且,在S430,路由设备#B可以基于该映射关系#4,确定该容器组#B对应的外部标识(即,外部标识#B)。
在S440,路由设备#B可以对该数据#B进行封装处理,以生成该外部设备#B能够解析的数据包#B,其中,该数据包#B中可以携带有外部标识#B和内部标识#b。并且,该路由设备#B可以将该数据包#B发送给外部设备#B。
在S450,外部设备#B可以基于该外部标识#B和内部标识#b,确定该数据包#B中携带的数据来自于容器#b,进而可以对该数据包#B进行解封装,从而获取数据#B,由此,完成了容器至外部设备的数据传输。
根据本申请实施例的传输数据的方法,通过为每个容器组设置一个外部标识,并未该容器组内的每个容器配置内部标识,能够实现基于一个外部标识和一个内部标识构成的标识对唯一地指示一个容器,从而,能够基于该标识对,容易地实现外部设备与容器之间的通信。
图9是本申请实施例的传输数据的装置500的一例的示意性框图。该传输数据的装置500可以对应(例如,配置在或本身即为)上述系统100和方法300或400中描述的路由设备,并且,该传输数据的装置500中各模块或单元分别用于执行上述系统100和方法300或400中路由设备的功能和所执行的各动作或处理过程,这里,为了避免赘述,省略其详细说明。
图10是本申请实施例的传输数据的装置600的一例的示意性框图。该传输数据的装置600可以对应(例如,配置在或本身即为)上述系统100和方法200中描述的控制设备,并且,该传输数据的装置600中各模块或单元分别用于执行上述系统100和方法200中控制设备的功能和所执行的各动作或处理过程,这里,为了避免赘述,省略其详细说明。
图11是本申请实施例的传输数据的设备700的一例的示意性框图。该设备700包括:处理器和收发器,处理器和收发器相连,可选地,该设备700还包括存储器,存储器与处理器相连,进一步可选地,该设备700包括总线系统。其中,处理器、存储器和收发器可以通过总线系统相连,该存储器可以用于存储指令,该处理器用于执行该存储器存储的指令,以控制收发器接收信息或信号,使得设备700执行上述系统100和方法300或400中路由设备的功能、所执行的各动作或处理过程。该设备700可以对应(例如,配置在或本身即为)上述系统100和方法300或400中描述的路由设备,并且,该设备700中各模块或单元分别用于执行上述系统100和方法300或400中路由设备的功能和所执行的各动作或处理过程,这里,为了避免赘述,省略其详细说明。
图12是本申请实施例的传输数据的设备800的一例的示意性框图。该设备800包括:处理器和收发器,处理器和收发器相连,可选地,该设备800还包括存储器,存储器与处理器相连,进一步可选地,该设备800包括总线系统。其中,处理器、存储器和收发器可以通过总线系统相连,该存储器可以用于存储指令,该处理器用于执行该存储器存储的指令,以控制收发器接收信息或信号,使得设备800执行上述系统100和方法200中控制设备的功能、所执行的各动作或处理过程。该设备800可以对应(例如,配置在或本身即为)上述系统100和方法200中描述的控制设备,并且,该设备800中各模块或单元分别用于执行上述系统100和方法200中控制设备的功能和所执行的各动作或处理过程,这里,为了避免赘述,省略其详细说明。
应注意,本申请实施例可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(ApplicationSpecific Integrated Circuit,ASIC)、现成可编程门阵列(Field Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
可以理解,本申请实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double Data RateSDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(Synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(DirectRambus RAM,DR RAM)。应注意,本文描述的系统和方法的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
应理解,在本申请实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请实施例的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请实施例的具体实施方式,但本申请实施例的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请实施例揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请实施例的保护范围之内。因此,本申请实施例的保护范围应以所述权利要求的保护范围为准。

Claims (20)

1.一种传输数据的方法,其特征在于,在包括至少一个计算设备和至少一个路由设备的通信系统中执行,每个计算设备中配置至少一个容器,所述通信系统中配置有多个容器组,所述多个容器组中的每个容器组包括至少一个容器,一个容器仅属于一个容器组,所述方法包括:
所述路由设备确定第一映射关系和多个第二映射关系,所述第一映射关系用于指示多个容器组与多个外部标识之间的一一映射关系,所述多个第二映射关系和所述多个容器组一一对应,每个第二映射关系用于指示所对应的容器组中的多个容器与多个内部标识之间的一一映射关系;
所述路由设备根据所述第一映射关系和所述第二映射关系,控制所述容器与外部设备之间的数据传输。
2.根据权利要求1所述的传输数据的方法,其特征在于,所述路由设备根据所述第一映射关系和所述第二映射关系,控制所述容器与外部设备之间的数据传输,包括:
所述路由设备从第一外部设备接收携带有所第一内部标识和第一外部标识的第一数据包;
所述路由设备根据所述第一映射关系,确定与所述第一外部标识对应的第一容器组;
所述路由设备根据所述第一容器组对应的第二映射关系,从所述第一容器组中确定与所述第一内部标识对应的第一容器;
所述路由设备向所述第一容器发送所述第一数据包中携带的第一数据。
3.根据权利要求1或2所述的传输数据的方法,其特征在于,所述路由设备根据所述第一映射关系和所述第二映射关系,控制所述容器与外部设备之间的数据传输,包括:
所述路由设备从第二容器接收第二数据;
所述路由设备确定所述第二容器所属于的第二容器组;
所述路由设备根据所述第一映射关系,确定与所述第二容器组对应的所述第二外部标识;
所述路由设备根据所述第二容器组对应的第二映射关系,确定与所述第二容器对应的第二内部标识,
所述路由设备对所述第二数据进行封装,以生成携带有所述第二外部标识和所述第二内部标识的第二数据包;
所述路由设备向第二外部设备发送所述第二数据包。
4.根据权利要求1至3中任一项所述的传输数据的方法,其特征在于,每个容器组仅用于处理一个用户的业务。
5.根据权利要求1至4中任一项所述的传输数据的方法,其特征在于,所述至少一个容器组中包括至少一个公共容器组,所述公共容器组包括配置在至少两个计算节点上的容器。
6.根据权利要求5所述的传输数据的方法,其特征在于,所述公共容器组对应的外部标识为所述路由设备的网际协议IP地址。
7.根据权利要求5或6所述的传输数据的方法,其特征在于,分配给同一用户的多个容器属于同一公共容器组。
8.根据权利要求1至7中任一项所述的传输数据的方法,其特征在于,所述至少一个容器组中包括至少一个专用容器组,所述专用容器组中的容器配置在同一计算节点上。
9.一种传输数据的方法,其特征在于,在包括控制设备、至少一个计算设备和至少一个路由设备的通信系统中执行,所述方法包括:
所述控制设备控制所述计算设备配置多个容器组,所述多个容器组中的每个容器组包括至少一个容器,一个容器仅属于一个容器组;
所述控制设备向所述路由设备发送第一映射关系和多个第二映射关系,所述第一映射关系用于指示多个容器组与多个外部标识之间的一一映射关系,所述多个第二映射关系和所述多个容器组一一对应,每个第二映射关系用于指示所对应的容器组中的多个容器与多个内部标识之间的一一映射关系,以便于所述路由设备根据所述第一映射关系和所述第二映射关系控制所述容器与外部设备之间的数据传输。
10.根据权利要求9所述的传输数据的方法,其特征在于,所述控制设备控制所述计算设备配置多个容器组,包括:
所述控制设备从第一模式和第二模式中,确定目标模式,其中,基于所述第一模式创建的容器组包括配置在至少两个计算节点上的容器,基于所述第二模式创建的容器组中的容器配置在同一计算节点上;
所述控制设备根据所述目标模式,为第一用户创建至少一个第一容器组。
11.一种传输数据的装置,其特征在于,配置在包括至少一个计算设备和至少一个路由设备的通信系统中,每个计算设备中配置至少一个容器,所述通信系统中配置有多个容器组,所述多个容器组中的每个容器组包括至少一个容器,一个容器仅属于一个容器组,所述装置包括:
通信单元,用于与所述容器和外部设备通信;
处理单元,用于确定第一映射关系和多个第二映射关系,并根据所述第一映射关系和所述第二映射关系,控制所述容器与所述外部设备之间的数据传输,所述第一映射关系用于指示多个容器组与多个外部标识之间的一一映射关系,所述多个第二映射关系和所述多个容器组一一对应,每个第二映射关系用于指示所对应的容器组中的多个容器与多个内部标识之间的一一映射关系。
12.根据权利要求11所述的传输数据的装置,其特征在于,所述通信单元具体用于从第一外部设备接收携带有所第一内部标识和第一外部标识的第一数据包;
所述处理单元具体用于根据所述第一映射关系,确定与所述第一外部标识对应的第一容器组,根据所述第一容器组对应的第二映射关系,从所述第一容器组中确定与所述第一内部标识对应的第一容器,并控制所述通信单元向所述第一容器发送所述第一数据包中携带的第一数据。
13.根据权利要求11或12所述的传输数据的装置,其特征在于,所述通信单元具体用于从第二容器接收第二数据;
所述处理单元具体用于确定所述第二容器所属于的第二容器,根据所述第一映射关系,确定与所述第二容器组对应的所述第二外部标识,根据所述第二容器组对应的第二映射关系,确定与所述第二容器对应的第二内部标识,对所述第二数据进行封装,以生成携带有所述第二外部标识和所述第二内部标识的第二数据包,并控制所述通信单元向第二外部设备发送所述第二数据包。
14.根据权利要求11至13中任一项所述的传输数据的装置,其特征在于,每个容器组仅用于处理一个用户的业务。
15.根据权利要求11至14中任一项所述的传输数据的装置,其特征在于,所述至少一个容器组中包括至少一个公共容器组,所述公共容器组包括配置在至少两个计算节点上的容器。
16.根据权利要求15所述的传输数据的装置,其特征在于,所述公共容器组对应的外部标识为所述路由设备的网际协议IP地址。
17.根据权利要求15或16所述的传输数据的装置,其特征在于,分配给同一用户的多个容器属于同一公共容器组。
18.根据权利要求11至17中任一项所述的传输数据的装置,其特征在于,所述至少一个容器组中包括至少一个专用容器组,所述专用容器组中的容器配置在同一计算节点上。
19.一种传输数据的装置,其特征在于,配置在包括控制设备、至少一个计算设备和至少一个路由设备的通信系统中,所述装置包括:
处理单元,用于控制所述计算设备配置多个容器组,所述多个容器组中的每个容器组包括至少一个容器,一个容器仅属于一个容器组;
通信单元,用于向所述路由设备发送第一映射关系和多个第二映射关系,所述第一映射关系用于指示多个容器组与多个外部标识之间的一一映射关系,所述多个第二映射关系和所述多个容器组一一对应,每个第二映射关系用于指示所对应的容器组中的多个容器与多个内部标识之间的一一映射关系,以便于所述路由设备根据所述第一映射关系和所述第二映射关系控制所述容器与外部设备之间的数据传输。
20.根据权利要求19所述的传输数据的装置,其特征在于,所述处理单元具体用于从第一模式和第二模式中,确定目标模式,并根据所述目标模式,为第一用户创建至少一个第一容器组,其中,基于所述第一模式创建的容器组包括配置在至少两个计算节点上的容器,基于所述第二模式创建的容器组中的容器配置在同一计算节点上。
CN201710917482.0A 2017-09-30 2017-09-30 传输数据的方法和装置 Active CN107770298B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201710917482.0A CN107770298B (zh) 2017-09-30 2017-09-30 传输数据的方法和装置
CN202010663979.6A CN111953805B (zh) 2017-09-30 2017-09-30 传输数据的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710917482.0A CN107770298B (zh) 2017-09-30 2017-09-30 传输数据的方法和装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202010663979.6A Division CN111953805B (zh) 2017-09-30 2017-09-30 传输数据的方法和装置

Publications (2)

Publication Number Publication Date
CN107770298A true CN107770298A (zh) 2018-03-06
CN107770298B CN107770298B (zh) 2020-07-28

Family

ID=61267047

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202010663979.6A Active CN111953805B (zh) 2017-09-30 2017-09-30 传输数据的方法和装置
CN201710917482.0A Active CN107770298B (zh) 2017-09-30 2017-09-30 传输数据的方法和装置

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN202010663979.6A Active CN111953805B (zh) 2017-09-30 2017-09-30 传输数据的方法和装置

Country Status (1)

Country Link
CN (2) CN111953805B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108683516A (zh) * 2018-03-14 2018-10-19 聚好看科技股份有限公司 一种应用实例的升级方法、装置和系统
WO2020019993A1 (en) * 2018-07-27 2020-01-30 Huawei Technologies Co., Ltd. Virtual machine container for applications
CN111314450A (zh) * 2020-02-06 2020-06-19 恒生电子股份有限公司 数据的传输方法、装置、电子设备和计算机存储介质
WO2020143207A1 (zh) * 2019-01-10 2020-07-16 海信集团有限公司 一种应用于物联网的终端管理方法、装置及存储介质
CN112817779A (zh) * 2021-01-29 2021-05-18 京东方科技集团股份有限公司 组件化应用程序通信方法、装置、设备及介质
US11418931B2 (en) 2020-04-06 2022-08-16 Dell Products, Lp Method and apparatus for operating a thin client across a 5G infrastructure

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1414746A (zh) * 2002-05-15 2003-04-30 华为技术有限公司 网络中节省ip地址提供内部服务器的方法
CN101170544A (zh) * 2006-10-25 2008-04-30 上海梅山钢铁股份有限公司 一种高可用群集系统采用单一实ip地址的通讯方法
CN102447747A (zh) * 2010-10-09 2012-05-09 中国移动通信集团公司 一种与私有网络的交互方法、装置及系统
CN103023827A (zh) * 2012-11-23 2013-04-03 杭州华三通信技术有限公司 一种虚拟化数据中心的数据转发方法及其实现设备
CN103795621A (zh) * 2013-12-12 2014-05-14 华为技术有限公司 一种虚拟机的数据交换方法、装置及物理主机
CN103874157A (zh) * 2012-12-12 2014-06-18 华为技术有限公司 路由转发、建立路由表、和获取内容的方法及其装置
CN104219125A (zh) * 2013-05-31 2014-12-17 华为技术有限公司 信息为中心网络icn中转发报文的方法、装置及系统
CN105490910A (zh) * 2014-09-19 2016-04-13 北京奇虎科技有限公司 网络通信方法及客户端
WO2017071547A1 (zh) * 2015-10-26 2017-05-04 新华三技术有限公司 应用于vxlan的报文转发
CN106878484A (zh) * 2017-02-27 2017-06-20 郑州云海信息技术有限公司 一种配置Docker集群容器外部IP的方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7490003B2 (en) * 2005-04-18 2009-02-10 Microsoft Corporation System and method for providing a location snapshot service and associating a snapshot with location container data
CN104009920B (zh) * 2013-02-25 2017-05-31 华为技术有限公司 数据源移动的处理方法、转发报文的方法及其装置
CN104756465B (zh) * 2013-10-10 2018-12-07 华为技术有限公司 一种路由方法、设备及系统
CN106201350B (zh) * 2016-07-07 2019-10-18 华为技术有限公司 存储数据的方法、存储器和计算机系统
CN106789667B (zh) * 2016-11-21 2021-01-01 华为技术有限公司 一种数据转发方法、相关设备及系统

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1414746A (zh) * 2002-05-15 2003-04-30 华为技术有限公司 网络中节省ip地址提供内部服务器的方法
CN101170544A (zh) * 2006-10-25 2008-04-30 上海梅山钢铁股份有限公司 一种高可用群集系统采用单一实ip地址的通讯方法
CN102447747A (zh) * 2010-10-09 2012-05-09 中国移动通信集团公司 一种与私有网络的交互方法、装置及系统
CN103023827A (zh) * 2012-11-23 2013-04-03 杭州华三通信技术有限公司 一种虚拟化数据中心的数据转发方法及其实现设备
CN103874157A (zh) * 2012-12-12 2014-06-18 华为技术有限公司 路由转发、建立路由表、和获取内容的方法及其装置
CN104219125A (zh) * 2013-05-31 2014-12-17 华为技术有限公司 信息为中心网络icn中转发报文的方法、装置及系统
CN103795621A (zh) * 2013-12-12 2014-05-14 华为技术有限公司 一种虚拟机的数据交换方法、装置及物理主机
CN105490910A (zh) * 2014-09-19 2016-04-13 北京奇虎科技有限公司 网络通信方法及客户端
WO2017071547A1 (zh) * 2015-10-26 2017-05-04 新华三技术有限公司 应用于vxlan的报文转发
CN106878484A (zh) * 2017-02-27 2017-06-20 郑州云海信息技术有限公司 一种配置Docker集群容器外部IP的方法

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108683516A (zh) * 2018-03-14 2018-10-19 聚好看科技股份有限公司 一种应用实例的升级方法、装置和系统
CN108683516B (zh) * 2018-03-14 2021-09-10 聚好看科技股份有限公司 一种应用实例的升级方法、装置和系统
WO2020019993A1 (en) * 2018-07-27 2020-01-30 Huawei Technologies Co., Ltd. Virtual machine container for applications
US10929162B2 (en) 2018-07-27 2021-02-23 Futurewei Technologies, Inc. Virtual machine container for applications
WO2020143207A1 (zh) * 2019-01-10 2020-07-16 海信集团有限公司 一种应用于物联网的终端管理方法、装置及存储介质
CN111314450A (zh) * 2020-02-06 2020-06-19 恒生电子股份有限公司 数据的传输方法、装置、电子设备和计算机存储介质
CN111314450B (zh) * 2020-02-06 2022-08-02 恒生电子股份有限公司 数据的传输方法、装置、电子设备和计算机存储介质
US11418931B2 (en) 2020-04-06 2022-08-16 Dell Products, Lp Method and apparatus for operating a thin client across a 5G infrastructure
CN112817779A (zh) * 2021-01-29 2021-05-18 京东方科技集团股份有限公司 组件化应用程序通信方法、装置、设备及介质

Also Published As

Publication number Publication date
CN107770298B (zh) 2020-07-28
CN111953805B (zh) 2022-08-26
CN111953805A (zh) 2020-11-17

Similar Documents

Publication Publication Date Title
CN107770298A (zh) 传输数据的方法和装置
CN106878138B (zh) 一种报文传输方法和装置
US10200474B2 (en) Cross-protocol distributed cloud storage system and data management method based on operation control unit
JP4330631B2 (ja) 移動局のためのセキュリティ関連パラメータの更新技法
CN103814605A (zh) 速率匹配方法和装置
CN107547338A (zh) 一种报文转发方法及装置
CN106856455A (zh) 一种gtpu用户面数据转发的方法和装置
CN109600852A (zh) 一种资源指示方法、通信装置及网络设备
WO2019242428A1 (zh) 信息传输方法及装置
DE60129054D1 (de) Funkbetriebsmittelverwaltung von paketdaten auf portnummerbasis
CN102299862A (zh) 二层隧道快速转发设备和方法
CN107168903A (zh) 一种非易失性存储介质
CN103763676B (zh) Ap与ac间的通信方法和设备
TW201916656A (zh) 無線通訊的方法和終端設備
CN107885691A (zh) 串口数据传输方法、分布式设备及主机
CN104699649A (zh) 一种多分支串行总线接口及数据交换方法
CN111479292A (zh) 数据传输的方法和装置
CN105610672A (zh) 一种信息传输的方法及装置
CN108259220A (zh) 用于网络合并和配置共享的方法及装置
CN107370735A (zh) 一种物联网中继器数据的分时段加密方法及装置
CN107302538A (zh) 物联网ap接收数据的分设备加密方法及装置
CN107526644A (zh) 一种进程间通信系统、方法、可读介质和存储控制器
CN111586750B (zh) 一种数据发送、接收的方法、装置、电子设备及介质
CN106559838A (zh) 业务处理优化方法及装置
CN104408551A (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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220209

Address after: 550025 Huawei cloud data center, jiaoxinggong Road, Qianzhong Avenue, Gui'an New District, Guiyang City, Guizhou Province

Patentee after: Huawei Cloud Computing Technologies Co.,Ltd.

Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen

Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd.