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

5G基础学习笔记

功能软件化

刚性网络:固定连接、固定功能、固化信令交互
在这里插入图片描述
柔性网络:网元拆解成服务模块,基于API接口调用
在这里插入图片描述

服务化架构(SBA)

Service based Architecture (SBA): 借鉴了业界成熟的SOA、微服务架构等理念,结合电信网络的现状、特点和发展趋势,进行了革新性的设计

SA核心网整体架构

在这里插入图片描述

基于服务的网络架构(SBA),被3GPP作为5G唯一基础架构

网络功能与EPC网元相比
AMFMME中NAS接入控制功能
SMFMME+SGW-C+PGW-C中会话管理控制功能
UPFSGW-U + PGW-U用户平面功能
UDMHSS用户数据、SPR策略数据等
PCFPCRF
AUSFMME中的鉴权功能
NEFSCEF
CHF4G中PGW在线计费和CG离线计费的功能结合
NSSF5G新增,用于网络切片功能
NRF5G新增,类似DNS增强,用于NF注册、发现、授权
IWF5G新增,转换4G用户数据为5G用户数据

AMF

Access and Mobity management Function 接入和移动性管理功能

  • 注册、连接、可达性、移动性管理
  • 为UE和SMF提供会话管理消息传输通道
  • 为用户接入提供认证、鉴权功能
  • 终端和无线的核心网控制面接入点

SMF

Session Management Function 会话管理功能

  • 隧道维护、IP地址分配和管理、UPF选择
  • 策略实施和Qos控制
  • 计费数据采集、漫游
  • 会话控制:包括PDU Session的创建、更新和删除等
  • 计费控制:根据用户数使用的数据业务,通过CHF完成对用户使用的DN侧网络资源的融合计费。
  • 策略控制:根据用户签约数据,通过PCF完成对UE的Qos、计费等策略的控制

AUSF

Authentication Server Function 认证服务功能

  • 认证服务器,实现3GPP和非3GPP的接入认证
  • 物理上与UDM(统一数据管理)合设

UDM

the Unified Data Management 统一数据管理,类比于HSS EF,提供用户签约数据方位、位置等级等功能

  • 签约数据管理,3GPP AKA认证
  • 用户识别、访问授权、接入授权、漫游限制
  • 业务/会话连续性

UDM / PCF / NEFUDR上存储和获取签约数据/策略数据/能力开放数据

UPF

User Plane Function 用户平面功能,(与4G中的SGW-U和PGW-U相似)

  • 分组路由转发
  • 策略实施
  • 流量报告、Qos处理

UPF功能:

  • 生成用户下行路由并进行数据报文转发
  • 计费数据收集和上报
  • 业务用量上报
  • 根据SMF下发的策略执行业务识别和控制(与4G中PGW的PCEF执行PCRF的策略
  • QFI的匹配和QoS管理
  • 下行数据报文缓存和数据通知
  • 基于GTP / PFCP,GTP协议有N3、N6、N9接口,N4接口是PFCP协议
  • 协议的路径管

CHF

the Charging Function 计费功能

  • 5G融合计费的载体,同时支持在线计费和离线计费
  • 计费维度为流量 / 时长 / 内容

PCF

Policy Control Function 策略控制功能

  • 提供移动性策略、会话性策略
  • 切片选择策略、SSC模式选择策略、DNN策略
  • 宣王策略
  • PDU会话绑定

IWM

the Interwork function

  • 将4G用户数据转化为5G用户数据
  • 建网初期作为用户数据过度方案
  • 可代理SGSN、MME、CSCF、AUSF、UDM

NRF

NF Repository Function 网络存储功能

  • 为5GC各个NF提供高可靠的服务注册、发现功能
  • 维护NF信息、包括可用性和其他支持的服务

NSSF

Network Slice Selection Function

  • 根据UE切片进行选择、选择辅助信息、签约信息等确定UE允许接入的网络切片实例
  • 确定NSSAI、有必要的话映射到签约的S-NSSAI

NEF

Network Exposure Function 网络开发功能

  • 开放网络NF的能力、转换内外部信息
  • 提供安全途径向AF暴露3GPP NF的业务和能力

BSF

Binding Support Function

会话绑定

N1接口(UE-5GC)

功能:一个N1 NAS连接是使用于连接UE的每次接入,用于注册、连接管理(RM / CM)以及用于UE的SM相关消息和过程

结构:包括NAS-MM、NAS-SM两部分

在NAS-MM中传输UE和核心网功能的其他协议类型,包括会话管理信令短信,NAS-MM中的RM / CM NAS消息和其他类型的NAS消息是**解耦(分离)**的,

NAS-SM是PDU会话使用

N2接口

功能:处理与单个UE无关的N2接口管理流程,例如N2接口的配置和重置;处理与单个UE相关的流程,与NAS Transport、UE Context、PDU会话资源、切换相关的流程

N4接口

SMF和UPF之间的接口,使用的是PCPF(Packet Forwarding Control Protocol)协议,用于传输会话管理命令、QoS策略和计费信息。PFCP协议定义了控制面和用户面之间的通信机制,确保UPF能够根据SMF的指令正确处理用户面数据。

N3接口

是5G ®AN(Radio Access Network )与UPF(User Plane Function)间的接口,主要用于传递5G ®AN与UPF间的上下行用户面数据。使用的是GTP-U协议

N9接口

UPF(User Plane Function)和UPF之间的用户面接口,用于传递UPF间的上行、下行用户数据流。使用的是GTP-U协议

N6接口

UPF(User Plane Function)与DN(Data Network)的接口,用于传递UPF与DN之间的上下行用户数据流,基于IP和路由协议与DN网络通信。

N7接口

SMF和PCF之间的接口,用于传递PCF生成的策略信息

N11接口

AMF和SMF之间的接口

SBI接口协议栈

5GC CP内部的接口,其实就是HTTP的协议栈,意思就是SBI的接口使用的都是HTTP协议进行传输

其中加了TLS安全协议

5GC接口和协议

控制面

接口交互网络功能协议栈
N1UE —— AMFNAS-MM / NAS SM
N2RAN —— AMFNG-AP / SCTP / IP,这里的NG-AP类比于EPC的S1-AP,具有可靠传输机制
N4UPF —— SMFPFCP / UDP / IP
SBI5GC CP内部Application / HTTP2 / TCP / IP

用户面

接口交互网络功能协议栈
N3RAN——UPFGTP-U / UDP / IP,GTP隧道具有简单和易拓展性,用于移动性管理和会话管理
N9UPF之间5G UP / UDP / IP

服务化架构

NF间用的SBI(服务化接口),N1~N9作为NF的参考点接口

NRF网络服务的注册、更新、发现

NRF可以当作是仓库管理员

NF(Network Function)网络功能

NF服务在NRF中注册,NF第一次注册时候通知NRF该NF的配置文件(NF Profile),NRF进行保存并标记该NF可用

去注册时候,标记该NF不可用,同时去除配置文件

更新时NRF更新NF配置文件

服务发现由NRF提供,NF请求者携带NF或者特定服务的类型详细参数给NRF,随后NRF按照要求返回满足条件的所有NF的IP地址等NF实例标识符NF请求者

一个网络功能包含一组服务,每个服务包含一组服务操作

5G用户状态

5G引入新移动性管理状态,通过Mobility Pattern实现按需的移动性管理

MM状态:

  • RM和CM状态独立:RM标识UE是否注册到网络,CM标识UE和核心网的连接是否存在

  • RAN侧引入RRC-inactive state:UE对CN而言处于连接态,对RAN而言处于Idle态

  • SM状态独立:SM状态(PDU session state,active or inactive),通过per-PDU session的activeation和deactivation流程隐式定义。

5G连接新状态:CM-connected with RRC Inactive

引入CM-CONNECTED with RRC Inactive状态的主要目的是节省终端耗电、快速恢复业务

  • RRC-IDLE:用户设备处于空闲状态,没有与基站建立RRC连接。
  • RRC-CONNECTED:用户设备与基站建立了RRC连接,可以进行数据传输。
  • RRC-Inactive:用户设备处于一种中间状态,连接部分释放,但保留了一些上下文信息。

会话管理

5G隧道模型从承载粒度改为会话粒度、增加对以太网和非结构化报文等协议类型的支持、引入SSC(Service and Session Continuity)模式、定义优化的小包传输返赣、支持本地offload、支持不同接入技术等。

Per Session的隧道,取消承载,减少专有承载的信令交互。

  • 按需会话建立,网络可以根据应用需求,UE的位置触发会话建立
  • 异步会话,在Idle状态下缓存会话状态修改以减少寻呼
  • 基于会话粒度的用户面连接激活机制

PDU会话

是UE发起的于数据网络之间提供PDU交换的连接,数据网络由DNN(4G是APN)标识

PDU会话类型:IPv4、IPv6、IPv4v6、Ethernet、Unstructured

IP分配方式

静态:签约在UDM里

动态:

  • SMF分配(HR(4G的HSS)场景中由H-SMF分配,LBO场景由V-SMF分配)
  • UPF分配
  • AAA分配
  • DHCP分配

PCF选择一种分配方式

Qos Flow

类似于4G的承载(EPS Bearer),用于传输具有特定Qos参数的逻辑通道,5G中必须有一个默认Qos流,且为Non-GBR Qos流(没有带宽要求限制)

  • 4G中EPS 承载是端到端的,即从用户设备(UE)到数据网络(DN)的整个路径上,承载是连续的。

  • 5G网络中的QoS Flow不是端到端的,而是分段管理的。每个段之间的QoS Flow映射关系需要进行管理。一个Qos Flow映射到一个或多个DRB,一个PDU会话可以有多个Qos Flow。一个UE可以建立多个PDU会话。

QoS Flow到DRB(Data Radio Bearer)的映射:在5G NR 中,一个QoS Flow 可以映射到一个或多个DRB。DRB是一个物理通道,用于传输用户数据。

在5G和4G互操作场景中,一个EPS Bearer 可以映射到一个或多个QoS Flow。

SMF 负责管理PDU(Protocol Data Unit)会话,包括QoS Flow 的创建、修改和删除。

  • 创建:SMF 创建QoS Flow,并将其映射到DRB。
  • 修改:SMF 根据网络状况和用户需求,动态调整QoS Flow 的参数。
  • 删除:SMF 删除不再需要的QoS Flow。

QFI

Qos Flow Identifier

用于标识Qos,PDU业务中具有相同QFI(唯一标识PDU)的业务流接受相同的业务转发处理

Session-AMBR

per Session Aggregate Maximum Bit Rate

Session-AMBR限制了一个PDU会话的所有non-GBR Qos Flow提供的 聚合速率

SMF从UDM获取Session-AMBR签约数据,SMF可以使用签约数据,或者基于本地策略或PCF策略修改Session-AMBR,然后通过信令发给合适的UPF以及RAN侧(用于计算UE-AMBR)。Session-AMBR限制了一个PDU会话的所有non-GBR Qos Flow提供的聚合速率。

上行Session-AMBR由UPF和UE执行,下行由UPF执行

UE-AMBR

per UE Aggregate Maximum Bit Rate

UE-AMBR限制了UE的所有non-GBR Qos Flow提供的聚合速率。

UE-AMBR为连接到它所有激活的Session-AMBR的和,但不能超过签约的UE-AMBR值。签约值由AMF和UDM提取并提供给RAN。

UE-AMBR由RAN执行

在这里插入图片描述

5G SA核心网元流程

5G SA核心网关键信令流程包括网元级和用户级两大类操作,其中:

服务管理属于5GC特有的网元级管理;

用户级流程包括:移动性管理、会话管理、互操作等

网络切片选择机制

NSSF触发条件:AMF判断无法为请求切片服务;或不确定允许的切片时, 请求NSSF选择切片;

NSSF基于用户接入位置即请求的切片、签约的切片信息,为用户选择可用的切片及AMF;会话建立时,AMF基于应用切片选择SMF

归纳:当第一个AMF在UDM中无法获取用户签约的切片时,则会请求NSSF决策并返回Allowed NSSAI,AMF Set,以此返回给旧的AMF选择至新的AMF,新的AMF即会选择对应的SMF

  • 切片选择辅助信息NSSAI:由Slice/Service type(SST)和Slice Differentiator(SD)组成;
  • 目前标准化定义了三类SST,包括eMBB、URLLC、MIoT,SST分别为1、2、3。

注册流程

5G注册与会话管理流程分离

注册只需要连接到响应的切片即可(例如只需要连接到SMF),会话建立需要SMF和UPF等网元参与工作

下图的权重应该是优先级,或者是负载均衡

会话建立流程

  1. UE向AMF发起请求
  2. AMF向NRF提供S-NSSAL、DNN(类似于APN,需要选择的目标网络)等信息去发现SMF,AMF结合负载、签约数据、本地策略等选择SMF,建立会话
  3. SMF根据AMF的指示或者本地配置选择PCF,也可以通过S-NSSAI、DNN、SUPI等信息去NRF发现PCF
  4. SMF根据UPF的位置、DNN、权重信息去选择UPF
  5. SMF发起N4(SMF与UPF建立连接)会话
  6. N1、N2资源建立完成
  7. 通知SMF会话建立完成,将AN Tunnel info返回给UPF

总结:可以根据前者网元的指示去选择下一跳的路由网元,也可以通过将S-NSSAI、DNN、SUPI等信息发送给NRF去决策寻找下一跳网元

与4G的会话连理流程对比,可以发现:

  • AMF和功能类比于MME
  • SMF类似于MME + SGW-C + PGW-C
  • UPF类似于SGW-C + PGW-C

5G SA核心网EPS Fallback

在5G用户发起语言业务时触发,时机在5G语言专有承载的建立。PCF发起建立专用Qos Flow的流程,当流程到NG-RAN后,NG-RAN决策是否回落。

  • 在EPS Fallback之前,NG RAN会通知终端测量LTE信号,然后再通过切换或重定向的方式向E-UTRAN的回落
  • 在EPS Fallback回落后,5G用户回落到LTE,然后像4G用户一样接入IMS,由VoLTE提供语言服务,消息中携带的用户位置信息也是4G的,RAT-TYPE由NG-RAN变为E-UTRAN

5G SA核心网EPS Fallback-PDU会话建立流程

SA用户IMS PDU会话建立与IMS初始注册流程与VoLTE相似,会话绑定数据由BSF保存

  • 用户注册后创建IMS PDU会话和IMS信令Qos Flow
  • PCF向BFS登记用户IMS会话IP地址
  • 后续IMS初始注册于普通VoLTE用户相同

EPS fallback呼叫流程

SA用户语音业务EPS Fallback流程三个阶段:

  1. NR(相对于4G的LTE)拒绝5G语音专载
  2. 终端5G->4G回落
  3. 4G建立语音专载

用户呼叫流程

在这里插入图片描述

  1. 呼叫建立,IMS通过Rx接口发送消息给DRA通知建立语音承载
  2. DRA判断无用户信息,先去BSF进行PCF信息查询后,再将消息转发给PCF
  3. PCF通知5GC创建语音承载,5GC通知无线gNB创建语音承载
  4. gNB判断不支持创建语音承载,拒绝创建并通知UE进行4G测量,发起切换请求
  5. MME和AMF通过N26接口交互,完成5G/4G侧切换准备,并通知终端回落
  6. 用户回落到4G,在4G创建数据承载和IMS信令承载
  7. PGW继续发起创建语音专有承载,通话建立

组网架构

目标组网架构:NR基站同时挂接大区ToC核心网和大区ToB核心网,基站配置ToC核心网的AMF为default AMF,通过用户签约的切片分流用户至不同的核心网。

当前组网架构:基站通过N2接口同时挂载省内SA核心网和大区SA核心网的AMF,业务符合通过AMF配置的权重进行业务调整,省内SMF的计费信息送到大区CHF。

端到端网络切片技术

无线侧:Qos调度优先级、RB资源预留、独立频谱切片

传输侧:Qos软切片、FlexE硬切片

核心网:全隔离、部分隔离和完全共享

URSP策略

User Plane Route Selection Policy,用户面路由选择策略

URSP策略是由PCF生成,并通过AMF传递给用户设备(UE)。让终端根据网络侧下发的策略,为应用/业务选择匹配的网络资源。

服务接口的演进

华为将控制面产品叫做UNC,内部也是微服务化架构的,全部都有一个SBIM的微服务,用于服务化接口。

NFS

NFS是NF的能力,微服务是NF的软件载体,NFS最终还是通过微服务承载。

SMF共有Nsmf_PDUSessionNsmf_EventExposure两个承载

  • Nsmf_PDUSession :管理PDU会话,使用从PCF接收的策略和计费规则
  • Nsmf_EventExposure:将PDU会话上发生的事件公开给其他NF

UPF的分布式组网

在5G网络中,用户面可以跟随应用灵活部署在城域、边缘或中心位置,该部署场景下,同一个用户可能同时访问边缘业务/本地业务或中心业务,为避免业务流量迂回问题,5G 核心网用户面引入了ULCL(Uplink Classifier)/ BP(Branching Point)功能,对业务数据进行分流。

网络侧能根据网络的运行状态、应用位置、UE位置等信息制定分流策略,并把分流策略下发给ULCL/BP UPF,用户访问业务时,ULCL/BP UPF根 据分流策略实现业务分流。

Fullmesh组网

UPF采用Pool容灾组网,UPF与SMF组成Full Mesh组网,SMF和UPF全互联,任意SMF可管理所有UPF,任意UPF同时归属所有SMF。

  • 单个SMG可以管理256个UPF
  • 单个UPF可以对接32个SMF
  • 单个UPF支持接入10万eNodeB / gNodeB

会话管理的演进

5G移动性管理和会话管理分离,为什么分离?

在4G网络场景下,用户Attach附着之后会建立一个默认承载,该承载提供永久的IP连接,当默认承载不满足业务需求时,会建立对应的专有承载。5G为了更好地适应物联网用户需要,采用移动性管理与会话管理分离的架构,用户附着时可以不建立会话:

  • 针对不需要VoLTE的物联网终端,不需要用户随时可达,不需要建立默认的PDU会话。
  • 不建立会话,终端不用监听无线寻呼,利于节电。

为什么新增对已有PDU会话用户面独立激活/去激活流程?

与4G EPC不同,5G 中永久在线(always-on PDU session,)是可选的。5G里这一特性为了节约无线侧资源的同时,便于快速恢复PDU会话,不影响其他会话。

SSC Mode

4G网络提供IP连续性,而5G网络中,业务场景更加多样。为了满足不同业务对连续性的不同要求,5G系统新增支持不同的SSC Mode。一个PDU会话的SSC Mode在该会话的生命周期里保持不变。当已有PDU会话的SSC Mode不满足应用要求时,UE会为应用建立新的PDU会话。

  • SSC MODE1(普通业务): PDU会话建立时选择的PDU会话锚点UPF, 不会因为终端用户的移动而发生改变,即用户的IP地址保持不变。
  • SSC MODE2(高带宽低可靠业务): 用户离开原UPF区域,网络会触发释放原有 PDU会话及锚点UPF,并指示终端用户选择新的UPF与同一DN建立新的PDU会话。
  • SSC MODE3(低时延高可靠业务): 网络允许在新的PDU会话(新的PDU会话锚点接入同一DN) 建立完成前依然保持用户与原有PDU会话锚点间的PDU会话,此时用户同时拥有两个UPF会话锚点和PDU会话,最后释放掉原有的PDU会话。

5G计费流程

计费方式划分为离线计费和在线计费:

  • 在线计费:计费会话创建时,SMF需要到CHF申请业务 的配额和相关计费参数。
  • 离线计费:计费会话创建时,SMF只需要到CHF申请相 关计费参数,但无需申请业务的配额。

计费粒度划分为PDU会话计费和业务流计费:

  • PDU会话计费:PDU会话计费不区分业务,一个PDU会话中的所有业务使用统一的费率,即普通计费。
  • 业务流计费:业务流计费是基于业务的计费,对用户使用的业务 进行差别计费,不同的业务使用不同的费率(Rating Group), 即内容计费。

PDU会话修改流程

在UE能力变更、QoS参数有修改等场景下,UE和网络侧都可以发起PDU会话修改流程。

  • UE发起PDU会话修改(当UE由于业务改变需要 更新QoS时)
  • SMF发起PDU会话修改(当PCF或UDM识别本地 配置策略有修改时,或本地配置的QoS策略发生 变化时)
  • RAN发起PDU会话修改(当RAN侧识别现有QoS 不能满足业务要求)

PDU会话释放流程

发生场景:

  • 当UE不再需要相关业务时(UE发起)
  • PCF、SMF本地配置释放策略(SMF发起)
  • UDM订阅数据发生变化(SMF发起)
  • DN需要取消UE的接入权限(SMF发起)
  • UE不在LADN服务区(SMF发起)
  • 所有PDU会话的QoS Flow已经释放(SMF发起)
  • 当UE与AMF的会话状态不匹配,或者UE的网络切片 不可用时(AMF发起)

现网中,UE的IP地址是由SMF向UPF请求的,UPF根据DHCP或者静态配置给UE分配IP,然后返回给SMF,SMF再返回给UE。

相关文章:

5G基础学习笔记

功能软件化 刚性网络:固定连接、固定功能、固化信令交互 柔性网络:网元拆解成服务模块,基于API接口调用 服务化架构(SBA) Service based Architecture (SBA): 借鉴了业界成熟的SOA、微服务架…...

Python plotly库介绍

一、引言 在数据可视化领域,Python提供了众多强大的库。其中,plotly是一个功能强大、交互式的可视化库,可以创建各种类型的图表,包括线图、散点图、柱状图、饼图、3D图表等。它不仅提供了美观的可视化效果,还支持交互式…...

go编程中yaml的inline应用

下列代码,设计 Config 和 MyConfig 是为可扩展 Config,同时 Config 作为公共部分可保持变化。采用了匿名的内嵌结构体,但又不希望 yaml 结果多出一层。如果 MyConfig 中的 Config 没有使用“yaml:",inline"”修饰,则读取…...

手机实时提取SIM卡打电话的信令声音-智能拨号器的双SIM卡切换方案

手机实时提取SIM卡打电话的信令声音 --智能拨号器app的双SIM卡切换方案 一、前言 在蓝牙电话的方案中,由于采用市场上的存量手机来做为通讯呼叫的载体,而现在市面上大部分的手机都是“双卡双待单通”手机,简称双卡双待手机。即在手机开机后…...

探索Python WebSocket新境界:picows库揭秘

文章目录 探索Python WebSocket新境界:picows库揭秘第一部分:背景介绍第二部分:picows库概述第三部分:安装picows库第四部分:简单库函数使用方法第五部分:场景应用第六部分:常见Bug及解决方案第…...

2024年11月24日Github流行趋势

项目名称:FreeCAD 项目维护者:wwmayer, yorikvanhavre, berndhahnebach, chennes, WandererFan等项目介绍:FreeCAD是一个免费且开源的多平台3D参数化建模工具。项目star数:20,875项目fork数:4,117 项目名称&#xff1…...

NewStar CTF week5 Crypto wp

easy_ecc ecc的模板题,稍加推理就会发现c1mc2*k因此做一个减法就行,需要注意的点是c1,c2必须放到ecc里面过一道才能出正确结果 k 86388708736702446338970388622357740462258632504448854088010402300997950626097 p 644088904089909773124499208053…...

vue3+antd注册全局v-loading指令

文章目录 1. 创建指令文件2. 全局注册3. 使用 1. 创建指令文件 src/directives 在directives中创建如下文件 src│─directives│ index.ts└─loadingindex.tsindex.vuedirectives/ index.ts export * from ./loadingdirectives/loading/index.ts import { createApp } f…...

初试无监督学习 - K均值聚类算法

文章目录 1. K均值聚类算法概述2. k均值聚类算法演示2.1 准备工作2.2 生成聚类用的样本数据集2.3 初始化KMeans模型对象,并指定类别数量2.4 用样本数据训练模型2.5 用训练好的模型生成预测结果2.6 输出预测结果2.7 可视化预测结果 3. 实战小结 1. K均值聚类算法概述…...

捉虫笔记(七)-再探谁把系统卡住了

捉虫笔记(七)-再探谁把系统卡住 1、内核调试 在实体物理机上,内核调试的第一个门槛就是如何建立调试链接。 这里我选择的建立网络连接进行内核调试。 至于如何建立网络连接后续文章再和大家分享。 2、如何分析 在上一篇文章中,我们…...

【Linux课程学习】:《简易版shell实现和原理》 《哪些命令可以让子进程执行,哪些命令让shell执行(内键命令)?为什么?》

🎁个人主页:我们的五年 🔍系列专栏:Linux课程学习 🌷追光的人,终会万丈光芒 🎉欢迎大家点赞👍评论📝收藏⭐文章 目录 打印命令行提示符(PrintCommandLin…...

2024年11月27日Github流行趋势

项目名称:screenshot-to-code 项目维护者:abi clean99 sweep-ai kachbit vagusX项目介绍:通过上传截图将其转换为整洁的代码(支持HTML/Tailwind/React/Vue)。项目star数:62,429项目fork数:7,614…...

Java中的线程池使用详解

文章目录 Java中的线程池使用详解一、引言二、线程池的创建与使用1、线程池的创建1.1、FixedThreadPool(固定大小线程池)1.2、CachedThreadPool(可缓存线程池)1.3、SingleThreadExecutor(单线程化线程池)1.…...

Redis(概念、IO模型、多路选择算法、安装和启停)

一、概念 关系型数据库是典型的行存储数据库,存在的问题是,按行存储的数据在物理层面占用的是连续存储空间,不适合海量数据存储。 Redis在生产中使用的最多的是用作数据缓存。 服务器先在缓存中查询数据,查到则返回,…...

计算机网络 第4章 网络层

计算机网络 (第八版)谢希仁 第 4 章 网络层4.2.2 IP地址**无分类编址CIDR**IP地址的特点 4.2.3 IP地址与MAC地址4.2.4 ARP 地址解析协议4.2.5 IP数据报的格式题目2:IP数据报分片与重组题目:计算IP数据报的首部校验和(不正确未改) …...

Java学习笔记--继承方法的重写介绍,重写方法的注意事项,方法重写的使用场景,super和this

目录 一,方法的重写 二,重写方法的注意事项 三,方法重写的使用场景 四,super和this 1.继承中构造方法的特点 2.super和this的具体使用 super的具体使用 this的具体使用 一,方法的重写 1.概述:子类中有一个和父类…...

高级java每日一道面试题-2024年11月27日-JVM篇-JVM的永久代中会发生垃圾回收么?

如果有遗漏,评论区告诉我进行补充 面试官: JVM的永久代中会发生垃圾回收么? 我回答: 在Java虚拟机(JVM)的历史版本中,确实存在一个称为“永久代”(Permanent Generation, 或者简称PermGen)的内存区域。永久代主要用…...

Spring Boot教程之十: 使用 Spring Boot 实现从数据库动态下拉列表

使用 Spring Boot 实现从数据库动态下拉列表 动态下拉列表(或依赖下拉列表)的概念令人兴奋,但编写起来却颇具挑战性。动态下拉列表意味着一个下拉列表中的值依赖于前一个下拉列表中选择的值。一个简单的例子是三个下拉框,分别显示…...

基于混合ABC和A*算法复现

基于混合ABC和A*算法复现 一、背景介绍二、算法原理(一)A*算法原理(二)人工蜂群算法原理(三)混合ABC和A*算法策略 三、代码实现(一)数据准备(二)关键函数实现…...

狂野飙车8+(Asphalt 8+) for Mac 赛车竞速游戏 安装教程

Mac分享吧 文章目录 狂野飙车8(Asphalt 8) for Mac 赛车竞速游戏软件 效果图展示一、狂野飙车8(Asphalt 8) 赛车竞速游戏 Mac电脑版——v2.1.11️⃣:下载软件2️⃣:安装软件2.1 左侧安装包拖入右侧文件夹中,等待安装完成,运行软件…...

【第二十一章 SDIO接口(SDIO)】

第二十一章 SDIO接口 目录 第二十一章 SDIO接口(SDIO) 1 SDIO 主要功能 2 SDIO 总线拓扑 3 SDIO 功能描述 3.1 SDIO 适配器 3.2 SDIOAHB 接口 4 卡功能描述 4.1 卡识别模式 4.2 卡复位 4.3 操作电压范围确认 4.4 卡识别过程 4.5 写数据块 4.6 读数据块 4.7 数据流…...

React19源码系列之 事件插件系统

事件类别 事件类型 定义 文档 Event Event 接口表示在 EventTarget 上出现的事件。 Event - Web API | MDN UIEvent UIEvent 接口表示简单的用户界面事件。 UIEvent - Web API | MDN KeyboardEvent KeyboardEvent 对象描述了用户与键盘的交互。 KeyboardEvent - Web…...

Keil 中设置 STM32 Flash 和 RAM 地址详解

文章目录 Keil 中设置 STM32 Flash 和 RAM 地址详解一、Flash 和 RAM 配置界面(Target 选项卡)1. IROM1(用于配置 Flash)2. IRAM1(用于配置 RAM)二、链接器设置界面(Linker 选项卡)1. 勾选“Use Memory Layout from Target Dialog”2. 查看链接器参数(如果没有勾选上面…...

今日科技热点速览

🔥 今日科技热点速览 🎮 任天堂Switch 2 正式发售 任天堂新一代游戏主机 Switch 2 今日正式上线发售,主打更强图形性能与沉浸式体验,支持多模态交互,受到全球玩家热捧 。 🤖 人工智能持续突破 DeepSeek-R1&…...

3403. 从盒子中找出字典序最大的字符串 I

3403. 从盒子中找出字典序最大的字符串 I 题目链接:3403. 从盒子中找出字典序最大的字符串 I 代码如下: class Solution { public:string answerString(string word, int numFriends) {if (numFriends 1) {return word;}string res;for (int i 0;i &…...

第 86 场周赛:矩阵中的幻方、钥匙和房间、将数组拆分成斐波那契序列、猜猜这个单词

Q1、[中等] 矩阵中的幻方 1、题目描述 3 x 3 的幻方是一个填充有 从 1 到 9 的不同数字的 3 x 3 矩阵,其中每行,每列以及两条对角线上的各数之和都相等。 给定一个由整数组成的row x col 的 grid,其中有多少个 3 3 的 “幻方” 子矩阵&am…...

Linux --进程控制

本文从以下五个方面来初步认识进程控制: 目录 进程创建 进程终止 进程等待 进程替换 模拟实现一个微型shell 进程创建 在Linux系统中我们可以在一个进程使用系统调用fork()来创建子进程,创建出来的进程就是子进程,原来的进程为父进程。…...

【Go语言基础【13】】函数、闭包、方法

文章目录 零、概述一、函数基础1、函数基础概念2、参数传递机制3、返回值特性3.1. 多返回值3.2. 命名返回值3.3. 错误处理 二、函数类型与高阶函数1. 函数类型定义2. 高阶函数(函数作为参数、返回值) 三、匿名函数与闭包1. 匿名函数(Lambda函…...

使用Spring AI和MCP协议构建图片搜索服务

目录 使用Spring AI和MCP协议构建图片搜索服务 引言 技术栈概览 项目架构设计 架构图 服务端开发 1. 创建Spring Boot项目 2. 实现图片搜索工具 3. 配置传输模式 Stdio模式(本地调用) SSE模式(远程调用) 4. 注册工具提…...

Java求职者面试指南:计算机基础与源码原理深度解析

Java求职者面试指南:计算机基础与源码原理深度解析 第一轮提问:基础概念问题 1. 请解释什么是进程和线程的区别? 面试官:进程是程序的一次执行过程,是系统进行资源分配和调度的基本单位;而线程是进程中的…...