CN118138441A - 日志获取方法、装置、计算机设备和存储介质 - Google Patents
日志获取方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN118138441A CN118138441A CN202410304004.2A CN202410304004A CN118138441A CN 118138441 A CN118138441 A CN 118138441A CN 202410304004 A CN202410304004 A CN 202410304004A CN 118138441 A CN118138441 A CN 118138441A
- Authority
- CN
- China
- Prior art keywords
- target
- information
- data packet
- network connection
- target network
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 55
- 238000001914 filtration Methods 0.000 claims abstract description 34
- 238000004590 computer program Methods 0.000 claims abstract description 25
- 230000006870 function Effects 0.000 claims description 24
- 238000010586 diagram Methods 0.000 claims description 19
- 230000000694 effects Effects 0.000 abstract description 7
- 230000008569 process Effects 0.000 description 7
- 238000012545 processing Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000002441 reversible effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000004083 survival effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/069—Management of faults, events, alarms or notifications using logs of notifications; Post-processing of notifications
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing 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 Exchanges In Wide-Area Networks (AREA)
Abstract
本申请涉及一种日志获取方法、装置、计算机设备、存储介质和计算机程序产品。所述方法包括:基于数据包过滤规则,确定目标数据包;获取目标数据包的数据信息,数据信息包括协议类型、以及五元组信息或三元组信息;根据目标数据包的数据信息,确定目标数据包对应的目标网络连接、以及目标网络连接对应的目标有限状态机,目标有限状态机记录有连接状态信息、访问状态信息、以及流量信息;根据目标网络连接对应的目标有限状态机,确定目标网络连接对应的日志信息。采用本方法,实现了在WireGuard服务端中,确定每一WireGuard用户产生的网络连接对应的连接状态信息、访问状态信息、以及流量信息的详细日志信息的效果。
Description
技术领域
本申请涉及通信技术领域,特别是涉及一种日志获取方法、装置、计算机设备、存储介质和计算机程序产品。
背景技术
随着Linux系统(一个多用户、多任务、支持多线程和多CPU的操作系统)技术的发展,出现了WireGuard(一个开源VPN(Virtual Private Network,虚拟专用网络)协议),WireGuard是一个安全的网络隧道,作为Linux系统的内核虚拟网络接口实现,且在网络层运行。WireGuard的目标是在大多数情况下取代IPsec(IP(Internet Protocol,互联网协议) Security,用于提供IP层的安全性),以及流行的用户空间和/或基于tls(TransportLayer Security,传输层安全)协议的解决方案,如OpenVPN(一个基于 OpenSSL (开放源代码的软件库包)库的应用层 VPN 实现),同时更安全、性能更高且更易于使用。
WireGuard客户端存有用户进行通信连接的日志,但WireGuard服务端的日志只能通过查看Linux系统的内核日志的方式获取,内核需要支持Dynamic Debugging(动态调试),正常情况下需编译Linux系统的内核开启CONFIG_DYNAMIC_DEBUG功能。然而,即便是开启了该功能,WireGuard服务端的日志在目前的技术实现下也只能查看到IP 隧道的建立日志、定期握手日志、整个IP隧道的流量统计日志和IP 隧道的超时断开日志,而无法查看针对 IP 隧道中单个地址端口的访问日志。
目前的日志获取方式获取WireGuard服务端针对IP 隧道中单个地址端口的访问日志,可以通过tcpdump (网络数据包抓取命令)抓包分析或开启 iptables log(一种日志记录工具),获取一定数量的日志信息。
然而,通过tcpdump抓包分析获取的日志信息仅包含访问连接信息和访问断开信息,无法确定访问连接信息/访问断开信息对应的用户,通过iptables log获取的日志信息仅包含某一IP访问的连接信息,无法获知IP访问是否断开。因此,目前的日志获取方式在WireGuard服务端获取WireGuard用户对IP 隧道中单个地址端口的访问日志时,仍然存在日志记录的内容不详细、且准确度较差的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种能够在WireGuard服务端获取针对WireGuard用户对IP 隧道中单个地址端口的访问日志时,提高日志信息详细度和准确度的日志获取方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
第一方面,本申请提供了一种日志获取方法,包括:
基于数据包过滤规则,确定目标数据包;
获取所述目标数据包的数据信息,所述数据信息包括协议类型、以及五元组信息或三元组信息;
根据所述目标数据包的数据信息,确定所述目标数据包对应的目标网络连接、以及所述目标网络连接对应的目标有限状态机,所述目标有限状态机记录有连接状态信息、访问状态信息、以及流量信息;
根据所述目标网络连接对应的目标有限状态机,确定所述目标网络连接对应的日志信息。
在其中一个实施例中,所述根据所述目标数据包的数据信息,确定所述目标数据包对应的目标网络连接、以及所述目标网络连接对应的目标有限状态机,包括:
在所述目标数据包的协议类型满足预设状态图更新条件的情况下,确定所述目标数据包的数据信息对应的连接状态时序信息;
根据所述目标数据包的五元组信息,确定所述目标数据包对应的目标网络连接;
基于所述连接状态时序信息,对所述目标网络连接对应的有限状态机进行状态更新,确定所述目标网络连接对应的目标有限状态机。
在其中一个实施例中,所述基于数据包过滤规则,确定目标数据包,包括:
通过目标函数,进行初始数据包过滤器的尾调用,并将所述初始数据包过滤器加载至内核;
在目标包过滤器的环形队列中,读取目标数据包,所述目标数据包为所述内核基于数据包过滤规则得到。
在其中一个实施例中,所述通过目标函数,进行初始数据包过滤器的尾调用,并将所述初始数据包过滤器加载至内核之后,还包括:
通过所述内核,根据所述目标函数,确定数据包起始位置指针、以及数据包结束位置指针;
基于所述数据包起始位置指针、以及所述数据包结束位置指针,确定各数据包的大小;
在各所述数据包中,确定符合数据包过滤规则的目标数据包,并将所述目标数据包存入目标包过滤器的环形队列中。
在其中一个实施例中,所述目标网络连接对应的目标有限状态机,确定所述目标网络连接对应的日志信息,包括:
根据所述目标网络连接对应的目标有限状态机,确定所述目标网络连接对应的连接状态信息、访问状态信息、以及流量信息;
基于所述目标网络连接对应的连接状态信息、访问状态信息、以及流量信息,生成所述目标网络连接的对应的日志信息。
在其中一个实施例中,所述根据所述目标网络连接对应的目标有限状态机,确定所述目标网络连接对应连接状态信息、访问状态信息、以及流量信息,包括:
根据所述目标网络连接对应的目标有限状态机,确定所述目标网络连接对应的连接状态信息;
在所述连接状态信息表征所述目标网络连接处于已连接状态的情况下,记录所述目标网络连接的连接状态信息、以及所述目标网络连接当前的流量信息;或者,
在所述连接状态信息表征所述目标网络连接处于已关闭状态的情况下,对所述目标网络连接的流量信息进行统计,得到所述目标网络连接的全部流量信息。
在其中一个实施例中,所述方法还包括:
根据所述目标数据包对应的五元组信息或三元组信息,确定所述目标网络连接对应的日志信息所属的账户。
第二方面,本申请还提供了一种日志获取装置,包括:
第一确定模块,用于基于数据包过滤规则,确定目标数据包;
获取模块,用于获取所述目标数据包的数据信息,所述数据信息包括协议类型、以及五元组信息或三元组信息;
第二确定模块,用于根据所述目标数据包的数据信息,确定所述目标数据包对应的目标网络连接、以及所述目标网络连接对应的目标有限状态机,所述目标有限状态机记录有连接状态信息、访问状态信息、以及流量信息;
第三确定模块,用于根据所述目标网络连接对应的目标有限状态机,确定所述目标网络连接对应的日志信息。
在其中一个实施例中,所述第二确定模块具体用于:
在所述目标数据包的协议类型满足预设状态图更新条件的情况下,确定所述目标数据包的数据信息对应的连接状态时序信息;
根据所述目标数据包的五元组信息,确定所述目标数据包对应的目标网络连接;
基于所述连接状态时序信息,对所述目标网络连接对应的有限状态机进行状态更新,确定所述目标网络连接对应的目标有限状态机。
在其中一个实施例中,所述第一确定模块具体用于:
通过目标函数,进行初始数据包过滤器的尾调用,并将所述初始数据包过滤器加载至内核;
在目标包过滤器的环形队列中,读取目标数据包,所述目标数据包为所述内核基于数据包过滤规则得到。
在其中一个实施例中,所述第一确定模块具体用于:
通过所述内核,根据所述目标函数,确定数据包起始位置指针、以及数据包结束位置指针;
基于所述数据包起始位置指针、以及所述数据包结束位置指针,确定各数据包的大小;
在各所述数据包中,确定符合数据包过滤规则的目标数据包,并将所述目标数据包存入目标包过滤器的环形队列中。
在其中一个实施例中,所述第三确定模块具体用于:
根据所述目标网络连接对应的目标有限状态机,确定所述目标网络连接对应的连接状态信息、访问状态信息、以及流量信息;
基于所述目标网络连接对应的连接状态信息、访问状态信息、以及流量信息,生成所述目标网络连接的对应的日志信息。
在其中一个实施例中,所述第三确定模块具体用于:
根据所述目标网络连接对应的目标有限状态机,确定所述目标网络连接对应的连接状态信息;
在所述连接状态信息表征所述目标网络连接处于已连接状态的情况下,记录所述目标网络连接的连接状态信息、以及所述目标网络连接当前的流量信息;或者,
在所述连接状态信息表征所述目标网络连接处于已关闭状态的情况下,对所述目标网络连接的流量信息进行统计,得到所述目标网络连接的全部流量信息。
在其中一个实施例中,所述装置还包括:
第四确定模块,用于根据所述目标数据包对应的五元组信息或三元组信息,确定所述目标网络连接对应的日志信息所属的账户。
第三方面,本申请还提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
基于数据包过滤规则,确定目标数据包;
获取所述目标数据包的数据信息,所述数据信息包括协议类型、以及五元组信息或三元组信息;
根据所述目标数据包的数据信息,确定所述目标数据包对应的目标网络连接、以及所述目标网络连接对应的目标有限状态机,所述目标有限状态机记录有连接状态信息、访问状态信息、以及流量信息;
根据所述目标网络连接对应的目标有限状态机,确定所述目标网络连接对应的日志信息。
第四方面,本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
基于数据包过滤规则,确定目标数据包;
获取所述目标数据包的数据信息,所述数据信息包括协议类型、以及五元组信息或三元组信息;
根据所述目标数据包的数据信息,确定所述目标数据包对应的目标网络连接、以及所述目标网络连接对应的目标有限状态机,所述目标有限状态机记录有连接状态信息、访问状态信息、以及流量信息;
根据所述目标网络连接对应的目标有限状态机,确定所述目标网络连接对应的日志信息。
第五方面,本申请还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
基于数据包过滤规则,确定目标数据包;
获取所述目标数据包的数据信息,所述数据信息包括协议类型、以及五元组信息或三元组信息;
根据所述目标数据包的数据信息,确定所述目标数据包对应的目标网络连接、以及所述目标网络连接对应的目标有限状态机,所述目标有限状态机记录有连接状态信息、访问状态信息、以及流量信息;
根据所述目标网络连接对应的目标有限状态机,确定所述目标网络连接对应的日志信息。
上述日志获取方法、装置、计算机设备、存储介质和计算机程序产品,基于数据包过滤规则,确定目标数据包;获取所述目标数据包的数据信息,所述数据信息包括协议类型、以及五元组信息或三元组信息;根据所述目标数据包的数据信息,确定所述目标数据包对应的目标网络连接、以及所述目标网络连接对应的目标有限状态机;根据所述目标网络连接对应的有限状态机,确定所述目标网络连接对应的日志信息。采用本方法,能够在WireGuard服务端,基于目标数据包的协议类型、以及五元组信息或三元组信息,以及目标网络连接对应的有限状态机,准确地记录某一协议地址端口的日志信息。并且,五元组信息和三元组信息中记录有源互联网协议地址,因此,还能够根据五元组信息或三元组信息,确定日志信息对应的账户,实现了在WireGuard服务端中确定每一WireGuard用户产生的网络连接对应的连接状态信息、访问状态信息、以及流量信息的详细日志信息的效果。
附图说明
为了更清楚地说明本申请实施例或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为一个实施例中日志获取方法的流程示意图;
图2为一个实施例中确定目标网络连接对应的目标有限状态机的流程示意图;
图3为一个实施例中目标数据包的协议类型为TCP协议的情况下,得到的目标网络连接的目标有限状态机示例的示意图;
图4为一个实施例中目标数据包的协议类型为UDP协议的情况下,得到的UDP的目标有限状态机示例的示意图;
图5为一个实施例中读取目标数据包的流程示意图;
图6为一个实施例中实现初始数据包过滤器的尾调用的处理过程示例的示意图;
图7为一个实施例中将目标数据包存入目标包过滤器的环形队列的流程示意图;
图8为一个实施例中服务器通过内核获取目标数据包的过程示例的示意图;
图9为一个实施例中生成目标网络连接的对应的日志信息的流程示意图;
图10为一个实施例中确定目标网络连接对应的连接状态信息、访问状态信息、以及流量信息的流程示意图;
图11为一个实施例中日志获取方法的处理过程示例的示意图;
图12为一个实施例中日志获取装置的结构框图;
图13为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在一个实施例中,如图1所示,提供了一种日志获取方法,本实施例以该方法应用于基于Linux系统的服务器进行举例说明,可以理解的是,该方法也可以应用于基于Linux系统的终端,还可以应用于包括基于Linux系统的终端和基于Linux系统的服务器的系统,并通过终端和服务器的交互实现。本实施例中,该方法包括以下步骤:
步骤102,基于数据包过滤规则,确定目标数据包。
其中,内核空间是操作系统内核访问的区域,独立于普通的应用程序,是受保护的内存空间;用户空间是普通应用程序可访问的内存区域。数据包过滤规则可以通过技术人员在实际应用中根据需求设置,例如数据包过滤规则可以为预设大小的数据包、和/或预设协议类型的数据包、和/或预设源IP地址的数据包等。
本申请实施例中,服务器通过用户空间,根据基于数据包过滤规则,在WireGuard服务端对应的IP隧道的多个网络数据包中,确定目标数据包。
步骤104,获取目标数据包的数据信息。
其中,数据信息包括协议类型、以及五元组信息或三元组信息。在目标数据包的协议类型为TCP协议或UDP(User Datagram Protocol,用户数据报协议)协议等对应五元组的协议时,目标数据包的数据信息包括五元组信息;在目标数据包的协议类型不为TCP协议或UDP协议等对应五元组的协议时,目标数据包的数据信息包括三元组信息。
本申请实施例中,服务器通过用户空间,获取目标数据包的协议类型、以及五元组信息或三元组信息等数据信息。
示例性地,服务器通过用户空间,确定目标数据包的协议类型为TCP(Transmission Control Protocol,传输控制协议)协议,在目标数据包的协议类型为TCP协议的情况下,服务器通过用户空间,确定目标数据包的五元组信息为[源IP地址:192.168.x.x,源端口号:10000,协议类型:TCP,目的IP地址:121.14.xx.xx,目的端口号:80]。其中,该目标数据包的五元组信息表示一个IP地址为192.168.x.x的设备通过端口10000,利用TCP协议,与IP地址为121.14.xx.xx,端口为80的设备进行网络连接。
步骤106,根据目标数据包的数据信息,确定目标数据包对应的目标网络连接、以及目标网络连接对应的目标有限状态机。
其中,目标有限状态机记录有连接状态信息、访问状态信息、以及流量信息。目标有限状态机可以为记录有连接状态信息、访问状态信息、以及流量信息的有限状态图形式。对于目标有限状态机的具体实现方式,本申请不作具体限定。
本申请实施例中,由于一个网络连接中,可以通过多个网络数据包进行数据传输,因此,服务器通过用户空间,根据目标数据包的数据信息中的五元组信息,确定目标数据包对应的目标网络连接。
示例性地,服务器通过用户空间,根据目标数据包的五元组信息中的源IP地址、源端口号、目的IP地址和目的端口号,确定该目标数据包对应的目标网络连接。
在确定目标数据包对应的目标网络连接后,服务器通过用户空间,确定该目标网络连接对应的目标有限状态机。
步骤108,根据目标网络连接对应的目标有限状态机,确定目标网络连接对应的日志信息。
本申请实施例中,由于目标有限状态机记录有目标网络连接的连接状态信息、访问状态信息、以及流量信息,因此,服务器可以通过用户空间,根据目标网络连接对应的有限状态机,确定目标网络连接对应的日志信息。
其中,目标网络连接对应的日志信息包括目标网络连接的连接状态信息、访问状态信息、以及流量信息。具体地,连接状态信息包括已连接状态和连接开始时间、以及已关闭状态和连接开始时间、连接结束时间;访问状态信息包括访问的IP地址、访问的应用信息、以及访问时长;流量信息包括访问某一IP地址/应用所使用的流量。
上述日志获取方法中,基于数据包过滤规则,确定目标数据包;获取目标数据包的数据信息,数据信息包括协议类型、以及五元组信息或三元组信息;根据目标数据包的数据信息,确定目标数据包对应的目标网络连接、以及目标网络连接对应的目标有限状态机,目标有限状态机记录有连接状态信息、访问状态信息、以及流量信息;根据目标网络连接对应的目标有限状态机,确定目标网络连接对应的日志信息。采用本方法,能够在WireGuard服务端,基于目标数据包的协议类型、以及五元组信息或三元组信息,以及目标网络连接对应的有限状态机,准确地记录某一协议地址端口的日志信息。并且,五元组信息和三元组信息中记录有源互联网协议地址,因此,还能够根据五元组信息或三元组信息,确定日志信息对应的账户,实现了在WireGuard服务端中确定每一WireGuard用户产生的网络连接对应的连接状态信息、访问状态信息、以及流量信息的详细日志信息的效果。
在一个示例性的实施例中,如图2所示,步骤106包括以下步骤202至步骤206。其中:
步骤202,在目标数据包的协议类型满足预设状态图更新条件的情况下,确定目标数据包的数据信息对应的连接状态时序信息。
其中,预设状态图更新条件可以为目标数据包的协议类型为TCP协议或UDP协议等对应五元组的协议。
本申请实施例中,服务器通过用户空间,判断目标数据包的协议类型是否满足预设状态图更新条件,在目标数据包的协议类型满足预设状态图更新条件的情况下,确定目标数据包对应的连接状态时序信息。
其中,连接状态时序信息为五元组对应的网络连接的连接状态、以及各状态对应的时序信息。连接状态时序信息可以包括LISTEN(监听状态),在此状态下,服务器等待客户端的连接请求,但是并未收到任何客户端的SYN(SYNchronization,建立连接)数据包;SYN_SENT(正在发送同步报文状态),客户端向服务器发送SYN数据包以启动连接,并等待服务器的ACK(ACKnowledgment,响应)应答;SYN_RECEIVED(收到同步报文状态);服务器收到客户端的SYN数据包,回复一个SYN/ACK数据包,表示已经收到客户端请求,并请求确认;ESTABLISHED(连接已建立状态)此时,客户端和服务器都认可连接已经建立;FIN_WAIT_1(等待远程TCP的连接中断请求状态),客户端发送FIN(FINish,关闭连接)数据包,请求中断连接,并等待服务器的确认;CLOSE_WAIT(等待关闭状态),服务器接收到FIN数据包,表示客户端已经关闭了连接,但服务器还有数据需要发送;LAST_ACK(等待所有确认报文发送完毕状态),服务器也发送一个FIN数据包,请求关闭连接,并等待客户端的确认应答;TIME_WAIT(等待2MSL时间状态);在客户端和服务器都发出FIN数据包后,它们都进入了TIME_WAIT状态,等待2倍的报文最大生存时间;CLOSED(连接已关闭状态)关闭TCP连接,释放所有资源。
示例性地,在目标数据包的协议类型为TCP协议的情况下,服务器通过用户空间,确定目标数据包的协议类型满足预设状态图更新条件,根据目标数据包的标志位,确定目标数据包对应的连接状态时序信息。TCP数据包的标志位可以包括SYN、ACK、FIN、RST(ReSeT,连接重置)、以及PSH(PuSH,推送)等。
步骤204,根据目标数据包的五元组信息,确定目标数据包对应的目标网络连接。
本申请实施例中,在多个目标数据包的五元组信息中的源IP地址和源端口号、目的IP地址和目的端口号均相同的情况下,能够表征该多个目标数据包属于同一网络连接。服务器通过用户空间,根据目标数据包的五元组信息中的源IP地址、源端口号、目的IP地址和目的端口号,确定该目标数据包对应的目标网络连接。
步骤206,基于连接状态时序信息,对目标网络连接对应的有限状态机进行状态更新,确定目标网络连接对应的目标有限状态机。
本申请实施例中,服务器通过用户空间,根据目标数据包对应的连接状态时序信息,对目标数据包对应的目标网络连接的有限状态机(FSM,finite-state machine)进行状态更新。例如,当确定连接状态时序信息未被记录至目标网络连接的有限状态机中时,服务器通过用户空间,将该连接状态时序信息更新至目标网络连接对应的有限状态机中,得到目标有限状态机。
示例性地,参照图3所示,为目标数据包的协议类型为TCP协议的情况下,得到的目标网络连接的目标有限状态机示例。
参照图4所示,为目标数据包的协议类型为UDP协议的情况下,得到的UDP的目标有限状态机示例。UDP是一种无连接的协议,它不维护任何关于连接状态的信息,UDP报文交互中通常不包含确认报文。因此,UDP不需要接收方发送确认报文来确认已收到发送方的报文。计算UDP状态时需要考虑反向发送的UDP数据。当有反方向数据时,此UDP 五元组对应状态机的超时时间也同样需要重置。
本实施例中,在目标数据包的协议类型为TCP协议或UDP协议等对应五元组的协议的情况下,能够确定该目标数据包对应的目标网络连接的目标有限状态机,由于目标有限状态机录有连接状态信息、访问状态信息、以及流量信息,能够便于后续服务器通过用户空间,根据目标数据包对应的目标有限状态机,确定目标网络连接的日志信息。
在一个示例性的实施例中,如图5所示,步骤102包括步骤502至步骤504。其中:
步骤502,通过目标函数,进行初始数据包过滤器的尾调用,并将初始数据包过滤器加载至内核。
其中,初始数据包过滤器为初始BPF(Berkely Packet Filter,伯克利数据包过滤器)程序。
本申请实施例中,以目标函数为XDP(eXpress Data Path,即快速数据路径,XDP是Linux网络处理流程中的一个eBPF(Berkely Packet Filter,伯克利数据包过滤器)钩子,能够挂载eBPF程序,它能够在网络数据包到达网卡驱动层时对其进行处理,具有非常优秀的数据面处理性能) 的 Hook 函数(钩子函数)为例进行说明。
在需要进行日志信息获取(即目标数据包获取)时,服务器通过用户空间,调用目标函数,并在目标函数中调用BPF_tall_call函数(BPF程序的尾调用函数),实现初始数据包过滤器的尾调用,并将初始数据包过滤器加载至内核。
示例性地,参照图6所示,为实现初始数据包过滤器的尾调用的处理过程示例,其中,尾调用程序为待进行尾调用的初始BPF程序。
然后,服务器通过用户空间加载BPF PROG ARRAY MAP(对应 eBPF 程序的文件描述符数组;用于实现跳转表和子程序处理特定的数据包协议)将数据包获取程序加载至内核中,从而使内核进行目标数据包的获取。
步骤504,在目标包过滤器的环形队列中,读取目标数据包。
其中,目标数据包为内核基于数据包过滤规则得到。在初始数据包过滤器为初始BPF程序的情况下,目标包过滤器的环形队列为BPF Ring Buffer(BPF环形缓冲器)。
本申请实施例中,服务器能够通过内核将目标数据包存入目标包过滤器的环形队列中,服务器通过用户空间访问目标包过滤器的环形队列,在目标包过滤器的环形队列中,读取目标数据包。
在需要停止日志信息获取时,服务器通过用户空间,将数据包获取程序的程序文件描述从BPF PROG ARRAY MAP中移除,从而使内核停止目标数据包的获取。
本实施例中,考虑到服务器性能和安全等问题,服务器能够通过BPF PROG ARRAYMAP动态地加载数据包获取程序,实现动态开启目标数据包的获取的效果,并且,还能对特定WireGuard用户单独开启详细日志记录功能,使日志记录更有针对性。
在一个示例性的实施例中,如图7所示,步骤502包括步骤602至步骤606。其中:
步骤702,通过内核,根据目标函数,确定数据包起始位置指针、以及数据包结束位置指针。
本申请实施例中,服务器通过内核,接收目标函数传入的参数,根据目标函数传入的参数,确定数据包起始位置指针、以及数据包结束位置指针。
步骤704,基于数据包起始位置指针、以及数据包结束位置指针,确定各数据包的大小。
本申请实施例中,服务器通过内核,基于数据包起始位置指针、以及数据包结束位置指针,确定IP隧道中各数据包的大小。
步骤706,在各数据包中,确定符合数据包过滤规则的目标数据包,并将目标数据包存入目标包过滤器的环形队列中。
本申请实施例中,服务器能够通过内核,基于数据包过滤规则对各数据包进行筛选,在各数据包中确定符合数据包过滤规则的目标数据包。
然后,服务器能够通过内核获取目标数据包的协议类型,在目标数据包的协议类型为TCP协议或UDP协议等对应五元组的协议的情况下,获取目标数据包的五元组信息;在目标数据包的协议类型不为TCP协议或UDP协议等对应五元组的协议的情况下,获取目标数据包的三元组信息,并将目标数据包、以及目标数据包的五元组信息或三元组信息存入目标包过滤器的环形队列中。服务器能够通过内核,基于目标包过滤器的环形队列,向用户空间中的应用程序发送数据信息(即目标数据包、以及目标数据包的数据信息)。
其中,上述步骤702至步骤706即为数据包获取程序的实现步骤。
示例性地,参照图8所示,为服务器通过内核获取目标数据包的过程示例。
本实施例中,服务器通过内核,能够筛选符合数据包过滤规则的目标数据包,通过将目标数据包、以及目标数据包的数据信息发送至用户空间,能够使用户空间对目标数据包进行进一步处理,得到目标数据包相关的日志信息。达到了将数据包获取与实际业务需求相结合的效果,使日志获取更加灵活。
在一个示例性的实施例中,如图9所示,步骤108包括步骤902至步骤904。其中:
步骤902,根据目标网络连接对应的目标有限状态机,确定目标网络连接对应的连接状态信息、访问状态信息、以及流量信息。
本申请实施例中,由于目标网络连接对应的目标有限状态机为基于各连接状态时序信息得到的,因此,目标有限状态机能够反映目标网络连接的连接状态信息、访问状态信息、以及流量信息。然后,服务器通过用户空间,根据目标网络连接对应的目标有限状态机,确定目标网络连接对应的连接状态信息、访问状态信息、以及流量信息。
步骤904,基于目标网络连接对应的连接状态信息、访问状态信息、以及流量信息,生成目标网络连接的对应的日志信息。
本申请实施例中,服务器通过用户空间,生成包含有目标网络连接对应的连接状态信息、访问状态信息、以及流量信息的日志信息。具体地,日志信息包括目标网络连接的连接状态信息、访问状态信息、以及流量信息。具体地,连接状态信息包括已连接状态和连接开始时间、以及已关闭状态和连接开始时间、连接结束时间;访问状态信息包括访问的IP地址、访问的应用信息、以及访问时长;流量信息包括访问某一IP地址/应用所使用的流量。
本实施例中,根据目标网络连接对应的目标有限状态机,能够确定目标网络连接对应的连接状态信息、访问状态信息、以及流量信息,进而生成目标网络连接的日志记录,实现了准确地记录WireGuard用户对某一协议地址端口的访问开始/结束时间、访问时长以及访问流量等详细日志信息的效果。
在一个示例性的实施例中,如图10所示,步骤902包括步骤1002至步骤1006。其中:
步骤1002,根据目标网络连接对应的目标有限状态机,确定目标网络连接对应的连接状态信息。
本申请实施例中,服务器通过用户空间,根据目标网络连接对应的目标有限状态机,确定该目标网络连接对应的连接状态信息为已连接状态或已关闭状态。
步骤1004,在连接状态信息表征目标网络连接处于已连接状态的情况下,记录目标网络连接的连接状态信息、以及目标网络连接当前的流量信息。
本申请实施例中,服务器通过用户空间,在连接状态信息表征目标网络连接处于已连接状态的情况下,记录目标网络连接的连接状态信息、访问状态信息以及目标网络连接当前的流量信息。
步骤1006,在连接状态信息表征目标网络连接处于已关闭状态的情况下,对目标网络连接的流量信息进行统计,得到目标网络连接的全部流量信息。
本申请实施例中,服务器通过用户空间,在连接状态信息表征目标网络连接处于已关闭状态的情况下,对目标网络连接的流量信息进行统计,具体地,服务器通过用户空间对该目标网络连接过程中,访问各应用和/或各IP地址的流量进行统计,得到包含了访问各应用和/或各IP地址的流量、以及访问时间信息的全部流量信息。
可以理解的是,在目标数据包的协议类型不为TCP协议或UDP协议等对应五元组的协议,服务器的用户空间无法获取该目标数据包的五元组信息,进而无法确定该目标数据包对应的网络连接的具体日志信息,服务器的用户空间可以将该目标数据包的协议类型进行记录,得到该目标数据包对应的日志信息,例如,通过IP数据包的协议类型字段记录ICMP (Internet Control Message Protocol 的缩写,即互联网控制消息协议)等数据包的日志信息。
本实施例中,能够根据目标网络连接的连接状态信息,确定目标网络连接对应的连接状态信息、访问状态信息、以及流量信息。实现了准确地记录WireGuard用户对某一协议地址端口的访问开始/结束时间、访问时长以及访问流量等详细信息的效果。即使在目标数据包的协议类型不为TCP协议或UDP协议等对应五元组的协议的情况下,也能对目标数据包进行记录,得到该目标数据包对应的日志信息,具有良好的适应性。
在一个示例性的实施例中,上述方法还包括:
根据目标数据包对应的五元组信息或三元组信息,确定目标网络连接对应的日志信息所属的账户。
本申请实施例中,服务器通过用户空间,根据目标数据包对应的五元组信息或三元组信息,能够确定目标数据包对应的源IP地址,服务器能够将同一源IP地址发送的目标数据包,确定为同一账户对应的网络数据包。
然后,服务器基于各目标数据包对应的目标网络连接、以及各目标网络连接对应的日志信息、确定各日志信息所属的账户。
其中,由于WireGuard用户在登入 Wireguard 网络时会先分配到一个虚拟 IP 地址,之后该用户的所有访问均以该虚拟 IP 地址作为源IP地址。因此,上述步骤能够实现基于目标数据包对应的源IP地址,找到并确定与该源IP地址对应的一个唯一的账户信息。
本实施例中,通过目标数据包对应的源IP地址,服务区能够确定同一账户对应的网络数据包,进而将各日志信息与账户对应起来,实现了日志信息的可追溯性,便于后续基于各账户的日志信息,实现对各账户的维护和管理。
在一个实施例中,如图11所示,还提供了一种日志获取方法的处理过程示例,具体内容如下:
步骤A1,加载BPF初始程序到内核。
步骤A2,加载BPF PROG ARRAY MAP。
步骤A3,初始化数据包过滤规则。
步骤A4,加载数据包获取程序到内核。
步骤A5,初始化BPF Ring Buffer 数据结构。
步骤A6,启动数据包循环读取线程;
步骤A7,确定数据包目标数据包的协议类型是否为TCP协议或UDP协议等对应五元组的协议。
步骤B1,在目标数据包的协议类型不为TCP协议或UDP协议等对应五元组的协议的情况下,生成该目标数据包的协议类型日志信息,并对日志信息进行记录和保存。
步骤B2,在目标数据包的协议类型为TCP协议或UDP协议等对应五元组的协议的情况下,查找或创建该目标数据包的目标网络连接对应的有限状态机,并对该有限状态机进行更新,得到目标有限状态机。
步骤C1,根据目标网络连接的对应的目标有限状态机,确定目标网络连接的连接状态信息。
步骤C2,在连接状态信息表征目标网络连接处于已连接状态的情况下,记录目标网络连接的连接状态信息、以及目标网络连接当前的流量信息。
步骤C3,在连接状态信息表征目标网络连接处于已关闭状态的情况下,对目标网络连接的流量信息进行统计,得到目标网络连接的全部流量信息。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的日志获取方法的日志获取装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个日志获取装置实施例中的具体限定可以参见上文中对于日志获取方法的限定,在此不再赘述。
在一个示例性的实施例中,如图12所示,提供了一种日志获取装置1200,包括:第一确定模块1201、获取模块1202、第二确定模块1203和第三确定模块1204,其中:
第一确定模块1201,用于基于数据包过滤规则,确定目标数据包。
获取模块1202,用于获取所述目标数据包的数据信息,所述数据信息包括协议类型、以及五元组信息或三元组信息。
第二确定模块1203,用于根据所述目标数据包的数据信息,确定所述目标数据包对应的目标网络连接、以及所述目标网络连接对应的目标有限状态机,所述目标有限状态机记录有连接状态信息、访问状态信息、以及流量信息。
第三确定模块1204,用于根据所述目标网络连接对应的目标有限状态机,确定所述目标网络连接对应的日志信息。
采用本申请实施例提供的日志获取装置,能够在WireGuard服务端,基于目标数据包的协议类型、以及五元组信息或三元组信息,以及目标网络连接对应的有限状态机,准确地记录某一协议地址端口的日志信息。并且,五元组信息和三元组信息中记录有源互联网协议地址,因此,还能够根据五元组信息或三元组信息,确定日志信息对应的账户,实现了在WireGuard服务端中确定每一WireGuard用户产生的网络连接对应的连接状态信息、访问状态信息、以及流量信息的详细日志信息的效果。
在一个实施例中,所述第二确定模块1203具体用于:
在所述目标数据包的协议类型满足预设状态图更新条件的情况下,确定所述目标数据包的数据信息对应的连接状态时序信息;
根据所述目标数据包的五元组信息,确定所述目标数据包对应的目标网络连接;
基于所述连接状态时序信息,对所述目标网络连接对应的有限状态机进行状态更新,确定所述目标网络连接对应的目标有限状态机。
在一个实施例中,所述第一确定模块1201具体用于:
通过目标函数,进行初始数据包过滤器的尾调用,并将所述初始数据包过滤器加载至内核;
在目标包过滤器的环形队列中,读取目标数据包,所述目标数据包为所述内核基于数据包过滤规则得到。
在一个实施例中,所述第一确定模块1201具体用于:
通过所述内核,根据所述目标函数,确定数据包起始位置指针、以及数据包结束位置指针;
基于所述数据包起始位置指针、以及所述数据包结束位置指针,确定各数据包的大小;
在各所述数据包中,确定符合数据包过滤规则的目标数据包,并将所述目标数据包存入目标包过滤器的环形队列中。
在一个实施例中,所述第三确定模块1204具体用于:
根据所述目标网络连接对应的目标有限状态机,确定所述目标网络连接对应的连接状态信息、访问状态信息、以及流量信息;
基于所述目标网络连接对应的连接状态信息、访问状态信息、以及流量信息,生成所述目标网络连接的对应的日志信息。
在一个实施例中,所述第三确定模块1204具体用于:
根据所述目标网络连接对应的目标有限状态机,确定所述目标网络连接对应的连接状态信息;
在所述连接状态信息表征所述目标网络连接处于已连接状态的情况下,记录所述目标网络连接的连接状态信息、以及所述目标网络连接当前的流量信息;或者,
在所述连接状态信息表征所述目标网络连接处于已关闭状态的情况下,对所述目标网络连接的流量信息进行统计,得到所述目标网络连接的全部流量信息。
在一个实施例中,所述装置还包括:
第四确定模块,用于根据所述目标数据包对应的五元组信息或三元组信息,确定所述目标网络连接对应的日志信息所属的账户。
上述日志获取装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个示例性的实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图13所示。该计算机设备包括处理器、存储器、输入/输出接口(Input/Output,简称I/O)和通信接口。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储日志获取方法相关的数据。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种日志获取方法。
本领域技术人员可以理解,图13中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个示例性的实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
基于数据包过滤规则,确定目标数据包;
获取所述目标数据包的数据信息,所述数据信息包括协议类型、以及五元组信息或三元组信息;
根据所述目标数据包的数据信息,确定所述目标数据包对应的目标网络连接、以及所述目标网络连接对应的目标有限状态机,所述目标有限状态机记录有连接状态信息、访问状态信息、以及流量信息;
根据所述目标网络连接对应的目标有限状态机,确定所述目标网络连接对应的日志信息。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
基于数据包过滤规则,确定目标数据包;
获取所述目标数据包的数据信息,所述数据信息包括协议类型、以及五元组信息或三元组信息;
根据所述目标数据包的数据信息,确定所述目标数据包对应的目标网络连接、以及所述目标网络连接对应的目标有限状态机,所述目标有限状态机记录有连接状态信息、访问状态信息、以及流量信息;
根据所述目标网络连接对应的目标有限状态机,确定所述目标网络连接对应的日志信息。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
基于数据包过滤规则,确定目标数据包;
获取所述目标数据包的数据信息,所述数据信息包括协议类型、以及五元组信息或三元组信息;
根据所述目标数据包的数据信息,确定所述目标数据包对应的目标网络连接、以及所述目标网络连接对应的目标有限状态机,所述目标有限状态机记录有连接状态信息、访问状态信息、以及流量信息;
根据所述目标网络连接对应的目标有限状态机,确定所述目标网络连接对应的日志信息。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要符合相关规定。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (11)
1.一种日志获取方法,其特征在于,所述方法包括:
基于数据包过滤规则,确定目标数据包;
获取所述目标数据包的数据信息,所述数据信息包括协议类型、以及五元组信息或三元组信息;
根据所述目标数据包的数据信息,确定所述目标数据包对应的目标网络连接、以及所述目标网络连接对应的目标有限状态机,所述目标有限状态机记录有连接状态信息、访问状态信息、以及流量信息;
根据所述目标网络连接对应的目标有限状态机,确定所述目标网络连接对应的日志信息。
2.根据权利要求1所述的方法,其特征在于,所述根据所述目标数据包的数据信息,确定所述目标数据包对应的目标网络连接、以及所述目标网络连接对应的目标有限状态机,包括:
在所述目标数据包的协议类型满足预设状态图更新条件的情况下,确定所述目标数据包的数据信息对应的连接状态时序信息;
根据所述目标数据包的五元组信息,确定所述目标数据包对应的目标网络连接;
基于所述连接状态时序信息,对所述目标网络连接对应的有限状态机进行状态更新,确定所述目标网络连接对应的目标有限状态机。
3.根据权利要求1所述的方法,其特征在于,所述基于数据包过滤规则,确定目标数据包,包括:
通过目标函数,进行初始数据包过滤器的尾调用,并将所述初始数据包过滤器加载至内核;
在目标包过滤器的环形队列中,读取目标数据包,所述目标数据包为所述内核基于数据包过滤规则得到。
4.根据权利要求3所述的方法,其特征在于,所述通过目标函数,进行初始数据包过滤器的尾调用,并将所述初始数据包过滤器加载至内核之后,还包括:
通过所述内核,根据所述目标函数,确定数据包起始位置指针、以及数据包结束位置指针;
基于所述数据包起始位置指针、以及所述数据包结束位置指针,确定各数据包的大小;
在各所述数据包中,确定符合数据包过滤规则的目标数据包,并将所述目标数据包存入目标包过滤器的环形队列中。
5.根据权利要求1所述的方法,其特征在于,所述目标网络连接对应的目标有限状态机,确定所述目标网络连接对应的日志信息,包括:
根据所述目标网络连接对应的目标有限状态机,确定所述目标网络连接对应的连接状态信息、访问状态信息、以及流量信息;
基于所述目标网络连接对应的连接状态信息、访问状态信息、以及流量信息,生成所述目标网络连接的对应的日志信息。
6.根据权利要求5所述的方法,其特征在于,所述根据所述目标网络连接对应的目标有限状态机,确定所述目标网络连接对应连接状态信息、访问状态信息、以及流量信息,包括:
根据所述目标网络连接对应的目标有限状态机,确定所述目标网络连接对应的连接状态信息;
在所述连接状态信息表征所述目标网络连接处于已连接状态的情况下,记录所述目标网络连接的连接状态信息、以及所述目标网络连接当前的流量信息;或者,
在所述连接状态信息表征所述目标网络连接处于已关闭状态的情况下,对所述目标网络连接的流量信息进行统计,得到所述目标网络连接的全部流量信息。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据所述目标数据包对应的五元组信息或三元组信息,确定所述目标网络连接对应的日志信息所属的账户。
8.一种日志获取装置,其特征在于,所述装置包括:
第一确定模块,用于基于数据包过滤规则,确定目标数据包;
获取模块,用于获取所述目标数据包的数据信息,所述数据信息包括协议类型、以及五元组信息或三元组信息;
第二确定模块,用于根据所述目标数据包的数据信息,确定所述目标数据包对应的目标网络连接、以及所述目标网络连接对应的目标有限状态机,所述目标有限状态机记录有连接状态信息、访问状态信息、以及流量信息;
第三确定模块,用于根据所述目标网络连接对应的目标有限状态机,确定所述目标网络连接对应的日志信息。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
11.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2023118047764 | 2023-12-26 | ||
CN202311804776 | 2023-12-26 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118138441A true CN118138441A (zh) | 2024-06-04 |
Family
ID=91229715
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410304004.2A Pending CN118138441A (zh) | 2023-12-26 | 2024-03-15 | 日志获取方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118138441A (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105516016A (zh) * | 2015-11-25 | 2016-04-20 | 北京航空航天大学 | 一种使用Tilera多核加速卡基于流的数据包过滤系统及数据包过滤方法 |
CN111314328A (zh) * | 2020-02-03 | 2020-06-19 | 北京字节跳动网络技术有限公司 | 网络攻击防护方法、装置、存储介质及电子设备 |
CN115002186A (zh) * | 2022-05-17 | 2022-09-02 | 深信服科技股份有限公司 | 网络信息采集方法、装置、电子设备及可读存储介质 |
-
2024
- 2024-03-15 CN CN202410304004.2A patent/CN118138441A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105516016A (zh) * | 2015-11-25 | 2016-04-20 | 北京航空航天大学 | 一种使用Tilera多核加速卡基于流的数据包过滤系统及数据包过滤方法 |
CN111314328A (zh) * | 2020-02-03 | 2020-06-19 | 北京字节跳动网络技术有限公司 | 网络攻击防护方法、装置、存储介质及电子设备 |
CN115002186A (zh) * | 2022-05-17 | 2022-09-02 | 深信服科技股份有限公司 | 网络信息采集方法、装置、电子设备及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109564502B (zh) | 应用于存储设备中的访问请求的处理方法和装置 | |
CN110535742B (zh) | 报文转发方法、装置、电子设备及机器可读存储介质 | |
WO2024037296A1 (zh) | 基于协议族的quic数据传输方法及装置 | |
EP4318251A1 (en) | Data access system and method, and device and network card | |
CN112100146B (zh) | 一种高效的纠删分布式存储写入方法、系统、介质及终端 | |
CN111897492B (zh) | 一种基于块设备驱动的数据处理方法、装置及电子设备 | |
CN115023919B (zh) | 防火墙规则的更新方法、装置、服务器及存储介质 | |
CN111901386A (zh) | 一种远端文件处理的方法、系统、设备及可读存储介质 | |
CN113596017A (zh) | 一种协议解析方法、装置、软网关和存储介质 | |
CN115686932A (zh) | 备份集文件恢复方法、装置和计算机设备 | |
CN110445826B (zh) | 一种会话信息获取方法、装置及服务器 | |
CN112702338B (zh) | Ike报文获取方法及装置 | |
CN110233902A (zh) | 会话处理方法、装置、电子设备及机器可读存储介质 | |
CN113422669B (zh) | 数据传输方法、装置和系统、电子设备以及存储介质 | |
WO2020187124A1 (zh) | 数据处理方法及装置 | |
CN118138441A (zh) | 日志获取方法、装置、计算机设备和存储介质 | |
CN113765867A (zh) | 一种数据传输方法、装置、设备及存储介质 | |
WO2022148364A1 (zh) | 数据发送方法及装置、建立p2p连接的方法及系统 | |
CN112532690A (zh) | 一种报文解析方法、装置、电子设备及存储介质 | |
CN102546405B (zh) | 协议栈的业务处理方法及装置 | |
CN116366503B (zh) | 一种数据处理方法和相关装置 | |
CN111371791A (zh) | 一种访问关系确定方法、装置、设备、介质 | |
CN112817536B (zh) | 一种数据包的捕获方法及相关装置 | |
CN112307033B (zh) | 数据包文件的重构方法、装置及设备 | |
CN114614999B (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 |