一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于网闸组网的通信方法、装置、设备及介质与流程

2021-11-02 11:41:00 来源:中国专利 TAG:
一种基于网闸组网的通信方法、装置、设备及介质与流程

本申请涉及通信安全技术领域,尤其涉及一种基于网闸组网的通信方法、装置、设备及介质。

背景技术

随着企业业务上云加速,不少企业的业务服务器等设备会混合部署在不同区域,这些设备如专网的私有云和互联网公有云。对于跨不同安全级别的网络访问,一般通过部署安全隔离网闸的方式进行安全访问控制。安全隔离网闸也称网闸,用以实现不同安全级别网络之间的安全隔离,并提供适度可控的数据交换的软硬件系统。

目前在基于网闸组网的网络访问过程中,一种典型场景是被管理设备与管理平台通信需要跨越网闸,然而由于被管理设备部署在不同子网内,存在网际协议(Internet Protocol,IP)地址冲突问题,管理平台无法根据IP地址准确区分设备,导致基于网闸组网场景下的设备管理可靠性较低。



技术实现要素:

本申请提供了一种基于网闸组网的通信方法、装置、设备及介质,用以解决现有技术中在多个设备IP地址和端口号一样的情况下无法区分设备的问题,并解决部分因跨域通信而被限制的端口不能正常通信的问题。

第一方面,本申请提供了一种基于网闸组网的通信方法,所述方法包括:

第一设备接收第一报文,所述第一报文包括网络标识、所述第一设备的公网地址、所述第一设备的私网地址和管理信息;所述第一设备判断所述网络标识为所述第一设备的网络标识;所述第一设备根据所述管理信息执行管理操作。

基于该方法,管理平台能够根据网络标识区分不同的设备,能够避免在多个设备具有相同的公网地址、私网地址和端口号时,报文转发错误,可提高基于网闸组网场景下的管理可靠性。

在一种可能的设计中,所述第一设备接收第一报文之前,还包括:所述第一设备发送第二报文,所述第二报文包括所述第一设备的网络标识、公网地址和私网地址。

采用该设计,能够由第一设备上报自身的网络标识、公网地址和私网地址,以便管理平台区分不同的设备。

在一种可能的设计中,所述第一设备的网络标识携带在所述第二报文中的虚拟扩展局域网(Virtual Extensible Local Area Network,VxLAN)头中。

在一种可能的设计中,所述方法还包括:所述第一设备确定第三报文的目的端口为网闸的未开放端口;所述第一设备向所述网闸发送第四报文,所述第四报文根据所述第三报文添加头部获得,所述头部中携带所述网闸的开放端口标识作为目的端口标识。

采用该设计,能够向未开放端口实现报文发送,提高通信效率。

第二方面,本申请还提供了一种基于网闸组网的通信方法,所述方法包括:管理平台获取第一设备的网络标识、公网地址和私网地址;所述管理平台发送第一报文,所述第一报文包括所述第一设备的网络标识、公网地址、私网地址和管理信息,所述管理信息用于所述第一设备执行管理操作。

在一种可能的设计中,所述管理平台发送第一报文之前,还包括:所述管理平台接收第二报文,所述第二报文包括所述第一设备的网络标识、公网地址和私网地址。

采用该设计,可以便于管理平台存储第一设备的网络标识、公网地址和私网地址的对应关系,用于发送管理消息。

在一种可能的设计中,所述第一设备的网络标识携带在所述第二报文中的VxLAN头中。

在一种可能的设计中,所述方法还包括:所述管理平台确定第五报文的目的端口为网闸的未开放端口;所述管理平台向所述网闸发送第六报文,所述第六报文根据所述第五报文添加头部获得,所述头部中携带所述网闸的开放端口标识作为目的端口标识。

第三方面,本申请还提供了一种电子设备,所述电子设备包括处理器,所述处理器用于执行存储器中存储的计算机程序时实现如上述第一方面、第二方面或第一方面或第二方面中任一可能的设计所述方法的步骤。

第四方面,本申请提供一种计算机可读存储介质,计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行第一方面、第二方面或第一方面或第二方面中任一可能的设计所述方法的步骤。

另外,第二方面至第四方面的有益效果可以参见如第一方面所述的有益效果,此处不再赘述。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本申请实施例提供的一种基于网闸组网的通信场景示意图;

图2为本申请实施例提供的一种基于网闸组网的通信方法的流程示意图;

图3A为本申请实施例提供的一种报文发送方法示意图;

图3B为本申请实施例提供的另一种基于网闸组网的通信场景示意图;

图4为本申请实施例提供的一种基于网闸组网的通信装置的模块化结构示意图;

图5为本申请实施例提供的一种基于网闸组网的通信装置结构示意图。

具体实施方式

为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,显然,所描述的实施例仅仅是本发申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。

为了在多个设备IP地址和端口号一样的情况下区分设备,以提高管理平台的管理效率和管理可靠性,本申请实施例提供了一种基于网闸组网的通信方法、装置、设备及介质。

该方法的应用场景如图1所示,该通信过程由被管理设备、网闸和管理平台三部分组成。其中,被管理设备可以是多个设备,部署在网闸的一侧构成安全域A。管理平台部署在网闸的另一侧构成安全域B。可通过网闸对不同安全域进行安全隔离。下面以第一设备、网闸和管理平台为执行主体为例,对本申请实施例提供的通信方法进行说明。示例性的,网络探针设备、安全探针设备等探针设备可作为第一设备部署在不同子网下,这些设备对于管理平台来说也就是被管理设备。其中,探针设备可收集网络流量、安全策略、设备告警日志等信息。

应理解,对于一个第一设备来说,其可与其他被管理设备(称为第二设备)进行通信。对于管理平台来说,第一设备与第二设备的地位相同,即在执行与管理平台的通信动作时,由第一设备与第二设备执行的动作可以相同。换句话说,本申请中由第一设备执行的动作也可由第二设备执行。

具体的,第一设备可以向管理平台发起注册和信息上送,例如,第一设备可以通过各自网络出口设备的网络地址转换(Network Address Translation,NAT),并根据路由策略去访问管理平台,实现第一设备的注册和信息上报。这些第一设备在实际应用中例如公有云。

管理平台可对第一设备进行管理消息(或称管理命令)下发,如查询设备运行状态,下发第一设备可执行的指令等。管理平台在实际应用中例如专网。

网闸可连接多个网络,用于管理平台管理网络中的被管理设备,网闸在实际应用中例如跨越专网与公有云的访问。例如,网闸可对到达网闸的报文(或替换为消息、信息或命令等)进行检测,当报文的目的端口不满足开放端口条件时丢弃报文。网闸可包括单向网闸和双向网闸。

图2为本申请实施例提供的一种基于网闸组网的通信方法过程示意图,该过程包括以下步骤:

S101:管理平台获取第一设备的网络标识、公网地址和私网地址。其中,公网地址可以是公网IP地址,私网地址可以是私网IP地址。

管理员可以提前规划分配好第一设备的网络标识(network ID),该网络标识具备唯一性,这里的第一设备可以是一个或多个探针设备。本申请中可将N比特的数值作为网络标识,例如N=8,或者N取其他数值。

可选的,在S101的一种可能的实现方式中,第一设备在接收第一报文之前,可发送第二报文。其中,第二报文包括第一设备的网络标识、公网地址和私网地址。相应的,管理平台接收第二报文。其中,第二报文包括第一设备的网络标识、公网地址和私网地址,管理平台由此可获得第一设备的网络标识、公网地址和网地址。

示例性的,该第二报文用于第一设备向管理平台注册,管理平台可据此来获取第一设备的网络标识、公网地址和私网地址。当多个设备(包括第一设备)注册后,管理平台可以存储多个设备与网络标识、公网地址、私网地址和管理信息之间的对应关系,在发送第一报文之前,从该对应关系中获取第一设备的网络标识、公网地址和私网地址。

在另外的示例中,也可通过管理员配置或预配置的方式,将第一设备的网络标识、公网地址和私网地址配置到管理平台,此时S102包括管理平台从本地存储的设备与网络标识、公网地址、私网地址和管理信息之间的对应关系中,获得第一设备的网络标识、公网地址和私网地址。

另外,在第一设备已注册到管理平台的前提下,不再需要发送第二报文。或者也可默认管理平台通过人工配置或预配置的方式获取第一设备的网络标识、公网地址和私网地址。

可选的,管理平台也可以具有网络标识,比如,管理设备的网络标识可配置在第一设备中,或者由管理平台向第一设备指示,具体方法可参见上述说明。第一设备可识别来自于管理平台的消息中携带的网络标识是否是管理平台的网络标识,以进一步提高通信安全性和管理安全性。

S102:管理平台发送第一报文,第一报文包括第一设备的网络标识、公网地址、私网地址和管理信息,该管理信息用于所述第一设备执行管理操作。

S103:第一设备接收第一报文,第一报文包括网络标识、第一设备的公网地址、第一设备的私网地址和管理信息。

S104:第一设备判断网络标识为第一设备的网络标识。

S105:第一设备根据所述管理信息执行管理操作。

采用以上所示的方法注册管理,管理平台能够根据网络标识区分不同网络中的设备,将信息正确的转发到对应设备,当第一设备判断报文中的网络标识是自身的网络标识时,执行报文中管理信息对应的管理操作,可以避免在多个设备具有相同的公网地址、私网地址和端口号时,报文转发错误导致管理操作执行错误的问题,能够提高管理可靠性。

可选的,每一份报文中的数据可以分别在第一设备和管理平台上进行封装和解封装。其中,可通过封装携带第一设备的网络标识。

下面以VxLAN封装为例,说明第一设备通过第二报文携带第一设备的网络标识的方式。例如,第一设备的网络标识可携带在第二报文中的VxLAN头中。

具体的,如图3A所示,第一设备与管理平台之间通过VxLAN报文格式创建隧道,第一设备复用第二报文的VxLAN头部,将保留字段(Reserved)中的部分或全部字段复用为network ID。可选的,VxLAN头部还可包括VxLAN标识旗(VxLAN flags)和/或VNI等字段。也就是说,第一设备向管理平台发送消息前,将原始报文用VxLAN头部封装,将VxLAN中的reserved字段设置为自己的network ID。其中,原始报文包括图3A所示的原始数据(Org data)和原始IP包头(Org IP header)。封装后的报文通过网闸转发至管理平台。相应的,管理平台收到报文。管理平台解封装报文的VxLAN头部,解析VxLAN头部中的network ID,将其与公网IP地址、私网IP地址这三个字段绑定,作为这台设备的注册信息。

同理,管理平台在向第一设备发送管理信息时,可获取第一设备的network ID,之后将携带管理信息的原始报文用VxLAN头部封装,将VxLAN中的reserved字段设置为第一设备的network ID。封装后的报文通过网闸转发至第一设备所在网络,再转发到第一设备。相应的,第一设备收到报文后,解封装报文的VxLAN头部,判断VxLAN头部中的network ID是否与设备本身的network ID一致,并处理管理消息。

在本申请中,网闸还用于地址转换和/或开放端口,以解决设备的端口未开放的情况下,无法发数据出网闸的问题。其中,根据业务需要和安全需要,网闸可能仅开放部分端口用于跨域的通信传输,如图3B所示,网闸只会对目标端口为开放端口的报文进行转发。

可选的,本申请中第一设备确定第三报文的目的端口为网闸的未开放端口,第一设备向网闸发送第四报文,第四报文根据第三报文添加头部获得,头部中携带所述网闸的开放端口标识作为目的端口标识。因此,第一设备在向未开放端口发送报文时,可将目的端口修改为开放端口,以实现发送。

可选的,第一设备可通过人工配置或从管理平台或网闸等节点,获取网闸的开放端口标识和/或未开放端口标识。例如,第一设备将第三报文的外层隧道端口设置为网闸开放端口,以解决跨网闸通信的问题。其中,外层隧道端口可以是第三报文的外层包头(如用户数据报协议(User Datagram Protocol,UDP))中携带网闸的开放端口标识(如源端口和目的端口均为开放端口)。

其中,第三报文可用于携带第一设备与其他设备之间的数据,也可以是前述第一设备的注册过程中的第二报文或管理平台对第一设备的管理过程中的第二报文。例如,第一设备在第三报文的外层再封装一层UDP头,获得第四报文,该UDP头中用于携带网闸的开放端口标识。可选的,UDP头中的源端口标识和目的端口标识分别携带网闸的开放端口的标识。

下面仍以图3A为例,在管理平台的端口为网闸的未开放端口的情况下,说明第一设备向管理平台发送第四报文的过程。其中,这里的第四报文可以携带第一设备的网络标识、公网地址和私网地址,或者说,第四报文可包括第二报文。例如,第一设备在第二报文的基础上封装UDP包头获得第四报文,或者,第四报文为第二报文。

可选的,如图3A所示,第一设备向管理平台发送消息前,将原始报文封装VxLAN包头、UDP包头和外层IP包头(Outer IP header),获得第四报文。其中,外层IP头中,源IP地址(Outer Src.IP)为源设备(即第一设备)的私网IP地址、目的IP地址(Outer Dst.IP)为管理平台的公网IP地址。UDP包头中,源、目的端口分别为网闸开放的源、目的端口。

第一设备将封装后的第四报文发送至网络出口设备,网络出口设备将第四报文的外层IP头中的源地址转换为公网IP地址后,通过网闸转发至管理平台。相应的,管理平台收到报文后,解封装报文的UDP头部,解析报文外层的源IP地址、原始报文中的源IP地址,最终用network ID、公网IP地址和私网IP地址这三个字段作为当前设备的标识。

相应的,管理平台确定第五报文的目的端口为网闸的未开放端口,管理平台向网闸发送第六报文,第六报文根据第五报文添加头部获得,头部中携带网闸的开放端口标识作为目的端口标识。

具体的,第一设备已注册到管理平台的前提下,管理平台在向第一设备发起管理消息时,将原始报文封装一层UDP头。源、目的IP地址分别为管理平台IP地址、第一设备对应的公网IP地址,源、目的端口分别为网闸开放的源、目的端口。封装后的报文通过网闸转发至第一设备所在网络,进行目的地址转换后,转发到第一设备。相应的,第一设备收到报文后,解封装报文的UDP头部,并处理管理消息。

可选的,图4所示为本申请实施例提供的一种基于网闸组网的通信装置(或设备)的模块化结构示意图。其中,图4所示模块化结构中,处理模块401可用于执行处理动作,收发模块402可用于实现通信动作。例如,在通过该结构实现以上方法实施例介绍的管理平台时,处理模块401可用于执行S101,收发模块402可用于执行S102向第一设备发送第一报文。在通过该结构实现以上方法实施例介绍的第一设备时,收发模块402可用于S103所示的接收第一报文,并由处理模块401执行S104和/或S105。具体执行的动作和功能这里不再具体展开,可参照前述方法实施例部分的说明。

示例性的,在通过图4所示结构实现第一设备时,收发模块402可用于接收前述第一报文。处理模块401可用于判断第一报文中携带的网络标识为所述第一设备的网络标识,并根据第一报文中携带的管理信息执行管理操作。

可选的,收发模块402还可用于发送前述第二报文和/或第四报文。

另外,在通过图4所示结构实现管理平台时,处理模块401可用于获取第一设备的网络标识、公网地址和私网地址。收发模块402可用于发送前述第一报文。

可选的,收发模块402还可用于接收前述第二报文和/或第四报文。

图5示出了本申请实施例提供的一种基于网闸组网的通信装置(或设备)结构示意图。

本申请实施例中的电子设备可包括处理器501。处理器501是该装置的控制中心,可以利用各种接口和线路连接该装置的各个部分,通过运行或执行存储在存储器502内的指令以及调用存储在存储器502内的数据。可选的,处理器501可包括一个或多个处理单元,处理器501可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器501中。在一些实施例中,处理器501和存储器502可以在同一芯片上实现,在一些实施例中,它们也可以在独立的芯片上分别实现。

处理器501可以是通用处理器,例如中央处理器(CPU)、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本申请实施例中公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本申请实施例所公开的风险评估系统台所执行的步骤可以直接由硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。

在本申请实施例中,存储器502存储有可被至少一个处理器501执行的指令,至少一个处理器501通过执行存储器502存储的指令,可以用于执行前述基于网闸组网的通信过程。

存储器502作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。存储器502可以包括至少一种类型的存储介质,例如可以包括闪存、硬盘、多媒体卡、卡型存储器、随机访问存储器(Random Access Memory,RAM)、静态随机访问存储器(Static Random Access Memory,SRAM)、可编程只读存储器(Programmable Read Only Memory,PROM)、只读存储器(Read Only Memory,ROM)、带电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、磁性存储器、磁盘、光盘等等。存储器502是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本申请实施例中的存储器502还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令和/或数据。

本申请实施例中,该装置还可以包括通信接口503,电子设备可以通过该通信接口503传输数据。例如电子设备为第一设备,通信接口503可用于向网闸和/或管理平台发放报文。

可选的,可由图5所示处理器501(或处理器501和存储器502)实现图4所示的处理模块401,和/或,由通信接口503实现图4所示的收发模块402。

基于相同的发明构思,本申请实施例还提供一种计算机可读存储介质,其中可存储有指令,当该指令在计算机上运行时,使得计算机执行上述方法实施例提供的操作步骤。该计算机可读存储介质可以是图5所示的存储器502。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献