CN113596118B - 一种桥接两个隔离网域的通信方法、装置和电子设备 - Google Patents
一种桥接两个隔离网域的通信方法、装置和电子设备 Download PDFInfo
- Publication number
- CN113596118B CN113596118B CN202110804389.5A CN202110804389A CN113596118B CN 113596118 B CN113596118 B CN 113596118B CN 202110804389 A CN202110804389 A CN 202110804389A CN 113596118 B CN113596118 B CN 113596118B
- Authority
- CN
- China
- Prior art keywords
- communication
- data
- instance object
- network domain
- queue
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/565—Conversion or adaptation of application format or content
-
- 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
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
Abstract
本发明涉及计算机技术领域,具体涉及一种桥接两个隔离网域的通信方法、装置和电子设备,包括:分别于第一网域、第二网域建立消息队列,并构建第一实例对象、第二实例对象,所述第一实例对象与所述第二实例对象之间通过两条单向不可逆传输通信管道连接;所述第一网域通过传输通信管道将转化后的所述通信数据单向发送至所述第二网域中的所述第二实例对象;所述第二实例对象对所述通信数据进行指令解析,生成响应数据;所述第二实例对象通过传输通信管道将所述响应数据单向发送至所述第一网域中的所述第一实例对象。本发明通过构建通信管道桥接两个隔离网域,使得两个隔离的网域实现双向通信。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种桥接两个隔离网域的通信方法、装置和电子设备。
背景技术
为满足公司规范化流程和安全隔离守则,代码需要通过访问集团网域服务器仓库,而职场范围涵盖的HULK网域与之隔离,在HULK网域中公司产品流水线搭建、部署、发布进行了统一集成,但在产品构建部署过程中仍需要拉取到集团网域仓库的产品源代码或获取系统构建运行状态的实时监控,若重新进行源代码构建将会大量浪费人力资源。
发明内容
本发明提供了一种桥接两个隔离网域的通信方法、装置和电子设备,用以实现两个隔离的网域双向通信。
本说明书实施例提供一种桥接两个隔离网域的通信方法,包括:
分别于第一网域、第二网域建立消息队列,并构建第一实例对象、第二实例对象,所述第一实例对象与所述第二实例对象之间通过两条单向不可逆传输通信管道连接;
所述第一网域通过所述第一实例对象声明通信队列名称,并对通信数据进行转化;
所述第一网域通过传输通信管道将转化后的所述通信数据单向发送至所述第二网域中的所述第二实例对象;
所述第二实例对象对所述通信数据进行指令解析,根据解析后的所述指令进行相对应调用操作、数据处理,生成响应数据;
所述第二实例对象通过传输通信管道将所述响应数据单向发送至所述第一网域中的所述第一实例对象;
所述第二网域对所述响应数据进行检测,并根据检测结果执行相应的操作。
优选的,所述第一网域通过所述第一实例对象声明通信队列名称之前,包括:
所述第二网域对所述第二实例对象进行通用化处理。
优选的,所述对通信数据进行转化,包括:
将所述通信数据转化成二进制流数据。
优选的,所述第一网域将转化后的所述通信数据单向发送至所述第二网域中的所述第二实例对象,包括:
所述第一实例对象基于高级消息队列协议指定所述通信数据的发送地址;
所述第一实例对象通过单向不可逆传输通信管道向所述第二网域中的所述第二实例对象发送通信数据。
优选的,所述生成响应数据,包括:
通过所述调用操作、所述数据处理得到调用数据类型、队列信息;
根据所述调用数据类型、所述队列信息生成返回数据;
对所述返回数据进行数据组装,得到响应数据。
优选的,所述第二网域对所述响应数据进行检测,包括:
检测所述响应数据是否为声明的所述通信队列名称;
当检测所述响应数据为声明的所述通信队列名称时,检测通信队列ID、所述通信队列名称是否属于所述第一网域中消息队列的队列消息。
优选的,所述根据检测结果执行相应的操作,包括:
当通信队列ID、所述通信队列名称属于所述第一网域中消息队列的队列消息时,所述第一网域接收所述响应数据并处理,控制传输通信管道关闭并销毁所述第一实例对象。
本说明书实施例还提供一种桥接两个隔离网域的通信装置,包括:
信息构建模块,分别于第一网域、第二网域建立消息队列,并构建第一实例对象、第二实例对象,所述第一实例对象与所述第二实例对象之间通过两条单向不可逆传输通信管道连接;
数据转化模块,所述第一网域通过所述第一实例对象声明通信队列名称,并对通信数据进行转化;
第一数据发送模块,所述第一网域通过传输通信管道将转化后的所述通信数据单向发送至所述第二网域中的所述第二实例对象;
数据处理模块,所述第二实例对象对所述通信数据进行指令解析,根据解析后的所述指令进行相对应调用操作、数据处理,生成响应数据;
第二数据发送模块,所述第二实例对象通过传输通信管道将所述响应数据单向发送至所述第一网域中的所述第一实例对象;
数据检测模块,所述第二网域对所述响应数据进行检测,并根据检测结果执行相应的操作。
一种电子设备,其中,该电子设备包括:
处理器以及存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行上述任一项所述的方法。
一种计算机可读存储介质,其中,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被处理器执行时,实现上述任一项所述的方法。
本发明通过构建通信管道桥接两个隔离网域,使得两个隔离的网域实现双向通信,避免重复构建产品源代码等信息。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本说明书实施例提供的一种桥接两个隔离网域的通信方法的原理示意图;
图2为本说明书实施例提供的一种桥接两个隔离网域的通信装置的结构示意图;
图3为本说明书实施例提供的一种电子设备的结构示意图;
图4为本说明书实施例提供的一种计算机可读介质的原理示意图。
具体实施方式
现在将参考附图更全面地描述本发明的示例性实施例。然而,示例性实施例能够以多种形式实施,且不应被理解为本发明仅限于在此阐述的实施例。相反,提供这些示例性实施例能够使得本发明更加全面和完整,更加便于将发明构思全面地传达给本领域的技术人员。在图中相同的附图标记表示相同或类似的元件、组件或部分,因而将省略对它们的重复描述。
在符合本发明的技术构思的前提下,在某个特定的实施例中描述的特征、结构、特性或其他细节不排除可以以合适的方式结合在一个或更多其他的实施例中。
在对于具体实施例的描述中,本发明描述的特征、结构、特性或其他细节是为了使本领域的技术人员对实施例进行充分理解。但是,并不排除本领域技术人员可以实践本发明的技术方案而没有特定特征、结构、特性或其他细节的一个或更多。
附图中所示的图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
术语“和/或”或者“及/或”包括相关联的列出项目中的任一个或多者的所有组合。
参照图1为本说明书实施例提供的一种桥接两个隔离网域的通信方法的原理示意图,包括:
S101:分别于第一网域、第二网域建立消息队列,并构建第一实例对象、第二实例对象,所述第一实例对象与所述第二实例对象之间通过两条单向不可逆传输通信管道连接;
在本发明较佳的实施例中,RabbitMQ(Rabbit Message Queue,面向消息的中间件)实现了高级消息队列协议,擅长于解决多系统、异构系统的数据交换。因此在RabbitMQ的基础上,在HULK网域和集团网域两端搭建服务器,分别建立RabbitMQ,并构造其通信对象,同时建立两条单向不可逆传输通信管道,使得HULK网域和集团网域下的通信对象连接起来,两条单向不可逆传输通信管道实现了两个隔离网域间的通信,且避免了单个通信管道造成的数据易混乱现象。其中,HULK网域相当于第一网域,集团网域相当于第二网域,HULK网域和集团网域仅作为实例进行叙述。
S102:所述第一网域通过所述第一实例对象声明通信队列名称,并对通信数据进行转化;
在本发明较佳的实施例中,HULK网域中通过Nodejs构建的服务器,运用构造的RabbitMQ实例对象声明通信队列名称,并将数据转成二进制流数据,通过数据转化的方式将通信数据转化成程序能够识别的语言,便于通讯信息传输和解析。
S103:所述第一网域通过传输通信管道将转化后的所述通信数据单向发送至所述第二网域中的所述第二实例对象;
在本发明较佳的实施例中,第一网域通过高级消息队列协议指定通信数据的发送地址,将通信数据通过单向通信管道发送给集团网域服务器上构造的RabbitMQ实例对象,RabbitMQ实例对象对该通信数据进行接收,实现两个隔离网域之间的通信。
S104:所述第二实例对象对所述通信数据进行指令解析,根据解析后的所述指令进行相对应调用操作、数据处理,生成响应数据;
在本发明较佳的实施例中,在RabbitMQ通信数据实例对象接收到通信数据后,对该通信数据进行指令解析,接收端将根据解析的指令信息进行相对应调用操作和数据处理,并对处理后数据进行组装,得到响应数据。通过上述方式实现两个隔离网域之间的信息调用。
S105:所述第二实例对象通过传输通信管道将所述响应数据单向发送至所述第一网域中的所述第一实例对象;
在本发明较佳的实施例中,第二网域的第二实例对象通过单向传输通信管道将响应数据发送至第一网域中的第一实例对象,实现两个隔离网域之间的通信,同时两个隔离网域均采用单向不可逆的通信管道,节省了数据传输时间,避免了单个通信管道造成的数据易混乱现象。
S106:所述第二网域对所述响应数据进行检测,并根据检测结果执行相应的操作。
在本发明较佳的实施例中,第二网域对接收的响应数据进行判断,判断响应数据中的队列名称是否为声明的通信队列名称,并进一步判断队列ID和通信队列名称是否属于第一网域中消息队列的队列消息,如果是,则进行响应数据接收和处理,处理完毕控制通信管道关闭并销毁实例对象,第一网域服务端RabbitMQ实例对象进入等待时机被再创建,通过以上方式确认响应数据,实现对第二网域的信息调用,同时销毁实例对象节省了存储空间。
进一步地,所述第一网域通过所述第一实例对象声明通信队列名称之前,包括:
所述第二网域对所述第二实例对象进行通用化处理。
在本发明较佳的实施例中,对集团网域服务器的RabbitMQ构建对象进行通用化处理,以满足HULK网域可以提供相应不同类型调用和数据处理。
进一步地,所述对通信数据进行转化,包括:
将所述通信数据转化成二进制流数据。
在本发明较佳的实施例中,数据转成二进制流数据,通过数据转化的方式将通信数据转化成程序能够识别的语言,便于通讯信息传输和解析。
进一步地,所述第一网域将转化后的所述通信数据单向发送至所述第二网域中的所述第二实例对象,包括:
所述第一实例对象基于高级消息队列协议指定所述通信数据的发送地址;
所述第一实例对象通过单向不可逆传输通信管道向所述第二网域中的所述第二实例对象发送通信数据。
在本发明较佳的实施例中,第一网域通过高级消息队列协议指定通信数据的发送地址,将通信数据通过单向不可逆传输通信管道发送给集团网域服务器上构造的RabbitMQ实例对象,RabbitMQ实例对象对该通信数据进行接收,实现两个隔离网域之间的通信。
进一步地,所述生成响应数据,包括:
通过所述调用操作、所述数据处理得到调用数据类型、队列信息;
根据所述调用数据类型、所述队列信息生成返回数据;
对所述返回数据进行数据组装,得到响应数据。
在本发明较佳的实施例中,通过调用操作、数据处理得到调用数据类型、队列信息,然后对调用数据类型、所述队列信息进行处理生成返回数据,左后对返回数据进行数据组装,得到最终的响应数据。通过上述方式实现两个隔离网域之间的信息调用,避免重新构建源代码、系统运行状态实时监控等
进一步地,所述第二网域对所述响应数据进行检测,包括:
检测所述响应数据是否为声明的所述通信队列名称;
当检测所述响应数据为声明的所述通信队列名称时,检测通信队列ID、所述通信队列名称是否属于所述第一网域中消息队列的队列消息。
在本发明较佳的实施例中,第二网域对接收的响应数据进行判断,判断响应数据中的队列名称是否为声明的通信队列名称,并进一步判断队列ID和通信队列名称是否属于第一网域中消息队列的队列消息通过以上方式确认响应数据,通过上述方式确认接收的数据为第一网域所需求的数据,避免接收错误的通信数据。
进一步地,所述根据检测结果执行相应的操作,包括:
当通信队列ID、所述通信队列名称属于所述第一网域中消息队列的队列消息时,所述第一网域接收所述响应数据并处理,控制传输通信管道关闭并销毁所述第一实例对象。
在本发明较佳的实施例中,当通信队列ID、通信队列名称属于第一网域中消息队列的队列消息时,进行响应数据接收和处理,处理完毕控制通信管道关闭并销毁实例对象,第一网域服务端RabbitMQ实例对象进入等待时机被再创建,实现对第二网域的信息调用,同时销毁实例对象节省了存储空间。
在本发明较佳的实施例中,步骤1,在HULK网域和集团网域两端搭建服务器,分别建立RabbitMQ(Rabbit Message Queue,面向消息的中间件)并构造其通信对象,建立两条单向不可逆传输通信管道连接起来;步骤2,集团网域服务器的RabbitMQ构建对象进行通用化处理以满足HULK网域可以相应不同类型调用和数据处理;步骤3,在HULK网域中通过Nodejs构建的服务器,运用构造的RabbitMQ实例对象声明通信队列名称,将数据转成二进制流数据,通过高级消息队列协议指定发送地址,将数据通过管道单向发送给集团网域服务器上构造的RabbitMQ实例对象进行接收;步骤4,在接收到指令信息后,接收端将根据指令信息进行相对应调用操作和数据处理,将处理后的数据单向传输给HULK网域端的RabbitMQ实例对象接收端进行接收;步骤5,接收到返回通道的数据判断是否为发送的队列名称,经判断队列ID和队列名称是否属于该队列消息,如果是的则进行接收和处理,处理完毕控制通信管道关闭并销毁实例对象,Nodejs服务端RabbitMQ实例对象进入等待时机被再创建。
步骤1可以参考上述实施例中对“分别于第一网域、第二网域建立消息队列,并构建第一实例对象、第二实例对象,所述第一实例对象与所述第二实例对象之间通过两条单向不可逆传输通信管道连接;”的描述,步骤2可以参考上述实施例中对“所述第二网域对所述第二实例对象进行通用化处理。”的描述,步骤3可以参考上述实施例中对“所述第一网域通过所述第一实例对象声明通信队列名称,并对通信数据进行转化;所述第一网域通过传输通信管道将转化后的所述通信数据单向发送至所述第二网域中的所述第二实例对象;”的描述,步骤4可以参考上述实施例中对“所述第二实例对象对所述通信数据进行指令解析,根据解析后的所述指令进行相对应调用操作、数据处理,生成响应数据;”的描述,步骤5可以参考上述实施例中对“检测所述响应数据是否为声明的所述通信队列名称;当检测所述响应数据为声明的所述通信队列名称时,检测通信队列ID、所述通信队列名称是否属于所述第一网域中消息队列的队列消息。当通信队列ID、所述通信队列名称属于所述第一网域中消息队列的队列消息时,所述第一网域接收所述响应数据并处理,控制传输通信管道关闭并销毁所述第一实例对象。”的描述。
图2为本说明书实施例提供的一种桥接两个隔离网域的通信装置的结构示意图,包括:
信息构建模块201,分别于第一网域、第二网域建立消息队列,并构建第一实例对象、第二实例对象,所述第一实例对象与所述第二实例对象之间通过两条单向不可逆传输通信管道连接;
数据转化模块202,所述第一网域通过所述第一实例对象声明通信队列名称,并对通信数据进行转化;
第一数据发送模块203,所述第一网域通过传输通信管道将转化后的所述通信数据单向发送至所述第二网域中的所述第二实例对象;
数据处理模块204,所述第二实例对象对所述通信数据进行指令解析,根据解析后的所述指令进行相对应调用操作、数据处理,生成响应数据;
第二数据发送模块205,所述第二实例对象通过传输通信管道将所述响应数据单向发送至所述第一网域中的所述第一实例对象;
数据检测模块206,所述第二网域对所述响应数据进行检测,并根据检测结果执行相应的操作。
进一步地,数据转化模块202包括数据转化子模块,用于将所述通信数据转化成二进制流数据。
进一步地,第一数据发送模块203包括第一数据发送子模块,用于所述第一实例对象基于高级消息队列协议指定所述通信数据的发送地址;所述第一实例对象通过单向不可逆传输通信管道向所述第二网域中的所述第二实例对象发送通信数据。
进一步地,数据处理模块204包括数据生成模块,用于通过所述调用操作、所述数据处理得到调用数据类型、队列信息;根据所述调用数据类型、所述队列信息生成返回数据;对所述返回数据进行数据组装,得到响应数据。
进一步地,数据检测模块206包括数据检测子模块,用于检测所述响应数据是否为声明的所述通信队列名称;当检测所述响应数据为声明的所述通信队列名称时,检测通信队列ID、所述通信队列名称是否属于所述第一网域中消息队列的队列消息。当通信队列ID、所述通信队列名称属于所述第一网域中消息队列的队列消息时,所述第一网域接收所述响应数据并处理,控制传输通信管道关闭并销毁所述第一实例对象。
本发明实施例的装置的功能已经在上述的方法实施例中进行了描述,故本实施例的描述中未详尽之处,可以参见前述实施例中的相关说明,在此不做赘述。
基于同一发明构思,本说明书实施例还提供一种电子设备。
下面描述本发明的电子设备实施例,该电子设备可以视为对于上述本发明的方法和装置实施例的具体实体实施方式。对于本发明电子设备实施例中描述的细节,应视为对于上述方法或装置实施例的补充;对于在本发明电子设备实施例中未披露的细节,可以参照上述方法或装置实施例来实现。
参照图3为本说明书实施例提供的一种电子设备的结构示意图。下面参照图3来描述根据本发明该实施例的电子设备300。图3显示的电子设备300仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图3所示,电子设备300以通用计算设备的形式表现。电子设备300的组件可以包括但不限于:至少一个处理单元310、至少一个存储单元320、连接不同装置组件(包括存储单元320和处理单元310)的总线330、显示单元340等。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元310执行,使得所述处理单元310执行本说明书上述处理方法部分中描述的根据本发明各种示例性实施方式的步骤。例如,所述处理单元310可以执行如图1所示的步骤。
所述存储单元320可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)3201和/或高速缓存存储单元3202,还可以进一步包括只读存储单元(ROM)3203。
所述存储单元320还可以包括具有一组(至少一个)程序模块3205的程序/实用工具3204,这样的程序模块3205包括但不限于:操作装置、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线330可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备300也可以与一个或多个外部设备400(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备300交互的设备通信,和/或与使得该电子设备300能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口350进行。并且,电子设备300还可以通过网络适配器360与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。网络适配器360可以通过总线330与电子设备300的其它模块通信。应当明白,尽管图3中未示出,可以结合电子设备300使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID装置、磁带驱动器以及数据备份存储装置等。
通过以上的实施方式的描述,本领域的技术人员易于理解,本发明描述的示例性实施例可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本发明实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个计算机可读的存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、或者网络设备等)执行根据本发明的上述方法。当所述计算机程序被一个数据处理设备执行时,使得该计算机可读介质能够实现本发明的上述方法,即:如图1所示的方法。
参照图4为本说明书实施例提供的一种计算机可读介质的原理示意图。
实现图1所示方法的计算机程序可以存储于一个或多个计算机可读介质上。计算机可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的装置、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
所述计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行装置、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
综上所述,本发明可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)等通用数据处理设备来实现根据本发明实施例中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,应理解的是,本发明不与任何特定计算机、虚拟装置或者电子设备固有相关,各种通用装置也可以实现本发明。以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (10)
1.一种桥接两个隔离网域的通信方法,其特征在于,包括:
分别于第一网域、第二网域建立消息队列,并构建第一实例对象、第二实例对象,所述第一实例对象与所述第二实例对象之间通过两条单向不可逆传输通信管道连接;
所述第一网域通过所述第一实例对象声明通信队列名称,并对通信数据进行转化;
所述第一网域通过传输通信管道将转化后的所述通信数据单向发送至所述第二网域中的所述第二实例对象;
所述第二实例对象对所述通信数据进行指令解析,根据解析后的所述指令进行相对应调用操作、数据处理,生成响应数据;
所述第二实例对象通过传输通信管道将所述响应数据单向发送至所述第一网域中的所述第一实例对象;
所述第二网域对所述响应数据进行检测,并根据检测结果执行相应的操作。
2.如权利要求1所述的一种桥接两个隔离网域的通信方法,其特征在于,所述第一网域通过所述第一实例对象声明通信队列名称之前,包括:
所述第二网域对所述第二实例对象进行通用化处理。
3.如权利要求1-2中任一项所述的一种桥接两个隔离网域的通信方法,其特征在于,所述对通信数据进行转化,包括:
将所述通信数据转化成二进制流数据。
4.如权利要求1-3中任一项所述的一种桥接两个隔离网域的通信方法,其特征在于,所述第一网域将转化后的所述通信数据单向发送至所述第二网域中的所述第二实例对象,包括:
所述第一实例对象基于高级消息队列协议指定所述通信数据的发送地址;
所述第一实例对象通过单向不可逆传输通信管道向所述第二网域中的所述第二实例对象发送通信数据。
5.如权利要求1-4中任一项所述的一种桥接两个隔离网域的通信方法,其特征在于,所述生成响应数据,包括:
通过所述调用操作、所述数据处理得到调用数据类型、队列信息;
根据所述调用数据类型、所述队列信息生成返回数据;
对所述返回数据进行数据组装,得到响应数据。
6.如权利要求1-5中任一项所述的一种桥接两个隔离网域的通信方法,其特征在于,所述第二网域对所述响应数据进行检测,包括:
检测所述响应数据是否为声明的所述通信队列名称;
当检测所述响应数据为声明的所述通信队列名称时,检测通信队列ID、所述通信队列名称是否属于所述第一网域中消息队列的队列消息。
7.如权利要求1-6中任一项所述的一种桥接两个隔离网域的通信方法,其特征在于,所述根据检测结果执行相应的操作,包括:
当通信队列ID、所述通信队列名称属于所述第一网域中消息队列的队列消息时,所述第一网域接收所述响应数据并处理,控制传输通信管道关闭并销毁所述第一实例对象。
8.一种桥接两个隔离网域的通信装置,其特征在于,包括:
信息构建模块,分别于第一网域、第二网域建立消息队列,并构建第一实例对象、第二实例对象,所述第一实例对象与所述第二实例对象之间通过两条单向不可逆传输通信管道连接;
数据转化模块,所述第一网域通过所述第一实例对象声明通信队列名称,并对通信数据进行转化;
第一数据发送模块,所述第一网域通过传输通信管道将转化后的所述通信数据单向发送至所述第二网域中的所述第二实例对象;
数据处理模块,所述第二实例对象对所述通信数据进行指令解析,根据解析后的所述指令进行相对应调用操作、数据处理,生成响应数据;
第二数据发送模块,所述第二实例对象通过传输通信管道将所述响应数据单向发送至所述第一网域中的所述第一实例对象;
数据检测模块,所述第二网域对所述响应数据进行检测,并根据检测结果执行相应的操作。
9.一种电子设备,其中,该电子设备包括:
处理器以及存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行根据权利要求1-7中任一项所述的方法。
10.一种计算机可读存储介质,其中,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被处理器执行时,实现权利要求1-7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110804389.5A CN113596118B (zh) | 2021-07-16 | 2021-07-16 | 一种桥接两个隔离网域的通信方法、装置和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110804389.5A CN113596118B (zh) | 2021-07-16 | 2021-07-16 | 一种桥接两个隔离网域的通信方法、装置和电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113596118A CN113596118A (zh) | 2021-11-02 |
CN113596118B true CN113596118B (zh) | 2023-07-21 |
Family
ID=78247934
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110804389.5A Active CN113596118B (zh) | 2021-07-16 | 2021-07-16 | 一种桥接两个隔离网域的通信方法、装置和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113596118B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8424019B1 (en) * | 2010-02-19 | 2013-04-16 | Sprint Communications Company L.P. | Managing channel instances in a messaging-middleware environment |
CN104601575A (zh) * | 2015-01-16 | 2015-05-06 | 网神信息技术(北京)股份有限公司 | 基于单向安全隔离网闸的数据传输方法和系统 |
CN112291095A (zh) * | 2020-10-30 | 2021-01-29 | 武汉绿色网络信息服务有限责任公司 | 一种单向物理隔离的数据传输方法与设备 |
CN112839038A (zh) * | 2021-01-04 | 2021-05-25 | 城云科技(中国)有限公司 | 服务器之间单向通信传输数据的方法及系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070168536A1 (en) * | 2006-01-17 | 2007-07-19 | International Business Machines Corporation | Network protocol stack isolation |
US11095725B2 (en) * | 2019-07-30 | 2021-08-17 | EMC IP Holding Company LLC | Transporting data out of isolated network environments |
-
2021
- 2021-07-16 CN CN202110804389.5A patent/CN113596118B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8424019B1 (en) * | 2010-02-19 | 2013-04-16 | Sprint Communications Company L.P. | Managing channel instances in a messaging-middleware environment |
CN104601575A (zh) * | 2015-01-16 | 2015-05-06 | 网神信息技术(北京)股份有限公司 | 基于单向安全隔离网闸的数据传输方法和系统 |
CN112291095A (zh) * | 2020-10-30 | 2021-01-29 | 武汉绿色网络信息服务有限责任公司 | 一种单向物理隔离的数据传输方法与设备 |
CN112839038A (zh) * | 2021-01-04 | 2021-05-25 | 城云科技(中国)有限公司 | 服务器之间单向通信传输数据的方法及系统 |
Non-Patent Citations (1)
Title |
---|
一种具有隔离与信息交换的网络信息安全系统的研究;张小林;网络安全技术与应用;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113596118A (zh) | 2021-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109032706B (zh) | 智能合约执行方法、装置、设备和存储介质 | |
US9569292B2 (en) | Remotable contracts for the web | |
CN111698319B (zh) | 来电自动弹屏方法、装置及系统 | |
JP5362011B2 (ja) | メッセージ処理パイプラインの構成 | |
CN110457132B (zh) | 一种功能对象的创建方法、装置和终端设备 | |
CN113596118B (zh) | 一种桥接两个隔离网域的通信方法、装置和电子设备 | |
WO2024001240A1 (zh) | 多种技术栈的任务集成方法及装置 | |
CN113641354A (zh) | 业务数据处理方法、装置、电子设备及存储介质 | |
CN110275701B (zh) | 数据处理方法、装置、介质和计算设备 | |
CN111966653A (zh) | 微服务调用链路数据处理方法、装置、服务器及存储介质 | |
CN112035270A (zh) | 接口适配方法、系统、装置、计算机可读介质及电子设备 | |
CN114449523B (zh) | 用于卫星测控系统的流量过滤方法、装置、设备及介质 | |
CN113849449A (zh) | 一种通信系统和信息交互方法、设备和介质 | |
CN113141407B (zh) | 一种页面资源加载方法、装置和电子设备 | |
WO2021203343A1 (zh) | Web请求处理方法和装置 | |
CN112929675B (zh) | 一种图像资源的压缩方法、装置和电子设备 | |
CN112905273A (zh) | 一种服务调用方法和装置 | |
KR100494827B1 (ko) | 하드웨어 독립적인 통신 인터페이스를 가지는 분산객체모델 기반의 라디오 서버와 이를 이용한 통신제어방법 | |
CN109660573B (zh) | 数据传输方法和装置 | |
CN115600216B (zh) | 检测方法、装置、设备及存储介质 | |
CN115242422B (zh) | 数据互通处理方法、装置及信息化管理系统 | |
JP4363752B2 (ja) | リバースプロキシーシステム | |
CN111104119A (zh) | 用于存储器中心型计算机的mpi程序转换方法及装置 | |
CN117076160B (zh) | 组件调用方法、装置、设备和存储介质 | |
KR102126896B1 (ko) | 메모리 중심 컴퓨터를 위한 mpi 프로그램 변환 방법 및 장치 |
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 |