CN116489082A - 一种流量牵引的配置方法、装置、电子设备和存储介质 - Google Patents

一种流量牵引的配置方法、装置、电子设备和存储介质 Download PDF

Info

Publication number
CN116489082A
CN116489082A CN202310519527.4A CN202310519527A CN116489082A CN 116489082 A CN116489082 A CN 116489082A CN 202310519527 A CN202310519527 A CN 202310519527A CN 116489082 A CN116489082 A CN 116489082A
Authority
CN
China
Prior art keywords
data packet
drainage
network
network card
target
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
CN202310519527.4A
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.)
Beijing Qingyun Science And Technology Co ltd
Original Assignee
Beijing Qingyun Science And 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 Qingyun Science And Technology Co ltd filed Critical Beijing Qingyun Science And Technology Co ltd
Priority to CN202310519527.4A priority Critical patent/CN116489082A/zh
Publication of CN116489082A publication Critical patent/CN116489082A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/38Flow based routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/72Routing based on the source address
    • 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
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/31Flow control; Congestion control by tagging of packets, e.g. using discard eligibility [DE] bits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0236Filtering by address, protocol, port number or service, e.g. IP-address or URL
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

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

Abstract

本发明公开了一种流量牵引的配置方法、装置、电子设备和存储介质。其中,该方法包括:根据预设引流模式确定数据包的引流路径,按照所述引流路径为所述数据包设置数据包标记,根据所述数据包标记和预设路由规则牵引所述数据包至牵引目标进行处理,根据所述数据包标记和所述预设路由规则牵引所述处理后的所述数据包至目标地址。本发明实施例通过按照引流路径为数据包设置数据包标记,以及根据数据包标记和预设路由规则将数据包先后牵引至牵引目标和目标地址,支持多种流量牵引模式,不需要通过大量的连接记录以及对应的网络配置即可实现流量的牵引,减少占用系统内存和算力,降低技术人员的维护成本。

Description

一种流量牵引的配置方法、装置、电子设备和存储介质
技术领域
本发明涉及计算机技术领域,尤其涉及一种流量牵引的配置方法、装置、电子设备和存储介质。
背景技术
随着云计算的兴起,云平台的业务网络互连协议(Internet Protocol,IP)、物理机器、虚拟主机等资源均需要对网络流量进行安全防护,其中不仅有防护南北向流量的需求,也有防护东西向流量的需求。
现有的流量牵引方法需要通过大量的连接记录以及对应的网络配置来实现流量的牵引,增加了技术人员的维护成本,并且占用大量的系统内存和算力,降低了网络吞吐量。
发明内容
本发明提供了一种流量牵引的配置,以实现按照引流路径为数据包设置数据包标记,以及根据数据包标记和预设路由规则将数据包先后牵引至牵引目标和目标地址,可以支持多种流量牵引模式,不需要通过大量的连接记录以及对应的网络配置来实现流量的牵引,能够减少占用系统内存和算力,降低技术人员的维护成本。
根据本发明的一方面,提供了一种流量牵引的配置方法,该方法包括:
根据预设引流模式确定数据包的引流路径;
按照引流路径为数据包设置数据包标记;
根据数据包标记和预设路由规则牵引数据包至牵引目标进行处理;
根据数据包标记和预设路由规则牵引处理后的数据包至目标地址。
根据本发明的另一方面,提供了一种流量牵引的配置装置,该装置包括:
路径确定模块,用于根据预设引流模式确定数据包的引流路径;
标记设置模块,用于按照引流路径为数据包设置数据包标记;
第一引流模块,用于根据数据包标记和预设路由规则牵引数据包至牵引目标进行处理;
第二引流模块,用于根据数据包标记和预设路由规则牵引处理后的数据包至目标地址。
根据本发明的另一方面,提供了一种电子设备,所述电子设备包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一实施例所述的流量牵引的配置方法。
根据本发明的另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本发明任一实施例所述的流量牵引的配置方法。
本发明实施例的技术方案,通过根据预设引流模式确定数据包的引流路径,按照引流路径为数据包设置数据包标记,根据数据包标记和预设路由规则牵引数据包至牵引目标进行处理,根据数据包标记和预设路由规则牵引处理后的数据包至目标地址。本发明实施例通过按照引流路径为数据包设置数据包标记,以及根据数据包标记和预设路由规则将数据包先后牵引至牵引目标和目标地址,支持多种流量牵引模式,不需要通过大量的连接记录以及对应的网络配置来实现流量的牵引,减少占用系统内存和算力,降低技术人员的维护成本。
应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例一提供的一种流量牵引的配置方法的流程图;
图2是根据本发明实施例二提供的一种流量牵引的配置方法的流程图;
图3是根据本发明实施例三提供的一种流量牵引网络模型的示例图;
图4是根据本发明实施例三提供的另一种流量牵引网络模型的示例图;
图5a和图5b是根据本发明实施例四提供的一种流量牵引的配置方法的流程图;
图6a和图6b是根据本发明实施例五提供的一种流量牵引的配置方法的流程图;
图7是根据本发明实施例六提供的一种流量牵引的配置装置的结构示意图;
图8是实现本发明实施例的流量牵引的配置方法的电子设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例一
图1为本发明实施例一提供了一种流量牵引的配置方法的流程图,本实施例可适用于对数据包进行流量牵引配置的情况,该方法可以由流量牵引的配置装置来执行,该流量牵引的配置装置可以采用硬件和/或软件的形式实现。如图1所示,本实施例一提供的一种流量牵引的配置方法,具体包括如下步骤:
S110、根据预设引流模式确定数据包的引流路径。
其中,预设引流模式可以是预先配置的用于对数据包进行引流的方式,预设引流模式可以包括东西向引流模式和南北向引流模式等,其中,东西向引流模式可以是指各主机内网之间通讯的数据包引流模式,东西向数据包可以包括同一个虚拟私有云(VirtualPrivate Cloud,VPC)内的不同主机之间通讯传输的数据包,也可以包括位于不同VPC内的不同主机之间通讯传输的数据包;南北向引流模式可以是指主机与外网(Internet)之间通讯的数据包引流模式。需要理解的是,本发明实施例中提到的主机可以理解为用于运行业务的设备,该主机既可以为云主机,即云平台的虚拟机(Virtual Machine,VM),也可以为虚拟机所在的物理机器,或者其他运行业务的设备,本发明实施例对此不进行限制。引流路径可以理解为数据包在引流过程中数据传输的路径。
在本发明实施例中,可以根据数据包的业务需求以及云平台或用户的需要,对应配置预设引流模式,预设引流模式可以包括东西向引流模式和南北向引流模式等,然后,可以从预设路由配置文件或数据包的封装中获取数据包对应的源地址和目标地址,并按照上述源地址和目标地址设置数据包对应的引流路径。在一些实施例中,可以根据业务需求预先配置多种预设引流模式,再对数据包进行解析提取出对应的源地址和目标地址,并按照上述源地址和目标地址确定数据包途经的各种网络设备,例如网卡、流量牵引模块和牵引目标等,进而配置出数据包对应的引流路径。
S120、按照引流路径为数据包设置数据包标记。
其中,数据包标记可以理解为用于表征数据包引流情况的标记信息,例如,数据包标记可以标识数据包的有无经过牵引目标处理、是否引流以及是否网络地址转换等引流情况。
在本发明实施例中,可以利用Linux系统内核自带的数据包标记工具例如Linux系统内核自带的流量控制模块(Traffic Control,TC)和/或IPv4数据包管理模块(iptables)等,对数据包按照引流路径设置相应的数据包标记,例如可以针对数据包标记的不同标识位分别配置对应的引流情况信息,即可以用数据包标记去标识数据包的有无经过牵引目标处理、是否引流以及是否网络地址转换等引流情况。
S130、根据数据包标记和预设路由规则牵引数据包至牵引目标进行处理。
其中,预设路由规则可以理解为预先配置的用于控制数据包路由的规则,预设路由规则可以包括路由对象标识以及路由策略等信息,利用预设路由规则可以控制将数据包牵引至对应的牵引目标以及最终的目标地址。路由对象标识可以为牵引目标对应的编号,根据路由对象标识可以将数据包牵引至对应的牵引目标。牵引目标可以是指用于对数据包进行安全防护处理的安全设备,牵引目标可以包括各种安全实例(安装了安全引擎软件的云主机)或者其他物理安全防护设备,例如物理防火墙等,本发明实施例对此不进行限制。
在本发明实施例中,可以根据数据包标记在电子设备上预先配置的预设路由规则内查找与数据包标记匹配的路由配置信息,其中,数据匹配方式可以不限于模糊匹配、字符串匹配等,再利用路由配置信息修改数据包的目标地址,进而将数据包正确牵引至对应的牵引目标进行安全防护处理,其中,数据包安全处理过程可以包括但不限于:异常流量监测、流量过滤、流量清洗等。进一步地,若牵引目标的数量为多个,可以分别对数据包和各个牵引目标作对应的路由配置,进而将数据包分发给不同的牵引目标进行处理以实现负载均衡。
S140、根据数据包标记和预设路由规则牵引处理后的数据包至目标地址。
其中,目标地址可以是指接收数据包的设备的网络互连协议(IP)地址和媒体访问控制地址(Media Access Control Address,MAC)等。
在本发明实施例中,由于在数据包在牵引至牵引目标的过程中,其目标地址发生了改变,因此需要先确定数据包的目标地址,再根据数据包标记在电子设备上预先配置的预设路由规则内查找与数据包标记匹配的路由配置信息,并利用路由配置信息将数据包正确牵引至目标地址,其中,在处理后的数据包返回至目标地址中,可以在数据包的数据包标志设置不引流标识,以防止数据包再次进行引流操作而导致环路。进一步地,在数据包的接收端执行完业务逻辑后,可以按照原引流路径返回,即将响应数据包先牵引至牵引目标,再将安全处理后的数据包发送至原始的数据包发送方。
本发明实施例的技术方案,通过根据预设引流模式确定数据包的引流路径,按照引流路径为数据包设置数据包标记,根据数据包标记和预设路由规则牵引数据包至牵引目标进行处理,根据数据包标记和预设路由规则牵引处理后的数据包至目标地址。本发明实施例通过按照引流路径为数据包设置数据包标记,以及根据数据包标记和预设路由规则将数据包先后牵引至牵引目标和目标地址,支持多种流量牵引模式,不需要通过大量的连接记录以及对应的网络配置来实现流量的牵引,减少占用系统内存和算力,降低技术人员的维护成本。
实施例二
图2为本发明实施例二提供的一种流量牵引的配置方法的流程图,基于上述实施方式进一步进行优化与扩展,并可以与上述实施方式中各个可选技术方案结合。如图2所示,本实施例二提供的一种流量牵引的配置方法,具体包括如下步骤:
S210、按照预设引流模式在预设路由配置文件中查询数据包的源地址和目标地址。
在本发明实施例中,预设路由配置文件可以是预先配置的用于配置数据包路由的文件,预设路由配置文件中可以包括数据包的源地址、目标地址以及路由配置等信息。
具体的,可以在电子设备上预先配置一个或者多个预设路由配置文件,根据设置的预设引流模式可以在预设路由配置文件中查询需要引流的数据包对应的源地址和目标地址,其中,预设引流模式可以至少包括东西向引流模式和南北向引流模式。在一些实施例中,可以将数据包的预设引流模式与预设路由配置文件中的引流模式进行数据匹配操作,其中,数据匹配方式可以不限于模糊匹配、字符串匹配等,进而查找出与需要引流的数据包对应的源地址和目标地址。
S220、按照源地址和目标地址设置引流路径。
在本发明实施例中,可以按照需要引流的数据包的源地址和目标地址设置对应的引流路径,示例性的,对于需要引流的数据包可以先将其牵引至牵引目标进行安全防护处理,再将处理后的数据包传输至最终的目的地址。
S230、获取对应数据包的业务需求。
其中,业务需求可以是指数据包的引流需求信息,业务需求可以包括数据包的引流、网络地址转换以及牵引目标等信息。
在本发明实施例中,可以根据本地或云端服务器预先存储的包含业务需求的文档,查找与数据包对应的业务需求,基于该业务需求可以了解数据包的是否需要引流、是否需要网络地址转换以及牵引目标的选取等信息。
S240、按照引流路径以及业务需求设置数据包的数据包标记。
在本发明实施例中,可以利用Linux系统内核自带的数据包标记工具,例如可以包括但不限于:Linux系统内核自带的流量控制模块(TC)和/或IPv4数据包管理模块(iptables)等,对数据包按照引流路径以及业务需求设置相应的数据包标记,可以针对数据包标记的不同标识位分别配置对应的引流情况信息,即可以用数据包标记去标识数据包的有无经过牵引目标处理、是否引流以及是否网络地址转换等引流情况。
进一步地,在上述发明实施例的基础上,数据包标记的置位情况包括以下至少之一:
在第一标识位被置位的情况下,表示数据包已经过牵引目标处理;
在第二标识位被置位的情况下,表示数据包不引流;
在第三标识位被置位的情况下,表示数据包进行源地址转换;
在第四标识位被置位的情况下,表示数据包进行目标地址转换;
在第五标识位被置位的情况下,表示数据包进行引流,且仅适用于南北向引流模式;
在第六标识位至第七标识位被置位的情况下,表示预留位;
在第八标识位被置位的情况下,表示路由对象;
在第九标识位至第十六标识位被置位的情况下,表示牵引目标的编号。
S250、确定牵引目标关联的网络命名空间。
其中,网络命名空间(linux network namespace,netns)可以理解为一种用于隔离网络设备和协议栈的虚拟化技术,在本发明实施例中可以先将数据包牵引至网络命名空间中,进而避免可能存在异常风险的数据包直接发送给业务主机上的应用。
在本发明实施例中,可以在电子设备上预先配置的配置文件或者数据表中查找与牵引目标关联的网络命名空间,其中,一个网络命名空间可以关联一个或者多个牵引目标,即可以按照路由配置将经过网络命名空间的数据包牵引至与之关联的牵引目标进行安全防护处理。
S260、按照数据包标记将数据包重定向至网络命名空间的第一网卡,并经过第一网卡将数据包发送至网络命名空间内的第二网卡。
其中,重定向可以理解为中断数据包原先的传输路径,进而将数据包直接传输给指定的目标设备。第一网卡和第二网卡可以是一对虚拟以太网接口(Virtual EthernetInterface,VETH)类型的网络设备,第一网卡和第二网卡可以分别位于网络命名空间的外部和内部,并且第一网卡和第二网卡具有以下特性:数据包进入第一网卡必会从第二网卡流出,以及,数据包进入第二网卡必会从第一网卡流出。
在本发明实施例中,可以首先为网络命名空间配置一对VETH类型的虚拟网卡,然后可以利用Linux系统内核自带的流量控制模块(TC)和/或IPv4数据包管理模块(iptables)等数据包重定向工具,按照数据包标记将数据包重定向至网络命名空间的第一网卡,再利用第一网卡和第二网卡属于一对VETH类型的虚拟网卡的特性,将经过第一网卡的数据包发送至网络命名空间内的第二网卡。
S270、在预设路由规则内查找数据包标记匹配的路由对象标识。
在本发明实施例中,可以在电子设备上预先配置的预设路由规则内查找与数据包标记匹配的路由对象标识,其中,数据匹配方式可以不限于模糊匹配、字符串匹配等,利用预设路由规则以及路由对象标识可以正确地将数据包牵引至对应的牵引目标以及最终的目标地址。需要理解的是,若牵引目标的数量为多个,可以先对牵引目标分别进行数字编号,再利用Hash计算偏移量,进一步地利用预设路由规则将数据包分发至与偏移量对应数字编号的牵引目标进行处理以实现负载均衡。
S280、按照路由对象标识修改第二网卡处的数据包的目标地址。
其中,第二网卡处的数据包的目标地址可以是指牵引目标对应的IP地址和MAC地址。
在本发明实施例中,可以利用Linux系统内核自带的流量控制模块(TC)和/或IPv4数据包管理模块(iptables)等数据包重定向工具,按照路由对象标识修改第二网卡处的数据包的目标地址,以使得后面将数据包正确牵引至牵引目标进行安全防护处理。
S290、基于修改后的目标地址将数据包传输至牵引目标。
S2100、确定处理后的数据包的目标地址。
其中,此处处理后的数据包的目标地址可以理解为原始的接收数据包的业务主机(即业务侧)对应的目标地址。
在本发明实施例中,确定处理后的数据包的目标地址地方式可以包括但不限于以下几种:可以在S210中的预设路由配置文件查找原始数据包的目标地址;也可以在预设路由规则中查找数据包在进行网络地址转换之前的目标地址,本发明实施例对此不进行限制。
S2110、按照数据包标记将数据包重定向至网络命名空间内的第二网卡,并经过第二网卡将数据包发送至第一网卡。
在本发明实施例中,可以利用Linux系统内核自带的流量控制模块(TC)和/或IPv4数据包管理模块(iptables)等数据包重定向工具,按照数据包标记将处理后的数据包重定向至网络命名空间内的第二网卡,再利用第一网卡和第二网卡属于一对VETH类型的虚拟网卡的特性,将经过第二网卡的数据包发送至第一网卡。
S2120、对第一网卡处的数据包设置不引流标识位。
其中,设置不引流标识位可以是指对数据包标记中表征是否需要引流的标识位设置为不引流,示例性的,可以对数据包的数据包标记中表征是否需要引流的标识位置位为1,即可使数据包后面不再进行引流处理。
在本发明实施例中,可以利用Linux系统内核自带的流量控制模块(TC)和/或IPv4数据包管理模块(iptables)等数据包标记工具,对第一网卡处的已经过安全防护处理的数据包设置不引流标识位,可以使数据包后面不再进行引流处理,以避免后面的数据包因再次重定向至网络命名空间而导致的环路情况。
S2130、按照数据包标记将设置不引流标识位的数据包传输至目标地址。
在本发明实施例中,在对第一网卡处的数据包进行设置不引流标识位之后,可以按照数据包标记将安全防护处理后的数据包发送至目标地址。进一步地,在数据包的接收端执行完业务逻辑后,可以按照原引流路径返回,即从原数据包接收端->网络命名空间->牵引目标->网络命名空间->原数据包发送端。
本发明实施例的技术方案,通过按照预设引流模式在预设路由配置文件中查询数据包的源地址和目标地址,按照源地址和目标地址设置引流路径,获取对应数据包的业务需求,按照引流路径以及业务需求设置数据包的数据包标记,确定牵引目标关联的网络命名空间,按照数据包标记将数据包重定向至网络命名空间的第一网卡,并经过第一网卡将数据包发送至网络命名空间内的第二网卡,在预设路由规则内查找数据包标记匹配的路由对象标识,按照路由对象标识修改第二网卡处的数据包的目标地址,基于修改后的目标地址将数据包传输至牵引目标,确定处理后的数据包的目标地址,按照数据包标记将数据包重定向至网络命名空间内的第二网卡,并经过第二网卡将数据包发送至第一网卡,对第一网卡处的数据包设置不引流标识位,按照数据包标记将设置不引流标识位的数据包传输至目标地址。本发明实施例通过按照引流路径以及业务需求设置数据包的数据包标记,再按照数据包标记将数据包重定向至网络命名空间,进而将数据包牵引至牵引目标进行安全处理,并按照数据包标记将数据包原路返回,支持多种流量牵引模式,不需要通过大量的连接记录以及对应的网络配置来实现流量的牵引,减少占用系统内存和算力,降低了技术人员的维护成本。
实施例三
图3为本发明实施例三提供的一种流量牵引网络模型的示例图。如图3所示,该网络模型包括:物理机器即宿主机host1和host2;云主机VM1、VM2、VM3和VM4;流量牵引模块tt1和tt2;牵引目标DST1和DST2;用户网络;牵引目标网络。
在本发明实施例中,用户网络可以是指各云主机之间进行通讯的网络,示例性的,VM1在用户网络1,VM2在用户网络2,VM3和VM4都在用户网络3,用户网络可以是二层或者三层网络,其中,二层网络是指同一个网络里面可以互通,三层网络是指不同网络之间可以互通,本发明实施例对此不进行限制。
流量牵引模块tt1和tt2是具有引流能力的功能模块,即网络命名空间。流量牵引模块可以包括一对或者多对VETH类型的虚拟网卡,利用上述VETH类型的虚拟网卡可以将需要进行引流的数据包重定向至流量牵引模块中。
牵引目标DST1和DST2可以是指流量牵引的目标机器,牵引目标可以包括各种网络防护设备,例如可以是具有安全防护功能的虚拟机、物理机等。
牵引目标网络可以是指流量牵引模块与牵引目标之间打通的二层网络,牵引目标网络可以包括物理网络或者是使用软件定义网络(Software Defined Network,SDN)技术创建的虚拟网络等,牵引目标网络的可以数量可以为一个或者多个,本发明实施例对此不进行限制。
图4为本发明实施例三提供的另一种流量牵引网络模型的示例图。如图4所示,VM1和VM2表示用户的云主机,两台云主机各自加入了用户网络,例如可以是二层或者三层网络。需要理解的是,图4中的两台云主机VM1和VM2设置在同一台物理机器中,在实际应用中,两台云主机VM1和VM2可以分别部署在不同的物理机器中,本发明实施例对此不进行限制。
网桥可以是指不同云主机之间(东西向)、云主机与外面Internet(南北向)之间通讯的媒介,在实际应用中,两个云主机之间的通讯可以是虚拟局域网(Virtual Local AreaNetwork,VLAN)或者虚拟扩展本地局域网(Visual eXtensible Local Area Network,VxLAN)等网络类型,可以利用SDN技术创建上述网络模式的虚拟网络。
网卡eth0是云主机VM1和VM2用于与外界进行通讯的网卡,对应在物理机器上显示的网卡名称可能不是eth0,例如可以是VETH类型或Tap类型或Tun类型的虚拟网络设备,本发明实施例对此不进行限制。图4中的网卡tap0和tap1即为云主机VM1和VM2用于与外界进行通讯的网卡。
网络命名空间可以是网络命名空间实例。
网卡(if0,if0p)是一对VETH类型的虚拟网卡,它的特点是一端收到数据包,必从另外一端出来,其中,网卡if0连接到网桥上,网卡if0p设置在网络命名空间里面。
云防火墙安全实例表示对数据包进行安全防护处理的牵引目标。
牵引目标网络是连通云防火墙安全实例与网络命名空间的二层网络,它可以是SDN的虚拟网络,也可以是物理网络。网卡if.x位于网络命名空间内,并连接到牵引目标网络。
在不进行引流操作之前,云主机VM1与VM2之间的数据包(即东西向)传输路径为:网卡VM1.eth0<->VM1.网桥<->VM2.网桥<->网卡VM2.eth0。
在进行引流操作之后,云主机VM1与VM2之间的数据包(即东西向)传输路径为:网卡VM1.eth0->网卡if0->网卡if0p->网卡if.x->牵引目标网络->云防火墙安全实例->牵引目标网络->网卡if.x->网卡if0p->网卡if0->VM1.网桥->VM2.网桥->网卡VM2.eth0,返回路径相同。
在不进行引流操作之前,云主机VM1与外面Internet之间的数据包(即南北向)传输路径为:网卡VM1.eth0<->VM1.网桥<->外面Internet。
在进行引流操作之后,云主机VM1与外面Internet之间的数据包(即南北向)传输路径为:网卡vm1.eth0->网卡if0->网卡if0p->网卡if.x->牵引目标网络->云防火墙安全实例->牵引目标网络->网卡if.x->网卡if0p->网卡if0->VM1.网桥->外面Internet,返回路径相同。
本发明实施例提出的两种流量牵引的网络模型,支持多种流量牵引模式,流量牵引模块独立工作,避免了单点故障和高可用问题,且流量牵引模块和牵引目标容易模块化,降低维护成本。
实施例四
本发明实施例可以利用Linux系统内核自带的流量控制模块(TC)、IPv4数据包管理模块(iptables)以及路由策略管理模块(ip rule)进行流量牵引配置,其中,流量控制模块(TC)用于数据包重定向、数据包编辑以及数据包标记等,IPv4数据包管理模块(iptables)用于数据包标记以及生成连接记录等,路由策略管理模块(ip rule)用于根据数据包标记配置路由并发往目标设备。
在本发明实施例中,数据包标记可以占用16bit,数据包标记的置位情况从左到右分别表示如下:
在第一标识位被置位的情况下,表示数据包已经过牵引目标处理;
在第二标识位被置位的情况下,表示数据包不引流;
在第三标识位被置位的情况下,表示数据包进行源地址转换;
在第四标识位被置位的情况下,表示数据包进行目标地址转换;
在第五标识位被置位的情况下,表示数据包进行引流,且仅适用于南北向引流模式;
在第六标识位至第七标识位被置位的情况下,表示预留位;
在第八标识位被置位的情况下,表示路由对象;
在第九标识位至第十六标识位被置位的情况下,表示牵引目标的编号。
进一步地,可以根据实际需要,配置数据包是否需要源地址转换或者目标地址转换。在本发明实施例中,当预设引流模式为东西向引流模式时,默认各云主机处于同一个租户网络中,即不需要进行网络地址转换(Network Address Translation,NAT)。当预设引流模式为南北向引流模式时,若数据包的源地址和目标地址都是属于租户网络的时候,则不需要NAT;若数据包的源地址是租户网络,而目标地址是非租户网络,则对数据包标记中设置源地址转换的标识位进行置位;若数据包的源地址是非租户网络,而目标地址是租户网络,则对数据包标记中设置目的地址转换的标识位进行置位,这样操作的目的在于:可以让云防火墙安全实例记录实际Internet的会话信息,而不是私有IP到因特网IP的会话。需要理解的是,不对数据包进行NAT操作不会影响本发明实施例的实施,可以根据实际情况选择对数据包进行NAT,本发明实施例对此不进行限制。
接下来,本发明实施例将对图4中的网卡if0、网络命名空间以及网卡tap0的配置进行分别阐述。
1、网卡if0的引流配置(数据包进入物理机器即宿主机)
1-1、设置所有的IP协议数据包标记为“无需引流”。通过设置无需引流的数据包标记,在数据包之后发给网卡tap0时就不会被重定向而造成环路。
1-2、设置匹配到“无需引流”标记就忽略,不做处理。需要理解的是,在上述1-1和1-2的引流配置之间,可以根据实际需要进行相关数据包的标记设置来实现某些特殊的场景或定制化需求。
1-3、设置数据包目标IP为引流应用对象的资源IP时,不需要连接记录(linuxconntrack)。即业务目标答复给虚拟机的时候,对于流经网卡if0的数据包,不需要产生连接记录,这是因为网卡tap0已经会产生连接记录了,因此不需要网卡if0再产生多余的连接记录。
2、网络命名空间的引流配置
2-1、创建ipset(ip集)记录租户网络信息,租户网络对云平台来说是已知的。
2-2、配置路由规则。数据包需要被牵引至牵引目标即云防火墙安全实例,当云防火墙安全实例有多个时,就需要对应配置多条路由规则。可以对云防火墙安全实例进行编号,再利用Hash计算偏移量,进一步地配置路由规则将数据包分发至与偏移量对应数字编号的牵引目标进行处理以实现负载均衡。示例性的,若Hash计算得到的偏移量是1,表达编号为1的云防火墙安全实例,那么对应的数据包标记就是0x8100+1=0x8101,在路由规则里面会预先配置0x8101标记对应的路由策略,这样就能根据Hash计算将数据包分散地发给不同的路由即不同的牵引目标(云防火墙安全实例)从而实现负载均衡。
2-3、网卡if0p的引流配置(数据包进入网络命名空间)
A、设置数据包丢弃规则。当网卡if0配置在网桥上时,网if0往往会收到一些广播或组播包,此时网卡if0p也会收到这些数据包,可以配置将这些数据包直接丢弃不处理。处理过程可以是:1)设置广播、组播数据包的数据包标记为“不引流”标记;2)设置匹配到“不引流”标记就进行丢弃。进一步地,云平台或用户也可以定制化地设置某些IP、某些通信协议以及某些端口不需要引流。
B、计算/查询得到路由对象标识。通过Hash计算可以得到牵引目标的路由对象标识,当牵引目标即云防火墙安全实例有多个时,可以通过这种方式实现负载均衡。进一步地,此处也可以根据实际需要选择开启生成连接记录(linux conntrack),这样后续数据包就可以直接查询连接记录得到路由对象标识,就不必每个数据包都进行Hash计算。
C、设置数据包的NAT标记。可以定制化地配置一些策略,配置数据包是否需要源地址转换或者目标地址转换。
2-4、网卡if.x的引流配置(数据包离开网络命名空间)
A、数据包编辑。可以根据数据包标记中的NAT标记进行对应地址修改,如匹配到源地址转换标记,就修改数据包的源地址;匹配到目标地址转换标记,就修改数据包的目标地址。在修改地址之后重新计算和修改检验和值(checksum)。
2-5、网卡if.x的引流配置(数据包进入网络命名空间)
A、数据包编辑和重定向。此处会涉及以下场景,且这些场景具有优先级,按照优先级配置如下:
场景1:匹配目标地址是虚拟机IP,则修改目标MAC地址为网卡if0的MAC地址,接着将数据包重定向到网卡if0p。
场景2:匹配目标地址是虚拟机的NAT IP,则修改目标IP地址为虚拟机IP,从而还原成NAT之前的IP地址,接着修改目标MAC地址为网卡if0的MAC地址,然后重新计算和修改检验和值,最后将数据包重定向到网卡if0p。
场景3:匹配源地址是虚拟机IP,则修改目标MAC地址为网卡if0的MAC地址,接着将数据包重定向到网卡if0p。
场景4:匹配源地址是虚拟机的NAT IP,则修改源IP地址为虚拟机IP,从而还原成NAT之前的IP地址,接着修改目标MAC地址为网卡if0的MAC地址,然后重新计算和修改检验和值,最后将数据包重定向到网卡if0p。
3、网卡tap0的引流配置(以数据包进入物理机器即宿主机为例)
3-1、决定引流模式。在本发明实施例中,可以支持“仅东西向”、“仅南北向”以及“全方位支持”三种引流模式。其中,对于“仅东西向”的引流模式,可以根据租户网络进行引流的配置,对云平台来说,租户网络是云平台管理的,所以它们是已知的;对于“仅南北向”的引流模式,可以首先设置一条标记“需引流”的规则,并根据IP地址和MAC地址标记其所有IP协议的流量需要引流,然后设置一条标记“无需引流”的规则,并根据租户网络设置其所有IP协议的流量无需引流,最后设置一条引流规则,判断数据包的标记是“需引流”就进行引流操作;对于“全方位支持”的引流模式,可以根据IP地址和MAC地址进行流量牵引的相关配置。
3-2、决定是否引流。可以根据实际需要,定制化地设置相关标记并通过该标记决定某些IP、某些通信协议以及某些端口是否需要引流;然后,可以设置对应的引流匹配规则,即匹配到无需引流标记的数据包就忽略,不进行引流操作。在本发明实施例中,可以设置以下不需要引流的规则:一是设置广播、组播包不需要引流;二是云平台或用户可以定制化地设置某些IP、某些通信协议以及某些端口不需要引流。
3-3、数据包编辑。修改此处数据包的目标MAC地址为网卡if0p的MAC地址。
3-4、数据包重定向。将数据包直接发送给网卡if0。
图5a和图5b为本发明实施例四提供的一种流量牵引的配置方法的流程图。本实施例在上述实施例的基础上,提供了一种流量牵引的配置方法的一个实施方式,能够实现在Linux系统中对东西向数据包进行流量牵引配置。以云主机VM1访问云主机VM2的UDP 1002端口为例,相关的网络配置如下:云主机VM1的IP地址是10.67.0.1,MAC地址是36:61:94:32:cd:55;云主机VM2的IP地址是10.67.0.2,MAC地址是32:7e:5c:81:74:d3;网卡if0的MAC地址是96:ec:fd:37:04:e9;网卡if0p的MAC地址是22:8c:36:85:77:26;网卡if.x的MAC地址是0e:12:df:51:3c:5e;牵引目标的IP地址是100.64.1.2/30,MAC地址是66:f9:e3:1f:4f:60。如图5a和图5b所示,本发明实施例四提供的一种流量牵引的配置方法,具体包括如下步骤:
S410、网卡VM1.eth0发出数据包,宿主机的网卡tap0收到数据包。
此处,网卡tap0抓包情况如下:
36:61:94:32:cd:55>32:7e:5c:81:74:d3,ethertype IPv4(0x0800),length58:10.67.0.1.38347>10.67.0.2.1002:UDP,length 16
可以看出,云主机VM1使用38347端口访问云主机VM2的1002端口。
网卡tap0的引流配置如下:
1)决定引流模式,匹配到VM1源MAC地址、源IP地址会进行引流;
2)决定是否引流,没有匹配到不引流的规则,所以会进行引流;
3)数据包编辑,修改数据包的目标MAC地址为网卡if0p的MAC地址;
4)数据包重定向,将数据包直接重定向至网卡if0。
S420、网卡if0接收到数据包。
在本发明实施例中,网卡if0暂无引流配置,因此不对数据包进行处理。此处,网卡if0抓包情况如下:
36:61:94:32:cd:55>22:8c:36:85:77:26,ethertype IPv4(0x0800),length58:10.67.0.1.38347>10.67.0.2.1002:UDP,length 16
S430、网卡if0p收到数据包,数据包进入网络命名空间。
在本发明实施例中,网卡if0p的引流配置如下:
1)匹配数据包丢弃规则,没有匹配到不引流的规则,所以会继续引流步骤;
2)计算/查询得到数据包路由标记,本发明实施例仅以一个牵引目标为例,因此计算或查询得到的路由对象标识为0x8101;第一个数据包会进行计算,后续的数据包会从连接记录里面查询得到对应的路由对象标识;
3)设置数据包的NAT标记,本发明实施例是租户网络之间通讯,所以不会匹配到需要设置NAT标记的规则。
此处,网卡if0p抓包情况如下:
36:61:94:32:cd:55>22:8c:36:85:77:26,ethertype IPv4(0x0800),length58:10.67.0.1.38347>10.67.0.2.1002:UDP,length 16
S440、根据路由规则查找路由对象标识为0x8101的路由,将数据包发往网卡if.x。
S450、网卡if.x收到数据包,数据包离开网络命名空间。
在本发明实施例中,没有匹配到数据包的NAT标记,所以不做处理。此处,网卡if.x抓包情况如下:
0e:12:df:51:3c:5e>66:f9:e3:1f:4f:60,ethertype IPv4(0x0800),length58:10.67.0.1.38347>10.67.0.2.1002:UDP,length 16
可以看出,经过路由后,数据包的源MAC地址变成了网卡if.x的MAC地址,目标MAC地址变成了云防火墙安全实例的MAC地址。
S460、云防火墙安全实例收到数据包进行安全防护处理,并将数据包原路返回至网卡if.x,数据包进入网络命名空间。
在本发明实施例中,网卡if.x的引流配置如下:
1)匹配到源IP地址是10.67.0.1;
2)修改目标MAC地址为网卡if0的MAC地址;
3)数据包重定向到网卡if0p。
此处,网卡if.x抓包情况如下:
66:f9:e3:1f:4f:60>0e:12:df:51:3c:5e,ethertype IPv4(0x0800),length58:10.67.0.1.38347>10.67.0.2.1002:UDP,length 16
S470、网卡if0p收到数据包,数据包离开网络命名空间。
在本发明实施例中,网卡if0p处的数据包离开网络命名空间,暂无引流配置,因此不对数据包进行处理。此处,网卡if0p抓包情况如下:
66:f9:e3:1f:4f:60>96:ec:fd:37:04:e9,ethertype IPv4(0x0800),length58:10.67.0.1.38347>10.67.0.2.1002:UDP,length 16
S480、网卡if0收到数据包,数据包进入宿主机,设置所有IP协议的数据包的不引流标记。
此处,网卡if0抓包情况如下:
66:f9:e3:1f:4f:60>96:ec:fd:37:04:e9,ethertype IPv4(0x0800),length58:10.67.0.1.38347>10.67.0.2.1002:UDP,length 16
S490、数据包被网桥转发至云主机VM2,VM2收到数据包并进行答复,响应数据包经过网桥发送至网卡tap0。
在本发明实施例中,网卡tap0的引流配置如下:
1)决定引流模式,匹配到VM1目标MAC地址、目标IP地址会进行引流;
2)决定是否引流,没有匹配到不引流的规则,所以会进行引流;
3)数据包编辑,修改数据包的目标MAC地址为网卡if0p的MAC地址;
4)数据包重定向,将数据包直接重定向至网卡if0。
此处,网卡if0抓包情况如下:
32:7e:5c:81:74:d3>22:8c:36:85:77:26,ethertype IPv4(0x0800),length58:10.67.0.2.1002>10.67.0.1.38347:UDP,length 16
S4100、网卡if0收到数据包,并发送给网卡if0p,数据包进入网络命名空间。
在本发明实施例中,网卡if0p的引流配置如下:
1)匹配数据包丢弃规则,没有匹配到不引流的规则,所以会继续引流步骤;
2)查询得到数据包路由标记,从连接记录里面查询得到路由对象标识为0x8101;
3)设置数据包的NAT标记,没有匹配到需要设置NAT标记的规则。
此处,网卡if0p抓包情况如下:
32:7e:5c:81:74:d3>22:8c:36:85:77:26,ethertype IPv4(0x0800),length58:10.67.0.2.1002>10.67.0.1.38347:UDP,length 16
S4110、根据路由规则查找路由对象标识为0x8101的路由,将数据包发往网卡if.x。
S4120、网卡if.x收到数据包,数据包离开网络命名空间。
在本发明实施例中,没有匹配到数据包的NAT标记,所以不做处理。此处,网卡if.x抓包情况如下:
0e:12:df:51:3c:5e>66:f9:e3:1f:4f:60,ethertype IPv4(0x0800),length58:10.67.0.2.1002>10.67.0.1.38347:UDP,length 16
可以看出,经过路由后,数据包的源MAC地址变成了网卡if.x的MAC地址,目标MAC地址变成了云防火墙安全实例的MAC地址。
S4130、云防火墙安全实例收到数据包进行安全防护处理,并将数据包原路返回至网卡if.x,数据包进入网络命名空间。
在本发明实施例中,网卡if.x的引流配置如下:
1)匹配到目的IP地址是10.67.0.1;
2)修改目标MAC地址为网卡if0的MAC地址;
3)数据包重定向到网卡if0p。
此处,网卡if.x抓包情况如下:
66:f9:e3:1f:4f:60>0e:12:df:51:3c:5e,ethertype IPv4(0x0800),length58:10.67.0.2.1002>10.67.0.1.38347:UDP,length 16
S4140、网卡if0p收到数据包,数据包离开网络命名空间。
在本发明实施例中,网卡if0p处的数据包离开网络命名空间,暂无引流配置,因此不对数据包进行处理。此处,网卡if0p抓包情况如下:
66:f9:e3:1f:4f:60>96:ec:fd:37:04:e9,ethertype IPv4(0x0800),length58:10.67.0.2.1002>10.67.0.1.38347:UDP,length 16
S4150、网卡if0收到数据包,数据包进入宿主机,设置所有IP协议的数据包的不引流标记。
此处,网卡if0抓包情况如下:
66:f9:e3:1f:4f:60>96:ec:fd:37:04:e9,ethertype IPv4(0x0800),length58:10.67.0.2.1002>10.67.0.1.38347:UDP,length 16
S4160、数据包被网桥转发至云主机VM1,网卡tap0收到数据包,数据包离开宿主机,并发送至云主机VM1的网卡eth0,即云主机VM1收到了云主机VM2的答复。
在本发明实施例中,网卡tap0的引流配置如下:
1)决定引流模式,匹配到VM1目标MAC地址、目标IP地址会进行引流;
2)决定是否引流,没有匹配到不引流的规则,但是匹配到了“不引流”的标记(S4150中设置的),所以不会进行引流。
本发明实施例的技术方案,具有以下有益效果:1)支持东西向数据包的流量牵引;2)分布式设计,引流模块独立工作,避免了单点故障和高可用问题;3)“NAT IP”的设计可以支持业务主机IP网络冲突的场景;4)流量牵引规则都可以作为主机网络的附加配置,引流的开关操作都不会对现有网络造成影响,且可以定制化配置引流路径;5)流量牵引模块的开关操作对网络链路的连通性无影响,平滑操作;6)牵引目标的切换操作对网络链路的连通性无影响,平滑操作;7)不需要通过大量的连接记录以及对应的网络配置来实现流量的牵引,能够减少占用系统内存和算力,降低技术人员的维护成本。
实施例五
图6a和图6b为本发明实施例五提供的一种流量牵引的配置方法的流程图。本实施例在上述实施例的基础上,提供了一种流量牵引的配置方法的一个实施方式,能够实现在Linux系统中对南北向数据包进行流量牵引配置。以外网IP:10.67.1.2访问云主机VM1的UDP 1001端口为例,相关的网络配置如下:云主机VM1的IP地址是10.67.0.1,MAC地址是36:61:94:32:cd:55,NAT IP地址是10.67.1.1;外网的IP地址是10.67.1.2,外网网关的MAC地址是52:54:5c:81:74:d3;网卡if0的MAC地址是96:ec:fd:37:04:e9;网卡if0p的MAC地址是22:8c:36:85:77:26;网卡if.x的MAC地址是7a:b3:b3:3b:f8:5a;牵引目标的IP地址是100.64.1.2/30,MAC地址是42:83:bb:bd:21:c4。如图6a和图6b所示,本发明实施例五提供的一种流量牵引的配置方法,具体包括如下步骤:
S510、外网网关将数据包发给云主机VM1的网桥,网桥将数据包发送至云主机的网卡tap0。
此处,网卡tap0抓包情况如下:
52:54:5c:81:74:d3>36:61:94:32:cd:55,ethertype IPv4(0x0800),length55:10.67.1.2.49619>10.67.0.1.1001:UDP,length 13
网卡tap0的引流配置如下:
1)决定引流模式,匹配到目标IP地址和目标MAC地址是云主机VM1的IP和MAC地址,继续引流;
2)决定是否引流,没有匹配到不引流的规则,继续引流;
3)数据包编辑,修改数据包的目标MAC地址为网卡if0p的MAC地址;
4)数据包重定向,将数据包直接重定向至网卡if0。
S520、网卡if0接收到数据包。
在本发明实施例中,网卡if0暂无引流配置,因此不对数据包进行处理。此处,网卡if0抓包情况如下:
52:54:5c:81:74:d3>22:8c:36:85:77:26,ethertype IPv4(0x0800),length56:10.67.1.2.49619>10.67.0.1.1001:UDP,length 14
S530、网卡if0p收到数据包,数据包进入网络命名空间。
在本发明实施例中,网卡if0p的引流配置如下:
1)匹配数据包丢弃规则,没有匹配到不引流的规则,所以会继续引流步骤;
2)计算/查询得到数据包路由标记,本发明实施例仅以一个牵引目标为例,因此计算或查询得到的路由对象标识为0x8101;第一个数据包会进行计算,后续的数据包会从连接记录里面查询得到对应的路由对象标识;
3)设置数据包的NAT标记,匹配到目标IP 10.67.0.1是租户网络,源IP是非租户网络,需要进行NAT,设置数据包标记为目标地址NAT。
值得注意的是,此刻这里的数据包标记是“目标地址NAT标记|路由对象标识”,即对两个标记值做或运算:0x9000|0x8101=0x9101。而连接记录中的数据包标记是在第2)步得到路由对象标识的时候设置的,所以连接记录中的数据包标记值是0x8101。
此处,网卡if0p抓包情况如下:
52:54:5c:81:74:d3>22:8c:36:85:77:26,ethertype IPv4(0x0800),length56:10.67.1.2.49619>10.67.0.1.1001:UDP,length 14
S540、根据路由规则查找路由对象标识为0x8101的路由,将数据包发往网卡if.x。
值得注意的是,路由规则是“from all fwmark 0x8101/0x81ff lookup 33025”,意思是当前数据包标记0x9101先和掩码0x81ff做与运算,得到的结果等于0x8101,其与标记0x8101匹配一致,再根据路由规则查找路由对象标识为0x8101的路由。
S550、网卡if.x收到数据包,数据包离开网络命名空间。
在本发明实施例中,匹配到数据包的目标地址NAT标记,修改目标地址为NAT IP即10.67.1.1。
值得注意的是,数据包匹配规则中“mark 0x9000 0x9000”的第一个0x9000是匹配值,第二个0x9000是掩码值,意思是当前数据包标记0x9101先和掩码0x9000做与运算,得到的结果等于0x9000匹配值就算匹配成功。
此处,网卡if.x抓包情况如下:
7a:b3:b3:3b:f8:5a>42:83:bb:bd:21:c4,ethertype IPv4(0x0800),length56:10.67.1.2.49619>10.67.1.1.1001:UDP,length 14
可以看出,经过路由后,数据包的源MAC地址变成了网卡if.x的MAC地址,目标MAC地址变成了云防火墙安全实例的MAC地址。
S560、云防火墙安全实例收到数据包进行安全防护处理,并将数据包原路返回至网卡if.x,数据包进入网络命名空间。
在本发明实施例中,此处的数据包匹配到前面引流配置中的场景2,网卡if.x的具体引流配置如下:
1)匹配到目标IP地址是NAT IP即10.67.1.1;
2)修改目标IP地址为10.67.0.1,恢复成原本的IP地址;修改目标MAC地址为网卡if0的MAC地址;重新计算和修改校验和值;
3)数据包重定向到网卡if0p。
此处,网卡if.x抓包情况如下:
42:83:bb:bd:21:c4>7a:b3:b3:3b:f8:5a,ethertype IPv4(0x0800),length56:10.67.1.2.49619>10.67.1.1.1001:UDP,length 14
S570、网卡if0p收到数据包,数据包离开网络命名空间。
在本发明实施例中,网卡if0p处的数据包离开网络命名空间,暂无引流配置,因此不对数据包进行处理。此处,网卡if0p抓包情况如下:
42:83:bb:bd:21:c4>96:ec:fd:37:04:e9,ethertype IPv4(0x0800),length56:10.67.1.2.49619>10.67.0.1.1001:UDP,length 14
S580、网卡if0收到数据包,数据包进入宿主机,设置所有IP协议的数据包的不引流标记。
此处,网卡if0抓包情况如下:
42:83:bb:bd:21:c4>96:ec:fd:37:04:e9,ethertype IPv4(0x0800),length56:10.67.1.2.49619>10.67.0.1.1001:UDP,length 14
S590、数据包被网桥转发至云主机VM2的网卡tap0,数据包离开宿主机。
在本发明实施例中,网卡tap0的引流配置如下:
1)决定引流模式,匹配到VM1目标MAC地址、目标IP地址会进行引流;
2)决定是否引流,没有匹配到不引流的规则,但是匹配到了“不引流”的标记(S580中设置的),所以不会进行引流。
此处,网卡tap0抓包情况如下:
52:54:5c:81:74:d3>36:61:94:32:cd:55,ethertype IPv4(0x0800),length56:10.67.1.2.49619>10.67.0.1.1001:UDP,length 14
S5100、云主机VM1的网卡eth0收到数据包,处理后作出答复,并将响应数据包发送至网卡tap0,数据包进入宿主机。
在本发明实施例中,在本发明实施例中,网卡tap0的引流配置如下:
1)决定引流模式,匹配到VM1源MAC地址、源IP地址会进行引流;
2)决定是否引流,没有匹配到不引流的规则,所以会进行引流;
3)数据包编辑,修改数据包的目标MAC地址为网卡if0p的MAC地址;
4)数据包重定向,将数据包直接重定向至网卡if0。
S5110、网卡if0收到数据包,并发送给网卡if0p,数据包进入网络命名空间。
在本发明实施例中,网卡if0p的引流配置如下:
1)匹配数据包丢弃规则,没有匹配到不引流的规则,所以会继续引流步骤;
2)查询得到数据包路由标记,从连接记录里面查询得到路由对象标识为0x8101;
3)设置数据包的NAT标记,匹配到源地址是租户网络,目标地址是非租户网络,设置数据包标记为源地址NAT标记。值得注意的是,此刻这里的数据包标记是“源地址NAT标记|路由标记”,即两个标记值做或运算:0xa000|0x8101=0xa101。
此处,网卡if0p抓包情况如下:
36:61:94:32:cd:55>22:8c:36:85:77:26,ethertype IPv4(0x0800),length56:10.67.0.1.1001>10.67.1.2.49619:UDP,length 14
S5120、根据路由规则查找路由对象标识为0x8101的路由,将数据包发往网卡if.x。
S5130、网卡if.x收到数据包,数据包离开网络命名空间。
在本发明实施例中,匹配到数据包的源地址NAT标记,修改源地址为NAT IP即10.67.1.1。此处,网卡if.x抓包情况如下:
7a:b3:b3:3b:f8:5a>42:83:bb:bd:21:c4,ethertype IPv4(0x0800),length56:10.67.1.1.1001>10.67.1.2.49619:UDP,length 14
可以看出,经过路由后,数据包的源MAC地址变成了网卡if.x的MAC地址,目标MAC地址变成了云防火墙安全实例的MAC地址。
S5140、云防火墙安全实例收到数据包进行安全防护处理,并将数据包原路返回至网卡if.x,数据包进入网络命名空间。
在本发明实施例中,网卡if.x的引流配置如下:
1)匹配到源IP地址是10.67.1.1;
2)修改源IP地址为10.67.0.1,恢复成原本的IP地址;修改目标MAC地址为网卡if0的MAC地址;重新计算和修改校验和值;
3)数据包重定向到网卡if0p。
此处,网卡if.x抓包情况如下:
42:83:bb:bd:21:c4>7a:b3:b3:3b:f8:5a,ethertype IPv4(0x0800),length56:10.67.1.1.1001>10.67.1.2.49619:UDP,length 14
S5150、网卡if0p收到数据包,数据包离开网络命名空间。
在本发明实施例中,网卡if0p处的数据包离开网络命名空间,暂无引流配置,因此不对数据包进行处理。此处,网卡if0p抓包情况如下:
42:83:bb:bd:21:c4>96:ec:fd:37:04:e9,ethertype IPv4(0x0800),length56:10.67.0.1.1001>10.67.1.2.49619:UDP,length 14
S5160、网卡if0收到数据包,数据包进入宿主机,设置所有IP协议的数据包的不引流标记。
此处,网卡if0抓包情况如下:
42:83:bb:bd:21:c4>96:ec:fd:37:04:e9,ethertype IPv4(0x0800),length56:10.67.0.1.1001>10.67.1.2.49619:UDP,length 14
S5170、网桥将数据包发给内网网关,内网网关再将数据包发给外面Internet,即外面Internet收到云主机VM1的答复。
本发明实施例的技术方案,具有以下有益效果:1)支持南北向数据包的流量牵引;2)分布式设计,引流模块独立工作,避免了单点故障和高可用问题;3)“NAT IP”的设计可以支持业务主机IP网络冲突的场景;4)流量牵引规则都可以作为主机网络的附加配置,引流的开关操作都不会对现有网络造成影响,且可以定制化配置引流路径;5)流量牵引模块的开关操作对网络链路的连通性无影响,平滑操作;6)牵引目标的切换操作对网络链路的连通性无影响,平滑操作;7)不需要通过大量的连接记录以及对应的网络配置来实现流量的牵引,能够减少占用系统内存和算力,降低技术人员的维护成本。
实施例六
图7为本发明实施例六提供的一种流量牵引的配置装置的结构示意图。如图7所示,该装置包括:
路径确定模块61,用于根据预设引流模式确定数据包的引流路径。
标记设置模块62,用于按照引流路径为数据包设置数据包标记。
第一引流模块63,用于根据数据包标记和预设路由规则牵引数据包至牵引目标进行处理。
第二引流模块64,用于根据数据包标记和预设路由规则牵引处理后的数据包至目标地址。
本发明实施例的技术方案,通过路径确定模块根据预设引流模式确定数据包的引流路径,标记设置模块按照引流路径为数据包设置数据包标记,第一引流模块根据数据包标记和预设路由规则牵引数据包至牵引目标进行处理,第二引流模块根据数据包标记和预设路由规则牵引处理后的数据包至目标地址。本发明实施例通过按照引流路径为数据包设置数据包标记,以及根据数据包标记和预设路由规则将数据包先后牵引至牵引目标和目标地址,支持多种流量牵引模式,不需要通过大量的连接记录以及对应的网络配置来实现流量的牵引,减少占用系统内存和算力,降低技术人员的维护成本。
进一步地,在上述发明实施例的基础上,预设引流模式至少包括东西向引流模式和南北向引流模式,路径确定模块61包括:
地址查询单元,用于按照预设引流模式在预设路由配置文件中查询数据包的源地址和目标地址。
引流路径设置单元,用于按照源地址和目标地址设置引流路径。
进一步地,在上述发明实施例的基础上,标记设置模块62包括:
业务需求获取单元,用于获取对应数据包的业务需求。
数据包标记设置单元,用于按照引流路径以及业务需求设置数据包的数据包标记。
进一步地,在上述发明实施例的基础上,数据包标记的置位情况包括以下至少之一:
在第一标识位被置位的情况下,表示数据包已经过牵引目标处理;
在第二标识位被置位的情况下,表示数据包不引流;
在第三标识位被置位的情况下,表示数据包进行源地址转换;
在第四标识位被置位的情况下,表示数据包进行目标地址转换;
在第五标识位被置位的情况下,表示数据包进行引流,且仅适用于南北向引流模式;
在第六标识位至第七标识位被置位的情况下,表示预留位;
在第八标识位被置位的情况下,表示路由对象;
在第九标识位至第十六标识位被置位的情况下,表示牵引目标的编号。
进一步地,在上述发明实施例的基础上,第一引流模块63包括:
命名空间确定单元,用于确定牵引目标关联的网络命名空间。
第一重定向单元,用于按照数据包标记将数据包重定向至网络命名空间的第一网卡,并经过第一网卡将数据包发送至网络命名空间内的第二网卡。
路由对象标识查找单元,用于在预设路由规则内查找数据包标记匹配的路由对象标识。
目的地址修改单元,用于按照路由对象标识修改第二网卡处的数据包的目标地址。
第一数据包传输单元,用于基于修改后的目标地址将数据包传输至牵引目标。
进一步地,在上述发明实施例的基础上,第二引流模块64包括:
目标地址确定单元,用于确定处理后的数据包的目标地址。
第二重定向单元,用于按照数据包标记将数据包重定向至网络命名空间内的第二网卡,并经过第二网卡将数据包发送至第一网卡。
不引流标识位设置单元,用于对第一网卡处的数据包设置不引流标识位。
第二数据包传输单元,用于按照数据包标记将设置不引流标识位的数据包传输至目标地址。
进一步地,在上述发明实施例的基础上,第一网卡和第二网卡属于一对虚拟以太网接口类型的网络设备。
本发明实施例所提供的流量牵引的配置装置可执行本发明任意实施例所提供的流量牵引的配置方法,具备执行方法相应的功能模块和有益效果。
实施例七
图8示出了可以用来实施本发明的实施例的电子设备70的结构示意图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备(如头盔、眼镜、手表等)和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本发明的实现。
如图8所示,电子设备70包括至少一个处理器71,以及与至少一个处理器71通信连接的存储器,如只读存储器(ROM)72、随机访问存储器(RAM)73等,其中,存储器存储有可被至少一个处理器执行的计算机程序,处理器71可以根据存储在只读存储器(ROM)72中的计算机程序或者从存储单元78加载到随机访问存储器(RAM)73中的计算机程序,来执行各种适当的动作和处理。在RAM 73中,还可存储电子设备70操作所需的各种程序和数据。处理器71、ROM 72以及RAM 73通过总线74彼此相连。输入/输出(I/O)接口75也连接至总线74。
电子设备70中的多个部件连接至I/O接口75,包括:输入单元76,例如键盘、鼠标等;输出单元77,例如各种类型的显示器、扬声器等;存储单元78,例如磁盘、光盘等;以及通信单元79,例如网卡、调制解调器、无线通信收发机等。通信单元79允许电子设备70通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
处理器71可以是各种具有处理和计算能力的通用和/或专用处理组件。处理器71的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的处理器、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。处理器71执行上文所描述的各个方法和处理,例如流量牵引的配置方法。
在一些实施例中,流量牵引的配置方法可被实现为计算机程序,其被有形地包含于计算机可读存储介质,例如存储单元78。在一些实施例中,计算机程序的部分或者全部可以经由ROM 72和/或通信单元79而被载入和/或安装到电子设备70上。当计算机程序加载到RAM 73并由处理器71执行时,可以执行上文描述的流量牵引的配置方法的一个或多个步骤。备选地,在其他实施例中,处理器71可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行流量牵引的配置方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本发明的方法的计算机程序可以采用一个或多个编程语言的任何组合来编写。这些计算机程序可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,使得计算机程序当由处理器执行时使流程图和/或框图中所规定的功能/操作被实施。计算机程序可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本发明的上下文中,计算机可读存储介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的计算机程序。计算机可读存储介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。备选地,计算机可读存储介质可以是机器可读信号介质。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在电子设备上实施此处描述的系统和技术,该电子设备具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给电子设备。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、区块链网络和互联网。
计算系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务中,存在的管理难度大,业务扩展性弱的缺陷。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发明中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本发明的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。

Claims (10)

1.一种流量牵引的配置方法,其特征在于,所述方法包括:
根据预设引流模式确定数据包的引流路径;
按照所述引流路径为所述数据包设置数据包标记;
根据所述数据包标记和预设路由规则牵引所述数据包至牵引目标进行处理;
根据所述数据包标记和所述预设路由规则牵引所述处理后的所述数据包至目标地址。
2.根据权利要求1所述的方法,其特征在于,所述预设引流模式至少包括东西向引流模式和南北向引流模式,所述根据预设引流模式确定数据包的引流路径,包括:
按照所述预设引流模式在预设路由配置文件中查询所述数据包的源地址和目标地址;
按照所述源地址和所述目标地址设置所述引流路径。
3.根据权利要求1所述的方法,其特征在于,所述按照所述引流路径为所述数据包设置数据包标记,包括:
获取对应所述数据包的业务需求;
按照所述引流路径以及所述业务需求设置所述数据包的所述数据包标记。
4.根据权利要求3所述的方法,其特征在于,所述数据包标记的置位情况包括以下至少之一:
在第一标识位被置位的情况下,表示所述数据包已经过所述牵引目标处理;
在第二标识位被置位的情况下,表示所述数据包不引流;
在第三标识位被置位的情况下,表示所述数据包进行源地址转换;
在第四标识位被置位的情况下,表示所述数据包进行目标地址转换;
在第五标识位被置位的情况下,表示所述数据包进行引流,且仅适用于南北向引流模式;
在第六标识位至第七标识位被置位的情况下,表示预留位;
在第八标识位被置位的情况下,表示路由对象;
在第九标识位至第十六标识位被置位的情况下,表示所述牵引目标的编号。
5.根据权利要求1所述的方法,其特征在于,所述根据所述数据包标记和预设路由规则牵引所述数据包至牵引目标进行处理,包括:
确定所述牵引目标关联的网络命名空间;
按照所述数据包标记将所述数据包重定向至所述网络命名空间的第一网卡,并经过所述第一网卡将所述数据包发送至所述网络命名空间内的第二网卡;
在所述预设路由规则内查找所述数据包标记匹配的路由对象标识;
按照所述路由对象标识修改所述第二网卡处的所述数据包的所述目标地址;
基于所述修改后的目标地址将所述数据包传输至所述牵引目标。
6.根据权利要求1所述的方法,其特征在于,所述根据所述数据包标记和所述预设路由规则牵引所述处理后的所述数据包至目标地址,包括:
确定所述处理后的所述数据包的所述目标地址;
按照所述数据包标记将所述数据包重定向至所述网络命名空间内的所述第二网卡,并经过所述第二网卡将所述数据包发送至所述第一网卡;
对所述第一网卡处的所述数据包设置不引流标识位;
按照所述数据包标记将设置不引流标识位的所述数据包传输至所述目标地址。
7.根据权利要求5或6所述的方法,其特征在于,所述第一网卡和所述第二网卡属于一对虚拟以太网接口类型的网络设备。
8.一种流量牵引的配置装置,其特征在于,所述装置包括:
路径确定模块,用于根据预设引流模式确定数据包的引流路径;
标记设置模块,用于按照所述引流路径为所述数据包设置数据包标记;
第一引流模块,用于根据所述数据包标记和预设路由规则牵引所述数据包至牵引目标进行处理;
第二引流模块,用于根据所述数据包标记和所述预设路由规则牵引所述处理后的所述数据包至目标地址。
9.一种电子设备,其特征在于,所述电子设备包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-7中任一项所述的流量牵引的配置方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现权利要求1-7中任一项所述的流量牵引的配置方法。
CN202310519527.4A 2023-05-09 2023-05-09 一种流量牵引的配置方法、装置、电子设备和存储介质 Pending CN116489082A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310519527.4A CN116489082A (zh) 2023-05-09 2023-05-09 一种流量牵引的配置方法、装置、电子设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310519527.4A CN116489082A (zh) 2023-05-09 2023-05-09 一种流量牵引的配置方法、装置、电子设备和存储介质

Publications (1)

Publication Number Publication Date
CN116489082A true CN116489082A (zh) 2023-07-25

Family

ID=87223166

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310519527.4A Pending CN116489082A (zh) 2023-05-09 2023-05-09 一种流量牵引的配置方法、装置、电子设备和存储介质

Country Status (1)

Country Link
CN (1) CN116489082A (zh)

Similar Documents

Publication Publication Date Title
US11625154B2 (en) Stage upgrade of image versions on devices in a cluster
CN109952746B (zh) 在业务链网络环境中集成物理和虚拟网络功能
US20210409315A1 (en) Packet processing method and apparatus, device, and system
EP3300319B1 (en) Distributing service function chain data and service function instance data in a network
EP3304815B1 (en) Operations, administration and management (oam) in overlay data center environments
US9654395B2 (en) SDN-based service chaining system
US9614739B2 (en) Defining service chains in terms of service functions
EP3017569B1 (en) Virtual network
US11979322B2 (en) Method and apparatus for providing service for traffic flow
EP3282649B1 (en) Data packet forwarding
US9197549B2 (en) Server load balancer traffic steering
EP2544409B1 (en) Generic monitoring packet handling mechanism for OpenFlow 1.1
US10375193B2 (en) Source IP address transparency systems and methods
US20160301603A1 (en) Integrated routing method based on software-defined network and system thereof
CN113691448B (zh) SRv6业务链中转发报文的方法、SFF及SF设备
EP3673628A1 (en) Specifying and utilizing paths through a network
US20110026527A1 (en) Tag-based interface between a switching device and servers for use in frame processing and forwarding
US8675669B2 (en) Policy homomorphic network extension
JP6222505B2 (ja) 入力パラメータを生成するための方法および装置
CN112311672B (zh) 一种路由表项获得方法、装置及设备
CN116489082A (zh) 一种流量牵引的配置方法、装置、电子设备和存储介质
US20180217860A1 (en) Integrated network data collection apparatus and method
EP3975491A1 (en) Application identification and path selection at a wireless access point for local network traffic breakout
CN114401222A (zh) 一种基于策略路由的数据转发方法、装置及存储介质
CN111092772B (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