当前位置: 首页 > news >正文

基于LLM的6G空天地一体化网络自进化安全框架

摘要

最近出现的6G空天地一体化网络(SAGINs)整合了卫星、空中网络和地面通信,为各种移动应用提供普遍覆盖。然而,SAGINs的高度动态、开放和异构的性质带来了严重的安全问题。构建SAGINs的防御体系面临两个初步挑战:1) 准确理解海量的非结构化多维威胁信息,以生成针对各种恶意攻击的防御策略;2) 快速适应潜在的未知威胁,以产生更有效的安全策略。为了解决上述两个挑战,我们提出了一种基于大型语言模型(LLMs)的SAGINs新型安全框架,该框架由两个关键组成部分LLM-6GNG和6G-INST组成。我们提出的LLM-6GNG利用精细化的思维链(CoT)推理和动态多智能体机制来分析海量的非结构化多维威胁数据,并生成全面的安全策略,从而解决第一个挑战。我们提出的6G-INST依赖于一种新颖的自进化方法来自动更新LLM-6GNG,使其能够在动态通信环境下适应未知威胁,从而解决第二个挑战。此外,我们使用ns3、OpenAirInterface (OAI) 和软件定义无线电 (SDR) 对所提出的框架进行了原型设计。在三个基准上的实验证明了我们框架的有效性。结果表明,我们的框架能够产生高度准确的安全策略,并且在面对各种未知攻击时仍然保持稳健性。

索引词—6G网络安全,大型语言模型,空天地一体化网络,自进化

一、 绪论

正如国际电信联盟(ITU)阐明了6G网络的愿景,6G的特性和使用场景正变得越来越清晰[NT1][1]。6G SAGINs的核心使用场景包括人工智能与通信、普遍连接和大规模通信。与此同时,6G通信架构本质上是跨层和跨域的[2], [NT3][3]。跨层意味着通信系统内的各个层,例如空中接口层、接入层,

图 1. 6G 使用场景及其相应威胁的示意图。6G 引入了诸如人工智能与通信、普遍连接和大规模通信等新的使用场景,从而带来了包括 DDoS 和高级持续性威胁 (APT) 在内的更多安全威胁。

核心网络层和应用层将超越传统界限,以促进信息交换和资源共享。跨域涉及全球覆盖、无缝通信以及跨卫星系统、空中网络和地面网络的应急恢复。此外,6G技术的快速发展引入了大量新兴应用,包括自动驾驶、远程医疗和智慧城市。这些创新显著提高了工业生产力和公民的生活质量。

虽然6G SAGIN引入了新的使用场景,但跨层和跨域的特性,以及6G新兴应用,扩大了攻击面,增加了检测和缓解安全威胁的复杂性,如图1所示。例如,恶意行为者可以发起DDoS攻击,以中断自动驾驶车辆和智慧城市基础设施等服务。此外,未经授权的个人可能会窃听无线信号,从而泄露空地链路中传输的敏感数据。因此,需要6G安全框架来确保6G SAGIN的安全性。

针对6G安全框架,已进行大量研究以应对新兴挑战并确保6G网络中的有效保护[4]–[6]。Wang等人提出了SIX-Trust框架,这是一种用于6G的多层信任模型,专注于可持续信任、基础设施信任和异种信任,以应对安全挑战[7]。Wen等人介绍了6G-XSec框架,该框架结合了基于无监督深度学习的异常检测与LLM,以监控、分析和解释基于OpenRAN的6G网络边缘的安全威胁[8]。Mekrache等人介绍了一种用于6G中零接触网络和服务管理(ZSM)的新方法,该方法结合了用于异常检测的AI、用于识别根本原因的可解释AI(XAI)以及用于提供用户友好型解释和纠正措施的LLM[9]。然而,以往的研究并未探讨在6G SAGIN的背景下,处理海量非结构化多维威胁信息并生成全面安全策略的方法。此外,关于如何使安全框架能够持续自我演进以应对新兴和未知威胁的研究也有限。

为了弥补上述空白,我们提出了一个6G安全框架,以实现6G SAGINs中大规模非结构化多维威胁信息处理和综合安全策略生成。我们还实现了一种自进化方法,以增强LLM防御未知威胁的能力。此外,我们构建了一个基于ns-3、OAI和SDR的半物理6G模拟器,以验证安全架构的有效性。本文的贡献总结如下:

我们提出了基于LLM的6G网络卫士(LLM6GNG),这是一种新颖的方法,它应用具有CoT推理的多智能体LLM来增强6G SAGINs的安全性。具体而言,通过我们的LLM6GNG,可以有效地浓缩、分类和提取海量的多维威胁信息。此外,我们的LLM-6GNG中还生成了全面的安全策略,以应对6G通信下复杂和动态的安全威胁。

为了应对6G网络中不断涌现的威胁,我们提出了6G指令(6G-INST)方法,该方法能够自动更新训练数据集,从而实现我们LLM-6GNG的自我进化。据我们所知,我们是第一个探索自我进化安全策略生成方法的人。

开发了一个基于OAI和ns-3的6G模拟器,用于生成6G SAGINs威胁信息数据集。针对与6G网络威胁相关的三个数据集进行的实验验证了我们集成了6GINST的LLM-6GNG的性能,能够应对未知威胁,并证明了我们的框架在有效解决6G SAGINs中多样化和动态安全挑战方面的潜力。此外,我们在案例研究中可视化了工作流程。

二、系统概述

为了模拟更真实的6G空天地海一体化网络通信系统并应对新兴威胁,我们构建了如图2所示的6G模拟器和6G空天地海一体化网络的自进化安全框架。我们的系统由三个组件组成:6G模拟器、LLM-6GNG和6G-INST。在6G模拟器中收集的威胁信息被传递到LLM-6GNG,LLM-6GNG分析威胁信息并实时生成相应的安全策略。同时,6G-INST赋予我们的LLM-6GNG自进化能力。

A. 我们提出的6G模拟器

我们的 6G 模拟器由三个主要组件构成:一个基于 ns-3 的模拟器、一个基于 OAI 的半物理模拟器以及一个监控系统。

基于ns-3的6G模拟器[NT0]: 我们开发了一个基于ns-3的6G空天地一体化网络模拟器,包括三个组成部分:卫星系统、空中网络和地面网络。对于星基网络,我们构建了包括GEO和LEO卫星的卫星系统,并开发了基于DVB-S2X的物理层协议。对于空基网络,我们部署了配备WLAN协议的无人机,并配置随机游走移动模式以增强网络动态性和覆盖范围。对于地基网络,该模块包括地面基站和用户设备,并实现了用于通信的LTE协议栈。

基于OAI的6G半物理仿真器
:
 我们的基于OAI的6G仿真器是一个高度集成的通信平台,允许对6G系统内的安全性能进行全面测试。该仿真器涵盖空中接口层、接入层和核心网络层,从而能够对通信系统中每一层的攻击和检测机制进行详细的仿真和分析。我们部署了配备软件定义无线电(SDR)的可定制OAI UE和基站软件,以方便信号的传输和接收。该系统还配备了上变频器和下变频器,这对于分别有效地将原始信号转换成所需的毫米波频率以及从毫米波频率转换回原始信号至关重要。此外,该系统创新性地结合了可重构智能表面(RIS)。最后,核心网络模块使用OAI核心网络软件进行仿真。我们还对OAI的网络功能进行了自定义修改,增加了大量的安全功能,以增强6G系统。

网络攻击模拟器和网络监控器
:
 我们创建了一个网络攻击模拟器,并将其部署在我们的 6G 模拟器的多个节点上,以模拟常见的攻击流量,例如分布式拒绝服务 (DDoS) 攻击、拒绝服务 (DoS) 攻击、Web 攻击以及渗透攻击、暴力破解攻击和欺骗。同时,为了实时监控 6G SAGIN 的当前状态,我们在 6G 模拟器的各个层和域部署了异常检测模块,包括入侵检测系统 (IDS)、智能网关、漏洞扫描、空中接口异常检测、端点检测和响应 (EDR) 以及蜜罐网络。这样我们就可以实时检测网络攻击模拟器生成的多维攻击信息。

B. 我们提出的LLM-6GNG和6G-INST

我们的LLM-6GNG由两个模块组成:威胁信息处理模块,用于从大量非结构化威胁信息中提取关键信息;以及安全策略生成模块,用于基于提取的信息生成安全策略。我们的6G-INST用于通过收集数据、生成新的威胁数据和策略以及微调系统参数来启用LLM-6GNG的自我进化。LLM-6GNG和6G-INST的详细描述将在第三节和第四节中提供。

图 2. 我们提出的 6G SAGINs 自演进安全框架和 6G 模拟器的示意图。我们提出的 LLM-6GNG 从我们的 6G 模拟器接收威胁信息,并将安全策略反馈给 6G 模拟器。同时,我们的 6G-INST 从提出的 LLM-6GNG 收集数据,训练孪生特定策略代理,并更新 LLM。

三、我们提出的LLM-6GNG

我们的LLM-6GNG包含两个模块,即威胁信息处理模块和安全策略生成模块。如图3所示,我们展示了LLM-6GNG的流程。威胁信息处理模块的流程如图3中间层上半部分所示。从6G模拟器收集的威胁信息通过凝练代理(Condensation Agent)、6G攻击关联(6G-AC)算法和6G关键信息提取(6G-KWE)算法进行处理,以从威胁信息中提取关键词。安全策略生成模块的流程如图3中间层下半部分所示。经过威胁信息处理模块处理后,我们利用提示代理(Prompt Agent)、特定策略代理(Specific Strategy Agent)和整合代理(Consolidating Agent)来分析处理后的关键数据并生成安全策略,然后将其反馈给我们的6G模拟器。在我们的LLM-6GNG中,采用了CoT推理和多代理协作机制,有效地分析了威胁信息并生成了准确的安全策略。为了满足安全策略生成的实时性要求,我们选择Llama3-8b来构建LLM-6GNG,以确保其高运行效率。接下来,我们将详细介绍LLM-6GNG。

A. 缩合剂

在6G SAGIN中,威胁信息可能从各种不同的来源收集。这些威胁数据未标准化,我们无法使用相同的方法来提取其关键信息。因此,我们需要凝聚代理来执行威胁信息的初始处理。凝聚代理能够将从多个来源收集的威胁信息转换为特定的威胁描述和主要特征。该代理提供清晰且有组织的的关键信息,这有助于后续组件使用正则表达式提取威胁信息的关键特征以及其他处理。

B. 6G攻击关联性

6G攻击关联算法处理每个子网内聚合的数据,以供后续处理。它基于威胁信息之间的语义和特征相似性对威胁信息进行重组,最终生成关联信息。如图3所示,对于网络内通信,6G-AC的流程如下:

1. 语义相似度和特征相似度:首先,对于每一对威胁信息,我们使用来自transformers的双向编码器表征(BERT)模型来分析它们威胁描述之间的语义相似度。然后,我们使用正则表达式从所有这些威胁信息对中提取关键特征,并计算它们关键特征之间的相似度。

2. 相似性整合与分类:接下来,我们结合语义相似性和特征相似性,通过加权求和计算综合相似度得分。如果此得分超过设定的阈值,则将相关的威胁信息合并在一起。最终,我们获得威胁信息组的集合。

对于网络间的通信,如图3所示,我们汇总了所有参与网络间通信的子网的威胁信息。然后,使用6G-AC算法处理汇总的信息,以实现跨网络的有效攻击聚类。

C. 6G关键信息提取

6G-KWE算法基于威胁信息中关键术语的存在情况和词频-逆文档频率(TF-IDF)矩阵来分配权重,从而从大量威胁信息中筛选出最重要的关键词。

在处理威胁信息时,我们首先基于预定义的规则模式从该组中的每条威胁数据中提取关键信息。然后将关键信息转换为 TF-IDF 矩阵,其中每个值代表关键信息在特定威胁数据中的重要性。接下来,我们将 TF-IDF 矩阵乘以权重矩阵,以获得最终的加权矩阵。最后,我们分析最终的加权矩阵,同时识别威胁信息中最频繁出现的内容,以提取最重要的关键信息。

图 3. 我们的 LLM-6GNG 和 6G-INST 的示意图。顶层提供了来自我们 6G 模拟器中三个子网的威胁信息示例。图的中间部分描述了 LLM-6GNG 的过程,左侧描述了网络内通信的场景,右侧描述了网络间通信的场景。图的底层描述了我们的 6G-INST 自动生成新数据集以协助 LLM-6GNG 自我演化的过程。

D. 安全策略生成

经过威胁信息处理模块的处理后,我们利用大型语言模型(LLM)的先进的思维链 [10] 推理和总结能力,来分析处理后的关键数据并生成安全策略。

1. 初始化和数据准备:首先,我们使用提示代理为每组关键威胁数据生成特定的提示和威胁描述。然后,每组提示和相应的威胁描述被传输到特定策略代理,以生成安全策略。

2. 策略生成:随后,特定策略代理基于生成的提示分析接收到的威胁描述,并进行深入评估以确定如何应对威胁。最后,它将生成针对特定威胁的安全策略。

3. 策略整合:最后,整合代理汇总并整合由特定策略代理产生的各种策略。通过对这些策略的全面分析,它构建了一个完善且总体性的综合策略,确保整体安全策略的协调性和一致性。

四、我们提出的6G-INST

如图3底层所示,我们阐述了所提出的6G-INST的流程。我们的6G-INST可以实时收集和过滤来自特定策略代理的数据,并且可以通过指令生成代理和策略生成代理自动扩展训练数据集。通过我们提出的6G-INST,我们可以解决收集指令数据集的高成本问题,并使用扩展的训练数据集来微调我们的LLM-6GNG,从而使其能够自我进化。

A. 提示与威胁生成

在扩展指令训练数据集的过程中,第一步是生成更多的提示和威胁信息。接下来,我们将详细解释这个过程。

1. Preparation of the seed task set: First of all, we prepare 100 manually-written instructions, each comprising prompts, threat information, and strategies. These 100 tasks are utilized to initialize the task pool.

2. 实时数据收集:同时,特定策略代理遇到的提示和威胁信息在经过过滤后被添加到任务池中。它们将在后续过程中用于生成更多指令。

3. 提示和威胁信息生成:接下来,我们从任务池中随机选择8条指令,通过指令生成代理生成新的提示和威胁信息。在第一轮中,所有8条指令均为手动编写;在后续轮次中,我们混合使用5条手动编写的指令和3条新生成的指令,以保证多样性。如果存在实时数据,我们会选择4条手动编写的指令、2条新生成的指令以及2条来自特定策略代理的指令,以生成新的训练数据。

4. 过滤和后处理:为了促进多样性,只有当收集到的指令和生成的指令与所有现有指令的ROUGE-L相似度得分低于0.7时,我们才将其添加到任务池中。我们还排除了包含特定关键词的指令,因为这些指令通常无法被LLM处理。

在完成一整轮生成后,该过程循环回到第三步,持续生成新的训练数据。

B. 安全策略生成与参数更新

在完成实时数据收集以及提示和威胁信息生成后,我们将使用策略生成代理为它们生成安全策略。此外,我们将定期使用扩展的训练数据集对LLM进行微调,以使其能够自我进化。

1. 策略生成:我们的LLM-6GNG使用Llama3-8b构建,因为它具有较少的模型参数和更高的运算效率,使其能够满足生成安全策略的实时性要求。然而,在6GINST中,我们不需要考虑安全策略生成的效率。相反,我们专注于生成的安全策略的有效性。因此,我们可以选择具有更多参数的LLM,并提供额外的支持来协助模型生成安全策略。

图 4. 性能说明。(a)、(b)、(c)、(d) 和 (e) 比较了不同 LLM 生成的安全策略在面对未知威胁时的准确性。(f) 比较了使用和不使用我们的 6G-INST 生成的安全策略在面对已知攻击时的准确性。实验结果表明,我们的安全框架可以生成高度准确的安全策略,并且我们的 6G-INST 显著提高了安全策略在面对未知威胁时的准确性,同时保持了策略在面对已知威胁时的准确性。

我们选择 GPT-4 来实现我们提出的 6G-INST 中的策略生成代理,并为其配备一个向量数据库。我们的 6G-INST 自动且定期地爬取安全知识,并将其存储在向量数据库中,以确保数据库中的内容包含最新的安全知识。通过利用检索增强生成(RAG)方法,我们提高了策略生成代理的有效性,使其能够分析 LLM-6GNG 未知的威胁,并提供合理的安全策略。

2. 微调和参数更新:利用新生成的指令来微调孪生特定策略代理。同时,我们定期更新特定策略代理的模型参数,以确保我们的 LLM-6GNG 能够有效处理新兴的攻击场景和威胁,从而实现 LLM-6GNG 的自我进化。

五、实验与数值结果

A. 实验装置

我们的网络模型在一台搭载Ubuntu 20.04.4的服务器上执行,该服务器配备32GB内存、第12代Intel(R) Core(TM) i9-12900 CPU和NVIDIA GeForce RTX 3060 GPU。攻击场景的模拟使用ns-3版本3.37进行。此外,我们在运行Ubuntu 20.04.1的服务器上安装并优化Llama3-8b模型,该服务器配备512GB内存、Intel(R) Xeon(R) Gold 6248R CPU和四个NVIDIA A40 GPU。对于LLM的指令调优,我们采用LoRA方法。

B. 数据集

为了评估我们的安全框架在针对不同使用场景下的各种类型攻击生成安全策略方面的性能,我们选择了三个数据集进行实验验证。每个数据集包含五种攻击类型:SQL注入攻击、DDoS攻击、ARP欺骗攻击、端口扫描攻击和暴力破解攻击。

第一个数据集是组合数据集,它由SDN中ARP中毒和洪泛攻击的ARP欺骗攻击[11]数据集、CSE-CIC-IDS2018中的SQL注入攻击[12]数据集以及CICIDS2017中的DDoS攻击、端口扫描攻击和暴力攻击[12]数据集组成。第二个数据集是CICIoT2023 [13]数据集。第三个数据集是从我们的6G模拟器收集的,其中包含空天地一体化网络中的攻击。

C. 基线

为了评估我们的LLM-6GNG生成的安全策略的准确性,我们将LLM-6GNG与随机方法进行比较。随机方法作为性能基线,随机选择安全策略。在四选一的场景中,此方法的准确率为25%。对于LLM-6GNG,我们分别部署GPT-3.5、GPT-4和Llama3-8b来验证其性能。具体而言,GPT3.5和GPT-4是具有大量参数的先进的闭源LLM。

为了验证我们方法的有效性,我们将我们的方法(Llama3-8b与我们提出的6G-INST)生成的安全策略的准确性与GPT-3.5、GPT-4以及没有我们6G-INST的Llama3-8b在应对新兴威胁时生成的安全策略的准确性进行比较。通过比较我们的LLM-6GNG在应用和不应用我们提出的6G-INST时的准确性表现,我们旨在量化我们的6G-INST对我们的LLM-6GNG性能的提升效果。

D. 性能

图4 (a)、(b)、(c)、(d)和(e)展示了我们的LLM-6GNG生成的安全策略的高准确性以及我们的6G-INTS的有效性。

首先,我们对SQL注入攻击的安全策略生成性能进行对比实验。如图4(a)所示,我们比较了GPT-3.5、GPT-4和Llama3-8b的性能,它们均未在SQL注入攻击数据集上进行训练,且未使用我们的6GINST方法;同时,我们也比较了我们的方法(使用6GINST的Llama3-8b)的性能,该方法也未在SQL注入攻击数据集上进行训练。在实验中,我们为LLM-6GNG提供了四个安全策略选项供选择,其中一个是正确的选项。结果表明,我们提出的6GINST显著提高了Llama3-8b生成的安全策略的准确性,在三个数据集上的平均提升为45.13%。值得注意的是,我们在策略准确性方面甚至优于GPT-4。

图4 (b)、(c)、(d) 和 (e) 采用了与 (a) 相同的实验方法,以测试我们的 6G-INST 对抗其他四种攻击类型的有效性:DDoS 攻击、ARP 欺骗攻击、端口扫描攻击和暴力破解攻击。使用 6G-INST,针对这些攻击生成的安全策略的准确性在三个数据集上平均提高了 15.39%、63.08%、37.44% 和 89.74%。从这些实验结果中可以清楚地看出,应用我们的 6G-INST 可以显著提高针对所有四种攻击类型生成的安全策略的准确性。

以上讨论的五个图表表明,我们提出的 6G-INST 可以显著提高针对 LLM-6GNG 未知威胁的安全策略的准确性。我们的带有 6G-INST 的 LLM-6GNG 的准确性明显高于现有的 Random 方法。此外,结果表明,应用我们的 6G-INST 在这五种攻击类型中,安全策略的准确性平均提高了 50.15%。上述实验表明,我们的 LLM-6GNG 可以依靠 CoT 推理和动态多智能体协作机制来有效分析威胁信息,并生成高度准确的安全策略。它们还证明了我们的 6G-INST 可以有效地协助 LLM-6GNG 进行自我进化,使其能够生成更准确的安全策略。

图4(f)表明,我们的6G-INST不会影响针对已知攻击的准确性。在本实验中,我们分别在Llama3-8b(不含我们的6G-INST)和Llama3-8b(含我们的6G-INST)的初始微调阶段排除端口扫描攻击、DDoS攻击和ARP欺骗攻击数据集。随后,我们将Llama3-8b(含我们的6G-INST)暴露于先前移除的相应类型的攻击,从而使模型能够针对未知威胁进行自我进化。在自我进化过程完成后,我们测试Llama3-8b(不含6G-INST)和Llama3-8b(含我们的6G-INST)生成的安全策略针对已知攻击的准确性。如图4(f)所示,两种模型生成的安全策略的准确率基本相同。该实验表明,我们提出的6G-INST不会显著降低针对已知攻击的安全策略的准确性。

六、 案例研究

如图 5 所示,我们考虑一个典型的 6G SAGINs 场景,其中无人机向地面站传输信息,然后地面站将信息转发到卫星。在这种情况下,我们检测到包括卫星漏洞、无人机 GPS 欺骗和 DDoS 攻击等威胁,以演示我们安全框架的工作流程。首先,凝练代理从非结构化威胁信息中提取关键特征,并生成相应的描述。接下来,我们对凝练代理的输出数据执行 6G-AC 算法和 6G-KWE 算法,从而对信息进行聚类并获得此威胁信息的关键词。每组关键威胁信息都由一个专门的特定策略代理处理,该代理仅关注关键信息,以生成深入且有针对性的安全策略。随后,整合代理聚合每个特定策略代理生成的安全策略,生成一个综合策略,并将其返回到相应的网络。

在我们的LLM-6GNG运行过程中,我们将符合要求的实际遇到的威胁信息放入6G-INST的任务池中,从而为特定策略代理的微调扩展新的威胁场景。在自进化过程中,我们从任务池中随机选择数据,并将其输入到指令生成代理和策略生成代理中,以自动生成新的场景和策略。然后,这些数据被用于微调孪生特定策略代理,并且我们定期更新运行中的特定策略代理的参数,从而完成一个自进化周期。

七 、结论

本文提出了一个安全框架,该框架专为6G SAGINs中的多维威胁信息处理和自演进安全策略生成而设计。该框架引入了两个新颖的组件:LLM-6GNG和6G-INST,旨在增强6G SAGINs的安全性。具体而言,我们的LLM-6GNG利用精细化的CoT推理和动态多智能体机制,以高效地处理大量的非结构化威胁数据并生成安全策略。同时,我们提出的6G-INST能够实现LLM-6GNG的自演进,从而使其能够持续适应新兴场景和威胁。我们的框架的有效性已通过在我们的6G模拟器中进行的实验得到证明,并且它有望解决6G网络中动态和多样化的安全挑战。

图 5. 我们的安全框架案例研究。本案例展示了一个典型的 6G SAGINs 通信场景,涉及 DDoS 攻击、无人机 GPS 欺骗和卫星漏洞等威胁。它详细描述了 LLM-6GNG 在处理威胁信息和生成安全策略方面的工作流程,以及 6G-INST 协助 LLM-6GNG 自我演进的过程。

相关文章:

基于LLM的6G空天地一体化网络自进化安全框架

摘要 最近出现的6G空天地一体化网络(SAGINs)整合了卫星、空中网络和地面通信,为各种移动应用提供普遍覆盖。然而,SAGINs的高度动态、开放和异构的性质带来了严重的安全问题。构建SAGINs的防御体系面临两个初步挑战:1)…...

【Mac 从 0 到 1 保姆级配置教程 12】- 安装配置万能的编辑器 VSCode 以及常用插件

文章目录 前言安装 VSCode基础配置常用插件1. 通用开发工具2. 编程语言支持3. 数据库工具4. 主题与界面美化5. 效率工具6. Markdown 工具7. 容器开发8. AI 辅助编程9. 团队协作 最后系列教程 Mac 从 0 到 1 保姆级配置教程目录,点击即可跳转对应文章: 【…...

数据库与SQL核心技术解析:从基础到JDBC编程实战

数据库技术作为现代信息系统的核心,贯穿于数据存储、查询优化、事务管理等关键环节。本文将系统讲解数据库基础知识、SQL语言核心操作、索引与事务机制,并结合Java数据库编程(JDBC)实践,助你构建完整的数据库技术体系。…...

JUC并发编程(上)

一、JUC学习准备 核心知识点:进程、线程、并发(共享模型、非共享模型)、并行 预备知识: 基于JDK8,对函数式编程、lambda有一定了解 采用了slf4j打印日志 采用了lombok简化java bean编写 二、进程与线程 进程和线程概念 两者对比…...

postgres--MVCC

PostgreSQL 的 MVCC(Multi-Version Concurrency Control,多版本并发控制) 是其实现高并发和高性能的核心机制,支持多个事务同时读写数据库而无需加锁阻塞。它的核心思想是通过保留数据的多个版本来避免读写冲突,从而提…...

nanodet配置文件分析

以下是针对 NanoDet-Plus-M-1.5x_416 配置文件的逐模块解析,以及调整参数的作用和影响范围: 1. 模型架构(model) Backbone(骨干网络) backbone:name: ShuffleNetV2model_size: 1.5x # 控制网络宽度&…...

【Linux网络】HTTP

应用层协议 HTTP 前置知识 我们上网的所有行为都是在做IO,(我的数据给别人,别人的数据给我)图片。视频,音频,文本等等,都是资源答复前需要先确认我要的资源在哪台服务器上(网络IP&…...

Unity中AssetBundle使用整理(一)

一、AssetBundle 概述 AssetBundle 是 Unity 用于存储和加载游戏资源(如模型、纹理、预制体、音频等)的一种文件格式。它允许开发者将游戏资源打包成独立的文件,在运行时动态加载,从而实现资源的按需加载、更新以及减小初始安装包…...

CMOS内存的地址空间在主内存空间中吗?

CMOS内存(即CMOS RAM)的地址空间不位于主内存地址空间(如0x00000-0xFFFFF)内,而是通过独立的I/O端口地址进行访问,具体如下: ​1. CMOS内存的物理存储与地址机制​ CMOS RAM芯片通常集成在主板…...

大模型应用中常说的Rerank是什么技术?

Rerank技术详解 一、定义与基本原理 Rerank(重排序)是一种在信息检索系统中用于优化搜索结果排序的技术,其核心目标是通过二次评估和排序候选文档,提升结果的相关性和准确性。其运作机制通常分为两阶段: 初步检索:使用传统方法(如BM25关键词匹配或Embedding向量检索)…...

Python-MCPInspector调试

Python-MCPInspector调试 使用FastMCP开发MCPServer,熟悉【McpServer编码过程】【MCPInspector调试方法】-> 可以这样理解:只编写一个McpServer,然后使用MCPInspector作为McpClient进行McpServer的调试 1-核心知识点 1-熟悉【McpServer编…...

C 语言数据结构基石:揭开数组名的面纱与计算数组大小

各类资料学习下载合集 ​​https://pan.quark.cn/s/8c91ccb5a474​​ 在前面的文章中,我们已经学习了 C 语言一维数组的定义和初始化。我们知道数组是用来存储一系列相同类型数据的集合,并通过下标来访问每个元素。但是,除了通过下标访问单个元素,数组名本身在 C 语言中也…...

Java高频面试之并发编程-15

hello啊,各位观众姥爷们!!!本baby今天又来报道了!哈哈哈哈哈嗝🐶 面试官:as-if-serial 是什么?单线程的程序一定是顺序执行的吗? as-if-serial 规则 定义: …...

MySQL数据库迁移SQL语句指南

MySQL数据库迁移SQL语句指南 一、基础迁移方法 1. 使用mysqldump进行全量迁移 -- 导出源数据库(在命令行执行) mysqldump -u [源用户名] -p[源密码] --single-transaction --routines --triggers --events --master-data2 [数据库名] > migration…...

Vue:生命周期钩子

深入理解 Vue 的钩子函数(生命周期函数) Vue 的钩子函数(生命周期函数)是 Vue 实例在不同阶段自动调用的函数。可以在 Vue 实例的创建、更新、销毁等阶段插入自己的逻辑。 钩子函数的作用 想象一下,Vue 实例的生命周…...

深入理解设计模式之原型模式(Prototype Pattern)

一、为什么需要原型模式? 在传统对象创建方式中,我们通过new关键字直接调用构造函数创建实例。但当遇到以下场景时: 对象初始化需要消耗大量资源(如数据库连接)需要创建的对象与现有实例高度相似希望屏蔽对象创建的复…...

K8S cgroups详解

以下是 Kubernetes 中 cgroups(Control Groups) 的详细解析,涵盖其核心原理、在 Kubernetes 中的具体应用及实践操作: 一、cgroups 基础概念 1. 是什么? cgroups 是 Linux 内核提供的 资源隔离与控制机制&#xff0c…...

ARMV8 RK3399 u-boot TPL启动流程分析 --start.S

上电后运行的第一支文件&#xff1a;arch/arm/cpu/armv8/start.S CONFIG_ENABLE_ARM_SOC_BOOT0_HOOK1 #include <asm/arch/boot0.h> 跳转到 arch/arm/include/asm/arch-rockchip/boot0.h CONFIG_SPL_BUILD1 b 1f ROCKCHIP_EARLYRETURN_TO_BROMno TINY_FRAMEWORKno …...

【网络原理】数据链路层

目录 一. 以太网 二. 以太网数据帧 三. MAC地址 四. MTU 五. ARP协议 六. DNS 一. 以太网 以太网是一种基于有线或无线介质的计算机网络技术&#xff0c;定义了物理层和数据链路层的协议&#xff0c;用于在局域网中传输数据帧。 二. 以太网数据帧 1&#xff09;目标地址 …...

保姆级教程|YOLO11改进】【卷积篇】【4】使用RFAConv感受野注意力卷积,重塑空间特征提取,助力高效提点

《------往期经典推荐------》 一、AI应用软件开发实战专栏【链接】 项目名称项目名称1.【人脸识别与管理系统开发】2.【车牌识别与自动收费管理系统开发】3.【手势识别系统开发】4.【人脸面部活体检测系统开发】5.【图片风格快速迁移软件开发】6.【人脸表表情识别系统】7.【…...

虚幻引擎5-Unreal Engine笔记之常用核心类的继承关系

虚幻引擎5-Unreal Engine笔记之常用核心类的继承关系 code review! 文章目录 虚幻引擎5-Unreal Engine笔记之常用核心类的继承关系1.UE5中常用核心类的继承关系1.1.简化版1.2.plantuml图1.3.plantuml代码1.4.关于大写字母U和A2.1.组件和类的关系&#xff0c;组件也是类吗&…...

力扣2680题解

记录 2025.5.9 题目&#xff1a; 思路&#xff1a; 1.计算初始或值&#xff1a;首先计算数组中所有元素的按位或结果 allOr&#xff0c;这表示在不进行任何左移操作时数组的或值。 2.计算固定或值&#xff1a;在计算 allOr 的同时&#xff0c;计算一个 fixed 值&#xff0c;…...

搭建基于chrony+OpenSSL(NTS协议)多层级可信时间同步服务

1、时间同步服务的层级概念 在绝大多数IT工程师实际工作过程中&#xff0c;针对于局域网的时间同步&#xff0c;遇到最多的场景是根据实际的需求&#xff0c;搭建一个简单的NTP时间同步服务以时间对局域网中的服务器、网络设备、个人电脑等基础设施实现同步授时功能。虽然这样…...

虚拟内存:深入解析与性能优化

文章目录 虚拟内存的概念虚拟内存的实现方式虚拟内存的页面置换算法虚拟内存的性能影响结论 在现代计算机系统中&#xff0c;虚拟内存&#xff08;Virtual Memory&#xff09;是一种至关重要的技术&#xff0c;它极大地提高了系统的多任务处理能力和内存利用率。本文将深入探讨…...

元数据和主数据

元数据和主数据是数据管理中的两个关键概念&#xff0c;其核心区别如下&#xff1a; 1. 定义与本质 元数据&#xff08;Metadata&#xff09; “关于数据的数据”&#xff0c;用于描述数据的属性、结构、来源、用途等上下文信息。 示例&#xff1a;数据库表的字段名称、数据类型…...

JavaScript事件处理全解析:从基础到最佳实践

在现代Web开发中&#xff0c;事件处理是构建交互式应用的核心技术。JavaScript提供了多种事件绑定方式&#xff0c;每种方法都有其适用场景和特点。本文将深入探讨7种主流的事件绑定方法&#xff0c;通过代码示例和原理分析&#xff0c;帮助开发者选择最合适的解决方案。 一、…...

高级数据结构:线段树

线段树概述 线段树是一种处理区间问题的优越算法&#xff0c;也是算法竞赛的常客。 线段树的特点是&#xff0c;类似于一棵二叉树&#xff0c;将一个序列分解成多个区间并储存在二叉树上。 例如&#xff0c;把区间 [ 1 , 10 ] [1,10] [1,10]作为树的根节点&#xff0c;然后把…...

精讲C++四大核心特性:内联函数加速原理、auto智能推导、范围for循环与空指针进阶

前引&#xff1a;在C语言长达三十余年的演进历程中&#xff0c;每一次标准更新都在试图平衡性能与抽象、控制与安全之间的微妙关系。从C11引入的"现代C"范式开始&#xff0c;开发者得以在保留底层控制能力的同时&#xff0c;借助语言特性大幅提升代码的可维护性与安全…...

用ffmpeg压缩视频参数建议

注意:代码中的斜杠\可以删除 一、基础压缩命令&#xff08;画质优先) ffmpeg -i input.mp4 \-c:v libx264 -preset slow -crf 23 \ # H.264编码&#xff0c;平衡速度与质量-c:a aac -b:a 128k \ # 音频压缩-vf "scaleif(gt(a,16/9),1920,-2):if(…...

uni-app学习笔记(二)--vue页面代码的构成和新建页面

vue页面的构成 一.template 模板区&#xff0c;主要放html布局&#xff0c;注意&#xff0c;如果是开发uni-app&#xff0c;模板区不要放div,h1等标签了&#xff0c;用了在小程序和app端起不到作用。具体应该使用哪些组件&#xff0c;可在uni-app官网上查看&#xff1a;组件-…...

机器语言程序、汇编语言程序、硬件描述语言程序、编译程序、解释程序和链接程序

程序类型定义与核心特征处理对象 / 输入输出结果所属领域典型例子 / 作用机器语言程序由二进制指令&#xff08;0/1 序列&#xff09;构成&#xff0c;可被 CPU 直接执行&#xff0c;与硬件架构强绑定。无&#xff08;直接执行&#xff09;无&#xff08;直接运行&#xff09;低…...

智能语音助手的未来:从交互到融合

摘要 随着人工智能技术的不断进步&#xff0c;智能语音助手已经成为我们生活中不可或缺的一部分。从简单的语音指令到复杂的多模态交互&#xff0c;语音助手正在经历一场深刻的变革。本文将探讨智能语音助手的发展历程、当前的技术瓶颈以及未来的发展方向&#xff0c;特别是其在…...

Redis从基础到高阶应用:核心命令解析与延迟队列、事务消息实战设计

Redis基础知识 #切换数据库 bd:0>select 2 "OK" bd:2>dbsize "0" #清空数据库 bd:0>flushdb "OK" #设置值 bd:0>set name "lyt" "OK" #查看所有key bd:0>keys *1) "name" #获取key bd:0>get …...

操作系统原理实验报告

操作系统原理课程的实验报告汇总 实验三&#xff1a;线程的创建与撤销 实验环境&#xff1a;计算机一台&#xff0c;内装有VC、office等软件 实验日期&#xff1a;2024.4.11 实验要求&#xff1a; 1.理解&#xff1a;Windows系统调用的基本概念&#xff0c;进程与线程的基…...

Python爬虫实战:研究nodejs aes加密

1. 引言 1.1 研究背景与意义 在当今数字化时代,Web 数据的价值日益凸显。通过爬虫技术获取公开数据并进行分析,能够为企业决策、学术研究等提供有力支持。然而,为了保护数据安全和隐私,许多网站采用了加密技术对数据进行保护,其中 AES 加密是一种常见且安全的加密算法。…...

线程的一些事(2)

在java中&#xff0c;线程的终止&#xff0c;是一种“软性”操作&#xff0c;必须要对应的线程配合&#xff0c;才能把终止落实下去 然而&#xff0c;系统原生的api其实还提供了&#xff0c;强制终止线程的操作&#xff0c;无论线程执行到哪&#xff0c;都能强行把这个线程干掉…...

基于 PostgreSQL 的 ABP vNext + ShardingCore 分库分表实战

&#x1f680; 基于 PostgreSQL 的 ABP vNext ShardingCore 分库分表实战 &#x1f4d1; 目录 &#x1f680; 基于 PostgreSQL 的 ABP vNext ShardingCore 分库分表实战✨ 背景介绍&#x1f9f1; 技术选型&#x1f6e0;️ 环境准备✅ Docker Compose&#xff08;多库 & 读…...

御网杯2025 Web,Msic,密码 WP

Web YWB_Web_xff 审计代码&#xff0c;发现需要$cip2.2.2.1 使用burpsuite抓包&#xff0c;添加X-Forwarded-For:2.2.2.1 然后得到flag YWB_Web_未授权访问 更加题目描述知道需要admin登录&#xff0c;但是现在是guest。 使用burpsuite抓包 发现cookie里面存在user&#xff…...

tensorflow 1.x

简介 TensorFlow&#xff1a;2015年谷歌&#xff0c;支持python、C&#xff0c;底层是C&#xff0c;主要用python。支持CNN、RNN等算法&#xff0c;分CPU TensorFlow/GPU TensorFlow。 TensorBoard&#xff1a;训练中的可视化。 快捷键&#xff1a;shiftenter执行命令,Tab键进…...

[ERTS2012] 航天器星载软件形式化模型驱动研发 —— 对 Scade 语言本身的影响

在《从ERTS学习SCADE发展》中提到&#xff0c;在 ERTS 会议中&#xff0c;Scade团队会在该会议中介绍与Scade相关的工作。在 ERTS 2012 中&#xff0c;Scade 团队介绍了使用Scade作为主要工具&#xff0c;应用在航天器星载软件开发中的相关话题。原材料可参考 《Formal Model D…...

Spring Boot 集成 Flink CDC 实现 MySQL 到 Kafka 实时同步

Spring Boot 集成 Flink CDC 实现 MySQL 到 Kafka 实时同步 📌 项目背景 在大数据实时处理场景中,数据库变更数据的捕获与传输是关键环节。Flink CDC 提供了从 MySQL 等数据库中实时捕获数据变更的能力,并通过 Apache Flink 引擎实现流式处理。 本项目使用 Spring Boot …...

软件体系结构(Software Architecture)

文章目录 1. 分层架构&#xff08;Layered Architecture&#xff09;核心逻辑代码示例&#xff08;伪代码&#xff09;典型场景优缺点 2. 客户端-服务器&#xff08;Client-Server&#xff09;核心逻辑典型交互流程应用场景代码示例&#xff08;RESTful API&#xff09;优缺点 …...

RS485和RS232 通信配置

RS232 目前硬件上支持RS232的有以下板卡&#xff1a; LubanCat-5IO底板&#xff08;含有RS232x2&#xff09; 7.1. 引脚定义 具体的引脚定义可以参考背面的丝印 LubanCat-5IO底板 引脚定义图 7.2. 跳帽配置 LubanCat-5IO底板 鲁班买5IO底板上的RS485和RS232是共用同一组…...

【高数上册笔记篇02】:数列与函数极限

【参考资料】 同济大学《高等数学》教材樊顺厚老师B站《高等数学精讲》系列课程 &#xff08;注&#xff1a;本笔记为个人数学复习资料&#xff0c;旨在通过系统化整理替代厚重教材&#xff0c;便于随时查阅与巩固知识要点&#xff09; 仅用于个人数学复习&#xff0c;因为课…...

【网络安全】——大端序(Big-Endian)​​和​​小端序(Little-Endian)

字节序&#xff08;Endianness&#xff09;是计算机系统中多字节数据&#xff08;如整数、浮点数&#xff09;在内存中存储或传输时&#xff0c;​​字节排列顺序​​的规则。它分为两种类型&#xff1a;​​大端序&#xff08;Big-Endian&#xff09;​​和​​小端序&#xf…...

机器学习极简入门:从基础概念到行业应用

有监督学习&#xff08;supervised learning&#xff09; 让模型学习的数据包含正确答案&#xff08;标签&#xff09;的方法&#xff0c;最终模型可以对无标签的数据进行正确处理和预测&#xff0c;可以分为分类与回归两大类 分类问题主要是为了“尽可能分开整个数据而画线”…...

MIT XV6 - 1.5 Lab: Xv6 and Unix utilities - xargs

接上文 MIT XV6 - 1.4 Lab: Xv6 and Unix utilities - find xargs 继续实验&#xff0c;实验介绍和要求如下 (原文链接 译文链接) : Write a simple version of the UNIX xargs program for xv6: its arguments describe a command to run, it reads lines from the standard …...

Springboot整合Swagger3

Springboot整合Swagger3、常用注解解释、访问Swagger地址出现404、403、拒绝访问等问题_swagger3注解-CSDN博客...

经典音乐播放器——完美歌词 Poweramp Music Player 3 build

—————【下 载 地 址】——————— 【本章单下载】&#xff1a;https://drive.uc.cn/s/d6c480bc47604 【百款黑科技】&#xff1a;https://ucnygalh6wle.feishu.cn/wiki/HPQywvPc7iLZu1k0ODFcWMt2n0d?fromfrom_copylink —————【下 载 地 址】——————— 本…...

锚定基础与拥抱融合:C 语言在编程教育与技术社区的破圈之路

引言 在 Python 占据 TIOBE 指数榜首的 2025 年&#xff0c;C 语言以 23.4% 的稳定份额&#xff08;2025 年 5 月数据&#xff09;持续稳居前三&#xff0c;这一现象在编程教育领域尤为显著&#xff1a;全球 92% 的计算机科学本科课程仍将 C 语言作为必修基础课&#xff0c;而…...