CN110336753B - 一种跨网络区域的服务调用方法、装置、设备及存储介质 - Google Patents

一种跨网络区域的服务调用方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN110336753B
CN110336753B CN201910531871.9A CN201910531871A CN110336753B CN 110336753 B CN110336753 B CN 110336753B CN 201910531871 A CN201910531871 A CN 201910531871A CN 110336753 B CN110336753 B CN 110336753B
Authority
CN
China
Prior art keywords
gateway node
network
service
target
network area
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
Application number
CN201910531871.9A
Other languages
English (en)
Other versions
CN110336753A (zh
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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201910531871.9A priority Critical patent/CN110336753B/zh
Publication of CN110336753A publication Critical patent/CN110336753A/zh
Application granted granted Critical
Publication of CN110336753B publication Critical patent/CN110336753B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/54Organization of routing tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/63Routing a service request depending on the request content or context

Landscapes

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

Abstract

本发明涉及一种跨网络区域的服务调用方法、装置、设备及存储介质,所述方法包括:根据目标网络中各网络区域之间的访问关系,构建分别设置在各网络区域中的网关节点之间的路由关系,生成路由表;当检测到服务请求时,确定所述服务请求的发起方所在的网络区域为第一网络区域以及起始网关节点;其中,所述服务请求包括服务标识;当在所述起始网关节点处查找到所述服务标识时,确定与所述服务标识对应的目标服务所在的网络区域为第二网络区域以及目标网关节点;根据所述路由表,将所述服务请求从所述起始网关节点转发到所述目标网关节点。本发明实现不同网络区域的网络互连以及服务转发,提高了业务开发效率以及业务的安全性。

Description

一种跨网络区域的服务调用方法、装置、设备及存储介质
技术领域
本发明涉及通信技术领域,尤其涉及一种跨网络区域的服务调用方法、装置、设备及存储介质。
背景技术
由于数据密级程度不同的原因或者是业务隔离的原因,机构内部通常会设置多个网络区域,传统服务相互请求通常只能在策略相通的网络区域内进行相互转发。如果需要跨网络区域,则需要单独开通路由策略,策略开通有如下弊端:
防火墙策略是有数量限制的,防火墙的策略数量会随着服务之间相互连接的数量增加而指数级上升;另外防火墙的策略基于IP+port,现在微服务的兴起导致策略都是大段大段的开通,已经失去了控制的意义,因为微服务的IP是不固定的;
服务之间相互开通策略,必然会涉及网络区域之间相互转发路由的问题,对于一些网络区域较多,且网络区域隔离策略复杂的机构来说,这无疑会对应用开发者增加十分大的非业务任务,且对网络维护人员来说也是一个艰巨的任务。一旦网络传输结构变更,所有已经申请策略的业务需要重新变更策略;
对于单纯的网络转发,没有按应用控制和服务安全限制的能力。
发明内容
本发明所要解决的技术问题在于,提供一种跨网络区域的服务调用方法、装置、设备及存储介质,能够通过设置各网络区域的网关节点之间的路由策略,实现不同网络区域的网络互连以及服务转发,提高了业务开发效率以及业务的安全性。
为了解决上述技术问题,第一方面,本发明提供了一种跨网络区域的服务调用方法,包括:
根据目标网络中各网络区域之间的访问关系,构建分别设置在各网络区域中的网关节点之间的路由关系,根据所述路由关系生成路由表;
当在所述目标网络中检测到服务请求时,确定所述服务请求的发起方所在的网络区域为第一网络区域,以及确定所述第一网络区域的网关节点为起始网关节点;其中,所述服务请求包括服务标识;
当在所述起始网关节点处查找到所述服务标识时,确定与所述服务标识对应的目标服务所在的网络区域为第二网络区域,以及确定所述第二网络区域的网关节点为目标网关节点;
根据所述路由表,将所述服务请求从所述起始网关节点转发到所述目标网关节点。
第二方面,本发明提供了一种跨网络区域的服务调用装置,包括:
路由表生成模块,用于根据目标网络中各网络区域之间的访问关系,构建分别设置在各网络区域中的网关节点之间的路由关系,根据所述路由关系生成路由表;
起始节点确定模块,用于当在所述目标网络中检测到服务请求时,确定所述服务请求的发起方所在的网络区域为第一网络区域,以及确定所述第一网络区域的网关节点为起始网关节点;其中,所述服务请求包括服务标识;
目标节点确定模块,用于当在所述起始网关节点处查找到所述服务标识时,确定与所述服务标识对应的目标服务所在的网络区域为第二网络区域,以及确定所述第二网络区域的网关节点为目标网关节点;
请求转发模块,用于根据所述路由表,将所述服务请求从所述起始网关节点转发到所述目标网关节点。
第三方面,本发明提供了一种设备,所述设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如第一方面所述的跨网络区域的服务调用方法。
第四方面,本发明提供了一种计算机存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行如第一方面所述的跨网络区域的服务调用方法。
实施本发明实施例,具有如下有益效果:
本发明通过为目标网络下的每个网络区域分别设置网关节点,并根据各网络区域之间的访问关系,生成个路由表;当在目标网络中检测到服务请求时,确定服务请求发起的网络区域,并确定发起服务请求的网路区域的网关节点为起始网关节点;当根据服务标识在起始节点处查找到该服务时,确定与服务标识对应的目标服务所在的网络区域为第二网络区域,其网关节点为目标网关节点;根据路由表,将服务请求从起始节点转发到目标网关节点。本发明通过建立各网络区域的网关节点的路由表,开通各网关节点的路由策略,实现不同网络区域的网络互连以及服务转发、调用,并且降低了网络策略的申请数量,提高了业务开发效率以及业务的安全性
附图说明
图1是本发明实施例提供的应用场景示意图;
图2是本发明实施例提供的一种跨网络区域的服务调用方法流程图;
图3是本发明实施例提供的一种路由表的方法流程图;
图4是本发明实施例提供的网关节点的部署结构示意图;
图5是本发明实施例提供的一种服务请求转发方法流程图;
图6是本发明实施例提供的服务部署及服务调用示意图;
图7是本发明实施例提供的服务请求转发过程流程图;
图8是本发明实施例提供的一种服务请求处理方法流程图;
图9是本发明实施例提供的一种服务访问控制方法流程图;
图10是本发明实施例提供的第一配置界面示意图;
图11是本发明实施例提供的第二配置界面示意图;
图12是本发明实施例提供的访问过程示意图;
图13是本发明实施例提供的一种跨网络区域的服务调用装置示意图;
图14是本发明实施例提供的路由表生成模块示意图;
图15是本发明实施例提供的请求转发模块示意图;
图16是本发明实施例提供的请求处理模块示意图;
图17是本发明实施例提供的访问控制模块示意图;
图18是本发明实施例提供的一种设备结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述。显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明的描述中,需要理解的是,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。而且,术语“第一”、“第二”等适用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。
请参见图1,其示出了本发明实施例提供的一种应用场景示意图,该场景中包括若干相互独立的网络区域,若干请求端110和若干服务端120,可根据网络配置为不同的网络区域部署相关的服务端120,当某一网络区域的请求端110发起服务请求时,请求端110所在的网络区域并没有部署相应的服务,此时会将该服务请求转发到其他部署了该服务的网络区域中,由该网络区域中的服务端120为请求端110提供服务。
其中,请求端110可以包括智能手机、台式电脑、平板电脑、笔记本电脑、数字助理、智能可穿戴设备等类型的实体设备,也可以包括运行于实体设备中的软体,本发明实施例中请求端110上运行的操作系统可以包括但不限于安卓系统、IOS系统、linux、windows等。
服务端120可以包括一个独立运行的服务器,或者分布式服务器,或者由多个服务器组成的服务器集群,其中服务器可以是云端服务器。
在图1所示的应用场景中,网络管理服务器可在每个网络区域中分别架设网关节点,并通过设置各网关节点之间的路由策略,可实现服务的跨区域调用,使得服务调用方可调用与服务调用方不在同一网络区域中的服务。
对于不同网络区域之间的服务调用及请求转发,现有的技术方案将网络设备上的控制权分离出来,由集中的控制器管理,无需依赖底层网络设备,屏蔽了来自底层网络设备的差异。现有的技术方案对于网络路由和传输规则的策略存在以下问题:
无法降低任何服务之间相互调用需要申请大量的路由策略的需求;现有的技术方案是作用在网络层面的,无法与应用程序自动路由结合起来;无法管理不同网关区域之间策略对服务安全性的问题,如策略已经申请,但是业务迁移后忘记废弃该策略,则重复利用旧机器的业务就在不知道的情况下收到其他网络发起的请求。
为了解决上述问题,本发明实施例提供了一种跨网络区域的服务调用方法,请参见图2,所述方法包括:
S210.根据目标网络中各网络区域之间的访问关系,构建分别设置在各网络区域中的网关节点之间的路由关系,根据所述路由关系生成路由表。
这里的目标网络可以是一个由多个数据密级程度不同,或者是业务相互隔离的网络区域构成的网络,即是对多个网络区域的统称。由于本实施例中所提供的服务调用方法是针对跨网络区域的,所以这里的目标网络下至少包括两个网络区域,这样才可能实现服务的跨区域调用。
网络管理服务器在每个网络区域中分别设置网关节点,每个网络区域的网关节点是实现与其他网络区域进行网络互连以及服务转发的关键。
各网络区域的访问关系可以根据用户需求进行自行设定,根据各区域的访问关系生成路由表的方法可参见图3,所述方法包括:
S310.对所述目标网络下的各网络区域进行两两组合,得到若干网络区域组。
假设有a,b,c,d四个网络区域,网络管理服务器对其进行两两组合,得到ab,ac,ad,bc,bd,cd六个网络区域组。
S320.遍历所述网络区域组,对每个所述网络区域组中的两个网络区域之间的访问关系进行分析。
根据预先对网络的设定,网络管理服务器分析上述六个网络区域组是否存在访问关系,以及是如何进行访问的。
S330.当所述两个网络区域之间存在直接访问关系时,建立所述两个网络区域的网关节点的直接路由关系。
假设对于ab组合,网络区域a可以直接访问网络区域b,网络管理服务器则建立网络区域a的网关节点与网络区域b的网关节点的直接路由关系,即a的网关节点→b的网关节点。
S340.当所述两个网络区域之间存在间接访问关系时,建立所述两个网络区域的网关节点的间接路由关系。
假设对于ac组合,网络区域a可以访问网络区域c,但是需要经过网络区域b,网络管理服务器则建立网络区域a的网关节点与网络区域c的间接路由关系,即a的网关节点→b的网关节点→c的网关节点。
S350.根据建立的所述路由关系,生成所述路由表。
网络管理服务器根据建立的直接路由关系和间接路由关系,生成各网络区域的网关节点的路由表。
需要说明的是,在上述路由表的生成过程中对网络区域组的访问关系进行分析时,当任意两个网络区域不存在访问关系时,则这两个网络区域的网关节点之间没有路由路径。
另外,在生成路由表之后,网络管理服务器需要检验每条路由不能有重复的网关节点,保证不会出现环路。
具体地,本实施例中,假设用户服务网络分为四个密级的网络区域,分别是互联网、IDC(Internet Data Center,互联网数据中心)、OSS(Operation Support System,运营支撑系统)以及OA网络,其中可设定:互联网可访问IDC、IDC可访问互联网、OA可访问IDC和互联网,IDC可访问OA,OA和IDC之间需要经过OSS,互联网和OSS不能互相访问,并对四个网络区域的网关节点做如下配置:
1.网关节点A位于OA区;
2.网关节点B位于OSS区;
3.网关节点C位于IDC区;
4.网关节点D位于互联网区。
其相应的实现代码如下所示:
{
A:{
ID:A
Name:OA
},
B:{
ID:B
Name:OSS
},
C:{
ID:C
Name:IDC
},
互联网:{
ID:D
Name:互联网
}
}
根据各网络区域之间的访问关系,进行网关节点的部署图如图4所示,从图中可以看出:
互联网可访问IDC:D到C有直接路由;
IDC可访问互联网:C到D有直接路由;
IDC可访问OA,OA和IDC之间需要经过OSS:C到A有间接路由;
OA可访问IDC和互联网,OA和IDC之间需要经过OSS,互联网和OSS不能互相访问:A到C有间接路由,A到D有间接路由。
网络管理服务器根据上述的访问关系,建立的路由表如下:
{
D->C,
C->D,
C->B->A,
A->B->C,
A->B->C->D
}
当上述路由表生成之后,网络管理服务器需要对每个网关节点进行配置,将该路由表下发给各网络区域的网关节点,即每个网关节点处都存有这样一份路由表,便于在进行跨网络服务时,该网关节点可自行判断其与哪些网关节点存在路由关系。
S220.当在所述目标网络中检测到服务请求时,确定所述服务请求的发起方所在的网络区域为第一网络区域,以及确定所述第一网络区域的网关节点为起始网关节点;其中,所述服务请求包括服务标识。
在进行跨网络区域的服务调用之前,网络管理服务器对于所述目标网络下的每个网络区域,预先将预设服务的服务标识存储在所述网络区域的网关节点中;其中,所述网关节点与所述预设服务所在的网络区域的网关节点之间存在路径。另外,网络管理服务器还需要预先对服务进行部署,即对某一个服务,确定将其部署在哪一个网络区域中,一个服务可以由多个服务调用方通过跨网络区域进行调用。
例如,对于网关节点A来说,在其自己的规则表中存储了所有需要经过网关节点A的服务信息,存储服务信息可以包括服务标识,以及服务的具体描述信息。这样,在服务请求到达网关节点A时,网关节点A可以判断通过当前网关节点是否可以调用到目标服务。
这里的服务请求可以是由任一网络区域的服务调用方发出的,这里的服务调用方可以是指通过相关客户端发出请求的用户,也可以是指安装在相关设备中的应用客户端或者终端等。在网络管理服务器检测到服务请求时,首先需要确定发出该服务请求的服务调用方所在的网络区域,以便于对该网络区域的网关节点进行服务以及路径的分析。
S230.当在所述起始网关节点处查找到所述服务标识时,确定与所述服务标识对应的目标服务所在的网络区域为第二网络区域,以及确定所述第二网络区域的网关节点为目标网关节点。
当网络管理服务器在起始网关节点处查找到了服务标识时,说明通过起始网关节点可以调用到目标服务。根据所述服务标识以及服务部署的规则,可以查找到该服务标识对应的目标服务被预先部署在了哪个网络区域。
当在所述起始网关节点处没有查找到所述服务标识时,判定不存在从所述起始网关节点到所述目标网关节点的路径。
S240.根据所述路由表,将所述服务请求从所述起始网关节点转发到所述目标网关节点。
确定了目标服务所在的第二网络区域之后,网络管理服务器可以在起始节点处查找起始网关节点到目标网关节点的路由信息,根据查找到的起始网关节点到目标网关节点的路由信息,可以将服务请求从起始网关节点转发到目标网关节点。
具体地,请参见图5,其示出了一种服务请求转发方法,所述方法包括:
S510.在所述路由表中,查找以所述服务请求所在的当前网关节点为起点,以所述目标网关节点为终点的目标路径。
S520.判断所述当前网关节点是否为所述目标网关节点。
S530.当所述当前网关节点不是所述目标网关节点时,根据所述目标路径查找所述当前网关节点的下一网关节点,将所述服务请求转发给所述下一网关节点,并确定所述下一网关节点为当前网关节点,并重复查找判断步骤。
S540.当所述当前网关节点是所述目标网关节点时,确定当前网关节点为目标网关节点。
具体地,以一具体示例来说明服务请求的转发过程,请参见图6,其中包括四个网络区域,分别是互联网区、IDC区、OSS区以及OA区,服务被部署在互联网区,其中,可通过网络管理服务器设置各网络区域网关节点的路由策略、部署相关服务、转发服务请求,以及返回目标数据等。对照图6,其具体步骤如图7所示:
S710.向所有网络区域的网关节点下发路由表。
S720.当检测到服务请求时,确定服务请求是由OA区发出的,且请求服务SRV,判断请求头中是否有起止网关节点;
当请求头中没有起止网关节点时,跳转到步骤S730;
但请求头中有起止网关节点时,跳转到步骤S750。
S730.在OA区的网关节点A处查找服务SRV,判断是否能够查找到服务SRV;网关节点A收到的服务请求可以是由OA区的任意一个应用发起的。
当没有查找到服务SRV时,说明没有从网关节点A到服务SRV的任何路由路径,拒绝提供服务;
当查找到服务SRV时,跳转到步骤S740。
S740.查找服务SRV所在的网络区域,查找该网络区域所对应的目标网关节点编号。
S750.判断服务请求所在的当前网关节点是否为目标网关节点D;
若当前网关节点为目标网关节点D,本次请求结束;
若当前网关节点不为目标网关节点D,跳转到步骤S760。
S760.找到从A到D的路径A->B->C->D,并在请求头中添加起止网关节点A->D。
S770.根据路由表查找的路径,将服务请求转发到当前网关节点的下一网关节点,以使得下一网关节点收到服务请求,重复步骤S720,直至当前网关节点为目标网关节点D。
通过以上步骤,在OA区发出的服务请求可以被成功地转发到服务了服务所部署区域互联网区,从而实现了服务请求的跨区域转发。
在服务请求被转发到目标网关节点之后,还需要根据服务请求提供相应的服务,具体地,可参见图8,其示出了一种服务请求处理方法,所述方法包括:
S810.将所述服务请求转发给所述目标服务,以使得所述目标服务根据所述服务请求向所述目标网关节点返回相应的目标数据。
由于真正提供服务的是部署在第二网络区域中的目标服务,所以在服务请求转发到目标网关节点之后,网络管理服务器需要将该服务请求转发给目标服务,目标服务在接收到服务请求之后,根据服务请求的具体信息,提供相应的服务,比如返回相应的目标数据等操作。
S820.将所述目标数据由所述目标网关节点返回到所述起始网关节点,其中,所述目标数据的返回路径是所述服务请求的转发路径的逆向路径。
由于服务请求发起方所在的网络区域和目标服务所在的网络区域不在同一个网络区域,所以在目标服务响应了服务请求之后,提供的相关目标数据也需要通过跨网络区域的方式转发给服务请求发起方。
具体地,目标服务响应于服务请求之后所提供的目标数据首先返回给目标网关节点,网络管理服务器通过之前服务请求转发路径的逆向路径将目标数据从目标网关节点转发到起始网关节点,例如,服务请求转发路径为:A->B->C->D,则目标数据返回的逆向路径为:D->C->B->A。当目标数据被转发到起始节点之后,起始节点将目标数据返回给相应的服务发起方。
通过以上的服务请求处理方法,使得不和目标服务处于同一网络区域的服务发起方可以通过跨网络区域转发的方式得到相应的服务。
另外,为了安全或者网络设置的考虑,对于某些服务可能不想被某些网络区域中的服务发起方调用,需要对其进行控制,因此,本发明的跨网络区域的服务调用方法还可以包括一种服务访问控制方法,请参见图9,所述方法包括:
S910.为所述目标服务建立访问控制列表。
对于每项服务,网络管理服务器可以提前设置不可访问该项服务的相关网络区域或者网络节点,并形成访问控制列表,便于在接收到服务请求时,目标服务自行进行判断。
S920.当从所述起始网关节点到所述目标网关节点的路径中的至少一个网关节点存在于所述访问控制列表中时,控制所述目标服务拒绝响应所述服务请求。
当服务请求到达目标网关节点并转发给目标服务时,只要从起始网关节点到目标网关节点的路径中的一个网关节点存在于目标服务的访问控制列表中,网络管理服务器就会控制目标服务拒绝响应该服务请求。例如,存在a,b,c三个网络区域,其中网络区域c中部署有某项服务,设置网络区域c中的服务不允许从网络区域a发起的服务请求,则可以指定访问策略为不允许从网络区域a到网络区域c有任何路径,否则拒绝请求。
需要说明的是,网络管理服务器除了可以对目标服务的访问策略进行设置,也可以对网关节点的访问策略进行设置,例如当服务请求到达目标网关节点时,根据目标网关节点的访问策略,设置当路由从某个网关节点发起或者中间路由时经历了某一网关节点即拒绝访问。
上述访问控制方法为应用间提供访问策略,允许业务自定义允许发起访问的请求发起区域,业务和网络控制相结合,提高业务的安全性。
下面以一具体示例来说明本发明的具体应用过程。
首先基于网络情况进行配置设定,假设服务网络包括四个密级的网络,分别是互联网、IDC、OSS和OA,网络规定:OSS不允许部署服务,只能用作转发;IDC和OA、互联网和OA都不允许有直连通路;所有通路都需要经过OSS。
接下来网络管理服务器进行管理配置,其具体配置可参见图10,从中可看出,配置互联网、IDC、OA为服务可以部署的网络区域。
然后根据用户需求填写服务实际部署的网络区域,如图11所示,从中可以看出,可通过图中的可选框选择本次服务部署的网络区域,这里假设服务部署在IDC区。
网络管理服务器部署好相关服务以及设置好路由策略之后,服务调用方就可以进行服务访问,具体访问过程可参见图12,服务调用方可以从任意一个网络区域发起请求,网关节点会根据配置的路由过程自动转发请求到服务实际部署的区域。在这个过程中,从服务调用方的角度来看,服务调用方无需关心服务发布方实际部署在哪里,也无需申请路由策略,只需要调用与服务调用方在同一网络区域的网关节点即可。当服务发布方响应响应于服务请求并提供相应的数据时,网关节点会根据实际路由,将数据返回到调用方的网络。
由上可知,在使用本发明之前,需要在各网络区域部署服务,并确定网关节点之间转发的路由方式。本发明所有网关节点之间的路由方式可以任意指定,可以指定任意一个网关节点不能接受服务请求,只允许链路转发,可视具体情况而定。
上述的跨网络区域的服务调用方法提供了一种跨多网络提供应用层转发路由的技术,通过在不同网络区域设置网关节点,开通网关节点之间的路由策略区完成不同网络的互连以及对来自源节点的路由请求、广播响应和级联寻址,应用无需关心隔离问题;并且所有的路由请求和寻址过程都可以随着网络区域的要求,通过统一的配置更改。从而,通过本发明,只开通智能网关之间的网络策略,大大降低网络策略申请和管理的诉求;对上层应用屏蔽网络区域的鸿沟,达到在网络区域之间服务相互调用的目的;为应用间提供访问策略,允许业务自定义允许发起访问的请求发起区域,业务和网络控制相结合,大大提高业务开发效率的同时提高业务的安全性。
本发明可以应用于具有多个网络区域且和网络区域之间相互隔离的应用场景中,例如,在政府内部存在互联网、政务外网、公安内网等网络,每个网络都是隔离的,不能互相调用,如需要调用则需要开通策略。而政府数字化转型会带来各个不同网络的业务之间相互调用的问题,应用了本发明,可以在互联网、政务外网、公安内网等网络部署本方案,将所有网络的应用都统一纳管到一个平台,在不同应用互相调用的时候可以不需要处理不同网络之间调用的问题。
相应地,本发明实施例还提供了一种跨网络区域的服务调用装置,请参见图13,所述装置包括:
路由表生成模块1310,用于根据目标网络中各网络区域之间的访问关系,构建分别设置在各网络区域中的网关节点之间的路由关系,根据所述路由关系生成路由表。
起始节点确定模块1320,用于当在所述目标网络中检测到服务请求时,确定所述服务请求的发起方所在的网络区域为第一网络区域,以及确定所述第一网络区域的网关节点为起始网关节点;其中,所述服务请求包括服务标识。
目标节点确定模块1330,用于当在所述起始网关节点处查找到所述服务标识时,确定与所述服务标识对应的目标服务所在的网络区域为第二网络区域,以及确定所述第二网络区域的网关节点为目标网关节点。
请求转发模块1340,用于根据所述路由表,将所述服务请求从所述起始网关节点转发到所述目标网关节点。
请参见图14,所述路由表生成模块1320包括:
组合模块1410,用于对所述目标网络下的各网络区域进行两两组合,得到若干网络区域组。
遍历模块1420,用于遍历所述网络区域组,对每个所述网络区域组中的两个网络区域之间的访问关系进行分析。
第一建立模块1430,用于当所述两个网络区域之间存在直接访问关系时,建立所述两个网络区域的网关节点的直接路由关系。
第二建立模块1440,用于当所述两个网络区域之间存在间接访问关系时,建立所述两个网络区域的网关节点的间接路由关系。
第一生成模块1450,用于根据建立的所述路由关系,生成所述路由表。
所述跨网络区域的服务调用装置还包括:
判定模块,用于当在所述起始网关节点处没有查找所述服务标识时,判定不存在从所述起始网关节点到所述目标网关节点的路径。
请参见图15,所述请求转发模块1350包括:
目标路径查找模块1510,用于在所述路由表中,查找以所述服务请求所在的当前网关节点为起点,以所述目标网关节点为终点的目标路径。
判断模块1520,用于判断所述当前网关节点是否为所述目标网关节点。
转发、确定模块1530,用于当所述当前网关节点不是所述目标网关节点时,根据所述目标路径查找所述当前网关节点的下一网关节点,将所述服务请求转发给所述下一网关节点,并确定所述下一网关节点为当前网关节点。
重复操作模块1540,用于重复上述查找判断步骤,直至当前网关节点为所述目标网关节点。
所述跨网络区域的服务调用装置还包括:
服务标识存储模块,用于在所述起始网关节点处查找所述服务标识之前,对于所述目标网络下的每个网络区域,预先将预设服务的服务标识存储在所述网络区域的网关节点中;其中,所述网关节点与所述预设服务所在的网络区域的网关节点之间存在路径。
请参见图16,所述跨网络区域的服务调用装置还包括请求处理模块,所述请求处理模块包括:
第一转发模块1610,用于将所述服务请求转发给所述目标服务,以使得所述目标服务根据所述服务请求向所述目标网关节点返回相应的目标数据。
第一返回模块1620,用于将所述目标数据由所述目标网关节点返回到所述起始网关节点,其中,所述目标数据的返回路径是所述服务请求的转发路径的逆向路径。
请参见图17,所述跨网络区域的服务调用装置还可以包括访问控制模块,所述访问控制模块包括:
控制列表建立模块1710,用于为所述目标服务建立访问控制列表。
第一控制模块1720,用于当从所述起始网关节点到所述目标网关节点的路径中的至少一个网关节点存在于所述访问控制列表中时,控制所述目标服务拒绝响应所述服务请求。
上述实施例中提供的装置可执行本发明任意实施例所提供方法,具备执行该方法相应的功能模块和有益效果。未在上述实施例中详尽描述的技术细节,可参见本发明任意实施例所提供的方法。
本实施例还提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行本实施例上述的任一方法。
本实施例还提供了一种设备,其结构图请参见图18,该设备1800可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processingunits,CPU)1822(例如,一个或一个以上处理器)和存储器1832,一个或一个以上存储应用程序1842或数据1844的存储介质1830(例如一个或一个以上海量存储设备)。其中,存储器1832和存储介质1830可以是短暂存储或持久存储。存储在存储介质1830的程序可以包括一个或一个以上模块(图示未示出),每个模块可以包括对设备中的一系列指令操作。更进一步地,中央处理器1822可以设置为与存储介质1830通信,在设备1800上执行存储介质1830中的一系列指令操作。设备1800还可以包括一个或一个以上电源1826,一个或一个以上有线或无线网络接口1850,一个或一个以上输入输出接口1858,和/或,一个或一个以上操作系统1841,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。本实施例上述的任一方法均可基于图18所示的设备进行实施。
本说明书提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤和顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的系统或中断产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。
本实施例中所示出的结构,仅仅是与本申请方案相关的部分结构,并不构成对本申请方案所应用于其上的设备的限定,具体的设备可以包括比示出的更多或更少的部件,或者组合某些部件,或者具有不同的部件的布置。应当理解到,本实施例中所揭露的方法、装置等,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分仅仅为一种逻辑功能的划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元模块的间接耦合或通信连接。
基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域技术人员还可以进一步意识到,结合本说明书所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但这种实现不应认为超出本发明的范围。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (10)

1.一种跨网络区域的服务调用方法,其特征在于,包括:
根据目标网络中各网络区域之间的访问关系,构建分别设置在各网络区域中的网关节点之间的路由关系,根据所述路由关系生成路由表;每个网络区域的网关节点实现与其他网络区域进行网络互连以及服务转发;
当在所述目标网络中检测到服务请求时,确定所述服务请求的发起方所在的网络区域为第一网络区域,以及确定所述第一网络区域的网关节点为起始网关节点;其中,所述服务请求包括服务标识;
当在所述起始网关节点处查找到所述服务标识时,确定与所述服务标识对应的目标服务所在的网络区域为第二网络区域,以及确定所述第二网络区域的网关节点为目标网关节点;
根据所述路由表,将所述服务请求从所述起始网关节点转发到所述目标网关节点。
2.根据权利要求1所述的一种跨网络区域的服务调用方法,其特征在于,所述根据各网络区域之间的访问关系,构建各网络区域的所述网关节点之间的路由关系,根据所述路由关系生成路由表包括:
对所述目标网络下的各网络区域进行两两组合,得到若干网络区域组;
遍历所述网络区域组,对每个所述网络区域组中的两个网络区域之间的访问关系进行分析;
当所述两个网络区域之间存在直接访问关系时,建立所述两个网络区域的网关节点的直接路由关系;
当所述两个网络区域之间存在间接访问关系时,建立所述两个网络区域的网关节点的间接路由关系;
根据建立的所述路由关系,生成所述路由表。
3.根据权利要求1所述的一种跨网络区域的服务调用方法,其特征在于,所述在所述起始网关节点处查找所述服务标识之前还包括:
对于所述目标网络下的每个网络区域,预先将预设服务的服务标识存储在所述网络区域的网关节点中;其中,所述网关节点与所述预设服务所在的网络区域的网关节点之间存在路径。
4.根据权利要求1所述的一种跨网络区域的服务调用方法,其特征在于,所述根据所述路由表,将所述服务请求从所述起始网关节点转发到所述目标网关节点包括:
在所述路由表中,查找以所述服务请求所在的当前网关节点为起点,以所述目标网关节点为终点的目标路径;
判断所述当前网关节点是否为所述目标网关节点;
当所述当前网关节点不是所述目标网关节点时,根据所述目标路径查找所述当前网关节点的下一网关节点,将所述服务请求转发给所述下一网关节点,并确定所述下一网关节点为当前网关节点;
重复上述查找判断步骤,直至当前网关节点为所述目标网关节点。
5.根据权利要求4所述的一种跨网络区域的服务调用方法,其特征在于,所述将所述服务请求从所述起始网关节点转发到所述目标网关节点之后还包括:
将所述服务请求转发给所述目标服务,以使得所述目标服务根据所述服务请求向所述目标网关节点返回相应的目标数据;
将所述目标数据由所述目标网关节点返回到所述起始网关节点,其中,所述目标数据的返回路径是所述服务请求的转发路径的逆向路径。
6.根据权利要求1所述的一种跨网络区域的服务调用方法,其特征在于,所述方法还包括:
当在所述起始网关节点处没有查找所述服务标识时,判定不存在从所述起始网关节点到所述目标网关节点的路径。
7.根据权利要求1所述的一种跨网络区域的服务调用方法,其特征在于,所述方法还包括:
为所述目标服务建立访问控制列表;
当从所述起始网关节点到所述目标网关节点的路径中的至少一个网关节点存在于所述访问控制列表中时,控制所述目标服务拒绝响应所述服务请求。
8.一种跨网络区域的服务调用装置,其特征在于,包括:
路由表生成模块,用于根据目标网络中各网络区域之间的访问关系,构建分别设置在各网络区域中的网关节点之间的路由关系,根据所述路由关系生成路由表;每个网络区域的网关节点实现与其他网络区域进行网络互连以及服务转发;
起始节点确定模块,用于当在所述目标网络中检测到服务请求时,确定所述服务请求的发起方所在的网络区域为第一网络区域,以及确定所述第一网络区域的网关节点为起始网关节点;其中,所述服务请求包括服务标识;
目标节点确定模块,用于当在所述起始网关节点处查找到所述服务标识时,确定与所述服务标识对应的目标服务所在的网络区域为第二网络区域,以及确定所述第二网络区域的网关节点为目标网关节点;
请求转发模块,用于根据所述路由表,将所述服务请求从所述起始网关节点转发到所述目标网关节点。
9.一种设备,其特征在于,所述设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求1至7任一项所述的跨网络区域的服务调用方法。
10.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行如权利要求1至7任一项所述的跨网络区域的服务调用方法。
CN201910531871.9A 2019-06-19 2019-06-19 一种跨网络区域的服务调用方法、装置、设备及存储介质 Active CN110336753B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910531871.9A CN110336753B (zh) 2019-06-19 2019-06-19 一种跨网络区域的服务调用方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910531871.9A CN110336753B (zh) 2019-06-19 2019-06-19 一种跨网络区域的服务调用方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN110336753A CN110336753A (zh) 2019-10-15
CN110336753B true CN110336753B (zh) 2021-10-22

Family

ID=68142118

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910531871.9A Active CN110336753B (zh) 2019-06-19 2019-06-19 一种跨网络区域的服务调用方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN110336753B (zh)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110971680B (zh) * 2019-11-22 2022-01-28 拉扎斯网络科技(上海)有限公司 通信方法、装置、系统、电子设备及可读存储介质
CN111464592B (zh) * 2020-03-09 2023-07-25 平安科技(深圳)有限公司 基于微服务的负载均衡方法、装置、设备及存储介质
CN111629029B (zh) * 2020-04-17 2023-06-20 金蝶软件(中国)有限公司 服务发布方法和系统
CN112165431B (zh) * 2020-06-09 2022-04-12 上海金融期货信息技术有限公司 一种低延时微服务路由管理系统
CN111935083B (zh) * 2020-06-29 2022-08-09 飞诺门阵(北京)科技有限公司 一种业务处理方法、装置、电子设备及存储介质
CN112153021B (zh) * 2020-09-10 2023-05-19 中国联合网络通信集团有限公司 一种业务数据的获取方法及装置
CN114531492B (zh) * 2020-11-05 2024-05-10 网联清算有限公司 服务调用方法、装置、存储介质及计算机设备
CN112615786B (zh) * 2020-12-04 2023-04-04 北京神州泰岳软件股份有限公司 路由确定方法、装置、电子设备及计算机可读存储介质
CN113206866B (zh) * 2021-03-30 2022-04-01 新华三大数据技术有限公司 一种多区域场景下服务提供方法、装置及存储介质
CN113259375B (zh) * 2021-06-10 2021-09-28 长视科技股份有限公司 一种视频服务的响应方法及电子设备
CN113315708B (zh) * 2021-07-29 2021-10-08 数字广东网络建设有限公司 栅格化网关的实现系统、方法、计算机设备和存储介质
CN113645251B (zh) * 2021-08-24 2023-05-23 北京英创思信息技术有限公司 适用于跨区域服务的数据传输方法及装置
CN114095576B (zh) * 2021-11-22 2024-03-08 北京爱奇艺科技有限公司 一种调用请求发送方法及装置
CN113839865B (zh) * 2021-11-30 2022-03-01 北京鲸鲮信息系统技术有限公司 一种跨域调用服务的管理方法及系统
CN114285852B (zh) * 2021-12-28 2023-12-26 杭州数梦工场科技有限公司 基于多级服务平台的服务调用方法及装置
CN114844951B (zh) * 2022-04-22 2024-03-19 百果园技术(新加坡)有限公司 请求处理方法、系统、设备、存储介质及产品
CN115086422B (zh) * 2022-06-29 2024-04-26 北京金山云网络技术有限公司 服务器访问方法、装置、存储介质以及电子设备
CN115242817B (zh) * 2022-07-21 2023-10-24 阿里巴巴(中国)有限公司 数据访问处理方法、装置、设备和存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106227605A (zh) * 2016-07-26 2016-12-14 北京北森云计算股份有限公司 一种多语言云编译的动态微服务扩容方法及装置
CN107070870A (zh) * 2017-01-09 2017-08-18 阿里巴巴集团控股有限公司 一种数据获取方法和装置
CN107465615A (zh) * 2017-08-03 2017-12-12 全球能源互联网研究院有限公司 一种基于分层多域的路由确定方法及控制器
CN108667660A (zh) * 2018-05-08 2018-10-16 腾讯科技(深圳)有限公司 路由管理和业务路由的方法和装置及路由系统
CN109728974A (zh) * 2018-12-27 2019-05-07 北京航天智造科技发展有限公司 在线接口调试平台

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107667517B (zh) * 2015-06-03 2021-03-19 瑞典爱立信有限公司 用于能够实现第二容器上的反向代理的在第一服务容器内的被植入代理器
CN110430259B (zh) * 2018-04-16 2020-12-01 腾讯科技(深圳)有限公司 数据服务系统、服务器和计算机可读存储介质
CN109379430B (zh) * 2018-11-30 2021-01-08 四川芯波智创物联技术有限公司 一种“物联网+”行业生态圈共享共盈平台

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106227605A (zh) * 2016-07-26 2016-12-14 北京北森云计算股份有限公司 一种多语言云编译的动态微服务扩容方法及装置
CN107070870A (zh) * 2017-01-09 2017-08-18 阿里巴巴集团控股有限公司 一种数据获取方法和装置
CN107465615A (zh) * 2017-08-03 2017-12-12 全球能源互联网研究院有限公司 一种基于分层多域的路由确定方法及控制器
CN108667660A (zh) * 2018-05-08 2018-10-16 腾讯科技(深圳)有限公司 路由管理和业务路由的方法和装置及路由系统
CN109728974A (zh) * 2018-12-27 2019-05-07 北京航天智造科技发展有限公司 在线接口调试平台

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
《微服务之服务调用与安全控制》;郝炎峰;《https://yq.aliyun.com/articles/663709》;20181102;参见第一章至第五章 *

Also Published As

Publication number Publication date
CN110336753A (zh) 2019-10-15

Similar Documents

Publication Publication Date Title
CN110336753B (zh) 一种跨网络区域的服务调用方法、装置、设备及存储介质
CN105979007B (zh) 加速资源处理方法、装置及网络功能虚拟化系统
Yang et al. Blockchain-based secure distributed control for software defined optical networking
US20150215228A1 (en) Methods, systems, and computer readable media for a cloud-based virtualization orchestrator
CN108632063B (zh) 管理网络切片实例的方法、装置和系统
US20140379928A1 (en) Method for implementing network using distributed virtual switch, apparatus for performing the same, and network system based on distributed virtual switch
CN111565404A (zh) 一种数据分流方法和装置
CN110554927A (zh) 基于区块链的微服务调用方法
EP3442201B1 (en) Cloud platform construction method and cloud platform
CN109417492A (zh) 一种网络功能nf管理方法及nf管理设备
CN109842895A (zh) 一种网络可靠性配置方法、信息传输方法和装置以及系统
CN113098982B (zh) 区块链消息的传输方法及装置
CN115225493B (zh) 一种基于wireguard的组网节点的配置生成方法及设备
Islam et al. Optimal execution of virtualized network functions for applications in cyber-physical-social-systems
US20230275807A1 (en) Data processing method and device
Costa et al. Enhancing orchestration and infrastructure programmability in SDN with notoriety
CN113612732B (zh) 一种资源调用方法、装置和多方安全计算系统
CN113067772B (zh) 区块链网络间的交易转发方法
CN113259236B (zh) 区块链网络间的交易转发方法
CN112995311B (zh) 服务提供方法、设备及存储介质
CN113067774B (zh) 区块链网络间的交易转发方法
CN114356575A (zh) 用户请求处理方法及装置
CN105812274B (zh) 一种业务数据的处理方法和相关设备
Pages et al. Orchestrating virtual slices in data centre infrastructures with optical DCN
CN112954627B (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