CN114024725B - 一种容器间通信方法、***、电子设备及存储介质 - Google Patents
一种容器间通信方法、***、电子设备及存储介质 Download PDFInfo
- Publication number
- CN114024725B CN114024725B CN202111242113.9A CN202111242113A CN114024725B CN 114024725 B CN114024725 B CN 114024725B CN 202111242113 A CN202111242113 A CN 202111242113A CN 114024725 B CN114024725 B CN 114024725B
- Authority
- CN
- China
- Prior art keywords
- message
- label
- receiving end
- forwarded
- sending
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0227—Filtering policies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4604—LAN interconnection over a backbone network, e.g. Internet, Frame Relay
- H04L12/462—LAN interconnection over a bridge based backbone
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/50—Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Small-Scale Networks (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种容器间通信方法、***、电子设备及存储介质,该方法包括如下步骤:接收待转发的报文;判断报文发送端的标签与报文接收端的标签是否匹配;当报文发送端的标签与报文接收端的标签匹配时,向所述报文接收端转发待转发报文。本发明提供的容器间通信方法、***、电子设备及存储介质,针对报文发送端和报文接收端设置标签,当网桥转发待转发报文时,先对报文发送端的标签和报文接收端的标签进行匹配,匹配成功时,再进行报文的转发。由此,该容器间的通信方法通过设置标签,可以有效限制报文转发的方向,实现业务隔离。同时可以灵活实现对容器间网络通信的限制,进而有效提升容器间的安全防护能力。
Description
技术领域
本发明涉及网络安全技术领域,具体涉及一种容器间通信方法、***、电子设备及存储介质
背景技术
电力智能融合终端通过采用容器化部署,实现灵活、快捷、安全的业务应用,终端APP的容器化部署在提升能源互联网的感知水平和用户响应能力的同时,也给智能物联终端的网络安全带来了新的风险和挑战。
基于对net namespace(网络命名空间)的控制,docker可以在容器间创建隔离的网络环境,在隔离的网络环境下,容器具有完全独立的网络栈,与宿主机隔离,也可以使容器共享主机或者其他容器的网络命名空间,基本可以满足开发者在各种场景下的需要。桥接模式是docker默认的,也是开发者最常使用的网络模式。在这种模式下,docker为容器创建独立的网络栈,保证容器内的进程使用独立的网络环境,实现容器之间、容器与宿主机之间的网络栈隔离。在容器虚拟网络方面,对于容器网络默认使用桥接方式进行连接,通过在宿主机上创建一个虚拟的网桥docker0扮演传统交换机的角色,并在各个网络接口间自动地进行分组转发。每创建一个新的容器,就为其增加一个虚拟网络接口,并将该网络接口连接到网桥docker0。
网桥的脆弱性将会导致平台上其他用户的信息被泄漏甚至可用性被影响。同一主机上的容器之间采用网桥模式,对转发的数据分组未进行任何过滤,容易遭受ARP欺骗和MAC泛洪攻击。有些容器中的业务需要跟其他容器进行通信,点对点的进行数据交互,还有些情况下,有些容器处于数据中心的角色,要跟多个容器进行通信,所以有必要对容器间网络通信进行细粒度的安全设置,以满足复杂的业务应用。
发明内容
因此,本发明要解决的技术问题在于克服现有网桥对转发的数据分组未进行任何过滤的缺陷,从而提供一种容器间通信方法、***、电子设备及存储介质。
根据第一方面,本发明实施例公开了一种容器间通信方法,包括:
接收待转发报文;
判断报文发送端的标签与报文接收端的标签是否匹配;
当报文发送端的标签与报文接收端的标签匹配时,向所述报文接收端转发待转发报文。
可选地,
所述标签包括发送标签与接收标签列表;
所述发送标签为所述报文发送端发送报文时设置的标签;
所述接收标签列表为所述报文接收端能够接收的所述发送标签的合集;
所述发送标签、接收标签列表、容器的局域网地址及容器所在的网桥端口对应设置在地址表中。
可选地,所述判断报文发送端的标签与报文接收端的标签是否匹配,包括:
判断待转发报文的报文类型;
根据所述报文类型,判断报文发送端的标签与报文接收端的标签是否匹配。
可选地,所述判断报文类型,包括:
根据待转发报文,判断所述待转发报文为单播类型、组播类型还是广播类型;
当待转发报文为单播类型时,判断所述报文接收端的局域网地址是否位于所述地址表中;
当所述报文接收端的局域网地址位于所述地址表中时,判断所述待转发报文为已知单播类型;
当所述报文接收端的局域网地址不在所述地址表中时,判断所述待转发报文为未知单播类型;
当待转发报文为组播类型时,判断多个报文接收端的局域网地址是否位于所述地址表中;
当多个报文接收端的局域网地址均位于所述地址表中时,判断所述待转发报文为已知组播类型;
当任一报文接收端的局域网地址不在所述地址表中时,判断所述待转发报文为未知组播类型。
可选地,所述根据所述报文类型,判断报文发送端的标签与报文接收端的标签是否匹配,包括:
当判断待转发报文为已知单播类型或已知组播类型时,根据所述报文发送端的局域网地址查询所述地址表,确定所述报文发送端的发送标签;
根据所述报文接收端的局域网地址查询所述地址表,判断所述报文发送端的发送标签是否在所述报文接收端对应的接收标签列表中;
所述当报文发送端的标签与报文接收端的标签匹配时,向所述报文接收端转发所述报文,包括:
当所述报文发送端的发送标签位于所述报文接收端的接收标签列表中时,将待转发报文发送至所述报文接收端;
当所述报文发送端的发送标签不在所述报文接收端的接收标签列表中时,丢弃所述待转发报文。
可选地,所述根据所述报文类型,判断报文发送端的标签与报文接收端的标签是否匹配,还包括:
当判断待转发报文为广播类型或未知组播类型时,根据所述报文发送端的局域网地址查询所述地址表,确定所述报文发送端的发送标签;
遍历所述地址表,逐一判断所述报文发送端的发送标签是否在每一所述报文接收端对应的接收标签列表中;
所述当报文发送端的标签与报文接收端的标签匹配时,向所述报文接收端转发所述报文,包括:
当所述报文发送端的发送标签位于所述报文接收端的接收标签列表中时,将待转发报文发送至所述报文接收端;
当所述报文发送端的发送标签不在所述报文接收端的接收标签列表中时,丢弃所述待转发报文。
可选地,所述根据报文类型,判断所述发送端的标签与所述接收端的标签是否对应,还包括:
当判断待转发报文为未知单播类型时,丢弃所述待转发报文。
根据第二方面,本发明实施例还公开了一种容器间通信***,包括:
接收单元,用于接收待转发报文;
判断单元,用于判断报文发送端的标签与报文接收端的标签是否匹配;
转发单元,用于当报文发送端的标签与报文接收端的标签匹配时,向所述报文接收端转发待转发报文。
根据第三方面,本发明实施例还公开了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器执行如第一方面或第一方面任一可选实施方式所述的容器间通信方法的步骤。
根据第四方面,本发明实施方式还公开了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面或第一方面任一可选实施方式所述的容器间通信方法的步骤。
本发明技术方案,具有如下优点:
本发明提供的容器间通信方法、***、电子设备及存储介质,通过针对报文发送端和报文接收端设置标签,当网桥转发待转发报文时,先对报文发送端的标签和报文接收端的标签进行匹配,当匹配成功时,再进行报文的转发。由此,该容器间通信方法通过设置标签,可以有效限制报文转发方向,实现业务隔离。同时可以灵活实现对容器间网络通信的限制,进而有效提升容器的安全防护能力。解决了现有技术中对转发的数据分组未进行任何过滤,容易遭受ARP欺骗和MAC泛洪攻击的问题。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中容器间通信方法的一个具体示例的流程图;
图2为本发明实施例中容器间通信方法的另一个具体示例的流程图;
图3为本发明实施例中容器间通信方法的另一个具体示例的流程图;
图4为本发明实施例中容器间通信***的一个具体示例的原理框图;
图5为本发明实施例中电子设备的一个具体示例图。
具体实施方式
下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,还可以是两个元件内部的连通,可以是无线连接,也可以是有线连接。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
此外,下面所描述的本发明不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。
本发明实施例公开了一种容器间通信方法,如图1所示,该方法包括如下步骤:
步骤S1,接收待转发报文。
示例性地,在安装docker时,创建docker0网桥。由该网桥接收局域网内由某一容器发送的待转发报文。其中,docker是一个开源的应用容器引擎,一个完整的docker由以下几个部分组成:DockerClient客户端、DockerDaemon守护进程、DockerImage镜、像DockerContainer容器。Docker服务默认会创建一个docker0网桥(其上有一个docker0内部接口),它在内核层连通了其他的物理或虚拟网卡,这就将所有容器和本地主机都放到同一个物理网络。由此,通过其创建的网桥能够实现容器间的通信,或者说能够实现容器间报文的转发。
步骤S2,判断报文发送端的标签与报文接收端的标签是否匹配。
其中,报文发送端和报文接收端均可以是在docker中创建的容器,在创建容器时,会为其分配对应的MAC地址(局域网地址)。而创建的网桥包含三种数据结构:structnet_bridge、structnet_bridge_port以及structnet_bridge_fdb_entry,其中,structnet_bridge_fdb_entry结构设置在CAM表中。由此,在创建容器并为其分配MAC地址时,将该MAC地址和该容器对应的网桥端口***到CAM表(地址表)中。具体地,在CAM表中***MAC地址和网桥端口时,调用br_fdb_instert()函数实现。
具体地,所述标签包括发送标签与接收标签列表,所述发送标签为报文发送端发送报文时设置的标签,所述接收标签列表为所述报文接收端接收的所述发送标签的合集。所述发送标签、接收标签列表、容器的局域网地址及网桥端口对应设置在地址表中。其中,对于每个容器所在的网桥端口设置两个标签,其中一个标签是该网桥端口向外发送报文时用的,可以称其为发送标签,另一个标签是该网桥端口接收的其他容器所在的网桥端口发送报文时使用的标签;通常情况下,一个容器所在的网桥端口能够接收多个容器发送的报文,由此,另一个标签可以形成接收标签列表,该接收标签列表中包含了该容器所在的网桥端口能够接收的所有网桥端口发送报文时对应的发送标签。
具体地,在对某一容器所在的网桥端口设置标签后,可以将其对应的发送标签snd_tag和接收标签列表rcv_tag[max]均保存在CAM表中与该容器的局域网地址和网桥端口对应。由此,可以将发送标签、接收标签列表、容器的局域网地址及网桥端口关联起来。
具体地,在CAM表中设置发送标签、接收标签列表、容器的局域网地址及网桥端口之后,当网桥接收到待转发待报文时,可以调用_br_handle_frame()函数处理接收到的报文,确定该待转发报文的报文发送端和报文接收端。在确定报文发送端和报文接收端后,可以在之前存储的CAM表中查询报文发送端的发送标签,并确认报文接收端的接收标签列表,判断该报文发送端的发送标签是否在报文接收端的接收标签列表中,从而实现报文发送端的标签与报文接收端标签的匹配。
步骤S3,当报文接收端的标签与报文接收端的标签匹配时,向所述报文接收端转发所述报文。
具体地,当判断报文发送端的发送标签在报文接收端的接收标签列表中时,即报文发送端的标签与报文接收端标签确认匹配,则可以将待转发报文转发给相应的报文接收端。其中,在转发报文时,可以调用br_forward()函数把待转发报文转发给此端口。此外,若通过比较发现报文发送端的发送标签不在报文接收端的接收标签列表中时,则该报文可能存在一定的风险,可以将该报文丢弃。
本发明实施例提供的容器间通信方法,通过针对报文发送端和报文接收端设置标签,当网桥转发待转发报文时,先对报文发送端的标签和报文接收端的标签进行匹配,当匹配成功时,再进行报文的转发。由此,该容器间通信方法通过设置标签,可以有效限制报文转发方向,实现业务隔离。同时可以灵活实现对容器间网络通信的限制,进而有效提升容器的安全防护能力。解决了现有技术中对转发的数据分组未进行任何过滤,容易遭受ARP欺骗和MAC泛洪攻击的问题。
作为本发明实施例的一种可选地实施方式,判断报文发送端的标签与报文接收端的标签是否匹配的过程,如图2所示,包括以下步骤:
步骤S21:判断报文类型。
具体地,当接收到待转发报文时,先判断该报文类型,根据类型判断如何转发报文。其中,在判断报文类型时,可以根据接收报文的报文接收端对应的局域网地址是否在CAM表中,来判断待转发报文的类型。
步骤S22:根据报文类型,判断报文发送端的标签与报文接收端的标签是否匹配。
具体地,在判断报文类型之后,可以根据待转发报文的类型进行标签的匹配以及报文的转发。
在一实施方式中,当处理待转发报文确认该报文的报文接收端只有一个时,判断该待转发报文为单播类型,当确认该报文的报文接收端有多个时,则判断该报文为组播类型,当确认该报文的报文接收端为该网桥内所有端口时,则判断该报文为广播类型。
在一实施方式中,当判断待转发报文为单播类型时,判断所述报文接收端的局域网地址是否在所述地址表中;当所述报文接收端的局域网地址在所述地址表中时,判断所述报文为已知单播类型;当所述报文接收端局域网地址不在所述地址表中时,判断所述报文为未知单播。
在一实施方式中,当判断待转发报文为组播类型时,判断多个报文接收端的局域网地址是否在所述地址表中;当多个报文接收端局域网地址均在所述地址表中时,判断所述报文为已知组播类型;当任一报文接收端的局域网地址不在所述地址表中时,判断待转发报文为未知组播类型。
在一实施方式中,当判断待转发报文为已知单播类型或已知组播类型时,根据所述报文发送端的局域网地址查询所述地址表,确定所述报文发送端的发送标签;根据所述报文接收端的局域网地址查询所述地址表,判断所述报文发送端的发送标签是否在所述报文接收端对应的接收标签列表中;当所述发送标签位于所述接收标签列表时,将待转发报文发送至所述报文接收端;当所述发送标签不在所述接收表述列表中时,丢弃所述待转发报文。当判断待转发报文为未知单播时,丢弃所述待转发报文。
示例性地,当容器内业务应用发送已知单播或已知组播报文时,网桥通过_br_handle_frame()处理接收到的报文获取该报文的报文发送端和报文接收端,根据报文发送端的MAC地址查询CAM表,查找该报文发送端网桥端口的发送标签(snd_tag),然后根据报文接收端的MAC地址查询CAM表,如果该MAC地址在CAM表中,则查找该报文接收端网桥端口的接收标签列表(rcv_tag[max]),判断snd_tag是否在rcv_tag[max]中。如果发送标签在接收标签列表中,调用br_forward函数把待转发报文转发给此端口,否则丢弃该报文,如果报文接收端的MAC地址不在CAM表中,也将待转发报文丢弃。
在一实施方式中,当判断待转发报文为广播或未知组播类型时,根据所述报文发送端的局域网地址查询所述地址表,确定所述报文发送端的发送标签,遍历所述地址表,逐一判断所述报文发送端的发送标签是否在每一所述报文接收端对应的接收标签列表中;当所述报文发送端的发送标签位于报文接收端的接收标签列表中时,将待转发报文发送至所述报文接收端;当所述发送标签不在报文接收端的接收标签列表中时,丢弃所述待转发报文。
示例性地,当容器内业务应用发送广播或未知组播报文时,网桥通过_br_handle_frame()处理接收到的报文获取该报文的报文发送端和报文接收端,根据报文发送端的MAC地址查询CAM表,查找该报文发送端网桥端口的发送标签(snd_tag),然后遍历多个报文接收端网桥端口的接收标签列表(rcv_tag[max]),逐一查看每一端口的rcv_tag[max],判断snd_tag是否在rcv_tag[max]中。如果发送标签在接收标签列表中,调用br_forward()函数把待转发报文转发给此端口,否则丢弃该报文。
本发明实施例提供的容器间通信方法,通过灵活配置发送标签和接收标签列表,灵活配置容器间通信,可以实现各种业务的网络通信及安全隔离。其中,在对容器所在的网桥端口设置标签时,对于标签的数量没有限制,在容器数量较多的场景照常使用。此外,设置标签时,适用范围仅限于网桥内,对于容器间跨宿主机的通信没有影响。
在一实施方式中,该容器间通信方法采用如图3所示的流程实现:
首先在docker0网桥描述结构体net_bridge的CAM表中,针对每个端口分别增加用以存储该端口发送报文时添加标签的字段即发送标签snd_tag和用以存储该端口能够接收标签的字段列表即接收标签列表rcv_tag[MAX]。并且在创建容器时手动分配容器的MAC地址,调用br_fdb_insert()函数将该MAC地址和该容器对应的网桥端口***到CAM表中。
当网桥接收到待转发报文时,先对该报文的类型进行判断,当其为已知单播报文和已知组播报文时,网桥对接收的报文调用br_handle_frame()函数进行处理,根据报文源MAC地址查找CAM表,查找该网桥端口的snd_tag,再根据报文接收端的MAC地址查找CAM表,如果该MAC地址在CAM表中,则查找该网桥端口的rcv_tag列表,如果snd_tag在rcv_tag列表中,调用br_forward()函数把数据包转发给此端口。否则丢弃该报文。
类似地,对于容器中业务应用发送的广播报文和未知组播报文,网桥对接收的报文调用br_handle_frame()函数进行处理,根据报文源MAC地址查找CAM表,查找该网桥端口的snd_tag,然后遍历所有报文接收端的网桥端口,逐一查看每一端口的rcv_tag列表,如果snd_tag在rcv_tag列表中,则调用br_forward()函数把数据包转发给此端口。否则丢弃该报文。
类似地,对于容器中业务应用发送的未知单播报文,网桥处理接收到的报文时,直接丢弃该报文。
本发明实施例还公开了一种容器间通信***,如图4所示,该装置包括:
接收单元,用于接收待转发报文;详细内容参见上述方法实施例中步骤S1的相关描述。
判断单元,用于判断报文发送端的标签与报文接收端的标签是否匹配;详细内容参见上述方法实施例中步骤S2的相关描述。
转发单元,用于当报文发送端的标签与报文接收端的标签匹配时,向所述报文接收端转发待转发报文;详细内容参见上述方法实施例中步骤S3的相关描述。
本发明实施例提供的容器间通信装置,通过针对报文发送端和报文接收端设置标签,当网桥转发待转发报文时,先对报文发送端的标签和报文接收端的标签进行匹配,当匹配成功时,再进行报文的转发。由此,该容器间通信方法通过设置标签,可以有效限制报文转发方向,实现业务隔离。同时可以灵活实现对容器间网络通信的限制,进而有效提升容器的安全防护能力,解决了现有技术中对转发的数据分组未进行任何过滤,容易遭受ARP欺骗和MAC泛洪攻击的问题。
本发明实施例提供的容器间通信装置,通过灵活配置发送标签和接收标签列表,灵活配置容器间通信,可以实现各种业务的网络通信及安全隔离。其中,在对容器所在的网桥端口设置标签时,对于标签的数量没有限制,在容器较多的场景照常使用。此外,设置标签时,使用范围仅限于网桥内,对于容器间跨宿主机的通信没有影响。
本发明实施例提供的容器间通信装置的功能描述详细参见上述实施例中容器间通信方法描述。
本发明实施例还提供了一种电子设备,如图5所示,该电子设备可以包括处理器401和存储器402,其中处理器401和存储器402可以通过总线或者其他方式连接,图5中以通过总线连接为例。
处理器401可以为中央处理器(Central Processing Unit,CPU)。处理器401还可以为其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。
存储器402作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如本发明实施例中的违法行为检测方法对应的程序指令/模块。处理器401通过运行存储在存储器402中的非暂态软件程序、指令以及模块,从而执行处理器的各种功能应用以及数据处理,即实现上述方法实施例中的违法行为检测方法。
存储器402可以包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需要的应用程序;存储数据区可存储处理器401所创建的数据等。此外,存储器402可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器402可选包括相对于处理器401远程设置的存储器,这些远程存储器可以通过网络连接至处理器401。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
所述一个或者多个模块存储在所述存储器402中,当被所述处理器401执行时,执行如图1所示实施例中的违法行为检测方法。
上述电子设备具体细节可以对应参阅图1所示的实施例中对应的相关描述和效果进行理解,此处不再赘述。
本领域技术人员可以理解,实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)、随机存储记忆体(RandomAccessMemory,RAM)、快闪存储器(Flash Memory)、硬盘(Hard Disk Drive,缩写:HDD)或固态硬盘(Solid-State Drive,SSD)等;所述存储介质还可以包括上述种类的存储器的组合。
虽然结合附图描述了本发明的实施例,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下作出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。
Claims (8)
1.一种容器间通信方法,其特征在于,包括:
接收待转发报文;
判断报文发送端的标签与报文接收端的标签是否匹配,报文发送端和报文接收端是在docker中创建的容器;
当报文发送端的标签与报文接收端的标签匹配时,向所述报文接收端转发待转发报文;
所述判断报文发送端的标签与报文接收端的标签是否匹配,包括:
判断待转发报文的报文类型,所述报文类型包括已知单播类型或已知组播类型;
根据所述报文类型,判断报文发送端的标签与报文接收端的标签是否匹配;
所述根据所述报文类型,判断报文发送端的标签与报文接收端的标签是否匹配,包括:
当判断所述待转发报文为已知单播类型或已知组播类型时,根据所述报文发送端的局域网地址查询地址表,确定所述报文发送端的发送标签;
根据所述报文接收端的局域网地址查询所述地址表,判断所述报文发送端的发送标签是否在所述报文接收端对应的接收标签列表中;
所述当报文发送端的标签与报文接收端的标签匹配时,向所述报文接收端转发所述报文,包括:
当所述报文发送端的发送标签位于所述报文接收端的接收标签列表中时,将所述待转发报文发送至所述报文接收端;
当所述报文发送端的发送标签不在所述报文接收端的接收标签列表中时,丢弃所述待转发报文。
2.根据权利要求1所述的方法,其特征在于,
所述标签包括发送标签与接收标签列表;
所述发送标签为所述报文发送端发送报文时设置的标签;
所述接收标签列表为所述报文接收端能够接收的所述发送标签的合集;
所述发送标签、接收标签列表、容器的局域网地址及容器所在的网桥端口对应设置在地址表中。
3.根据权利要求2所述的方法,其特征在于,所述判断报文类型,包括:
根据待转发报文,判断待转发报文为单播类型、组播类型还是广播类型;
当待转发报文为单播类型时,判断所述报文接收端的局域网地址是否位于所述地址表中;
当所述报文接收端局域网地址位于所述地址表中时,判断所述待转发报文为已知单播类型;
当所述报文接收端局域网地址不在所述地址表中时,判断所述待转发报文为未知单播类型;
当待转发报文为组播类型时,判断多个报文接收端局域网地址是否位于所述地址表中;
当多个报文接收端的局域网地址均位于所述地址表中时,判断所述待转发报文为已知组播类型;
当任一报文接收端的局域网地址不在所述地址表中时,判断所述待转发报文为未知组播类型。
4.根据权利要求3所述的方法,其特征在于,所述根据所述报文类型,判断报文发送端的标签与报文接收端的标签是否匹配,还包括:
当判断所述待转发报文为广播类型或未知组播类型时,根据所述报文发送端的局域网地址查询所述地址表,确定所述报文发送端的发送标签;
遍历所述地址表,逐一判断所述报文发送端的发送标签是否在每一所述报文接收端对应的接收标签列表中;
所述当报文发送端的标签与报文接收端的标签匹配时,向所述报文接收端转发所述报文,包括:
当所述报文发送端的发送标签位于所述报文接收端的接收标签列表中时,将所述待转发报文发送至所述报文接收端;
当所述报文发送端的发送标签不在所述报文接收端的接收标签列表中时,丢弃所述待转发报文。
5.根据权利要求3所述的方法,其特征在于,所述根据报文类型,判断所述发送端的标签与所述接收端的标签是否对应,还包括:
当判断所述待转发报文为未知单播类型时,丢弃所述待转发报文。
6.一种容器间通信***,其特征在于,包括:
接收单元,用于接收待转发报文;
判断单元,用于判断报文发送端的标签与报文接收端的标签是否匹配,报文发送端和报文接收端是在docker中创建的容器;
转发单元,用于当报文发送端的标签与报文接收端的标签匹配时,向所述报文接收端转发待转发报文;
所述判断报文发送端的标签与报文接收端的标签是否匹配,包括:
判断待转发报文的报文类型,所述报文类型包括已知单播类型或已知组播类型;
根据所述报文类型,判断报文发送端的标签与报文接收端的标签是否匹配;
所述根据所述报文类型,判断报文发送端的标签与报文接收端的标签是否匹配,包括:
当判断所述待转发报文为已知单播类型或已知组播类型时,根据所述报文发送端的局域网地址查询地址表,确定所述报文发送端的发送标签;
根据所述报文接收端的局域网地址查询所述地址表,判断所述报文发送端的发送标签是否在所述报文接收端对应的接收标签列表中;
所述当报文发送端的标签与报文接收端的标签匹配时,向所述报文接收端转发所述报文,包括:
当所述报文发送端的发送标签位于所述报文接收端的接收标签列表中时,将所述待转发报文发送至所述报文接收端;
当所述报文发送端的发送标签不在所述报文接收端的接收标签列表中时,丢弃所述待转发报文。
7.一种电子设备,其特征在于,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器执行如权利要求1-5任一所述的容器间通信方法的步骤。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-5中任一项所述的容器间通信方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111242113.9A CN114024725B (zh) | 2021-10-25 | 2021-10-25 | 一种容器间通信方法、***、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111242113.9A CN114024725B (zh) | 2021-10-25 | 2021-10-25 | 一种容器间通信方法、***、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114024725A CN114024725A (zh) | 2022-02-08 |
CN114024725B true CN114024725B (zh) | 2023-06-20 |
Family
ID=80057709
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111242113.9A Active CN114024725B (zh) | 2021-10-25 | 2021-10-25 | 一种容器间通信方法、***、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114024725B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102148745A (zh) * | 2010-02-08 | 2011-08-10 | 中兴通讯股份有限公司 | 提高虚拟专用局域网业务网络转发效率的方法和*** |
CN102263774A (zh) * | 2010-05-24 | 2011-11-30 | 杭州华三通信技术有限公司 | 一种处理源角色信息的方法和装置 |
CN105187311A (zh) * | 2015-06-09 | 2015-12-23 | 杭州华三通信技术有限公司 | 一种报文转发方法及装置 |
CN106603550A (zh) * | 2016-12-28 | 2017-04-26 | ***股份有限公司 | 一种网络隔离方法及装置 |
CN107124402A (zh) * | 2017-04-12 | 2017-09-01 | 杭州迪普科技股份有限公司 | 一种报文过滤的方法和装置 |
CN109246012A (zh) * | 2017-07-10 | 2019-01-18 | 中兴通讯股份有限公司 | 报文转发方法、装置及计算机可读存储介质 |
CN110830371A (zh) * | 2019-11-13 | 2020-02-21 | 迈普通信技术股份有限公司 | 报文重定向方法、装置、电子设备及可读存储介质 |
CN111740907A (zh) * | 2020-05-29 | 2020-10-02 | 新华三信息安全技术有限公司 | 一种报文传输方法、装置、设备及机器可读存储介质 |
CN112714052A (zh) * | 2020-12-20 | 2021-04-27 | 苏州浪潮智能科技有限公司 | 一种流量隔离方法、装置、交换机及存储介质 |
CN113079097A (zh) * | 2021-03-24 | 2021-07-06 | 新华三信息安全技术有限公司 | 一种报文处理方法及装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110896379B (zh) * | 2018-09-13 | 2022-11-08 | 中兴通讯股份有限公司 | 报文的发送方法、绑定关系的通告方法、装置及存储介质 |
US11223494B2 (en) * | 2020-01-13 | 2022-01-11 | Vmware, Inc. | Service insertion for multicast traffic at boundary |
-
2021
- 2021-10-25 CN CN202111242113.9A patent/CN114024725B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102148745A (zh) * | 2010-02-08 | 2011-08-10 | 中兴通讯股份有限公司 | 提高虚拟专用局域网业务网络转发效率的方法和*** |
CN102263774A (zh) * | 2010-05-24 | 2011-11-30 | 杭州华三通信技术有限公司 | 一种处理源角色信息的方法和装置 |
CN105187311A (zh) * | 2015-06-09 | 2015-12-23 | 杭州华三通信技术有限公司 | 一种报文转发方法及装置 |
CN106603550A (zh) * | 2016-12-28 | 2017-04-26 | ***股份有限公司 | 一种网络隔离方法及装置 |
CN107124402A (zh) * | 2017-04-12 | 2017-09-01 | 杭州迪普科技股份有限公司 | 一种报文过滤的方法和装置 |
CN109246012A (zh) * | 2017-07-10 | 2019-01-18 | 中兴通讯股份有限公司 | 报文转发方法、装置及计算机可读存储介质 |
CN110830371A (zh) * | 2019-11-13 | 2020-02-21 | 迈普通信技术股份有限公司 | 报文重定向方法、装置、电子设备及可读存储介质 |
CN111740907A (zh) * | 2020-05-29 | 2020-10-02 | 新华三信息安全技术有限公司 | 一种报文传输方法、装置、设备及机器可读存储介质 |
CN112714052A (zh) * | 2020-12-20 | 2021-04-27 | 苏州浪潮智能科技有限公司 | 一种流量隔离方法、装置、交换机及存储介质 |
CN113079097A (zh) * | 2021-03-24 | 2021-07-06 | 新华三信息安全技术有限公司 | 一种报文处理方法及装置 |
Non-Patent Citations (2)
Title |
---|
Docker:containerize your application;A Kropp,R Torre;《Elsevier》;全文 * |
基于LoRa的物联网无线通信***设计;李信希;《中国优秀硕士学位论文全文数据库》;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN114024725A (zh) | 2022-02-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8341725B2 (en) | Secure DHCP processing for layer two access networks | |
CN106936939B (zh) | 一种报文处理方法、相关装置及nvo3网络*** | |
US8862705B2 (en) | Secure DHCP processing for layer two access networks | |
CN107547402B (zh) | 一种转发表生成方法和装置 | |
CN103841023B (zh) | 数据转发的方法和设备 | |
US8769111B2 (en) | IP network service redirector device and method | |
WO2016101646A1 (zh) | 以太虚拟网络的接入方法及装置 | |
CN110830371B (zh) | 报文重定向方法、装置、电子设备及可读存储介质 | |
US10284461B2 (en) | Method and related apparatus for probing packet forwarding path | |
CN106559292A (zh) | 一种宽带接入方法和装置 | |
WO2015096409A1 (zh) | 软件定义网络中的链路发现方法、装置及*** | |
CN103368849A (zh) | Oam报文的处理方法和装置 | |
CN109787878A (zh) | 一种隧道链路检测方法及相关设备 | |
CN106059885B (zh) | 无线控制器对capwap报文的处理方法和*** | |
CN105515970B (zh) | 一种用于传输报文的方法与装置 | |
EP3499808A1 (en) | Network device and controlling method thereof applicable for mesh networks | |
CN107528929B (zh) | Arp条目的处理方法及装置 | |
CN114024725B (zh) | 一种容器间通信方法、***、电子设备及存储介质 | |
CN108737277A (zh) | 一种报文转发方法及装置 | |
EP4109829A1 (en) | Method and apparatus for transmitting policy, and network transmission system | |
WO2015188706A1 (zh) | 数据帧的处理方法、装置与*** | |
CN107547686B (zh) | Arp请求报文处理方法和装置 | |
CN110945847B (zh) | 路径切换过程中快速恢复业务的方法、装置和*** | |
CN106452992B (zh) | 一种远端多归属组网的实现方法及装置 | |
CN113132220B (zh) | 一种路由信息的处理方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |