WO2023116268A1 - 网络隔离方法和系统及代理设备 - Google Patents

网络隔离方法和系统及代理设备 Download PDF

Info

Publication number
WO2023116268A1
WO2023116268A1 PCT/CN2022/132152 CN2022132152W WO2023116268A1 WO 2023116268 A1 WO2023116268 A1 WO 2023116268A1 CN 2022132152 W CN2022132152 W CN 2022132152W WO 2023116268 A1 WO2023116268 A1 WO 2023116268A1
Authority
WO
WIPO (PCT)
Prior art keywords
proxy device
data packet
network
slice
switch
Prior art date
Application number
PCT/CN2022/132152
Other languages
English (en)
French (fr)
Inventor
张昊迪
王帅
金华敏
邓晓东
汪来富
Original Assignee
中国电信股份有限公司
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 中国电信股份有限公司 filed Critical 中国电信股份有限公司
Publication of WO2023116268A1 publication Critical patent/WO2023116268A1/zh

Links

Images

Classifications

    • 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

Definitions

  • the present disclosure relates to the field of network and information security, in particular to a network isolation method, a network isolation system and proxy equipment.
  • Layer 2 network isolation generally uses technologies such as VLAN (Virtual Local Area Network, virtual local area network) or VXLAN (Virtual eXtensible Local Area Network, virtual extended local area network), GRE (Generic Routing Encapsulation) general routing encapsulation. Due to the limited number of supported VLANs, VXLAN or GRE technologies are used in scenarios such as private clouds or public clouds. VXLAN or GRE technology is a layer outside the transport layer, which involves unpacking and unpacking, which affects network efficiency.
  • VLAN Virtual Local Area Network, virtual local area network
  • VXLAN Virtual eXtensible Local Area Network, virtual extended local area network
  • GRE Generic Routing Encapsulation
  • Some embodiments of the present disclosure propose a network isolation method, including: the proxy device receives the first data packet sent by the switch; the proxy device determines the network slice corresponding to the first data packet according to the flow space, and the flow space defines the network slice corresponding to the data flow Network slicing to build an isolated logical network; the proxy device rewrites the matching field content of the field that can identify different network slices in the first data packet; the proxy device sends the rewritten first data packet to the first data packet The slice controller corresponding to the network slice corresponding to the packet.
  • the network isolation method further includes: the proxy device receives the second data packet sent by the slice controller; the proxy device rewrites the second data packet according to the corresponding network slice of the slice controller, so that after rewriting The second data packet has a field capable of identifying different network slices; the proxy device sends the rewritten second data packet to a corresponding switch.
  • the proxy device rewriting the content of the matching field of the field capable of identifying different network slices in the first data packet includes: the proxy device rewriting the content of the matching field of the field capable of identifying different network slices in the first data packet The content is rewritten to the information of the proxy device.
  • the proxy device rewrites the content of the matching field of the field capable of identifying different network slices in the first data packet into the information of the proxy device, including: the proxy device writes the source IP address, the source port in the first data packet No., the matching domain content of at least one field in the source MAC address, at least one in the IP address, the port number, the MAC address of the switch, is rewritten as at least one of the IP address, the port number, and the MAC address of the proxy device.
  • the proxy device before the proxy device sends the rewritten first data packet to the slice controller corresponding to the network slice corresponding to the first data packet, the destination IP address, destination port number, The matching domain content of at least one field in the destination MAC address is rewritten by at least one of the IP address, port number, and MAC address of the proxy device as the IP address of the slice controller corresponding to the network slice corresponding to the first data packet, At least one of port number and MAC address.
  • the proxy device rewrites the second data packet according to the corresponding network slice of the slice controller, so that the rewritten second data packet has a field capable of identifying different network slices, including: the proxy device rewrites the second The content of the matching field of at least one field in the destination IP address, the destination port number and the destination MAC address in the data packet is rewritten as the IP address, the port number and the MAC address of the proxy device as the IP address, At least one of port number and MAC address.
  • the matching of at least one field in the source IP address, source port number, and source MAC address in the second data packet Domain content is rewritten from at least one of the slice controller's IP address, port number, and MAC address to at least one of the proxy device's IP address, port number, and MAC address.
  • the first data packet sent by the switch is a data packet for requesting a flow table
  • the second data packet sent by the slice controller is a data packet for delivering a flow table
  • the network isolation method further includes: the proxy device receives the symmetric message sent by the switch, if the target proxy device corresponding to the switch is the current proxy device, checks whether there is a corresponding network slice, and if so, converts the symmetric message of the switch to Sent to the corresponding slice controller of the network slice.
  • the network isolation method further includes: if the target proxy device corresponding to the switch is not the current proxy device, flooding the symmetric message of the switch to all proxy devices, and the target proxy device corresponding to the switch checks whether there is a corresponding network The slice, if present, sends the switch's symmetric message to the slice controller corresponding to the network slice.
  • the network isolation method further includes: the proxy device receives the symmetric message sent by the slice controller, and sends the symmetric message of the slice controller to a switch corresponding to the network slice according to the network slice corresponding to the slice controller.
  • the network isolation method further includes: when the logical network where the switch is located is changed, the proxy device synchronously updates the data stored in the proxy device on the network slice to which the switch belongs according to the network slice corresponding to the latest slice controller after the change .
  • the network isolation method further includes: the proxy device receives the third data packet sent by the switch, and sends the third data packet to the destination corresponding to the corresponding network slice according to the flow table, so as to reduce the need for the slice controller to real-time Processed control flow.
  • Some embodiments of the present disclosure propose a proxy device, including: a memory; and a processor coupled to the memory, where the processor is configured to perform the network isolation of various embodiments based on instructions stored in the memory method.
  • Some embodiments of the present disclosure provide a network isolation system, including a switch, a slice controller, and a proxy device, wherein the switch is connected to the proxy device in communication, and the proxy device is connected to the slice controller in communication.
  • Some embodiments of the present disclosure provide a non-transitory computer-readable storage medium on which a computer program is stored, and when the program is executed by a processor, the steps of the network isolation method of each embodiment are implemented.
  • Fig. 1 shows a schematic flowchart of a network isolation method in some embodiments of the present disclosure.
  • Fig. 2 shows a schematic flowchart of a network isolation method in some other embodiments of the present disclosure.
  • FIG. 3 shows a schematic diagram of a network isolation system of some embodiments of the present disclosure.
  • Fig. 4 shows a schematic diagram of a proxy device of some embodiments of the present disclosure.
  • the proxy device plays the role of the slice controller for the switch, and takes the role of the switch for the slice controller.
  • Each proxy device defines its own flow space.
  • the switch is, for example, an OpenFlow switch.
  • the proxy device is, for example, an OpenFlow proxy device.
  • the slice controller is, for example, an SDN (Software-defined Networking, software-defined network) controller, which may be referred to as a controller for short.
  • the flow table delivered by the slice controller is, for example, an OpenFlow flow table. OpenFlow is a network communication protocol.
  • the embodiment of the present disclosure is based on the agent, realizes the update and improvement of network isolation, omits the related operation of the virtual network bridge on the VLAN, and avoids the performance loss of VXLAN or GRE conversion.
  • decoupling the network isolation from the controller reduces the complexity of the controller's network management (such as flow table operation and troubleshooting), and simplifies the slice controller's management of real-time control flow.
  • Fig. 1 shows a schematic flowchart of a network isolation method in some embodiments of the present disclosure.
  • the network isolation method of this embodiment includes the following steps.
  • Step 110 the proxy device receives the first data packet sent by the switch.
  • the first data packet sent by the switch is, for example, a data packet requesting a flow table.
  • the proxy device takes the role of the controller for the switch, and when the switch finds no match, it sends a data packet requesting the flow table to the proxy device.
  • Step 120 the proxy device searches for a match in its own flow space to determine whether the network slice corresponding to the first data packet can be determined according to its own flow space. If there is no match, the proxy device may drop the first packet. If it matches, that is, the proxy device determines the network slice corresponding to the first data packet according to the flow space, and rewrites the content of the matching field of the field capable of identifying different network slices in the first data packet.
  • the flow space defines the network slice corresponding to the data flow, and different data flows correspond to different network slices to build an isolated logical network.
  • the flow space can be constructed according to the network topology before interconnection, and the proxy device uses the flow space to slice the traffic.
  • the proxy device synchronously updates the data stored in the proxy device on the network slice to which the switch belongs according to the network slice corresponding to the latest slice controller after the change.
  • the proxy device can first convert the first data packet into an ofmatch data structure, and then match the entries in its own flow space. If there is no matching item, it can notify the controller to discard the first data packet. If there is a matching item, then Get the action list and execute the corresponding command.
  • the proxy device rewriting the content of the matching field of the field capable of identifying different network slices in the first data packet includes: the proxy device rewriting the content of the matching field of the field capable of identifying different network slices in the first data packet The content is rewritten to the information of the proxy device.
  • the proxy device rewrites the content of the matching field of the field that can identify different network slices in the first data packet into the information of the proxy device, including: the proxy device converts the source IP (Internet Protocol, Internet interconnection protocol) address, source port number, source MAC (Media Access Control, media access control) address in the matching domain content of at least one field, by at least one in the IP address, port number, MAC address of switch, repeat It is written as at least one of the IP address, port number, and MAC address of the proxy device.
  • IP Internet Protocol, Internet interconnection protocol
  • source MAC Media Access Control, media access control
  • the proxy device before the proxy device sends the rewritten first data packet to the slice controller corresponding to the network slice corresponding to the first data packet, the destination IP address and destination port number in the first data packet , the content of the matching field of at least one field in the destination MAC address is rewritten by at least one of the IP address, port number, and MAC address of the proxy device to the IP address of the slice controller corresponding to the network slice corresponding to the first data packet At least one of , port number, and MAC address.
  • Step 130 the proxy device sends the rewritten first data packet to the slice controller corresponding to the network slice corresponding to the first data packet.
  • the slice controller only obtains the switch information in the network slice it is responsible for, reducing the complexity of the network management work of the slice controller and simplifying
  • the slice controller manages the real-time control flow.
  • Step 140 after the slice controller receives the flow table request, it sends the corresponding flow table according to the global topology of the flow space, the data packet of the flow table is called the second data packet, and the proxy device receives the second data pack.
  • Step 150 The proxy device rewrites the second data packet after matching its own flow space according to the network slice corresponding to the slice controller, so that the rewritten second data packet has a field capable of identifying different network slices.
  • the proxy device rewriting the second data packet so that the rewritten second data packet has fields capable of identifying different network slices includes: the proxy device, according to the corresponding network slice of the slice controller, through its own After the flow space is matched, at least one of the IP address, the port number, and the MAC address of the proxy device is used to match the content of the matching domain of at least one field in the destination IP address, the destination port number, and the destination MAC address in the second data packet, Rewrite as at least one of the IP address, port number, and MAC address of the switch.
  • the source IP address, source port number, and source MAC address in at least one field in the second data packet
  • the content of the matching field is rewritten from at least one of the slice controller's IP address, port number, and MAC address to at least one of the proxy device's IP address, port number, and MAC address.
  • step 160 the proxy device sends the rewritten second data packet to a corresponding switch after matching through its own flow space, so that the switch obtains a flow table.
  • the switch can obtain the flow table of its corresponding flow space.
  • the proxy device intercepts the data packets between the switch and the controller, and completes network isolation through message rewriting.
  • Each controller only manages the global policy flow table of its own slice space, without frequent modification, improving management efficiency.
  • the embodiment shown in Figure 1 can be executed to obtain the flow table; otherwise, the embodiment shown in Figure 2 can be executed first, so that the switch and the slice controller Each obtains the information of the node devices in its own flow space, and then executes the embodiment shown in FIG. 1 to obtain the flow table.
  • Fig. 2 shows a schematic flowchart of a network isolation method in some other embodiments of the present disclosure.
  • the network isolation method of this embodiment includes the following steps.
  • Step 210 the proxy device receives the symmetric message sent by the switch.
  • the symmetric message is, for example, a link discovery message, such as an LLDP (Link Layer Discovery Protocol, Link Layer Discovery Protocol) message.
  • LLDP Link Layer Discovery Protocol, Link Layer Discovery Protocol
  • Link discovery sends messages to other nodes through nodes in the network, so that other nodes know the existence of their own nodes.
  • a node can send its own processing capability, management address, device identifier, interface identifier, etc. to other directly connected nodes in encapsulated form.
  • Step 220 if the target proxy device corresponding to the switch is the current proxy device, the current proxy device checks whether there is a corresponding network slice according to its own flow space, and if so, sends the symmetric message of the switch to the slice controller corresponding to the network slice, so that The slice controller is notified of the existence of the switch.
  • Step 230 if the target proxy device corresponding to the switch is not the current proxy device, the current proxy device floods the symmetric message of the switch to all proxy devices, and the target proxy device corresponding to the switch searches whether there is a corresponding network slice according to its own flow space, If it exists, send the symmetric message of the switch to the slice controller corresponding to the network slice, so that the slice controller knows the existence of the switch.
  • Step 240 the proxy device receives the symmetric message sent by the slice controller.
  • the symmetric message is, for example, a link discovery message, such as an LLDP message.
  • Step 250 the proxy device sends the symmetric message of the slice controller to the switch corresponding to the flow space of the network slice according to the flow space of the network slice corresponding to the slice controller, so that the switch knows the existence of the slice controller.
  • the switch and the slice controller are respectively informed of the information of the node devices in their own flow spaces.
  • the proxy device receives the third data packet sent by the switch, If the corresponding flow table entry can be matched, the third data packet is sent to the destination corresponding to the corresponding network slice according to the flow table, so as to reduce the control flow that needs to be processed by the slice controller in real time.
  • the traffic in the network is matched with slices according to the flow space to realize coarse-grained network isolation.
  • the network traffic is forwarded according to the flow table issued by the slice controller to realize fine-grained network isolation.
  • the network isolation technology disclosed in the present disclosure may be applied to network isolation in the process of interconnection and intercommunication of heterogeneous network shooting ranges, for example.
  • Cyber Range is a technology or product that simulates and reproduces the network architecture, system equipment, business process operating status and operating environment in real cyberspace based on virtualization technology, so as to more effectively realize the Network security-related learning, research, testing, competitions, exercises and other behaviors, so as to improve the level of network security confrontation of personnel and institutions.
  • network isolation is required during the interconnection and intercommunication of heterogeneous shooting ranges or shooting ranges.
  • FIG. 3 shows a schematic diagram of a network isolation system of some embodiments of the present disclosure.
  • the network isolation system of this embodiment includes: a switch 300 , a proxy device 400 , and a slice controller 500 , wherein the switch communicates with the proxy device, and the proxy device communicates with the slice controller. That is, a proxy device is set between the switch and the slice controller, the proxy device plays the role of the slice controller for the switch, and takes the role of the switch for the slice controller.
  • Fig. 4 shows a schematic diagram of a proxy device of some embodiments of the present disclosure.
  • the agent device 400 of this embodiment includes: a memory 410 and a processor 420 coupled to the memory 410, the processor 420 is configured to execute any of the foregoing embodiments based on instructions stored in the memory 410
  • the processor 420 is configured to execute any of the foregoing embodiments based on instructions stored in the memory 410
  • For the network isolation method in refer to the foregoing embodiments for details, and details are not repeated here.
  • the memory 410 may include, for example, a system memory, a fixed non-volatile storage medium, and the like.
  • the system memory stores, for example, an operating system, an application program, a boot loader (Boot Loader) and other programs.
  • the processor 420 can be a general-purpose processor, a digital signal processor (Digital Signal Processor, DSP), an application-specific integrated circuit (Application Specific Integrated Circuit, ASIC), a field programmable gate array (Field Programmable Gate Array, FPGA) or It can be realized by discrete hardware components such as other programmable logic devices, discrete gates or transistors.
  • DSP Digital Signal Processor
  • ASIC Application Specific Integrated Circuit
  • FPGA Field Programmable Gate Array
  • FPGA Field Programmable Gate Array
  • the agent device 400 may also include an input and output interface 430, a network interface 440, a storage interface 450, and the like. These interfaces 430 , 440 , 450 and the memory 410 and the processor 420 may be connected through a bus 460 , for example.
  • the input and output interface 430 provides a connection interface for input and output devices such as a display, a mouse, a keyboard, and a touch screen.
  • the network interface 440 provides connection interfaces for various networked devices.
  • the storage interface 450 provides connection interfaces for external storage devices such as SD cards and U disks.
  • Bus 460 may use any of a variety of bus structures.
  • the bus structure includes but is not limited to an Industry Standard Architecture (Industry Standard Architecture, ISA) bus, a Micro Channel Architecture (Micro Channel Architecture, MCA) bus, and a Peripheral Component Interconnect (PCI) bus.
  • Industry Standard Architecture Industry Standard Architecture
  • MCA Micro Channel Architecture
  • PCI Peripheral Component Inter
  • the embodiments of the present disclosure provide a non-transitory computer-readable storage medium, on which a computer program is stored, and when the program is executed by a processor, the steps of the network isolation method of each embodiment are implemented.
  • the embodiments of the present disclosure may be provided as methods, systems, or computer program products. Accordingly, the present disclosure can take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present disclosure may take the form of a computer program product embodied on one or more non-transitory computer-readable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) having computer program code embodied therein. .
  • These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing apparatus to operate in a specific manner, such that the instructions stored in the computer-readable memory produce an article of manufacture comprising instruction means, the instructions
  • the device realizes the function specified in one or more procedures of the flowchart and/or one or more blocks of the block diagram.

Landscapes

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

Abstract

本公开提出一种网络隔离方法和系统及代理设备,涉及网络与信息安全领域。代理设备接收交换机发送的第一数据包;代理设备根据流空间确定第一数据包对应的网络切片,所述流空间定义了数据流对应的网络切片,以构建隔离的逻辑网络;代理设备对第一数据包中的能够识别不同网络切片的字段的匹配域内容进行重写;代理设备将重写后的第一数据包发送给第一数据包对应的网络切片对应的切片控制器。基于代理,实现网络隔离的更新与改进,省去了虚拟网桥对VLAN的相关操作,避免了VXLAN或者GRE转换的性能损耗,还简化了切片控制器对实时控制流的管理。

Description

网络隔离方法和系统及代理设备
相关申请的交叉引用
本申请是以CN申请号为202111589872.2,申请日为2021年12月23日的申请为基础,并主张其优先权,该CN申请的公开内容在此作为整体引入本申请中。
技术领域
本公开涉及网络与信息安全领域,特别涉及一种网络隔离方法、网络隔离系统及代理设备。
背景技术
目前二层网络隔离一般使用VLAN(Virtual Local Area Network,虚拟局域网)或者VXLAN(Virtual eXtensible Local Area Network,虚拟扩展局域网)、GRE(Generic Routing Encapsulation)通用路由封装等技术。由于VLAN支持数量有限,因此在私有云或者公有云等场景中,使用VXLAN或GRE技术。VXLAN或者GRE技术是在传输层外又包一层,涉及到拆包解包问题,影响网络效率。
发明内容
本公开一些实施例提出一种网络隔离方法,包括:代理设备接收交换机发送的第一数据包;代理设备根据流空间确定第一数据包对应的网络切片,所述流空间定义了数据流对应的网络切片,以构建隔离的逻辑网络;代理设备对第一数据包中的能够识别不同网络切片的字段的匹配域内容进行重写;代理设备将重写后的第一数据包发送给第一数据包对应的网络切片对应的切片控制器。
在一些实施例中,该网络隔离方法还包括:代理设备接收切片控制器发送的第二数据包;代理设备根据切片控制器相应的网络切片,对第二数据包进行重写,使得重写后的第二数据包具有能够识别不同网络切片的字段;代理设备将重写后的第二数据包发送给相应的交换机。
在一些实施例中,代理设备对第一数据包中的能够识别不同网络切片的字段的匹配域内容进行重写包括:代理设备将第一数据包中的能够识别不同网络切片的字段的匹配域内容重写为代理设备的信息。
在一些实施例中,代理设备将第一数据包中的能够识别不同网络切片的字段的匹配域内容重写为代理设备的信息包括:代理设备将第一数据包中的源IP地址、源端口号、源MAC地址中的至少一个字段的匹配域内容,由交换机的IP地址、端口号、MAC地址中的至少一个,重写为代理设备的IP地址、端口号、MAC地址中的至少一个。
在一些实施例中,代理设备在将重写后的第一数据包发送给第一数据包对应的网络切片对应的切片控制器之前,将第一数据包中的目的IP地址、目的端口号、目的MAC地址中的至少一个字段的匹配域内容,由代理设备的IP地址、端口号、MAC地址中的至少一个,重写为第一数据包对应的网络切片对应的切片控制器的IP地址、端口号、MAC地址中的至少一个。
在一些实施例中,代理设备根据切片控制器相应的网络切片,对第二数据包进行重写,使得重写后的第二数据包具有能够识别不同网络切片的字段包括:代理设备将第二数据包中的目的IP地址、目的端口号、目的MAC地址中的至少一个字段的匹配域内容,由代理设备的IP地址、端口号、MAC地址中的至少一个,重写为交换机的IP地址、端口号、MAC地址中的至少一个。
在一些实施例中,代理设备在将重写后的第二数据包发送给相应的交换机之前,将第二数据包中的源IP地址、源端口号、源MAC地址中的至少一个字段的匹配域内容,由切片控制器的IP地址、端口号、MAC地址中的至少一个,重写为代理设备的IP地址、端口号、MAC地址中的至少一个。
在一些实施例中,交换机发送的第一数据包为请求流表的数据包,切片控制器发送的第二数据包为下发流表的数据包。
在一些实施例中,该网络隔离方法还包括:代理设备接收交换机发送的对称消息,如果交换机对应的目标代理设备是当前代理设备,查找是否存在相应的网络切片,如果存在,将交换机的对称消息发送到网络切片相应的切片控制器。
在一些实施例中,该网络隔离方法还包括:如果交换机对应的目标代理设备不是当前代理设备,将交换机的对称消息泛洪给所有代理设备,由交换机对应的目标代理设备查找是否存在相应的网络切片,如果存在,将交换机的对称消息发送到网络切片相应的切片控制器。
在一些实施例中,该网络隔离方法还包括:代理设备接收切片控制器发送的对称消息,根据切片控制器相应的网络切片,将切片控制器的对称消息发送到网络切片相应的交换机。
在一些实施例中,该网络隔离方法还包括:当交换机所在逻辑网络变更时,代理设备根据变更后的最新切片控制器相应的网络切片,同步更新代理设备中存储的交换机所属的网络切片的数据。
在一些实施例中,该网络隔离方法还包括:代理设备接收交换机发送的第三数据包,根据流表将第三数据包发送给对应的网络切片对应的目的地,以减少需要切片控制器实时处理的控制流。
本公开一些实施例提出一种代理设备,包括:存储器;以及耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器中的指令,执行各实施例的网络隔离方法。
本公开一些实施例提出一种网络隔离系统,包括交换机,切片控制器,以及代理设备,其中,交换机与代理设备通信连接,代理设备与切片控制器通信连接。
本公开一些实施例提出一种非瞬时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现各实施例的网络隔离方法的步骤。
附图说明
下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍。根据下面参照附图的详细描述,可以更加清楚地理解本公开。
显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1示出本公开一些实施例的网络隔离方法的流程示意图。
图2示出本公开另一些实施例的网络隔离方法的流程示意图。
图3示出本公开一些实施例的网络隔离系统的示意图。
图4示出本公开一些实施例的代理设备的示意图。
具体实施方式
下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述。
除非特别说明,否则,本公开中的“第一”“第二”等描述用来区分不同的对象,并不用来表示大小或时序等含义。
在交换机与切片控制器之间设置代理设备。代理设备对于交换机为切片控制器的 角色,对于切片控制器为交换机的角色。每个代理设备会定义自身的流空间。交换机例如为OpenFlow交换机。代理设备例如为OpenFlow代理设备。切片控制器例如为SDN(Software-defined Networking,软件定义网络)控制器,可简称控制器。切片控制器下发的流表例如为OpenFlow流表。OpenFlow是一种网络通信协议。
本公开实施例基于代理,实现网络隔离的更新与改进,省去了虚拟网桥对VLAN的相关操作,避免了VXLAN或者GRE转换的性能损耗。此外,将网络隔离从控制器中解耦,减少控制器的网络管理(如流表操作和问题排查)的复杂性,简化了切片控制器对实时控制流的管理。
图1示出本公开一些实施例的网络隔离方法的流程示意图。
如图1所示,该实施例的网络隔离方法包括以下步骤。
步骤110,代理设备接收交换机发送的第一数据包。
交换机发送的第一数据包例如为请求流表的数据包。代理设备对于交换机为控制器的角色,交换机发现没有匹配时,向代理设备发送请求流表的数据包。
步骤120,代理设备在自身的流空间查询匹配,以判断根据自身的流空间是否能够确定第一数据包对应的网络切片。如果不匹配,代理设备可以丢弃第一数据包。如果匹配,即代理设备根据流空间确定第一数据包对应的网络切片,对第一数据包中的能够识别不同网络切片的字段的匹配域内容进行重写。
其中,流空间定义了数据流对应的网络切片,不同的数据流对应不同的网络切片,以构建隔离的逻辑网络。可以根据互联互通前的网络拓扑构建流空间,代理设备使用流空间将流量切片。当交换机所在逻辑网络变更时,代理设备根据变更后的最新切片控制器相应的网络切片,同步更新代理设备中存储的交换机所属的网络切片的数据。
代理设备可以先将第一数据包转换为ofmatch数据结构,然后再与自身的流空间内的条目进行匹配,如果没有匹配项,可以通知控制器丢弃该第一数据包,如果有匹配项,那么获取动作列表,执行相应指令。
在一些实施例中,代理设备对第一数据包中的能够识别不同网络切片的字段的匹配域内容进行重写包括:代理设备将第一数据包中的能够识别不同网络切片的字段的匹配域内容重写为代理设备的信息。
在一些实施例中,代理设备将第一数据包中的能够识别不同网络切片的字段的匹配域内容重写为代理设备的信息包括:代理设备将第一数据包中的源IP(Internet Protocol,网际互连协议)地址、源端口号、源MAC(Media Access Control,介质 访问控制)地址中的至少一个字段的匹配域内容,由交换机的IP地址、端口号、MAC地址中的至少一个,重写为代理设备的IP地址、端口号、MAC地址中的至少一个。
在一些实施例中,代理设备在将重写后的第一数据包发送给第一数据包对应的网络切片对应的切片控制器之前,还将第一数据包中的目的IP地址、目的端口号、目的MAC地址中的至少一个字段的匹配域内容,由代理设备的IP地址、端口号、MAC地址中的至少一个,重写为第一数据包对应的网络切片对应的切片控制器的IP地址、端口号、MAC地址中的至少一个。
步骤130,代理设备将重写后的第一数据包发送给第一数据包对应的网络切片对应的切片控制器。
从而,通过对转发层到控制层的数据包中的协商信息进行重写,保证切片控制器仅获取其所负责的网络切片内的交换机信息,减少切片控制器的网络管理工作的复杂性,简化了切片控制器对实时控制流的管理。
根据业务需要,还可以执行以下步骤中的一个或多个。
步骤140,切片控制器接收到流表请求后,根据该流空间的全局拓扑发送相应的流表,下发流表的数据包称为第二数据包,代理设备接收切片控制器发送的第二数据包。
步骤150,代理设备根据切片控制器相应的网络切片,通过自身的流空间匹配后,对第二数据包进行重写,使得重写后的第二数据包具有能够识别不同网络切片的字段。
在一些实施例中,代理设备对第二数据包进行重写,使得重写后的第二数据包具有能够识别不同网络切片的字段包括:代理设备根据切片控制器相应的网络切片,通过自身的流空间匹配后,将第二数据包中的目的IP地址、目的端口号、目的MAC地址中的至少一个字段的匹配域内容,由代理设备的IP地址、端口号、MAC地址中的至少一个,重写为交换机的IP地址、端口号、MAC地址中的至少一个。
在一些实施例中,代理设备在将重写后的第二数据包发送给相应的交换机之前,还将第二数据包中的源IP地址、源端口号、源MAC地址中的至少一个字段的匹配域内容,由切片控制器的IP地址、端口号、MAC地址中的至少一个,重写为代理设备的IP地址、端口号、MAC地址中的至少一个。
步骤160,代理设备通过自身的流空间匹配后,将重写后的第二数据包发送给相应的交换机,使得交换机获得流表。
从而,通过对控制层到转发层的数据包中的信息进行重写,使得交换机获得其相应流空间的流表。
代理设备拦截交换机和控制器之间的数据包,通过消息重写,完成网络隔离。各个控制器只管理各自切片空间的全局策略流表,无需频繁修改,提升管理效率。
如果交换机和切片控制器已经各自获知自己流空间内的节点设备的信息,则可以执行图1所示实施例来获取流表,否则,可以先执行图2所示实施例,使得交换机和切片控制器各自获知自己流空间内的节点设备的信息,然后再执行图1所示实施例来获取流表。
图2示出本公开另一些实施例的网络隔离方法的流程示意图。
如图2所示,该实施例的网络隔离方法包括以下步骤。
步骤210,代理设备接收交换机发送的对称消息。对称消息例如是链路发现报文,如LLDP(Link Layer Discovery Protocol,链路层发现协议)报文。
链路发现通过网络中的节点向其他节点发送报文,以使其他节点获知自身节点的存在。以LLDP为例,节点可以将其自身的处理能力、管理地址、设备标识、接口标识等封装发送给直连的其他节点。
步骤220,如果交换机对应的目标代理设备是当前代理设备,当前代理设备根据自身的流空间查找是否存在相应的网络切片,如果存在,将交换机的对称消息发送到网络切片相应的切片控制器,使得切片控制器获知交换机的存在。
步骤230,如果交换机对应的目标代理设备不是当前代理设备,当前代理设备将交换机的对称消息泛洪给所有代理设备,由交换机对应的目标代理设备根据自身的流空间查找是否存在相应的网络切片,如果存在,将交换机的对称消息发送到网络切片相应的切片控制器,使得切片控制器获知交换机的存在。
步骤240,代理设备接收切片控制器发送的对称消息。对称消息例如是链路发现报文,如LLDP报文。
步骤250,代理设备根据切片控制器相应的网络切片的流空间,将切片控制器的对称消息发送到网络切片的流空间相应的交换机,使得交换机获知切片控制器的存在。
从而,使得交换机和切片控制器各自获知自己流空间内的节点设备的信息。
在通过图2所示实施例,使得交换机和切片控制器各自获知自己流空间内的节点设备的信息,以及通过图1所示实施例获取流表之后,代理设备接收交换机发送的第 三数据包,如果能够匹配到相应的流表条目,则根据流表将第三数据包发送给对应的网络切片对应的目的地,以减少需要切片控制器实时处理的控制流。
在本公开中,网络中的流量根据流空间匹配切片,实现粗粒度网络隔离,在切片中,网络流量根据切片控制器下发的流表进行转发,实现细粒度网络隔离。
本公开的网络隔离技术例如可以应用于异构网络靶场互联互通过程中的网络隔离。网络靶场(Cyber Range)是一种基于虚拟化技术,对真实网络空间中的网络架构、系统设备、业务流程的运行状态及运行环境进行模拟和复现的技术或产品,以更有效地实现与网络安全相关的学习、研究、检验、竞赛、演习等行为,从而提高人员及机构的网络安全对抗水平。在推进大型网络靶场建设的过程中,异构靶场或靶场互联互通过程中需要网络隔离。
图3示出本公开一些实施例的网络隔离系统的示意图。
如图3所示,该实施例的网络隔离系统包括:交换机300,代理设备400,以及切片控制器500,其中,交换机与代理设备通信连接,代理设备与切片控制器通信连接。也即,在交换机与切片控制器之间设置代理设备,代理设备对于交换机为切片控制器的角色,对于切片控制器为交换机的角色。
图4示出本公开一些实施例的代理设备的示意图。
如图4所示,该实施例的代理设备400包括:存储器410以及耦接至该存储器410的处理器420,处理器420被配置为基于存储在存储器410中的指令,执行前述任意一些实施例中的网络隔离方法,具体参考前述实施例,这里不再赘述。
其中,存储器410例如可以包括系统存储器、固定非易失性存储介质等。系统存储器例如存储有操作系统、应用程序、引导装载程序(Boot Loader)以及其他程序等。
其中,处理器420可以用通用处理器、数字信号处理器(Digital Signal Processor,DSP)、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field Programmable Gate Array,FPGA)或其它可编程逻辑设备、分立门或晶体管等分立硬件组件方式来实现。
代理设备400还可以包括输入输出接口430、网络接口440、存储接口450等。这些接口430,440,450以及存储器410和处理器420之间例如可以通过总线460连接。其中,输入输出接口430为显示器、鼠标、键盘、触摸屏等输入输出设备提供连接接口。网络接口440为各种联网设备提供连接接口。存储接口450为SD卡、U盘等 外置存储设备提供连接接口。总线460可以使用多种总线结构中的任意总线结构。例如,总线结构包括但不限于工业标准体系结构(Industry Standard Architecture,ISA)总线、微通道体系结构(Micro Channel Architecture,MCA)总线、外围组件互连(Peripheral Component Interconnect,PCI)总线。
本公开实施例提出一种非瞬时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现各实施例的网络隔离方法的步骤。
本领域内的技术人员应当明白,本公开的实施例可提供为方法、系统、或计算机程序产品。因此,本公开可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本公开可采用在一个或多个其中包含有计算机程序代码的非瞬时性计算机可读存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本公开是参照根据本公开实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解为可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅为本公开的较佳实施例,并不用以限制本公开,凡在本公开的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。

Claims (17)

  1. 一种网络隔离方法,包括:
    代理设备接收交换机发送的第一数据包;
    代理设备根据流空间确定第一数据包对应的网络切片,所述流空间定义了数据流对应的网络切片,以构建隔离的逻辑网络;
    代理设备对第一数据包中的能够识别不同网络切片的字段的匹配域内容进行重写;
    代理设备将重写后的第一数据包发送给第一数据包对应的网络切片对应的切片控制器。
  2. 根据权利要求1所述的方法,还包括:
    代理设备接收切片控制器发送的第二数据包;
    代理设备根据切片控制器相应的网络切片,对第二数据包进行重写,使得重写后的第二数据包具有能够识别不同网络切片的字段;
    代理设备将重写后的第二数据包发送给相应的交换机。
  3. 根据权利要求1所述的方法,其中,代理设备对第一数据包中的能够识别不同网络切片的字段的匹配域内容进行重写包括:
    代理设备将第一数据包中的能够识别不同网络切片的字段的匹配域内容重写为代理设备的信息。
  4. 根据权利要求3所述的方法,其中,代理设备将第一数据包中的能够识别不同网络切片的字段的匹配域内容重写为代理设备的信息包括:
    代理设备将第一数据包中的源IP地址、源端口号、源MAC地址中的至少一个字段的匹配域内容,由交换机的IP地址、端口号、MAC地址中的至少一个,重写为代理设备的IP地址、端口号、MAC地址中的至少一个。
  5. 根据权利要求1所述的方法,其中,
    代理设备在将重写后的第一数据包发送给第一数据包对应的网络切片对应的切 片控制器之前,将第一数据包中的目的IP地址、目的端口号、目的MAC地址中的至少一个字段的匹配域内容,由代理设备的IP地址、端口号、MAC地址中的至少一个,重写为第一数据包对应的网络切片对应的切片控制器的IP地址、端口号、MAC地址中的至少一个。
  6. 根据权利要求2所述的方法,其中,代理设备根据切片控制器相应的网络切片,对第二数据包进行重写,使得重写后的第二数据包具有能够识别不同网络切片的字段包括:
    代理设备将第二数据包中的目的IP地址、目的端口号、目的MAC地址中的至少一个字段的匹配域内容,由代理设备的IP地址、端口号、MAC地址中的至少一个,重写为交换机的IP地址、端口号、MAC地址中的至少一个。
  7. 根据权利要求2所述的方法,其中,
    代理设备在将重写后的第二数据包发送给相应的交换机之前,将第二数据包中的源IP地址、源端口号、源MAC地址中的至少一个字段的匹配域内容,由切片控制器的IP地址、端口号、MAC地址中的至少一个,重写为代理设备的IP地址、端口号、MAC地址中的至少一个。
  8. 根据权利要求2所述的方法,其中,
    交换机发送的第一数据包为请求流表的数据包,切片控制器发送的第二数据包为下发流表的数据包。
  9. 根据权利要求1所述的方法,还包括:
    代理设备接收交换机发送的对称消息,如果交换机对应的目标代理设备是当前代理设备,查找是否存在相应的网络切片,如果存在,将交换机的对称消息发送到网络切片相应的切片控制器。
  10. 根据权利要求9所述的方法,还包括:
    如果交换机对应的目标代理设备不是当前代理设备,将交换机的对称消息泛洪给所有代理设备,由交换机对应的目标代理设备查找是否存在相应的网络切片,如果存 在,将交换机的对称消息发送到网络切片相应的切片控制器。
  11. 根据权利要求1所述的方法,还包括:
    代理设备接收切片控制器发送的对称消息,根据切片控制器相应的网络切片,将切片控制器的对称消息发送到网络切片相应的交换机。
  12. 根据权利要求1所述的方法,还包括:
    当交换机所在逻辑网络变更时,代理设备根据变更后的最新切片控制器相应的网络切片,同步更新代理设备中存储的交换机所属的网络切片的数据。
  13. 根据权利要求8所述的方法,还包括:
    代理设备接收交换机发送的第三数据包,根据流表将第三数据包发送给对应的网络切片对应的目的地,以减少需要切片控制器实时处理的控制流。
  14. 一种代理设备,包括:
    存储器;以及耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器中的指令,执行权利要求1-13中任一项所述的网络隔离方法。
  15. 一种网络隔离系统,包括交换机,切片控制器,以及如权利要求14所述的代理设备,其中,交换机与代理设备通信连接,代理设备与切片控制器通信连接。
  16. 一种非瞬时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现权利要求1-13中任一项所述的网络隔离方法的步骤。
  17. 一种计算机程序,包括:
    指令,所述指令由处理器执行时使所述处理器执行根据权利要求1-13中任一项所述的网络隔离方法。
PCT/CN2022/132152 2021-12-23 2022-11-16 网络隔离方法和系统及代理设备 WO2023116268A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202111589872.2A CN114338119A (zh) 2021-12-23 2021-12-23 网络隔离方法和系统及代理设备
CN202111589872.2 2021-12-23

Publications (1)

Publication Number Publication Date
WO2023116268A1 true WO2023116268A1 (zh) 2023-06-29

Family

ID=81055131

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/132152 WO2023116268A1 (zh) 2021-12-23 2022-11-16 网络隔离方法和系统及代理设备

Country Status (2)

Country Link
CN (1) CN114338119A (zh)
WO (1) WO2023116268A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114338119A (zh) * 2021-12-23 2022-04-12 中国电信股份有限公司 网络隔离方法和系统及代理设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103067245A (zh) * 2012-12-28 2013-04-24 中兴通讯股份有限公司 一种用于网络虚拟化的流表空间隔离装置及方法
CN107395532A (zh) * 2017-07-11 2017-11-24 北京航空航天大学 一种基于sdn的多租户虚拟网络隔离方法
US20190223023A1 (en) * 2018-01-17 2019-07-18 Netsia, Inc. System and method for an integrated virtual customer premises equipment
CN112187610A (zh) * 2020-09-24 2021-01-05 北京赛宁网安科技有限公司 一种网络靶场的网络隔离系统与方法
CN114338119A (zh) * 2021-12-23 2022-04-12 中国电信股份有限公司 网络隔离方法和系统及代理设备

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103236945A (zh) * 2013-04-08 2013-08-07 北京天地互连信息技术有限公司 基于OpenFlow的FlowVisor网络系统
CN103905523A (zh) * 2013-12-23 2014-07-02 浪潮(北京)电子信息产业有限公司 一种基于sdn的云计算网络虚拟化实现方法及系统
CN104852867B (zh) * 2014-02-19 2018-02-06 华为技术有限公司 数据包转发方法、装置及系统
CN106302220A (zh) * 2016-08-26 2017-01-04 北京工业大学 一种sdn网络精细化控制传统交换机的方法
EP3692685B1 (en) * 2017-10-06 2023-04-19 Telefonaktiebolaget LM Ericsson (publ) Remotely controlling network slices in a network
CN112532445B (zh) * 2020-11-26 2022-12-30 国网江苏省电力有限公司信息通信分公司 一种用于无虚拟化能力的网络设备的网络切片方法及其系统、存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103067245A (zh) * 2012-12-28 2013-04-24 中兴通讯股份有限公司 一种用于网络虚拟化的流表空间隔离装置及方法
CN107395532A (zh) * 2017-07-11 2017-11-24 北京航空航天大学 一种基于sdn的多租户虚拟网络隔离方法
US20190223023A1 (en) * 2018-01-17 2019-07-18 Netsia, Inc. System and method for an integrated virtual customer premises equipment
CN112187610A (zh) * 2020-09-24 2021-01-05 北京赛宁网安科技有限公司 一种网络靶场的网络隔离系统与方法
CN114338119A (zh) * 2021-12-23 2022-04-12 中国电信股份有限公司 网络隔离方法和系统及代理设备

Also Published As

Publication number Publication date
CN114338119A (zh) 2022-04-12

Similar Documents

Publication Publication Date Title
US10949379B2 (en) Network traffic routing in distributed computing systems
JP6317851B1 (ja) 論理ルータ
US11115465B2 (en) Accessing endpoints in logical networks and public cloud service providers native networks using a single network interface and a single routing table
US10581801B2 (en) Context-aware distributed firewall
US10491516B2 (en) Packet communication between logical networks and public cloud service providers native networks using a single network interface and a single routing table
EP3136654B1 (en) Systems and methods for externalizing network functions via packet trunking
JP5946532B2 (ja) データセンタ環境で物理ネットワークに仮想ネットワークをオーバーレイするための方法、オーバーレイ仮想ネットワークで通信するための方法、ネットワーク仮想化環境のためのシステム、データセンタおよびコンピュータ・プログラム
CN106452857B (zh) 生成配置信息的方法和网络控制单元
US10313186B2 (en) Scalable controller for hardware VTEPS
US10798048B2 (en) Address resolution protocol suppression using a flow-based forwarding element
US20170093617A1 (en) Managing administrative statuses of hardware vteps
CN109474627B (zh) 一种基于sdn的虚拟租户网络隔离方法及系统
EP2920940B1 (en) Method and device for data flow processing
EP3673365A1 (en) Accessing endpoints in logical networks and public cloud service providers native networks using a single network interface and a single routing table
CN112511432B (zh) 一种Overlay网络虚拟化SFC路由配置、传输方法及系统
WO2023116268A1 (zh) 网络隔离方法和系统及代理设备
CN110505095B (zh) 一种使用少量服务器搭建大规模虚拟数据中心的方法
US9954817B2 (en) Software receive side scaling for packet re-dispatching
CN111654558B (zh) Arp交互与内网流量转发方法、装置和设备
CN109039909B (zh) 一种报文转发的方法及装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22909585

Country of ref document: EP

Kind code of ref document: A1