CN117439955A - 一种容器的流量控制方法及相关装置 - Google Patents

一种容器的流量控制方法及相关装置 Download PDF

Info

Publication number
CN117439955A
CN117439955A CN202210824778.9A CN202210824778A CN117439955A CN 117439955 A CN117439955 A CN 117439955A CN 202210824778 A CN202210824778 A CN 202210824778A CN 117439955 A CN117439955 A CN 117439955A
Authority
CN
China
Prior art keywords
target
data
container
token
network card
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.)
Pending
Application number
CN202210824778.9A
Other languages
English (en)
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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202210824778.9A priority Critical patent/CN117439955A/zh
Publication of CN117439955A publication Critical patent/CN117439955A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/215Flow control; Congestion control using token-bucket
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0896Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/52Queue scheduling by attributing bandwidth to queues

Landscapes

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

Abstract

本申请涉及容器技术领域,提供一种容器的流量控制方法及相关装置,用以提高数据传输效率,该方法包括:在获取目标数据后,确定目标数据对应的目标容器,并基于目标数据的传输方向,确定针对目标容器和传输方向设置的目标令牌桶,目标令牌桶的令牌生成速率是根据目标容器在传输方向上的传输带宽阈值设置的,然后基于目标数据的数据量,确定令牌需求数量,并在确定目标令牌桶的当前令牌数量不小于令牌需求数量时,对目标数据进行收发处理。

Description

一种容器的流量控制方法及相关装置
技术领域
本申请涉及计算机技术领域,提供一种容器的流量控制方法及相关装置。
背景技术
随着计算机技术的不断发展,容器作为一种新兴的轻量级虚拟化技术被广泛使用。容器与主机共享内核以减少虚拟化开销,但具有较差的隔离性,这使得同主机的容器产生资源竞争,影响主机的网络性能,因此,需要对容器进行流量控制。
相关技术中,面向容器的流量控制通常是基于(Traffic Control,TC)工具实现的。TC是linux自带的流量控制工具,其通过建立用于处理数据包的队列,并定义队列中的数据包被发送或接收的方式,实现流量控制。
然而,由于队列长度是固定的,当出现带宽抖动时,会存在排队时延,影响数据传输效率,而当队满时会出现丢包,同时,由于队列是针对所有容器设置的,无法主动控制数据传输速度,导致额外丢包,此外,TC的配置过程复杂,使用难度大。
发明内容
本申请实施例提供一种容器的流量控制方法及相关装置,用以提高数据传输效率,同时在一定程度上避免数据丢失。
第一方面,本申请实施例提供一种容器的流量控制方法,包括:
获取目标数据,并基于所述目标数据中携带的容器标识信息,从预设的至少一个容器中,确定所述目标数据对应的目标容器;
基于所述目标数据的传输方向,确定针对所述目标容器和所述传输方向设置的目标令牌桶,所述目标令牌桶的令牌生成速率是根据所述目标容器在所述传输方向上的传输带宽阈值设置的;
基于所述目标数据的数据量,确定令牌需求数量,并在确定所述目标令牌桶的当前令牌数量不小于所述令牌需求数量时,对所述目标数据进行收发处理。
第二方面,本申请实施例提供一种容器的流量控制装置,包括:
获取单元,用于获取目标数据,并基于所述目标数据中携带的容器标识信息,从预设的至少一个容器中,确定所述目标数据对应的目标容器;
确定单元,用于基于所述目标数据的传输方向,确定针对所述目标容器和所述传输方向设置的目标令牌桶,所述目标令牌桶的令牌生成速率是根据所述目标容器在所述传输方向上的传输带宽阈值设置的;
传输单元,用于基于所述目标数据的数据量,确定令牌需求数量,并在确定所述目标令牌桶的当前令牌数量不小于所述令牌需求数量时,对所述目标数据进行收发处理。
作为一种可能的实现方式,所述在确定所述目标令牌桶的当前令牌数量不小于所述令牌需求数量时,对所述目标数据进行收发处理时,传输单元具体用于:
在确定所述目标令牌桶中包含的当前令牌数量不小于所述令牌需求数量时,从所述目标令牌桶中,取出所述令牌需求数量的令牌;
若所述目标数据的传输方向为接收方向,则将所述目标数据发送至所述目标容器,否则,将所述目标数据经目标物理网卡发送至数据接收端。
作为一种可能的实现方式,传输单元具体用于通过以下方式确定所述目标令牌桶中包含的当前令牌数量:
基于为所述目标容器申请令牌的第一时刻,以及基于前一次从所述目标令牌桶中取出令牌的第二时刻,确定令牌生成时间差;
基于所述令牌生成速率和令牌生成时间差,确定令牌增量;
基于所述令牌增量和所述第二时刻对应的历史令牌数量,得到所述当前令牌数量。
第三方面,本申请实施例提供一种电子设备,包括处理器和存储器,其中,所述存储器存储有计算机程序,当所述计算机程序被所述处理器执行时,使得所述处理器执行上述容器的流量控制方法的步骤。
第四方面,本申请实施例提供一种计算机可读存储介质,其包括计算机程序,当所述计算机程序在电子设备上运行时,所述计算机程序用于使所述电子设备执行上述容器的流量控制方法的步骤。
第五方面,本申请实施例提供一种计算机程序产品,所述程序产品包括计算机程序,所述计算机程序存储在计算机可读存储介质中,电子设备的处理器从所述计算机可读存储介质中读取并执行所述计算机程序,使得电子设备执行上述容器的流量控制方法的步骤。
本申请实施例中,在获取目标数据后,确定目标数据对应的目标容器,并基于目标数据的传输方向,确定针对目标容器和传输方向设置的目标令牌桶,目标令牌桶的令牌生成速率是根据目标容器在传输方向上的传输带宽阈值设置的,然后基于目标数据的数据量,确定令牌需求数量,并在确定目标令牌桶的当前令牌数量不小于令牌需求数量时,对目标数据进行收发处理。
这样,通过令牌桶机制,实现了容器级别的带宽资源隔离和分配策略,同时,通过目标容器在传输方向上的传输带宽阈值设置相应的令牌桶,保证当前容器的实际使用带宽不会超过所配置的传输带宽阈值,相对于基于队列的流量控制方法,一定程度上避免了因队满出现丢包、因带宽抖动导致产生排队时延,此外,由于令牌桶的令牌生成速率是根据目标容器的传输带宽阈值设置的,因此,不仅可以根据传输带宽阈值,主动控制发送端和接收端的速度,还降低了配置难度。
本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为基于队列的容器流量控制方法的示意图;
图2为本申请实施例中提供的一种应用场景示意图;
图3为本申请实施例中提供的一种容器的流量控制方法的流程示意图;
图4为本申请实施例中提供的一种令牌桶机制的逻辑示意图;
图5为本申请实施例中提供的一种令牌桶的示意图;
图6A为本申请实施例中提供的另一种令牌桶的示意图;
图6B为本申请实施例中提供的又一种令牌桶的示意图;
图7为本申请实施例中提供的一种确定当前令牌数量的逻辑示意图;
图8为本申请实施例中提供的一种基于物理网卡的流量控制过程的逻辑示意图;
图9为本申请实施例中提供的一种服务器的系统构架示意图;
图10为本申请实施例中提供的一种容器的流量控制装置的结构示意图;
图11为本申请实施例中提供的一种电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请技术方案的一部分实施例,而不是全部的实施例。基于本申请文件中记载的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请技术方案保护的范围。
云技术(Cloud technology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。
云技术(Cloud technology)基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络系统的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,将来每个物品都有可能存在自己的识别标志,都需要传输到后台系统进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的系统后盾支撑,只能通过云计算来实现。
云计算(cloud computing)是一种计算模式,它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和信息服务。提供资源的网络被称为“云”。“云”中的资源在使用者看来是可以无限扩展的,并且可以随时获取,按需使用,随时扩展,按使用付费。
作为云计算的基础能力提供商,会建立云计算资源池(简称云平台,一般称为基础设施即服务(Infrastructure as a Service,IaaS))平台,在资源池中部署多种类型的虚拟资源,供外部客户选择使用。云计算资源池中主要包括:计算设备(为虚拟化机器,包含操作系统)、存储设备、网络设备。
按照逻辑功能划分,在IaaS层上可以部署平台即服务(Platform as a Service,PaaS)层,PaaS层之上再部署软件即服务(Software as a Service,SaaS)层,也可以直接将SaaS部署在IaaS上。PaaS为软件运行的平台,如数据库、web容器等。SaaS为各式各样的业务软件,如web门户网站、短信群发器等。一般来说,SaaS和PaaS相对于IaaS是上层。
随着计算机技术的不断发展,容器作为一种新兴的轻量级虚拟化技术被广泛使用。容器与主机共享内核以减少虚拟化开销,但具有较差的隔离性,这使得同主机的容器产生资源竞争,影响主机的网络性能,因此,需要对容器进行流量控制。
相关技术中,面向容器的流量控制通常是基于TC工具实现的,TC是linux自带的流量控制工具,其通过建立用于处理数据包的队列,并定义队列中的数据包被发送或接收的方式,实现流量控制。例如,参阅图1所示,在数据发送方向,容器生成的业务数据经容器网桥发送至物理网卡,在物理网卡中进行等级令牌桶(Hierarchical Token Bucket,HTB)流量控制,在数据接收方向,业务数据经物理网卡、虚拟网卡接口(Intermediate FunctionalBlock,IFB)虚拟网卡、容器网桥发送至目标容器,在物理网卡和IFB虚拟网卡中均进行HTB流量控制。HTB是一种流量分类的队列算法,可有效提高带宽利用率和限制各种网络流量,并能根据网际互连协议(Internet Protocol,IP)地址、协议和端口等参数对数据流进行优先级设置,然后针对不同类别的数据流进行带宽控制。
然而,由于队列长度是固定的,当出现带宽抖动时,会存在排队时延,影响数据传输效率,而当队满时会出现丢包,同时,由于队列是针对所有容器设置的,无法主动控制数据传输速度,导致额外丢包,此外,虚拟网卡二次收包,增加开销,且TC的配置过程复杂,使用难度大。
本申请实施例中,在获取目标数据后,确定目标数据对应的目标容器,并基于目标数据的传输方向,确定针对目标容器和传输方向设置的目标令牌桶,目标令牌桶的令牌生成速率是根据目标容器在传输方向上的传输带宽阈值设置的,然后基于目标数据的数据量,确定令牌需求数量,并在确定目标令牌桶的当前令牌数量不小于令牌需求数量时,对目标数据进行收发处理。
这样,通过令牌桶机制,实现了容器级别的带宽资源隔离和分配策略,同时,通过目标容器在传输方向上的传输带宽阈值设置相应的令牌桶,保证当前容器的实际使用带宽不会超过所配置的传输带宽阈值,相对于基于队列的流量控制方法,一定程度上避免了因队满出现丢包、因带宽抖动导致产生排队时延,此外,由于令牌桶的令牌生成速率是根据目标容器的传输带宽阈值设置的,因此,不仅可以根据传输带宽阈值,主动控制发送端和接收端的速度,还降低了配置难度。
以下结合说明书附图对本申请的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本申请,并不用于限定本申请,并且在不冲突的情况下,本申请实施例及实施例中的特征可以相互组合。
参阅图2所示,其为本申请实施例中提供的一种应用场景的示意图。该应用场景中至少包括终端设备110以及服务器120。终端设备110的数量可以是一个或多个,服务器120的数量也可以是一个或多个,本申请对终端设备110和服务器120的数量不做具体限定。
本申请实施例中,终端设备110可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表、物联网设备、智能家电、车载终端等,但并不局限于此。
服务器120可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。终端设备110与服务器120可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。
示例性的,终端设备110中安装有用于访问各类业务的客户端,服务器120中运行有至少一个容器,在获取目标数据后,确定目标数据对应的目标容器,并基于目标数据的传输方向,确定针对目标容器和传输方向设置的目标令牌桶,目标令牌桶的令牌生成速率是根据目标容器在传输方向上的传输带宽阈值设置的,然后基于目标数据的数据量,确定令牌需求数量,并在确定目标令牌桶的当前令牌数量不小于令牌需求数量时,对目标数据进行收发处理。
参阅图3所示,其为本申请实施例中提供的一种容器的流量控制方法的流程示意图,该方法应用于服务器,具体流程如下:
S301、获取目标数据,并基于目标数据中携带的容器标识信息,从预设的至少一个容器中,确定目标数据对应的目标容器。
需要说明的是,本申请实施例中,目标数据为待发送数据或者待接收数据。
例如,预设的容器为容器1和容器2,其中,容器1的容器标识信息为Docker0,容器2的容器标识信息为Docker1,假设,目标数据中携带的容器标识信息为Docker0,基于目标数据中携带的容器标识信息,从容器1和容器2中,确定目标数据对应的目标容器为容器1。
S302、基于目标数据的传输方向,确定针对目标容器和传输方向设置的目标令牌桶,目标令牌桶的令牌生成速率是根据目标容器在传输方向上的传输带宽阈值设置的。
本申请实施例中,如果目标数据为待发送数据,那么目标数据的传输方向为发送方向,如果目标数据为待接收数据,那么,目标数据的数据传输方向为接收方向。
针对至少一个容器,可以预先为每个容器分别配置网络负载带宽,网络负载带宽也可以称为传输带宽阈值,传输带宽阈值包括发送方向上的传输带宽阈值以及接收方向上的传输带宽阈值。网络负载带宽可以是根据服务器的带宽资源阈值,以及各容器中运行应用所需的带宽占用量、应用的业务优先级等信息确定的,但不局限于此。示例性的,可以基于网络负载带宽,对一个容器的容器配置文件中的带宽指示信息进行调整,以实现网络负载带宽的配置。
每个容器针对发送方向和接收方向分别持有各自的令牌桶,针对每个容器,将发送方向上的传输带宽阈值,作为发送方向上的令牌桶的令牌生成速率,将接收方向上的传输带宽阈值,作为接收方向上的令牌桶的令牌生成速率。
参阅图4所示,其为本申请实施例中提供的一种令牌桶算法的示意图,令牌桶按照令牌生成速率生成令牌填充至令牌桶内,当数据包到达时,如果桶内存在足够的令牌,则从令牌桶中取出相应数量的令牌,并发送或接收数据包,否则,会丢弃数据包,以此来控制数据包的处理速率,实现流量限速的目标。
本申请实施例中,作为一种可能的实现方式,每个容器针对发送方向和接收方向分别持有各自的令牌桶,从而在数据接收方向和数据发送方向分别独立实现容器级别的流量限速。相应的,在获取到目标数据后,可以直接基于目标数据的传输方向,确定针对目标容器和传输方向设置的目标令牌桶。
例如,参阅图5所示,针对容器1,在接收方向上,设置有令牌桶1,在数据发送方向上,设置有令牌桶3,针对容器2,在接收方向上,设置有令牌桶2,在数据发送方向上,设置有令牌桶4。如果目标数据的传输方向为发送方向,目标容器为容器1,那么,基于目标数据的传输方向,确定目标令牌桶为令牌桶3。如果目标数据的传输方向是接收方向,目标容器是容器2,那么,基于数据的传输方向,确定目标令牌桶是令牌桶2。
作为另一种可能的实现方式,每个容器针对不同的物理网卡,在发送和接收方向上,分别持有各自的令牌桶。相应的,确定目标令牌桶时,基于目标数据中携带的物理网卡标识,从预设的至少一个物理网卡中,确定用于传输目标数据的目标物理网卡,然后基于目标物理网卡和目标数据的传输方向,从针对目标容器预设的至少一个令牌桶中,确定出目标令牌桶。
例如,参阅图6A和图6B所示,容器包括容器1和容器2,物理网卡包括物理网卡1和物理网卡2,针对物理网卡1,容器1在接收方向上设置有令牌桶1,
容器1在数据发送方向上设置有令牌桶3,容器2在接收方向上设置有令牌桶2,容器2在数据发送方向设置有令牌桶4,针对物理网卡2,容器1在接收方向上设置有令牌桶5,容器1在数据发送方向上设置有令牌桶7,容器2在接收方向上设置有令牌桶6,容器2在数据发送方向设置有令牌桶8。
如果目标数据的传输方向为发送方向,目标容器为容器1,目标数据中携带的物理网卡标识为物理网卡1的物理网卡标识,那么,目标数据中携带的物理网卡标识,从物理网卡1和物理网卡2中,确定目标物理网卡为物理网卡1,然后基于目标物理网卡和目标数据的传输方向,从令牌桶1至令牌桶8中,确定出目标令牌桶为令牌桶3。
如果目标数据的传输方向为接收方向,目标容器为容器2,目标数据中携带的物理网卡标识为物理网卡2的物理网卡标识,那么,目标数据中携带的物理网卡标识,从物理网卡1和物理网卡2中,确定目标物理网卡为物理网卡2,然后基于目标物理网卡和目标数据的传输方向,从令牌桶1至令牌桶8中,确定出目标令牌桶为令牌桶6。
通过上述实现方式,通过分别对多个网卡进行单独的限速,使其支持了容器内基于网卡的流量控制,同时针对不同的容器和网卡配置各自的带宽限速策略,解决了业务混部时的资源分配问题,实现了更加灵活的带宽资源隔离和分配策略,有效的提升了带宽利用率,同时保障了服务质量。此外,令牌桶可以利用无锁原子变量的特性实现,确保数据处理的及时性和有效性。
S303、基于目标数据的数据量,确定令牌需求数量,并在确定目标令牌桶的当前令牌数量不小于令牌需求数量时,对目标数据进行收发处理。
其中,目标数据的数据量是指目标数据的存储容量,目标数据也可以称为目标报文,目标报文中携带报文长度描述字段,根据报文长度描述字段可以确定目标数据的数据量。
需要说明的是,本申请实施例中,仅以一个令牌对应1个字节为例进行说明,实际应用过程中,也可以灵活设置一个令牌对应的字节数。具体的,执行S303时,可以采用但不限于以下方式:
在确定目标令牌桶中包含的当前令牌数量不小于令牌需求数量时,从目标令牌桶中,取出令牌需求数量的令牌;
若目标数据的传输方向为接收方向,则将目标数据发送至目标容器,否则,将目标数据经目标物理网卡发送至数据接收端。
其中,目标令牌桶中包含的当前令牌数量可以通过以下方式确定:
基于为目标容器申请令牌的第一时刻,以及基于前一次从目标令牌桶中取出令牌的第二时刻,确定令牌生成时间差;
基于令牌生成速率和令牌生成时间差,确定令牌增量;
基于令牌增量和第二时刻对应的历史令牌数量,得到当前令牌数量。
参阅图7所示,假设,为目标容器申请令牌的第一时刻为t1,前一次从目标令牌桶中取出令牌的第二时刻为t2,基于为目标容器申请令牌的第一时刻t1,以及基于前一次从目标令牌桶中取出令牌的第二时刻t2,确定令牌生成时间差Δt为t2-t1,然后,基于令牌生成速率dw和令牌生成时间差Δt,确定令牌增量Δcount为dw*Δt,之后,基于令牌增量Δcount和第二时刻对应的历史令牌数量count’,得到当前令牌数量。
例如,假设,第一时刻为10:01,第二时刻为10:02,令牌生成速率为每秒500字节(byte),第二时刻对应的历史令牌数量为1000,即t1为10:01,t2为10:02,dw为每秒500字节(byte),count’为1000,基于为目标容器申请令牌的第一时刻t1,以及基于前一次从目标令牌桶中取出令牌的第二时刻t2,确定令牌生成时间差Δt为1秒,然后,基于令牌生成速率dw和令牌生成时间差Δt,确定令牌增量Δcount为500字节,之后,基于令牌增量Δcount和第二时刻对应的历史令牌数量count’,得到当前令牌数量为500+1000=1500字节,即1500个令牌。
通过上述实现方式,在目标令牌桶中包含有足够数量的令牌时,对目标数据进行收发处理,从而保证当前容器的实际使用带宽不会超过所配置的限速阈值,实现服务器带宽资源在容器间的合理分配。进一步的,通过令牌生成速率和令牌生成时间差更新令牌桶中的令牌数量,实现令牌桶的增量更新,从而提高数据处理效率,进而提高流量控制效率。
在一些实施例中,为了确保接收或发送数据包时可以准确地找到物理网卡,获取目标数据时,作为一种可能的情况,若目标数据的传输方向为接收方向,则当通过目标物理网卡接收待接收数据时,对待接收数据进行数据格式转换,得到初始数据,然后,将目标物理网卡的物理网卡标识,记录于初始数据中,得到目标数据。
作为另一种可能的情况,若目标数据的传输方向为发送方向,则可以获取目标容器生成的待发送数据,当确定使用目标物理网卡发送待发送数据时,将目标物理网卡的物理网卡标识记录于待发送数据中,并将记录标识后得到的待发送数据,作为目标数据。
需要说明的是,本申请实施例中,在发送方向上,目标数据中也可以不携带目标物理网卡的物理网卡标识,这种情况下,可以从套接字(Socket)中获取目标物理网卡的物理网卡标识,从而确定目标物理网卡。
参阅图8所示,其为本申请实施例中提供的一种可能服务器的网络构架示意图,服务器中包含目标物理网卡、目标容器、容器网桥,目标容器、容器网桥之间通过套接字通信,容器的网络模式为Bridge或host模式。本申请实施例中,通过调用本机接收钩子(hook)或者本机发送hook,确定目标物理网卡、目标令牌桶,以及基于目标数据的数据量,确定令牌需求数量,并在确定目标令牌桶的当前令牌数量不小于令牌需求数量时,对目标数据进行收发处理。
例如,参见图8,假设,目标物理网卡为物理网卡1,目标容器为容器1,当通过物理网卡1接收待接收数据时,对待接收数据进行数据格式转换,得到初始数据,将物理网卡1的物理网卡标识,记录于初始数据中,得到目标数据,该网络模式为Bridge或host模式,然后,调用本机接收hook,从目标数据中提取出物理网卡1的物理网卡标识,并将物理网卡1的物理网卡标识绑定到套接字,进而将目标数据传输至目标容器。
又例如,参见图8,假设,目标物理网卡为物理网卡1,目标容器为容器1,当通过容器1生成待发送数据时,调用本机发送hook,从套接字中,获取物理网卡1的物理网卡标识,然后经容器网桥将目标数据传输至物理网卡1,进而通过物理网卡1将目标数据发送至数据接收端。
通过上述实现方式,即便数据包经过了一个或多个虚拟网卡,也可以确保接收或发送数据可以快速、准确地找到物理网卡,从而提高了数据传输效率。
在一些实施例中,目标物理网卡和目标容器之间通过容器网桥连接;
对待接收数据进行数据格式转换,得到目标数据,包括:
将待接收数据发送至容器网桥;
在容器网桥中,基于指定的目标数据格式,对待接收数据进行数据格式转换,得到目标数据。
需要说明的是,本申请实施例中,目标数据格式为套接字缓存(socket buffer,SKB),SKB是Linux内核数据包管理结构。将待接收数据发送至容器网桥时,可以根据待接收数据中包含的地址信息,将待接收数据,转发至容器网桥对应的虚拟网卡,其中,地址信息可以是容器网桥的IP地址或端口号,也可以是目标容器的容器标识信息。
例如,假设,容器的网络模式为bridge/host模式,物理网卡1接收到数据包后,通过物理网卡1将待接收数据发送至容器网桥对应的虚拟网卡,虚拟网卡驱动将数据包待接收数据转换成SKB格式,得到SKB格式的目标数据。
通过上述实现方式,将待接收数据转换为目标数据格式,从而使得Linux内核可以对目标数据进行处理,进而实现针对容器的流量控制。
需要说明的是,本申请实施例中,采用控制组(cgroup)用来限制、控制与分离一个进程组的资源(如CPU、内存、磁盘输入输出等),因此,S1004中也可以通过判断目标数据对应的cgroup,确定目标容器。
下面,结合具体的实施例,对本申请进行说明。
参阅图9所示,其为本申请实施例中提供的一种服务器的系统构架示意图,服务器中包含两个容器,两个物理网卡,容器网桥,其中,两个容器分别为容器1和容器2,两个物理网卡分别为物理网卡1和物理网卡2。
Docker是一个开源的应用容器引擎,当容器启动时,Docker会创建一对虚拟网络接口设备,虚拟网络接口设备的特点是成对存在,从一端进入的数据会同时出现在另一端,Docker会将一端挂载到容器网桥(docker0)上,另一端放入容器的命名空间(networknamespace)内,从而实现容器与主机通信的目的。桥接(bridge)模式是默认网络模式,此模式会为每一个容器设置network namespace、IP地址等,在Docker启动时,就会在主机上创建一个名为docker0的容器网桥,容器网桥也可以称为虚拟网桥,在该主机上启动的docker容器都会连接到这个虚拟网桥上,进而和同一宿主机上桥接模式的其它容器进行通信。
图9中,容器网桥包含两个虚拟网络接口:veth0和veth1,容器1的虚拟网络接口为nic0,容器1的虚拟网络接口为nic1,veth0与容器1的nic0对应,veth1与容器2的nic0对应。
以接收方向为例,假设,目标物理网卡为物理网卡1,物理网卡1接收到待接收数据,根据待接收数据中的地址信息,将待接收数据转发给容器网桥的虚拟网卡,容器的网络模式为bridge/host模式;然后,容器网桥通过网卡驱动将待接收数据转换成SKB格式的目标数据,SKB格式的目标数据简称为目标SKB,调用协议栈的入口函数,将目标SKB交给协议栈处理;在协议栈中,调用early_demux函数,提前在网络IP层查找目标SKB对应的目标网络层描述块(sock),目标sock的结构体中包含成员sock_cgroup_data,sock_cgroup_data指向容器1,判断该目标数据对应的目标容器为容器1。之后,在本机接收钩子(hook)点判断目标数据对应的目标令牌桶为令牌桶1,并基于令牌生成速率和令牌生成时间差,更新令牌桶1内的令牌数量,当从令牌桶1内获取到足够的令牌,将目标数据发送至容器1。
以发送方向为例,假设,目标物理网卡为物理网卡1,目标容器为容器1,容器1生成待发送数据,并将待发送数据作为目标数据;然后,调用相应的发送函数将目标数据送入协议栈,目标数据对应的网络层描述块为sock;之后,在本机发送hook点,基于sock判断目标数据对应的目标令牌桶为令牌桶3,并基于令牌生成速率和令牌生成时间差,更新令牌桶3内的令牌数,当从令牌桶1内获取到足够的令牌,将目标数据发送至容器网桥;接着,当允许继续发送目标数据时,协议栈调用驱动程序将目标数据传递至容器网卡,最后将目标数据经容器网桥中发送到物理网卡1,通过物理网卡1发送目标数据。
基于相同的发明构思,本申请实施例提供一种容器的流量控制装置。如图10所示,其为容器的流量控制装置1000的结构示意图,可以包括:
获取单元1001,用于获取目标数据,并基于所述目标数据中携带的容器标识信息,从预设的至少一个容器中,确定所述目标数据对应的目标容器;
确定单元1002,用于基于所述目标数据的传输方向,确定针对所述目标容器和所述传输方向设置的目标令牌桶,所述目标令牌桶的令牌生成速率是根据所述目标容器在所述传输方向上的传输带宽阈值设置的;
传输单元1003,用于基于所述目标数据的数据量,确定令牌需求数量,并在确定所述目标令牌桶的当前令牌数量不小于所述令牌需求数量时,对所述目标数据进行收发处理。
作为一种可能的实现方式,所述基于所述目标数据的传输方向,确定针对所述目标容器和所述传输方向设置的目标令牌桶时,所述确定单元1002具体用于:
基于所述目标数据中携带的物理网卡标识,从预设的至少一个物理网卡中,确定用于传输所述目标数据的目标物理网卡;
基于所述目标物理网卡和所述目标数据的传输方向,从针对所述目标容器预设的至少一个令牌桶中,确定出所述目标令牌桶。
作为一种可能的实现方式,所述获取目标数据时,所述获取单元1001具体用于:
若所述目标数据的传输方向为接收方向,则当通过所述目标物理网卡接收待接收数据时,对所述待接收数据进行数据格式转换,得到初始数据;
将所述目标物理网卡的物理网卡标识,记录于所述初始数据中,得到所述目标数据。
作为一种可能的实现方式,所述目标物理网卡和所述目标容器之间通过容器网桥连接;所述对待接收数据进行数据格式转换,得到所述目标数据时,所述获取单元1001具体用于:
将所述待接收数据发送至所述容器网桥;
在所述容器网桥中,基于指定的目标数据格式,对所述待接收数据进行数据格式转换,得到所述目标数据。
作为一种可能的实现方式,所述获取目标数据时,所述获取单元1001具体用于:
若所述目标数据的传输方向为发送方向,则获取所述目标容器生成的待发送数据;
当确定使用所述目标物理网卡发送所述待发送数据时,将所述目标物理网卡的物理网卡标识记录于所述待发送数据中,并将记录标识后得到的待发送数据,作为所述目标数据。
作为一种可能的实现方式,所述在确定所述目标令牌桶的当前令牌数量不小于所述令牌需求数量时,对所述目标数据进行收发处理时,传输单元1003具体用于:
在确定所述目标令牌桶中包含的当前令牌数量不小于所述令牌需求数量时,从所述目标令牌桶中,取出所述令牌需求数量的令牌;
若所述目标数据的传输方向为接收方向,则将所述目标数据发送至所述目标容器,否则,将所述目标数据经目标物理网卡发送至数据接收端。
作为一种可能的实现方式,传输单元1003具体用于通过以下方式确定所述目标令牌桶中包含的当前令牌数量:
基于为所述目标容器申请令牌的第一时刻,以及基于前一次从所述目标令牌桶中取出令牌的第二时刻,确定令牌生成时间差;
基于所述令牌生成速率和令牌生成时间差,确定令牌增量;
基于所述令牌增量和所述第二时刻对应的历史令牌数量,得到所述当前令牌数量。
为了描述的方便,以上各部分按照功能划分为各模块(或单元)分别描述。当然,在实施本申请时可以把各模块(或单元)的功能在同一个或多个软件或硬件中实现。
关于上述实施例中的装置,其中各个单元执行请求的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本申请实施例中,通过令牌桶机制,实现了容器级别的带宽资源隔离和分配策略,同时,通过目标容器在传输方向上的传输带宽阈值设置相应的令牌桶,保证当前容器的实际使用带宽不会超过所配置的传输带宽阈值,相对于基于队列的流量控制方法,一定程度上避免了因队满出现丢包、因带宽抖动导致产生排队时延,此外,由于令牌桶的令牌生成速率是根据目标容器的传输带宽阈值设置的,因此,不仅可以根据传输带宽阈值,主动控制发送端和接收端的速度,还降低了配置难度,对业务更加友好。进一步的,由于令牌数量与目标数据的数据量相关,因此,可以支持针对单容器的流量统计,可以更加详细的展示容器内的带宽消耗情况。
所属技术领域的技术人员能够理解,本申请的各个方面可以实现为系统、方法或程序产品。因此,本申请的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
基于相同的发明构思,本申请实施例还提供一种电子设备,参阅图11所示,其为本申请实施例中提供的一种可能的电子设备的结构示意图,图11中,电子设备1100包括:处理器1110和存储器1120。
其中,存储器1120存储有可被处理器1110执行的计算机程序,处理器1110通过执行存储器1120存储的指令,可以执行上述容器的流量控制方法的步骤。
存储器1120可以是易失性存储器(volatile memory),例如随机存取存储器(random-access memory,RAM);存储器1120也可以是非易失性存储器(non-volatilememory),例如只读存储器(Read-Only Memory,ROM),快闪存储器(flash memory),硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD);或者存储器1120是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器1120也可以是上述存储器的组合。
处理器1110可以包括一个或多个中央处理单元(central processing unit,CPU)或者为数字处理单元等等。处理器1110,用于执行存储器1120中存储的计算机程序时实现上述容器的流量控制方法。
在一些实施例中,处理器1110和存储器1120可以在同一芯片上实现,在一些实施例中,它们也可以在独立的芯片上分别实现。
本申请实施例中不限定上述处理器1110和存储器1120之间的具体连接介质。本申请实施例中以处理器1110和存储器1120之间通过总线连接为例,总线在图11中以粗线描述,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。总线可以分为地址总线、数据总线、控制总线等。为便于描述,图11中仅用一条粗线描述,但并不描述仅有一根总线或一种类型的总线。
基于同一发明构思,本申请实施例提供了一种计算机可读存储介质,其包括计算机程序,当计算机程序在电子设备上运行时,计算机程序用于使电子设备执行上述容器的流量控制方法的步骤。在一些可能的实施方式中,本申请提供的容器的流量控制方法的各个方面还可以实现为一种程序产品的形式,其包括计算机程序,当程序产品在电子设备上运行时,计算机程序用于使电子设备执行上述容器的流量控制方法中的步骤,例如,电子设备可以执行如图3中所示的步骤。
程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、RAM、ROM、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(Compact Disk Read Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
本申请的实施方式的程序产品可以采用CD-ROM并包括计算机程序,并可以在电子设备上运行。然而,本申请的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储计算机程序的有形介质,该计算机程序可以被命令执行系统、装置或者器件使用或者与其结合使用。
可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读计算机程序。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由命令执行系统、装置或者器件使用或者与其结合使用的计算机程序。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (15)

1.一种容器的流量控制方法,其特征在于,所述方法包括:
获取目标数据,并基于所述目标数据中携带的容器标识信息,从预设的至少一个容器中,确定所述目标数据对应的目标容器;
基于所述目标数据的传输方向,确定针对所述目标容器和所述传输方向设置的目标令牌桶,所述目标令牌桶的令牌生成速率是根据所述目标容器在所述传输方向上的传输带宽阈值设置的;
基于所述目标数据的数据量,确定令牌需求数量,并在确定所述目标令牌桶的当前令牌数量不小于所述令牌需求数量时,对所述目标数据进行收发处理。
2.如权利要求1所述的方法,其特征在于,所述基于所述目标数据的传输方向,确定针对所述目标容器和所述传输方向设置的目标令牌桶,包括:
基于所述目标数据中携带的物理网卡标识,从预设的至少一个物理网卡中,确定用于传输所述目标数据的目标物理网卡;
基于所述目标物理网卡和所述目标数据的传输方向,从针对所述目标容器预设的至少一个令牌桶中,确定出所述目标令牌桶。
3.如权利要求2所述的方法,其特征在于,所述获取目标数据,包括:
若所述目标数据的传输方向为接收方向,则当通过所述目标物理网卡接收待接收数据时,对所述待接收数据进行数据格式转换,得到初始数据;
将所述目标物理网卡的物理网卡标识,记录于所述初始数据中,得到所述目标数据。
4.如权利要求3所述的方法,其特征在于,所述目标物理网卡和所述目标容器之间通过容器网桥连接;
所述对待接收数据进行数据格式转换,得到所述目标数据,包括:
将所述待接收数据发送至所述容器网桥;
在所述容器网桥中,基于指定的目标数据格式,对所述待接收数据进行数据格式转换,得到所述目标数据。
5.如权利要求2所述的方法,其特征在于,所述获取目标数据,包括:
若所述目标数据的传输方向为发送方向,则获取所述目标容器生成的待发送数据;
当确定使用所述目标物理网卡发送所述待发送数据时,将所述目标物理网卡的物理网卡标识记录于所述待发送数据中,并将记录标识后得到的待发送数据,作为所述目标数据。
6.如权利要求1-5中任一项所述的方法,其特征在于,所述在确定所述目标令牌桶的当前令牌数量不小于所述令牌需求数量时,对所述目标数据进行收发处理,包括:
在确定所述目标令牌桶中包含的当前令牌数量不小于所述令牌需求数量时,从所述目标令牌桶中,取出所述令牌需求数量的令牌;
若所述目标数据的传输方向为接收方向,则将所述目标数据发送至所述目标容器,否则,将所述目标数据经目标物理网卡发送至数据接收端。
7.如权利要求6所述的方法,其特征在于,所述目标令牌桶中包含的当前令牌数量是通过以下方式确定的:
基于为所述目标容器申请令牌的第一时刻,以及基于前一次从所述目标令牌桶中取出令牌的第二时刻,确定令牌生成时间差;
基于所述令牌生成速率和令牌生成时间差,确定令牌增量;
基于所述令牌增量和所述第二时刻对应的历史令牌数量,得到所述当前令牌数量。
8.一种容器的流量控制装置,其特征在于,包括:
获取单元,用于获取目标数据,并基于所述目标数据中携带的容器标识信息,从预设的至少一个容器中,确定所述目标数据对应的目标容器;
确定单元,用于基于所述目标数据的传输方向,确定针对所述目标容器和所述传输方向设置的目标令牌桶,所述目标令牌桶的令牌生成速率是根据所述目标容器在所述传输方向上的传输带宽阈值设置的;
传输单元,用于基于所述目标数据的数据量,确定令牌需求数量,并在确定所述目标令牌桶的当前令牌数量不小于所述令牌需求数量时,对所述目标数据进行收发处理。
9.如权利要求8所述的装置,其特征在于,所述基于所述目标数据的传输方向,确定针对所述目标容器和所述传输方向设置的目标令牌桶时,所述确定单元具体用于:
基于所述目标数据中携带的物理网卡标识,从预设的至少一个物理网卡中,确定用于传输所述目标数据的目标物理网卡;
基于所述目标物理网卡和所述目标数据的传输方向,从针对所述目标容器预设的至少一个令牌桶中,确定出所述目标令牌桶。
10.如权利要求9所述的装置,其特征在于,所述获取目标数据时,所述获取单元具体用于:
若所述目标数据的传输方向为接收方向,则当通过所述目标物理网卡接收待接收数据时,对所述待接收数据进行数据格式转换,得到初始数据;
将所述目标物理网卡的物理网卡标识,记录于所述初始数据中,得到所述目标数据。
11.如权利要求10所述的装置,其特征在于,所述目标物理网卡和所述目标容器之间通过容器网桥连接;
所述对待接收数据进行数据格式转换,得到所述目标数据时,所述获取单元具体用于:
将所述待接收数据发送至所述容器网桥;
在所述容器网桥中,基于指定的目标数据格式,对所述待接收数据进行数据格式转换,得到所述目标数据。
12.如权利要求9所述的装置,其特征在于,所述获取目标数据时,所述获取单元具体用于:
若所述目标数据的传输方向为发送方向,则获取所述目标容器生成的待发送数据;
当确定使用所述目标物理网卡发送所述待发送数据时,将所述目标物理网卡的物理网卡标识记录于所述待发送数据中,并将记录标识后得到的待发送数据,作为所述目标数据。
13.一种电子设备,其特征在于,其包括处理器和存储器,其中,所述存储器存储有计算机程序,当所述计算机程序被所述处理器执行时,使得所述处理器执行权利要求1~7中任一所述方法的步骤。
14.一种计算机可读存储介质,其特征在于,其包括计算机程序,当所述计算机程序在电子设备上运行时,所述计算机程序用于使所述电子设备执行权利要求1~7中任一所述方法的步骤。
15.一种计算机程序产品,其特征在于,其包括计算机程序,所述计算机程序存储在计算机可读存储介质中,电子设备的处理器从所述计算机可读存储介质读取并执行所述计算机程序,使得所述电子设备执行权利要求1~7中任一所述方法的步骤。
CN202210824778.9A 2022-07-13 2022-07-13 一种容器的流量控制方法及相关装置 Pending CN117439955A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210824778.9A CN117439955A (zh) 2022-07-13 2022-07-13 一种容器的流量控制方法及相关装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210824778.9A CN117439955A (zh) 2022-07-13 2022-07-13 一种容器的流量控制方法及相关装置

Publications (1)

Publication Number Publication Date
CN117439955A true CN117439955A (zh) 2024-01-23

Family

ID=89546715

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210824778.9A Pending CN117439955A (zh) 2022-07-13 2022-07-13 一种容器的流量控制方法及相关装置

Country Status (1)

Country Link
CN (1) CN117439955A (zh)

Similar Documents

Publication Publication Date Title
CN109144660B (zh) 微服务架构
CN111651253B (zh) 算力资源的调度方法及装置
US20220224657A1 (en) Technologies for accelerating edge device workloads
US10698717B2 (en) Accelerator virtualization method and apparatus, and centralized resource manager
CN110602156A (zh) 一种负载均衡调度方法及装置
CN111756791A (zh) 用于加速的功能即服务的网络设备负载平衡器的技术
US10812606B2 (en) Supporting communications in a stream processing platform
US20210352023A1 (en) Utilizing coherently attached interfaces in a network stack framework
CN113259415B (zh) 一种网络报文处理方法、装置及网络服务器
CN105335211A (zh) 一种基于Xen虚拟化集群的FPGA加速器调度系统及方法
CN112988346B (zh) 任务处理方法、装置、设备及存储介质
US20230100935A1 (en) Microservice deployments using accelerators
CN112600761A (zh) 一种资源分配的方法、装置及存储介质
CN114301980A (zh) 容器集群的调度方法、装置、系统及计算机可读介质
US11283723B2 (en) Technologies for managing single-producer and single consumer rings
CN115237589A (zh) 一种基于sr-iov的虚拟化方法、装置和设备
CN117041147B (zh) 智能网卡设备、主机设备和方法及系统
CN116069493A (zh) 一种数据处理方法、装置、设备以及可读存储介质
CN115509644B (zh) 算力卸载方法、装置、电子设备和存储介质
CN116244231A (zh) 一种数据传输方法、装置、系统、电子设备及存储介质
CN116132382A (zh) 报文处理方法、设备及存储介质
CN117439955A (zh) 一种容器的流量控制方法及相关装置
CN112202914B (zh) 一种消息推送方法及装置
CN111245794B (zh) 数据传输方法和装置
CN116841720A (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