CN110224899B - 一种tcp应用的调用链获取方法及装置 - Google Patents

一种tcp应用的调用链获取方法及装置 Download PDF

Info

Publication number
CN110224899B
CN110224899B CN201910579333.7A CN201910579333A CN110224899B CN 110224899 B CN110224899 B CN 110224899B CN 201910579333 A CN201910579333 A CN 201910579333A CN 110224899 B CN110224899 B CN 110224899B
Authority
CN
China
Prior art keywords
tcp
application
preset
call chain
port
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
CN201910579333.7A
Other languages
English (en)
Other versions
CN110224899A (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.)
WeBank Co Ltd
Original Assignee
WeBank 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 WeBank Co Ltd filed Critical WeBank Co Ltd
Priority to CN201910579333.7A priority Critical patent/CN110224899B/zh
Publication of CN110224899A publication Critical patent/CN110224899A/zh
Priority to PCT/CN2020/097819 priority patent/WO2020259515A1/zh
Application granted granted Critical
Publication of CN110224899B publication Critical patent/CN110224899B/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
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/04Processing captured monitoring data, e.g. for logfile generation
    • H04L43/045Processing captured monitoring data, e.g. for logfile generation for graphical visualisation of monitoring data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/06Generation of reports
    • H04L43/062Generation of reports related to network traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/163In-band adaptation of TCP data exchange; In-band control procedures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/168Implementing security features at a particular protocol layer above the transport layer
    • 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
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Security & Cryptography (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本发明公开了一种TCP应用的调用链获取方法及装置,其中方法为:根据预设TCP应用的TCP服务端口,获取调用所述TCP服务端口的所述预设TCP应用的应用进程的进程号;根据所述进程号,获取所述预设TCP应用已建立的TCP连接的端口信息;根据所述TCP服务端口与所述已建立的TCP连接的端口信息的匹配结果,获取所述预设TCP应用的第一调用链。上述方法应用于金融科技(Fintech)时,由于TCP服务端口用于所述预设TCP应用作为应用服务方时进行数据传输,根据TCP服务端口与已建立的TCP连接的端口信息的匹配结果,即可自动获取预设TCP应用的第一调用链,不需要通过人工分析,提高了第一应用链的获取效率。

Description

一种TCP应用的调用链获取方法及装置
技术领域
本发明涉及金融科技(Fintech)领域和架构管理领域,尤其涉及一种TCP应用的调用链获取方法及装置。
背景技术
随着计算机技术的发展,越来越多的技术(大数据、分布式、区块链(Blockchain)、人工智能等)应用在金融领域,传统金融业正在逐步向金融科技(Fintech)转变。目前,金融科技领域中,由于对可靠性传输要求较高,很多金融交易都会通过传输控制协议(transmission control protocol,TCP)来进行,基于TCP的TCP应用之间会存在调用关系,如TCP应用A会调用TCP应用B,同时TCP应用A也会调用TCP应用C,TCP应用A与其他TCP应用的调用以及被调用关系的组合统称为TCP应用A的调用链。在一些业务场景下,需要对TCP应用的调用链进行收集。
然而,目前获取一个TCP应用的调用链的方式为人工获取,具体由TCP应用的相关负责人手工绘制出来,以图表或者文档的形式保留并存,显然,当TCP应用的调用关系较复杂时,通过人工方式排查记录无疑是低效的。
发明内容
本申请实施例提供一种TCP应用的调用链获取方法及装置,解决了现有技术中人工方式排查记录获取TCP应用的调用链无疑是低效的问题。
第一方面,本申请实施例提供一种TCP应用的调用链获取方法:根据预设TCP应用的TCP服务端口,获取调用所述TCP服务端口的所述预设TCP应用的应用进程的进程号;所述TCP服务端口用于所述预设TCP应用作为TCP应用服务方时进行数据传输;根据所述进程号,获取所述预设TCP应用已建立的TCP连接的端口信息;所述已建立的TCP连接为所述预设TCP应用作为TCP应用服务方或作为TCP应用调用方时建立的TCP连接;根据所述TCP服务端口与所述已建立的TCP连接的端口信息的匹配结果,获取所述预设TCP应用的第一调用链。
上述方法中,通过预设TCP应用的TCP服务端口,获取预设TCP应用的应用进程的进程号,并据此获取预设TCP应用已建立的TCP连接的端口信息,由于TCP服务端口用于所述预设TCP应用作为TCP应用服务方时进行数据传输,因此根据TCP服务端口与已建立的TCP连接的端口信息的匹配结果,即可自动获取预设TCP应用的第一调用链,不需要通过人工分析,从而提高了第一应用链的获取效率。
一种可选实施方式中,所述已建立的TCP连接的端口信息包括本地主机的TCP连接端口和外部主机的TCP连接端口;所述本地主机为运行所述预设TCP应用的应用进程的主机;所述外部主机为与所述本地主机存在所述已建立的TCP连接的主机;所述根据所述TCP服务端口与所述已建立的TCP连接的端口信息的匹配结果,获取所述预设TCP应用的第一调用链,包括:若所述TCP服务端口与所述本地主机的TCP连接端口匹配,则确定所述外部主机的TCP连接端口对应的TCP应用为所述预设TCP应用的第一调用链中的TCP应用调用方;或者,若所述TCP服务端口与所述本地主机的TCP连接端口不匹配,则确定所述外部主机的TCP连接端口对应的TCP应用为所述预设TCP应用的第一调用链中的TCP应用服务方。
上述方法中,由于TCP服务端口用于所述预设TCP应用作为TCP应用服务方时进行数据传输,那么当本地主机运行的预设TCP应用作为服务方时,本地主机的TCP连接端口即为TCP服务端口,从而根据所述TCP服务端口与所述本地主机的TCP连接端口是否匹配,即可确定所述外部主机的TCP连接端口对应的TCP应用为所述预设TCP应用的第一调用链中的TCP应用调用方还是TCP应用服务方,从而自动获取预设TCP应用的第一调用链。
一种可选实施方式中,所述获取调用所述TCP服务端口的所述预设TCP应用的应用进程的进程号之前,还包括:与所述本地主机建立安全外壳协议SSH远程连接;所述根据预设TCP应用的TCP服务端口,获取调用所述TCP服务端口的所述预设TCP应用的应用进程的进程号,包括:通过所述SSH远程连接,在所述本地主机监听所述TCP服务端口,获取所述进程号。
上述方法中,可通过与本地主机进行SSH远程连接后,在本地主机监听TCP服务端口,从而不需要人工在本地主机上操作,便能方便快捷地获取进程号。
一种可选实施方式中,所述获取所述预设TCP应用的第一调用链之后,还包括:若预设内存数据库中已存在所述预设TCP应用的第二调用链,且所述第一调用链与所述第二调用链不一致,则将所述预设内存数据库中的所述第二调用链更新为所述第一调用链。
上述方式下,确定预设内存数据库中是否已存在第二调用链,若不存在,则将第一调用链补充进预设内存数据库,若存在,且第一调用链和第二调用链不一致,则将第二调用链更新为第一调用链,从而保证内存数据库中的调用链为实时最新的调用链。
一种可选实施方式中,按照预设格式,展示所述第一调用链中所述预设TCP应用作为TCP应用服务方时对应的TCP应用调用方,和/或所述第一调用链中所述预设TCP应用作为TCP应用调用方时对应的TCP应用服务方。
上述方式下,可根据预设格式展示出第一调用链,从而方便技术按照预设格式人员直观地获悉第一调用链中所述预设TCP应用的TCP应用调用方或TCP应用服务方。
第二方面,本申请提供一种TCP应用的调用链获取装置,包括:获取模块,用于根据预设TCP应用的TCP服务端口,获取调用所述TCP服务端口的所述预设TCP应用的应用进程的进程号;所述TCP服务端口用于所述预设TCP应用作为TCP应用服务方时进行数据传输;确定模块,用于根据所述进程号,获取所述预设TCP应用已建立的TCP连接的端口信息;所述已建立的TCP连接为所述预设TCP应用作为TCP应用服务方或作为TCP应用调用方时建立的TCP连接;根据所述TCP服务端口与所述已建立的TCP连接的端口信息的匹配结果,获取所述预设TCP应用的第一调用链。
一种可选实施方式中,所述已建立的TCP连接的端口信息包括本地主机的TCP连接端口和外部主机的TCP连接端口;所述本地主机为运行所述预设TCP应用的应用进程的主机;所述外部主机为与所述本地主机存在所述已建立的TCP连接的主机;所述处理模块具体用于:若所述TCP服务端口与所述本地主机的TCP连接端口匹配,则确定所述外部主机的TCP连接端口对应的TCP应用为所述预设TCP应用的第一调用链中的TCP应用调用方;或者,若所述TCP服务端口与所述本地主机的TCP连接端口不匹配,则确定所述外部主机的TCP连接端口对应的TCP应用为所述预设TCP应用的第一调用链中的TCP应用服务方。
一种可选实施方式中,所述处理模块还用于:与所述本地主机建立安全外壳协议SSH远程连接;所述根据预设TCP应用的TCP服务端口,获取调用所述TCP服务端口的所述预设TCP应用的应用进程的进程号,包括:通过所述SSH远程连接,在所述本地主机监听所述TCP服务端口,获取所述进程号。
一种可选实施方式中,所述处理模块还用于:若预设内存数据库中已存在所述预设TCP应用的第二调用链,且所述第一调用链与所述第二调用链不一致,则将所述预设内存数据库中的所述第二调用链更新为所述第一调用链。
一种可选实施方式中,所述处理模块还用于:按照预设格式,展示所述第一调用链中所述预设TCP应用作为TCP应用服务方时对应的TCP应用调用方,和/或所述第一调用链中所述预设TCP应用作为TCP应用调用方时对应的TCP应用服务方。
上述第二方面及第二方面各个实施例的有益效果,可以参考上述第一方面及第一方面各个实施例的有益效果,这里不再赘述。
第三方面,本申请实施例提供一种计算机设备,包括程序或指令,当所述程序或指令被执行时,用以执行上述第一方面及第一方面各个实施例的方法。
第四方面,本申请实施例提供一种存储介质,包括程序或指令,当所述程序或指令被执行时,用以执行上述第一方面及第一方面各个实施例的方法。
附图说明
图1为本申请实施例提供的TCP连接的示意图;
图2为本申请实施例提供的TCP应用A的调用链的示意图;
图3为本申请实施例提供的一种TCP应用的调用链获取方法的步骤流程图;
图4为本申请实施例中获取进程号以及已建立的TCP连接的端口信息的示意图;
图5为本申请实施例提供的一种TCP应用的调用链的展示界面的示意图;
图6为本申请实施例提供的一种TCP应用的调用链获取方法的具体步骤流程图;
图7为本申请实施例提供的一种TCP应用的调用链获取装置的结构示意图。
具体实施方式
为了更好的理解上述技术方案,下面将结合说明书附图及具体的实施方式对上述技术方案进行详细的说明,应当理解本申请实施例以及实施例中的具体特征是对本申请技术方案的详细的说明,而不是对本申请技术方案的限定,在不冲突的情况下,本申请实施例以及实施例中的技术特征可以相互结合。
为方便叙述,下面首先列举本申请实施例中出现的名词和缩略语。
配置管理数据库(Configuration Management Database,CMDB):CMDB存储与管理企业IT架构中设备的各种配置信息,它与所有服务支持和服务交付流程都紧密相联,支持这些流程的运转、发挥配置信息的价值,同时依赖于相关流程保证数据的准确性。CMDB会记录企业的机器、应用系统、互联网协议(Internet Protocol,IP)地址等信息以及他们的关联关系。本申请利用了CMDB的查询接口来查询CMDB存储的一些配置信息。
TCP应用:TCP协议即是传输控制协议,在网络中提供全双工的和可靠的服务。TCP应用可以是指基于TCP协议进行数据传输和交互的软件或应用系统等。通常在要求传输服务可靠的业务(例如金融业务)中,通常采用TCP来开发应用系统,TCP应用在企业的业务系统中都是广泛使用的。
TCP连接端口:主机与主机之间建立TCP连接时用于进行数据传输和交互的网络端口。
TCP服务端口:基于TCP协议进行数据传输和交互的应用系统需要在服务端(通常是一个服务器主机)上启动一个网络端口,当客户端调用时会调用对应服务端的端口来请求TCP应用提供的某种服务。显然,TCP服务端口为主机为服务器主机时的TCP连接端口。
TCP应用服务方:接收TCP应用调用方发起的连接的TCP应用,可以视为TCP应用调用方的服务端。
TCP应用调用方:使用TCP连接发起对TCP应用服务方的连接的TCP应用,可以视为TCP应用服务方的客户端。
TCP连接:为实现数据的可靠传输,TCP应用服务方和TCP应用调用方要在应用进程间建立传输连接,这种连接有多种连接状态,本申请中只区分三种TCP连接状态:
(a)监听(LISTEN)状态:这个表示TCP应用服务方的TCP应用已经启动,可以被TCP应用调用方通过TCP连接调用。
(b)已建立(ESTABLISHED)状态:表示TCP应用服务方和TCP应用调用方连接已经建立,可以进行数据传输。
(c)其他状态:不是a和b所表示的状态。
如图1所示,为本申请实施例提供的TCP连接的示意图。TCP连接可以通过应用主机上的命令获取到连接信息,本申请将根据采集到的TCP连接信息,分析连接状态得到TCP应用的调用链。
安全外壳协议(Secure Shell,SSH)远程连接:SSH即是,通过SSH协议可以使用密码或者免密(配置SSH证书)的形式从一个主机远程连接到应用主机,本申请需要部署到可以远程(密码或者免密)到其他应用主机的一个服务器主机上,并进行TCP连接信息的采集。
调用链:当TCP应用调用方A通过TCP连接调用TCP应用服务方B的时候,同时A也可能作为TCP应用服务方被TCP应用调用方C通过TCP连接调用,图2表示了A、B、C的调用关系,这种关系像链路一样,表示了一个TCP应用系统被哪些TCP应用调用方调用,同时调用了哪些应用服务方的链路关系,图2为本申请实施例提供的TCP应用A的调用链的示意图。本申请将自动获取这些调用链并进行管理。
在金融机构(银行机构、保险机构或证券机构)在进行业务(如银行的贷款业务、存款业务等)运转过程中,由于对可靠性传输要求较高,很多金融交易都会通过传输控制协议(transmission control protocol,TCP)来进行,基于TCP的TCP应用之间会存在调用关系,如TCP应用A会调用TCP应用B,同时TCP应用A也会调用TCP应用C,TCP应用A与其他TCP应用的调用以及被调用关系的组合统称为TCP应用A的调用链。在一些业务场景下,需要对TCP应用的调用链进行收集。然而,目前获取一个TCP应用的调用链的方式为人工获取,具体由TCP应用的相关负责人手工绘制出来,以图表或者文档的形式保留并存,显然,当TCP应用的调用关系较复杂时,通过人工方式排查记录无疑是低效的。这种情况不符合银行等金融机构的需求,无法保证金融机构各项业务的高效运转。
TCP应用的调用链的分析和管理在架构管理领域具有非常重要的意义,很多公司都将应用系统的调用链以图表或者文档的方式留存起来,便于分析整个业务系统的架构,出现业务事故时候进行问题定位和优化。如图3所示,为本申请实施例提供的一种TCP应用的调用链获取方法的步骤流程图。
步骤301:根据预设TCP应用的TCP服务端口,获取调用所述TCP服务端口的所述预设TCP应用的应用进程的进程号。
所述TCP服务端口用于所述预设TCP应用作为TCP应用服务方时进行数据传输。
步骤302:根据所述进程号,获取所述预设TCP应用已建立的TCP连接的端口信息。
所述已建立的TCP连接为所述预设TCP应用作为TCP应用服务方或作为TCP应用调用方时建立的TCP连接。
步骤303:根据所述TCP服务端口与所述已建立的TCP连接的端口信息的匹配结果,获取所述预设TCP应用的第一调用链。
上述方法中,通过预设TCP应用的TCP服务端口,获取预设TCP应用的应用进程的进程号,并据此获取预设TCP应用已建立的TCP连接的端口信息,由于TCP服务端口用于所述预设TCP应用作为TCP应用服务方时进行数据传输,因此根据TCP服务端口与已建立的TCP连接的端口信息的匹配结果,即可自动获取预设TCP应用的第一调用链,不需要通过人工分析,从而提高了第一应用链的获取效率。
步骤301之前,一种可选实施方式如下:需要查询TCP应用调用链的使用者输入一个需要查询调用链的TCP应用代号,TCP应用代号用于标识TCP应用。本申请查询所使用的内存数据库是否有该应用系统的调用链信息。如果有则按照展示给使用者,如果没有进行步骤301。
根据给出的应用系统代号查询CMDB接口找出该应用系统所部署的应用主机。
步骤301之前,另一种可选实施方式可以为:与所述本地主机建立安全外壳协议SSH远程连接;在建立了SSH远程连接的基础上,步骤101中获取调用所述TCP服务端口的所述预设TCP应用的应用进程的进程号的实施方式可以为:通过所述SSH远程连接,在所述本地主机监听所述TCP服务端口,获取所述进程号。下面结合图4详细说明。如图4所示,为本申请实施例中获取进程号以及已建立的TCP连接的端口信息的示意图。其中,方框1为在所述本地主机监听所述TCP服务端口,获取所述进程号的过程,8080为TCP服务端口,进程号为24289,LISTEN代表对8080这个TCP服务端口进行了监听。
步骤302中,如图4中方框2所示,为步骤302中已建立的TCP连接的端口信息的示意图,第4列代表了该TCP连接的本地主机的地址和端口,第5列表示了外部主机的地址和端口。
上述方法中,可通过与本地主机进行SSH远程连接后,在本地主机监听TCP服务端口,从而不需要人工在本地主机上操作,便能方便快捷地获取进程号。
下面结合步骤303的一种可选实施方式,详细说明已建立的TCP连接的端口信息。SSH远程连接到步骤303中查询到的本地主机,通过本地主机TCP连接分析命令结合TCP服务端口,匹配到该TCP应用的TCP连接关系。如果匹配失败则返回匹配失败,如果匹配成功则根据实施以下可选方式:
步骤303的一种可选实施方式中,所述已建立的TCP连接的端口信息包括本地主机的TCP连接端口和外部主机的TCP连接端口;所述本地主机为运行所述预设TCP应用的应用进程的主机;所述外部主机为与所述本地主机存在所述已建立的TCP连接的主机。在该可选实施方式的条件下,所述根据所述TCP服务端口与所述已建立的TCP连接的端口信息的匹配结果,获取所述预设TCP应用的第一调用链,可以如下:
若所述TCP服务端口与所述本地主机的TCP连接端口匹配,则确定所述外部主机的TCP连接端口对应的TCP应用为所述预设TCP应用的第一调用链中的TCP应用调用方;或者,若所述TCP服务端口与所述本地主机的TCP连接端口不匹配,则确定所述外部主机的TCP连接端口对应的TCP应用为所述预设TCP应用的第一调用链中的TCP应用服务方。
确定所述外部主机的TCP连接端口对应的TCP应用为所述预设TCP应用的第一调用链中的TCP应用调用方的具体方法可以为:将对应的第五列的IP地址和端口调用CMDB查询,找出其对应的TCP应用。
上述方法中,由于TCP服务端口用于所述预设TCP应用作为TCP应用服务方时进行数据传输,那么当本地主机运行的预设TCP应用作为服务方时,本地主机的TCP连接端口即为TCP服务端口,从而根据所述TCP服务端口与所述本地主机的TCP连接端口是否匹配,即可确定所述外部主机的TCP连接端口对应的TCP应用为所述预设TCP应用的第一调用链中的TCP应用调用方还是TCP应用服务方,从而自动获取预设TCP应用的第一调用链。
步骤303之后,一种可选实施方式中,若预设内存数据库中已存在所述预设TCP应用的第二调用链,且所述第一调用链与所述第二调用链不一致,则将所述预设内存数据库中的所述第二调用链更新为所述第一调用链。
上一段所述的可选实施方式中,举例来说,预设格式可以为表1中的格式(如json格式),缓存到内存数据库中。
Figure BDA0002112737380000101
表1
上述方式下,确定预设内存数据库中是否已存在第二调用链,若不存在,则将第一调用链补充进预设内存数据库,若存在,且第一调用链和第二调用链不一致,则将第二调用链更新为第一调用链,从而保证内存数据库中的调用链为实时最新的调用链。
步骤303之后,另外一种可选实施方式中,按照预设格式,展示所述第一调用链中所述预设TCP应用作为TCP应用服务方时对应的TCP应用调用方,和/或所述第一调用链中所述预设TCP应用作为TCP应用调用方时对应的TCP应用服务方。
上述方式下,可根据预设格式展示出第一调用链,从而方便技术按照预设格式人员直观地获悉第一调用链中所述预设TCP应用的TCP应用调用方或TCP应用服务方。
如图5所示,为本申请提供的一种TCP应用的调用链的展示界面的示意图。
图5中,调用链的展示界面中可以通过不同颜色区分出预设TCP应用的TCP应用服务方和TCP应用调用方。
图6为本申请实施例提供的一种TCP应用的调用链获取方法的具体步骤流程图。
步骤601:输入一个要查询调用链的TCP应用A。
步骤602:查询内存数据库是否已经有TCP应用A的第二调用链。
若查询有,则执行步骤608;若查询无,则执行步骤603。
步骤603:查询CMDB获取TCP应用A的应用主机、TCP服务端口等信息。
步骤604:SSH远程连接到TCP应用A应用主机,按照TCP服务端口,获取进程号,并根据进程号获取已建立的TCP连接。
步骤605:根据已建立的TCP连接的端口信息和TCP服务端口,结合CMDB,分析TCP应用A的第一调用链。
步骤606:将分析得到的第一调用链按照预设格式写入内存数据库。
步骤606执行完毕后执行步骤607,同时可返回步骤603,重复执行步骤603~步骤606。
步骤607:将TCP应用A的第一调用链以图表形式展示出来。
步骤608:如果使用者点击图表中展示出来的TCP应用,查询被点击系统的调用链。
如图7所示,为本申请提供一种TCP应用的调用链获取装置的结构示意图,所述TCP应用的调用链获取装置包括:获取模块701,用于根据预设TCP应用的TCP服务端口,获取调用所述TCP服务端口的所述预设TCP应用的应用进程的进程号;所述TCP服务端口用于所述预设TCP应用作为TCP应用服务方时进行数据传输;确定模块,用于根据所述进程号,获取所述预设TCP应用已建立的TCP连接的端口信息;所述已建立的TCP连接为所述预设TCP应用作为TCP应用服务方或作为TCP应用调用方时建立的TCP连接;根据所述TCP服务端口与所述已建立的TCP连接的端口信息的匹配结果,获取所述预设TCP应用的第一调用链。
一种可选实施方式中,所述已建立的TCP连接的端口信息包括本地主机的TCP连接端口和外部主机的TCP连接端口;所述本地主机为运行所述预设TCP应用的应用进程的主机;所述外部主机为与所述本地主机存在所述已建立的TCP连接的主机;所述处理模块702具体用于:若所述TCP服务端口与所述本地主机的TCP连接端口匹配,则确定所述外部主机的TCP连接端口对应的TCP应用为所述预设TCP应用的第一调用链中的TCP应用调用方;或者,若所述TCP服务端口与所述本地主机的TCP连接端口不匹配,则确定所述外部主机的TCP连接端口对应的TCP应用为所述预设TCP应用的第一调用链中的TCP应用服务方。
一种可选实施方式中,所述处理模块702还用于:与所述本地主机建立安全外壳协议SSH远程连接;所述根据预设TCP应用的TCP服务端口,获取调用所述TCP服务端口的所述预设TCP应用的应用进程的进程号,包括:通过所述SSH远程连接,在所述本地主机监听所述TCP服务端口,获取所述进程号。
一种可选实施方式中,所述处理模块702还用于:若预设内存数据库中已存在所述预设TCP应用的第二调用链,且所述第一调用链与所述第二调用链不一致,则将所述预设内存数据库中的所述第二调用链更新为所述第一调用链。
一种可选实施方式中,所述处理模块702还用于:按照预设格式,展示所述第一调用链中所述预设TCP应用作为TCP应用服务方时对应的TCP应用调用方,和/或所述第一调用链中所述预设TCP应用作为TCP应用调用方时对应的TCP应用服务方。
本申请实施例提供一种计算机设备,包括程序或指令,当所述程序或指令被执行时,用以执行本申请实施例提供的一种TCP应用的调用链获取方法及任一可选方法。
本申请实施例提供一种存储介质,包括程序或指令,当所述程序或指令被执行时,用以执行本申请实施例提供的一种TCP应用的调用链获取方法及任一可选方法。
最后应说明的是:本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (10)

1.一种传输控制协议TCP应用的调用链获取方法,其特征在于,包括:
根据预设TCP应用的TCP服务端口,获取调用所述TCP服务端口的所述预设TCP应用的应用进程的进程号;所述TCP服务端口用于所述预设TCP应用作为TCP应用服务方时进行数据传输;
根据所述进程号,获取所述预设TCP应用已建立的TCP连接的端口信息;所述已建立的TCP连接为所述预设TCP应用作为TCP应用服务方或作为TCP应用调用方时建立的TCP连接;
根据所述TCP服务端口与所述已建立的TCP连接的端口信息的匹配结果,获取所述预设TCP应用的第一调用链;
所述已建立的TCP连接的端口信息包括本地主机的TCP连接端口和外部主机的TCP连接端口;所述本地主机为运行所述预设TCP应用的应用进程的主机;所述外部主机为与所述本地主机存在所述已建立的TCP连接的主机;所述根据所述TCP服务端口与所述已建立的TCP连接的端口信息的匹配结果,获取所述预设TCP应用的第一调用链,包括:
若所述TCP服务端口与所述本地主机的TCP连接端口匹配,则确定所述外部主机的TCP连接端口对应的TCP应用为所述预设TCP应用的第一调用链中的TCP应用调用方;
或者,若所述TCP服务端口与所述本地主机的TCP连接端口不匹配,则确定所述外部主机的TCP连接端口对应的TCP应用为所述预设TCP应用的第一调用链中的TCP应用服务方。
2.如权利要求1所述的方法,其特征在于,所述获取调用所述TCP服务端口的所述预设TCP应用的应用进程的进程号之前,还包括:
与所述本地主机建立安全外壳协议SSH远程连接;
所述根据预设TCP应用的TCP服务端口,获取调用所述TCP服务端口的所述预设TCP应用的应用进程的进程号,包括:
通过所述SSH远程连接,在所述本地主机监听所述TCP服务端口,获取所述进程号。
3.如权利要求1-2任一所述的方法,其特征在于,所述获取所述预设TCP应用的第一调用链之后,还包括:
若预设内存数据库中已存在所述预设TCP应用的第二调用链,且所述第一调用链与所述第二调用链不一致,则将所述预设内存数据库中的所述第二调用链更新为所述第一调用链。
4.如权利要求1-2任一所述的方法,其特征在于,所述获取所述预设TCP应用的第一调用链之后,还包括:
按照预设格式,展示所述第一调用链中所述预设TCP应用作为TCP应用服务方时对应的TCP应用调用方,和/或所述第一调用链中所述预设TCP应用作为TCP应用调用方时对应的TCP应用服务方。
5.一种传输控制协议TCP应用的调用链获取装置,其特征在于,包括:
获取模块,用于根据预设TCP应用的TCP服务端口,获取调用所述TCP服务端口的所述预设TCP应用的应用进程的进程号;所述TCP服务端口用于所述预设TCP应用作为TCP应用服务方时进行数据传输;
处理模块,用于根据所述进程号,获取所述预设TCP应用已建立的TCP连接的端口信息;所述已建立的TCP连接为所述预设TCP应用作为TCP应用服务方或作为TCP应用调用方时建立的TCP连接;根据所述TCP服务端口与所述已建立的TCP连接的端口信息的匹配结果,获取所述预设TCP应用的第一调用链;
所述已建立的TCP连接的端口信息包括本地主机的TCP连接端口和外部主机的TCP连接端口;所述本地主机为运行所述预设TCP应用的应用进程的主机;所述外部主机为与所述本地主机存在所述已建立的TCP连接的主机;所述处理模块具体用于:
若所述TCP服务端口与所述本地主机的TCP连接端口匹配,则确定所述外部主机的TCP连接端口对应的TCP应用为所述预设TCP应用的第一调用链中的TCP应用调用方;
或者,若所述TCP服务端口与所述本地主机的TCP连接端口不匹配,则确定所述外部主机的TCP连接端口对应的TCP应用为所述预设TCP应用的第一调用链中的TCP应用服务方。
6.如权利要求5所述的装置,其特征在于,所述处理模块还用于:
与所述本地主机建立安全外壳协议SSH远程连接;
所述根据预设TCP应用的TCP服务端口,获取调用所述TCP服务端口的所述预设TCP应用的应用进程的进程号,包括:
通过所述SSH远程连接,在所述本地主机监听所述TCP服务端口,获取所述进程号。
7.如权利要求5-6任一所述的装置,其特征在于,所述处理模块还用于:
若预设内存数据库中已存在所述预设TCP应用的第二调用链,且所述第一调用链与所述第二调用链不一致,则将所述预设内存数据库中的所述第二调用链更新为所述第一调用链。
8.如权利要求5-6任一所述的装置,其特征在于,所述处理模块还用于:
按照预设格式,展示所述第一调用链中所述预设TCP应用作为TCP应用服务方时对应的TCP应用调用方,和/或所述第一调用链中所述预设TCP应用作为TCP应用调用方时对应的TCP应用服务方。
9.一种计算机设备,其特征在于,包括程序或指令,当所述程序或指令被执行时,如权利要求1至4中任意一项所述的方法被执行。
10.一种存储介质,其特征在于,包括程序或指令,当所述程序或指令被执行时,如权利要求1至4中任意一项所述的方法被执行。
CN201910579333.7A 2019-06-28 2019-06-28 一种tcp应用的调用链获取方法及装置 Active CN110224899B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201910579333.7A CN110224899B (zh) 2019-06-28 2019-06-28 一种tcp应用的调用链获取方法及装置
PCT/CN2020/097819 WO2020259515A1 (zh) 2019-06-28 2020-06-23 一种tcp应用的调用链获取方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910579333.7A CN110224899B (zh) 2019-06-28 2019-06-28 一种tcp应用的调用链获取方法及装置

Publications (2)

Publication Number Publication Date
CN110224899A CN110224899A (zh) 2019-09-10
CN110224899B true CN110224899B (zh) 2023-04-18

Family

ID=67815304

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910579333.7A Active CN110224899B (zh) 2019-06-28 2019-06-28 一种tcp应用的调用链获取方法及装置

Country Status (2)

Country Link
CN (1) CN110224899B (zh)
WO (1) WO2020259515A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110224899B (zh) * 2019-06-28 2023-04-18 深圳前海微众银行股份有限公司 一种tcp应用的调用链获取方法及装置
CN112165530B (zh) * 2020-10-12 2022-10-21 北京贝斯平云科技有限公司 一种服务调用关系分析方法及装置
CN113791964A (zh) * 2021-09-27 2021-12-14 首约科技(北京)有限公司 一种基于传输控制协议四层的服务监控方法
CN114338441A (zh) * 2021-12-28 2022-04-12 腾云悦智科技(深圳)有限责任公司 一种基于业务流量智能识别业务链路的分析方法
CN115865729B (zh) * 2022-11-24 2024-07-12 杭州米络星科技(集团)有限公司 程序服务健康性判断方法和装置、存储介质和终端

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102957555A (zh) * 2011-08-29 2013-03-06 中国移动通信集团上海有限公司 业务支撑系统进程间关联关系的识别方法、系统及服务器
CN107135156A (zh) * 2017-06-07 2017-09-05 努比亚技术有限公司 调用链数据采集方法、移动终端及计算机可读存储介质
CN107404420A (zh) * 2017-09-11 2017-11-28 北京奇艺世纪科技有限公司 一种调用链路性能监控方法及装置
CN109165141A (zh) * 2018-08-10 2019-01-08 武汉优品楚鼎科技有限公司 一种计算机系统运维可视化监控方法、系统及装置
CN109510729A (zh) * 2018-12-25 2019-03-22 上海新炬网络技术有限公司 一种基于CMDB和Netstat发现应用拓扑关系的实现方法
CN109684104A (zh) * 2018-12-17 2019-04-26 广州华多网络科技有限公司 一种服务间调用链的展示实现方法及设备

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104852823B (zh) * 2014-02-18 2019-04-12 腾讯科技(深圳)有限公司 进程的监测方法、装置和系统
US10802672B2 (en) * 2017-05-05 2020-10-13 Servicenow, Inc. Software application portfolio discovery and management
CN109840533B (zh) * 2017-11-28 2020-12-11 中国移动通信集团浙江有限公司 一种应用拓扑图识别方法及装置
CN110224899B (zh) * 2019-06-28 2023-04-18 深圳前海微众银行股份有限公司 一种tcp应用的调用链获取方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102957555A (zh) * 2011-08-29 2013-03-06 中国移动通信集团上海有限公司 业务支撑系统进程间关联关系的识别方法、系统及服务器
CN107135156A (zh) * 2017-06-07 2017-09-05 努比亚技术有限公司 调用链数据采集方法、移动终端及计算机可读存储介质
CN107404420A (zh) * 2017-09-11 2017-11-28 北京奇艺世纪科技有限公司 一种调用链路性能监控方法及装置
CN109165141A (zh) * 2018-08-10 2019-01-08 武汉优品楚鼎科技有限公司 一种计算机系统运维可视化监控方法、系统及装置
CN109684104A (zh) * 2018-12-17 2019-04-26 广州华多网络科技有限公司 一种服务间调用链的展示实现方法及设备
CN109510729A (zh) * 2018-12-25 2019-03-22 上海新炬网络技术有限公司 一种基于CMDB和Netstat发现应用拓扑关系的实现方法

Also Published As

Publication number Publication date
WO2020259515A1 (zh) 2020-12-30
CN110224899A (zh) 2019-09-10

Similar Documents

Publication Publication Date Title
CN110224899B (zh) 一种tcp应用的调用链获取方法及装置
US11036598B2 (en) Notification mechanism for disaster recovery events
US10180959B2 (en) Component independent process integration message search
CN107133309B (zh) 流程实例的存储、查询方法及装置、存储介质及电子设备
US11048598B2 (en) Enhanced disaster recovery procedure of applications in a cloud environment
CN105191211B (zh) 服务器集群下的日志提取方法和服务器集群
US9633094B2 (en) Data load process
CN111198769A (zh) 信息处理方法及其系统、计算机系统及计算机可读介质
CN108173678B (zh) 客户端数据发送方法、客户端连接异常显示方法及装置
CN114745295A (zh) 数据采集方法、装置、设备和可读存储介质
CN115812298B (zh) 供应故障的区块链管理
CN107463391A (zh) 任务处理方法、装置及设备
US20220230113A1 (en) Digital chat conversation and virtual agent analytics
CN117291517A (zh) 审批流程的构建方法及装置
CN115757356A (zh) 数据迁移方法、装置、系统、电子设备及存储介质
US20140067602A1 (en) Sanctions Screening
AU2020452837A1 (en) Provision of remote application action feed cards
CN113934781A (zh) 具有统一的后处理的etl的并行加载操作
CN110134433A (zh) 一种微服务状态获取方法及装置
CN111771191A (zh) 跨域的内联事件处理程序
CN111930620B (zh) 应用运行环境数据处理方法及装置
CN110768855A (zh) 链路化性能测试的方法和装置
CN112835938B (zh) 数据处理方法、装置、电子设备和计算机可读存储介质
CN118540210A (zh) 全链路异常追踪采集方法、装置、设备、介质和程序产品
US20160378920A1 (en) Event based system and method for managing clinical trial data

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