CN114915657A - 基于OpenTracing规范的拟态应用分布式追踪方法 - Google Patents

基于OpenTracing规范的拟态应用分布式追踪方法 Download PDF

Info

Publication number
CN114915657A
CN114915657A CN202210434339.7A CN202210434339A CN114915657A CN 114915657 A CN114915657 A CN 114915657A CN 202210434339 A CN202210434339 A CN 202210434339A CN 114915657 A CN114915657 A CN 114915657A
Authority
CN
China
Prior art keywords
request
new
root
requests
parts
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.)
Granted
Application number
CN202210434339.7A
Other languages
English (en)
Other versions
CN114915657B (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.)
Information Engineering University of PLA Strategic Support Force
Original Assignee
Information Engineering University of PLA Strategic Support Force
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 Information Engineering University of PLA Strategic Support Force filed Critical Information Engineering University of PLA Strategic Support Force
Priority to CN202210434339.7A priority Critical patent/CN114915657B/zh
Publication of CN114915657A publication Critical patent/CN114915657A/zh
Application granted granted Critical
Publication of CN114915657B publication Critical patent/CN114915657B/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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/126Applying verification of the received information the source of the received data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/146Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Stored Programmes (AREA)
  • Multi Processors (AREA)

Abstract

本发明提供一种基于Open Tracing规范的拟态应用分布式追踪方法。该方法包括:步骤1:当输入代理接收到外部请求A后,输入代理为外部请求A生成唯一ID标识,将唯一ID标识作为外部请求A的根标识;步骤2:将根标识注入至外部请求A,得到新的请求B,然后将新的请求B复制n份并分发至被请求应用对应的n个执行体;步骤3:每个执行体接收到新的请求B后,基于Open Tracing规范提取出根标识,将根标识注入至输出报文中,形成新的请求C;步骤4:按照步骤3的请求传递方式,将新的请求依次向下传递直至传递到输出代理;步骤5:输出代理接收到多份请求后,根据根标识区分请求的批次,以便对相同批次的请求进行拟态裁决。

Description

基于OpenTracing规范的拟态应用分布式追踪方法
技术领域
本发明涉及网络安全技术领域,尤其涉及一种基于Open Tracing规范的拟态应用分布式追踪方法。
背景技术
将传统的单体式应用拆分成多个独立的服务单元,随着互联网技术的快速发展,尤其是云计算的兴起,应用软件的复杂度也越来越高。例如在云计算场景,随着微服务架构的持续落地,一个应用可以由数千个微服务组成。极高的软件复杂度给应用的安全管控带来了新的挑战,尤其是面对基于未知漏洞和后门的网络攻击。针对该问题,拟态防御技术通过构造动态异构冗余模型,提高系统的不确定性,增加攻击者的攻击难度和成本,提升网络安全性能。
拟态防御实现高安全的一大关键点在于对多个执行体的输出报文进行拟态裁决。其中,需要首先提取出相同批次的输出报文;然后,对相同批次的输出报文进行大数判决。对于相同批次输出报文的提取,现有方法主要通过对应用程序的业务逻辑进行改造,使其每个输出报文都携带ID标识,进而区分不同的输出报文批次,但这无疑增添了应用程序的冗余度和和拟态化改造的复杂度。
发明内容
为了降低拟态化改造的复杂度,本发明提供一种基于Open Tracing规范的拟态应用分布式追踪方法,基于OpenTracing规范在服务间的通信报文中携带拟态标签,大幅度降低了应用拟态化改造的复杂度。
本发明提供一种基于Open Tracing规范的拟态应用分布式追踪方法,包括:
步骤1:当输入代理接收到外部请求A后,输入代理为所述外部请求A生成唯一ID标识,将所述唯一ID标识作为所述外部请求A的根标识;
步骤2:将所述根标识注入至所述外部请求A,得到新的请求B,然后将所述新的请求B复制n份并分发至被请求应用对应的n个执行体;
步骤3:每个所述执行体接收到所述新的请求B后,基于Open Tracing规范提取出所述根标识,将所述根标识注入至输出报文中,形成新的请求C;
步骤4:按照步骤3的请求传递方式,将新的请求依次向下传递直至传递到输出代理;
步骤5:所述输出代理接收到多份请求后,根据所述根标识区分请求的批次,以便对相同批次的请求进行拟态裁决。
进一步地,步骤2为:将所述外部请求A复制n份,然后将所述根标识分别注入至n份所述外部请求A,得到n份新的请求B,接着将n份新的请求B分发至被请求应用对应的n个执行体。
进一步地,步骤3中,在基于Open Tracing规范提取出所述根标识之后,还包括:
根据所述被请求应用的需求,将表征所述被请求应用的元数据追加到根标识,形成新的标识;
对应地,将所述根标识注入至输出报文中,具体为:将所述新的标识注入至输出报文中;
对应地,根据所述根标识区分请求的批次,具体为:根据所述根标识和所述元数据区分请求的批次;
其中,同一个被请求应用下的n个执行体对于同一批次请求所注入的元数据均相同。
进一步地,所述元数据包括时间戳和/或服务实例自定义字段。
本发明的有益效果:
针对拟态防御应用场景下,传统开发中通过对应用服务进行改造来携带ID标识,增添了耦合度和复杂性的问题,本发明提出了基于OpenTracing开放分布式跟踪方法来携带ID标识,大幅度降低了对应用程序本身的改造,使得整个过程更加的便捷,开发流程更加润滑,降低了整个程序的耦合度,更容易适应不同的用户请求协议。
附图说明
图1为本发明实施例提供的基于OpenTracing规范的拟态应用分布式追踪方法的流程示意图之一;
图2为本发明实施例提供的基于OpenTracing规范的拟态应用分布式追踪方法的流程示意图之二;
图3为本发明实施例的应用本发明方法的一种拟态应用场景框架示意图是单线程下web服务调用mysql服务具体实现;
图4为本发明实施提供的应用本发明方法的另一种拟态应用场景框架示意图,是多线程下web服务调用mysql服务具体实现。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1
针对拟态应用场景下,为避免对应用程序进行改造携带ID的复杂情况,如图1所示,本发明提出了一种基于OpenTracing规范的拟态应用分布式追踪方法,该方法包括以下步骤:
S101:当输入代理接收到外部请求A后,输入代理为所述外部请求A生成唯一ID标识,将所述唯一ID标识作为所述外部请求A的根标识;
S102:将所述根标识注入至所述外部请求A,得到新的请求B,然后将所述新的请求B复制n份并分发至被请求应用对应的n个执行体;
或者,将所述外部请求A复制n份,然后将所述根标识分别注入至n份所述外部请求A,得到n份新的请求B,接着将n份新的请求B分发至被请求应用对应的n个执行体。
S103:每个所述执行体接收到所述新的请求B后,基于Open Tracing规范提取出所述根标识,将所述根标识注入至输出报文中,形成新的请求C,并向下传递;
S104:按照步骤S103的请求传递方式,将新的请求依次向下传递直至传递到输出代理;
S105:所述输出代理接收到多份请求后,根据所述根标识区分请求的批次,以便对相同批次的请求进行拟态裁决。
实施例2
在上述实施例1的基础上,本发明实施例还提供一种基于OpenTracing规范的拟态应用分布式追踪方法,与上述实施例1的不同之处在于,在本发明实施例中,被请求应用包含两个中间服务实例(即微服务S和微服务T),每个微服务下对应有三个执行体,步骤S103具体为:
每个所述执行体接收到所述新的请求B后,基于Open Tracing规范提取出所述根标识rootID,根据所述被请求应用的需求,将表征所述被请求应用的元数据metadata追加到根标识,形成新的标识ID(rootID=x,metadata);将所述新的标识注入至输出报文中,形成新的请求C;其中,同一个被请求应用下的n个执行体对于同一批次请求所注入的元数据均相同;
在本发明实施例中,步骤S105具体为:
所述输出代理接收到多份请求后,根据所述根标识和所述元数据区分请求的批次,以便对相同批次的请求进行拟态裁决。
本发明实施例中,所述元数据metadata包括时间戳和/或服务实例自定义字段;其他步骤的内容与上述实施例1相同,此处不再赘述。
实施例3
如图3示,本发明实施提供一种基于OpenTracing规范的拟态应用分布式追踪方法来对单线程模式下web服务调用mysql服务。
对应图示的拟态应用场景,本发明实施例方法包括以下步骤:
S301:外部请求A到达输入代理,由输入代理为该请求A生成唯一的ID标识rootID(同一次请求中rootID全局唯一),作为该请求A的根标识注入;首先将ID标识注入到上下文spanContext中;鉴于该请求A是http请求,输入代理将请求A复制三份,并将spanContext序列化注入到这三份请求http报文的header部分,得到三个三个相同的请求B,然后将三个请求B分别发送给三个执行体;
S302:web服务的S1、S2、S3执行体收到请求B后,发现只有一个后续触发请求,首先将上下文spanContext从请求http报文的header部分反序列化提取出来;spanContext会根据环境要求做出改变,但是其中的ID标识保持不变;鉴于输出报文是mysql报文,执行体会将spanContext序列化注入后续请求mysql报文的解释字段,然后向下传递,三个执行体后续请求中的ID标识保持一致。
S303:输出代理收到多份请求后,首先将上下文spanContext从报文中反序列化出来,并提取出ID标识;通过ID标识区分请求的批次,并对相同批次的请求进行拟态裁决。
S304:通过拟态裁决后可以调用后端mysql服务。
实施例4
如图4示,本发明实施提供一种基于OpenTracing规范的拟态应用分布式追踪方法来对多线程模式下web服务调用mysql服务。
对应图示的拟态应用场景,本发明实施例方法包括如下步骤:
S401:外部请求A到达输入代理,由输入代理为该请求A生成唯一的ID标识rootID(同一次请求中rootID全局唯一),作为该请求A的根标识注入;首先将ID标识注入到上下文spanContext中;鉴于该请求A是http请求,输入代理将请求A复制三份,并将spanContext序列化注入到这三份请求http报文的header部分,分别发送给三个执行体;
S402:web服务S1、S2、S3执行体收到请求后,发现有多个后续触发请求,需要多次调用后端mysql服务;执行体为每个后续请求启动一个新的线程向下执行;如图二携带报文,metadata用来区分不同新线程批次,这样由rootID和metadata组合的ID标识就可以唯一确定同一批次报文,用于拟态裁决。首先将上下文spanContext从请求http报文的header部分反序列化出来,并提取出ID标识;执行体每次启动一个新的线程,metadata就会在rootID的基础上加上前置请求启动的新线程个数乘以常数用以区分不同的线程,并和rootID重新组合成ID标识,注入到上下文spanContext中。鉴于输出报文是mysql报文,执行体会将spanContext序列化注入后续请求mysql报文的解释字段,然后向下传递,同一批次新线程在三个执行体中的ID标识保持一致。
S403:输出代理单元收到多份请求后,首先将上下文spanContext从报文中反序列化出来,并提取出ID标识;通过ID标识区分请求的批次,并对相同批次的请求进行拟态裁决。
S404:通过拟态裁决后可以调用后端mysql服务。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (4)

1.基于Open Tracing规范的拟态应用分布式追踪方法,其特征在于,包括:
步骤1:当输入代理接收到外部请求A后,输入代理为所述外部请求A生成唯一ID标识,将所述唯一ID标识作为所述外部请求A的根标识;
步骤2:将所述根标识注入至所述外部请求A,得到新的请求B,然后将所述新的请求B复制n份并分发至被请求应用对应的n个执行体;
步骤3:每个所述执行体接收到所述新的请求B后,基于Open Tracing规范提取出所述根标识,将所述根标识注入至输出报文中,形成新的请求C;
步骤4:按照步骤3的请求传递方式,将新的请求依次向下传递直至传递到输出代理;
步骤5:所述输出代理接收到多份请求后,根据所述根标识区分请求的批次,以便对相同批次的请求进行拟态裁决。
2.根据权利要求1所述的基于Open Tracing规范的拟态应用分布式追踪方法,其特征在于,步骤2为:将所述外部请求A复制n份,然后将所述根标识分别注入至n份所述外部请求A,得到n份新的请求B,接着将n份新的请求B分发至被请求应用对应的n个执行体。
3.根据权利要求1或2所述的基于Open Tracing规范的拟态应用分布式追踪方法,其特征在于,步骤3中,在基于Open Tracing规范提取出所述根标识之后,还包括:
根据所述被请求应用的需求,将表征所述被请求应用的元数据追加到根标识,形成新的标识;
对应地,将所述根标识注入至输出报文中,具体为:将所述新的标识注入至输出报文中;
对应地,根据所述根标识区分请求的批次,具体为:根据所述根标识和所述元数据区分请求的批次;
其中,同一个被请求应用下的n个执行体对于同一批次请求所注入的元数据均相同。
4.根据权利要求3所述的基于Open Tracing规范的拟态应用分布式追踪方法,其特征在于,所述元数据包括时间戳和/或服务实例自定义字段。
CN202210434339.7A 2022-04-24 2022-04-24 基于OpenTracing规范的拟态应用分布式追踪方法 Active CN114915657B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210434339.7A CN114915657B (zh) 2022-04-24 2022-04-24 基于OpenTracing规范的拟态应用分布式追踪方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210434339.7A CN114915657B (zh) 2022-04-24 2022-04-24 基于OpenTracing规范的拟态应用分布式追踪方法

Publications (2)

Publication Number Publication Date
CN114915657A true CN114915657A (zh) 2022-08-16
CN114915657B CN114915657B (zh) 2024-01-26

Family

ID=82765597

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210434339.7A Active CN114915657B (zh) 2022-04-24 2022-04-24 基于OpenTracing规范的拟态应用分布式追踪方法

Country Status (1)

Country Link
CN (1) CN114915657B (zh)

Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108768989A (zh) * 2018-05-18 2018-11-06 刘勇 一种采用拟态技术的apt攻击防御方法、系统
CN110069354A (zh) * 2019-04-15 2019-07-30 必成汇(成都)科技有限公司 微服务全链路跟踪方法及微服务架构
CN110855692A (zh) * 2019-11-19 2020-02-28 北京网聘咨询有限公司 面向拟态构造Web服务器的执行体调度方法
WO2020062211A1 (zh) * 2018-09-30 2020-04-02 北京大学深圳研究生院 一种融合区块链技术拟态存储防篡改日志的方法及系统
CN111031096A (zh) * 2019-11-15 2020-04-17 华东计算技术研究所(中国电子科技集团公司第三十二研究所) 一种基于拟态防御的分布式存储系统构建方法
CN111083113A (zh) * 2019-11-15 2020-04-28 华东计算技术研究所(中国电子科技集团公司第三十二研究所) 拟态分发系统、方法及介质
CN111416865A (zh) * 2020-03-24 2020-07-14 河南信大网御科技有限公司 一种基于拟态防御的协议代理处理方法及系统
US10771398B1 (en) * 2019-03-06 2020-09-08 Live Nation Entertainment, Inc. Systems and methods for queue control based on client-specific protocols
CN111984975A (zh) * 2020-07-24 2020-11-24 华东计算技术研究所(中国电子科技集团公司第三十二研究所) 基于拟态防御机制的漏洞攻击检测系统、方法及介质
CN112118286A (zh) * 2020-08-04 2020-12-22 紫光云(南京)数字技术有限公司 基于mdc多线程链路追踪方法、装置及计算机可读存储介质
CN112235269A (zh) * 2020-09-29 2021-01-15 中国人民解放军战略支援部队信息工程大学 一种分布式模式的拟态括号实现装置及方法
CN112511317A (zh) * 2020-12-31 2021-03-16 河南信大网御科技有限公司 输入分发方法、输入代理及拟态分布式存储系统
CN112910945A (zh) * 2020-12-08 2021-06-04 江苏苏宁云计算有限公司 请求链路跟踪方法和业务请求处理方法
CN113973018A (zh) * 2021-12-22 2022-01-25 南京微滋德科技有限公司 一种基于内生安全的物联网终端数据处理方法及系统

Patent Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108768989A (zh) * 2018-05-18 2018-11-06 刘勇 一种采用拟态技术的apt攻击防御方法、系统
WO2020062211A1 (zh) * 2018-09-30 2020-04-02 北京大学深圳研究生院 一种融合区块链技术拟态存储防篡改日志的方法及系统
US10771398B1 (en) * 2019-03-06 2020-09-08 Live Nation Entertainment, Inc. Systems and methods for queue control based on client-specific protocols
CN110069354A (zh) * 2019-04-15 2019-07-30 必成汇(成都)科技有限公司 微服务全链路跟踪方法及微服务架构
CN111031096A (zh) * 2019-11-15 2020-04-17 华东计算技术研究所(中国电子科技集团公司第三十二研究所) 一种基于拟态防御的分布式存储系统构建方法
CN111083113A (zh) * 2019-11-15 2020-04-28 华东计算技术研究所(中国电子科技集团公司第三十二研究所) 拟态分发系统、方法及介质
CN110855692A (zh) * 2019-11-19 2020-02-28 北京网聘咨询有限公司 面向拟态构造Web服务器的执行体调度方法
CN111416865A (zh) * 2020-03-24 2020-07-14 河南信大网御科技有限公司 一种基于拟态防御的协议代理处理方法及系统
CN111984975A (zh) * 2020-07-24 2020-11-24 华东计算技术研究所(中国电子科技集团公司第三十二研究所) 基于拟态防御机制的漏洞攻击检测系统、方法及介质
CN112118286A (zh) * 2020-08-04 2020-12-22 紫光云(南京)数字技术有限公司 基于mdc多线程链路追踪方法、装置及计算机可读存储介质
CN112235269A (zh) * 2020-09-29 2021-01-15 中国人民解放军战略支援部队信息工程大学 一种分布式模式的拟态括号实现装置及方法
CN112910945A (zh) * 2020-12-08 2021-06-04 江苏苏宁云计算有限公司 请求链路跟踪方法和业务请求处理方法
CN112511317A (zh) * 2020-12-31 2021-03-16 河南信大网御科技有限公司 输入分发方法、输入代理及拟态分布式存储系统
CN113973018A (zh) * 2021-12-22 2022-01-25 南京微滋德科技有限公司 一种基于内生安全的物联网终端数据处理方法及系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"带入gRPC:分布式链路追踪 gRPC + Opentracing + Zipkin", pages 1 - 8, Retrieved from the Internet <URL:https://cloud.tencent.com/developer/article/1683454> *
SUNSKY: "带入gRPC:分布式链路追踪 gRPC + Opentracing + Zipkin", 《HTTPS://CLOUD.TENCENT.COM/DEVELOPER/ARTICLE/1683454》, pages 1 - 12 *

Also Published As

Publication number Publication date
CN114915657B (zh) 2024-01-26

Similar Documents

Publication Publication Date Title
CN111741026B (zh) 一种跨链事务请求处理方法、装置、设备以及存储介质
US7415522B2 (en) Extensible framework for transferring session state
CN107770269A (zh) 一种服务响应方法及其终端
WO2023093184A1 (zh) 一种拟态redis数据库的输入输出代理方法和装置
US11914579B2 (en) Blockchain-based data processing method and apparatus, device, and readable storage medium
US20220232101A1 (en) Virtual workspace experience visualization and optimization
CN110888858A (zh) 数据库的操作方法和装置、存储介质、电子装置
CN103176892A (zh) 一种页面监控方法及系统
CN111414381A (zh) 数据处理方法、装置、电子设备及存储介质
US20230370285A1 (en) Block-chain-based data processing method, computer device, computer-readable storage medium
WO2023040453A1 (zh) 一种交易信息处理方法及装置
CN113377875B (zh) 跨链数据处理方法、装置、电子设备及可读存储介质
CN110933188A (zh) 远程服务的调用方法、系统、服务器及存储介质
CN114915657B (zh) 基于OpenTracing规范的拟态应用分布式追踪方法
CN110290139B (zh) 消息传输方法及装置
CN108810645B (zh) 弹幕消息分发方法、装置、设备及存储介质
CN107402826A (zh) 一种以异步方式进行远程过程调用的方法及装置
CN114785526B (zh) 基于区块链的多用户多批次权重分配计算及存储处理系统
CN108347471B (zh) 获取第三方用户信息的方法、装置及系统
WO2005017750A2 (en) Transparent session migration across servers
Zhang et al. Front-running attack in distributed sharded ledgers and fair cross-shard consensus
CN111427710B (zh) 应用程序中组件的通信方法、装置、设备及存储介质
CN105187244A (zh) 一种支持多种管理模式的数字通信设备访问管理系统
CN112351053B (zh) 嵌入式数据库的远程访问方法、装置、设备及介质
CN114095758B (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