开机入网流程

小区搜索和选择

(1) UE开机后按照3GPP TS 38.104定义的Synchronization Raster(同步频率栅格)搜索特定频点
(2) UE尝试检测PSS/SSS,取得下行时钟同步,并获取小区的PCI
(3) UE尝试读取MIB,获取SSB波束信息、系统帧号和广播SIB1的时频域信息
(4) UE读取SIB1,获取上行初始BWP信息,初始BWP中的信息配置,TDD小区的半静态配比以及其它UE接入网络的必要信息等,同时获取广播OSI(其它系统信息)的搜索空间信息
(5) UE读取OSI,获取小区的其它信息(主要是移动性相关的信息)
UE开机选网,小区搜索是UE实现与gNB取得时间和频率同步,并检测小区ID的过程。
PSS(UE解调主同步信号,实现符号同步,并获取小区组内ID)
SSS(UE解调次同步信号,获取小区组ID,结合小区组内ID,最终获取PCI(PCI有1008个))
PBCH(解调MIB消息,获取波束ID,以及半帧指示信息,完成下行帧同步)
SSB(PSS+SSS+PBCH)

系统消息广播

系统消息广播室UE获得基本网络信息的第一步,通过系统消息广播过程,UE可以获得基本的AS层和NAS层信息;
AS层信息:公共信道信息、一些UE所需的定时器、小区选择/重选信息以及邻区信息等
NAS层信息:包括运营商信息等
UE通过系统消息获得的这些信息,决定了UE在小区中进行驻留、重选以及发起呼叫的行为方式。
UE在如下场景会读取系统消息
小区选择(如开机)、小区重选、系统内切换完成、从其它RAT系统进入5G RAT、以及从非覆盖区返回覆盖区时,UE都会主动读取系统消息。
UE在在上述场景中正确获取系统消息后,不会反复读取系统消息,只会在满足以下任一条件重新读取系统消息:
收到gNB寻呼,指示系统消息有变化;
收到gNB寻呼,指示有ETWS消息广播;
距离赏析正确接收系统消息3小时后。
系统消息内容
系统消息分为MSI(Minimum System Information)和OSI(Other System Information):
MSI:MIB和SIB1(RMSI剩余最小SI)
OSI:SIB2-SIBn,支持ODOSI模式
类 子类 承载内容 发送方式
MSI MIB 提供最基本的初始接入信息(系统帧号、载波间隔、SSB偏置),包含接收进一步系统信息所需的小区禁止状态信息和基本物理信息,和RMSI捕获方式 周期广播
RSMI(SIB1) SIB1定义了其它系统信息块的调度,并包含初始接入所需的信息:
1、 小区选择信息
2、 小区接入信息(PLMN,TAC,CellID)
3、 SI调度信息(SI周期、窗长、SIB映射等)
4、 小区配置信息(频带、频点、带宽、初始BWP配置等)
其他SIB信息可参考添加链接描述

小区搜索-同步信号


gNB下发系统信息可以是周期广播,也可以是按需订阅后广播,因此,UE获取系统消息过程也有如下方式:
A、搜索小区,解析MIB,检查小区状态:
1、 如果CellBarred = barred,则停止系统消息获取过程;
2、 否则继续后续步骤
B、使用MIB里面携带的参数,尝试解析SIB1:
1、如果SIB1解析成功,则存储相关信息,并继续后续步骤;
2、否则停止系统消息获取过程
C、根据SIB1中指示的其它SIB发送方式,进一步尝试获取其它SIB:
1、如果其它SIB是周期广播方式,则根据SIB1中指示的OSI搜索空间,尝试接收和解析SI;
2、否则,UE通过订阅请求获得其它SIB(称作ODOSI)

随机接入

UE与gNB建立上行同步,通信双方要实现相互通信,最重要的先决条件是建立通信双方的时间同步,对于NR也是如此,NR下行同步(Transmitter = gNB,Reciever = UE)通过广播同步信号实现,NR上行同步(Transmitter = UE,Reciever = gNB)则是通过随机接入过程实现的,随机接入简称RA(Random Access),是UE和网络之间建立无连接的必经之路,随机接入可以实现两个基本的功能;
随机接入分为基于竞争的随机接入(CBRA)和基于非竞争的随机接入(CFRA)
不同场景出发不同类型的随机接入

基于竞争的随机接入

基于非竞争的随机接入

RRC连接建立

RRC状态

参考3gpp 38.300,UE的RRC状态分为如下三种:
RRC空闲态、RRC连接态、RRC激活态
处于空闲态的UE需要发起业务(语音业务或数据业务)时,第一步就是发起RRC建立请求,触发空闲态到连接态迁移过程,这个过程就是RRC建立过程

RRC连接建立

RRC连接建立就是建立SRB1的过程:

1、 UE发起竞争性随机接入
2、 gNB回复MSG2(RAR)
3、 UENW:UE向gNB发送RRCSetupRequest消息,携带UE的InitalUE-Identity和EstablishmentCause,请求建立RRC连接,该消息对应于随机接入过程的MSG3
4、 NWUE:gNB为UE分配并建立SRB1承载,并向UE发送RRCSetup
5、 UE向gNB发送RRCSetupComplete消息,RRC连接建立成功

注册过程

RRC建立

  1. UE选择一个ZC序列的随机接入码。UE随机选择前导码,此前导码与随机访问前导码ID(RAPID)一起关联引用。每个前导码都与一个RA-RNTI相关联。这个RA-RNTI的公式定义来自38.321的RA-RNTI= 1 + s_id + 14 × t_id + 14 × 80 × f_id + 14 × 80 × 8 × ul_carrier_id
  2. gNB将给UE分配一个临时RNTI并在RAR中带给UE。
  3. UE使用RA-RNTI检测并解扰DCI 1_0的PDCCH来获取RAR的传输块信息。
  4. UE解码RAR传输块获得msg3的UL Grant、MCS、TPC、CSI、Temp C-RNTI。
  5. UE使用刚刚在RAR中获得的时频资源来发送msg3 RRC Setup Request,至少包含UE Identity和establishment cause。
EstablishmentCause ::= ENUMERATED {emergency, highPriorityAccess, mt-Access, mo-Signalling,
mo-Data, mo-VoiceCall, mo-VideoCall, mo-SMS, mps-PriorityAccess, mcs-PriorityAccess,
spare6, spare5, spare4, spare3, spare2, spare1}

  1. gNB使用TC-RNTI加扰DCI 1_0的PDCCH并发送给UE,UE对应解扰获取msg4 RRC Setup。
  2. 开始准备建立SRB1的参数。
  3. UE解码RRC Setup消息获得无线承载相关配置和master cell group信息参数,如果解码OK则竞争冲突解决也同步完成。至此,SRB0建立完成,SRB1建立的参数也配置完成。
RRCSetup ::= SEQUENCE {rrc-TransactionIdentifier RRC-TransactionIdentifier,
criticalExtensions CHOICE {rrcSetup RRCSetup-IEs,
criticalExtensionsFuture SEQUENCE {}
}
}
RRCSetup-IEs ::= SEQUENCE {radioBearerConfig RadioBearerConfig,
masterCellGroup OCTET STRING (CONTAINING CellGroupConfig),
lateNonCriticalExtension OCTET STRING OPTIONAL,
nonCriticalExtension SEQUENCE{} OPTIONAL
}
RadioBearerConfig ::= SEQUENCE {srb-ToAddModList SRB-ToAddModList OPTIONAL, -- Cond HO-Conn
srb3-ToRelease ENUMERATED{true} OPTIONAL, -- Need N
drb-ToAddModList DRB-ToAddModList OPTIONAL, -- Cond HO-toNR
drb-ToReleaseList DRB-ToReleaseList OPTIONAL, -- Need N
securityConfig SecurityConfig OPTIONAL, -- Need M
...
}
SRB-ToAddModList ::= SEQUENCE (SIZE (1..2)) OF SRB-ToAddMod
SRB-ToAddMod ::= SEQUENCE {srb-Identity SRB-Identity,
reestablishPDCP ENUMERATED{true} OPTIONAL, -- Need N
discardOnPDCP ENUMERATED{true} OPTIONAL, -- Need N
pdcp-Config PDCP-Config OPTIONAL, -- Cond PDCP
...
}
DRB-ToAddModList ::= SEQUENCE (SIZE (1..maxDRB)) OF DRB-ToAddMod
DRB-ToAddMod ::= SEQUENCE {cnAssociation CHOICE {eps-BearerIdentity INTEGER (0..15), -- EPS-DRB-Setup
sdap-Config SDAP-Config -- 5GC
} OPTIONAL, -- Cond DRBSetup
drb-Identity DRB-Identity,
reestablishPDCP ENUMERATED{true} OPTIONAL, -- Need N
recoverPDCP ENUMERATED{true} OPTIONAL, -- Need N
pdcp-Config PDCP-Config OPTIONAL, -- Cond PDCP
...
}
DRB-ToReleaseList ::= SEQUENCE (SIZE (1..maxDRB)) OF DRB-Identity
SecurityConfig ::= SEQUENCE {securityAlgorithmConfig SecurityAlgorithmConfig OPTIONAL, -- Cond RBTermChange
keyToUse ENUMERATED{master, secondary} OPTIONAL, -- Cond RBTermChange
...
}
CellGroupConfig ::= SEQUENCE {cellGroupId CellGroupId,
rlc-BearerToAddModList SEQUENCE (SIZE(1..maxLC-ID)) OF RLC-BearerConfig OPTIONAL, -- Need N
rlc-BearerToReleaseList SEQUENCE (SIZE(1..maxLC-ID)) OF LogicalChannelIdentity OPTIONAL, -- Need N
mac-CellGroupConfig MAC-CellGroupConfig OPTIONAL, -- Need M
physicalCellGroupConfig PhysicalCellGroupConfig OPTIONAL, -- Need M
spCellConfig SpCellConfig OPTIONAL, -- Need M
sCellToAddModList SEQUENCE (SIZE (1..maxNrofSCells)) OF SCellConfig OPTIONAL, -- Need N
sCellToReleaseList SEQUENCE (SIZE (1..maxNrofSCells)) OF SCellIndex OPTIONAL, -- Need N
...,
[[
reportUplinkTxDirectCurrent-v1530 ENUMERATED {true} OPTIONAL -- Cond BWP-Reconfig
]]
}
-- Serving cell specific MAC and PHY parameters for a SpCell:
SpCellConfig ::= SEQUENCE {servCellIndex ServCellIndex OPTIONAL, -- Cond SCG
reconfigurationWithSync ReconfigurationWithSync OPTIONAL, -- Cond ReconfWithSync
rlf-TimersAndConstants SetupRelease { RLF-TimersAndConstants } OPTIONAL, -- Need M
rlmInSyncOutOfSyncThreshold ENUMERATED {n1} OPTIONAL, -- Need S
spCellConfigDedicated ServingCellConfig OPTIONAL, -- Need M
...
}
ReconfigurationWithSync ::= SEQUENCE {spCellConfigCommon ServingCellConfigCommon OPTIONAL, -- Need M
newUE-Identity RNTI-Value,
t304 ENUMERATED {ms50, ms100, ms150, ms200, ms500, ms1000, ms2000, ms10000},
rach-ConfigDedicated CHOICE {uplink RACH-ConfigDedicated,
supplementaryUplink RACH-ConfigDedicated
} OPTIONAL, -- Need N
...,
[[
smtc SSB-MTC OPTIONAL -- Need S
]]
}
SCellConfig ::= SEQUENCE {sCellIndex SCellIndex,
sCellConfigCommon ServingCellConfigCommon OPTIONAL, -- Cond SCellAdd
sCellConfigDedicated ServingCellConfig OPTIONAL, -- Cond SCellAddMod
...,
[[
smtc SSB-MTC OPTIONAL -- Need S
]]
}
  1. gNB使用C-RNTI加扰DCI 0_0的PDCCH并发送给UE,UE对应解扰获取发送msg5 RRC Setup Complete所需要的时频资源和MCS信息。

     10. UE在对应时频资源位置使用gNB配置的MCS发送RRC Setup Complete消息,主要包含dedicatedNAS_Message (Registration type, 5G-GUTI, Last TAI, Requested NSSAI, UE Capability, List of PDU Sessions等)。
RRCSetupComplete ::= SEQUENCE {rrc-TransactionIdentifier RRC-TransactionIdentifier,
criticalExtensions CHOICE {rrcSetupComplete RRCSetupComplete-IEs,
criticalExtensionsFuture SEQUENCE {}
}
}
RRCSetupComplete-IEs ::= SEQUENCE {selectedPLMN-Identity INTEGER (1..maxPLMN),
registeredAMF RegisteredAMF OPTIONAL,
guami-Type ENUMERATED {native, mapped} OPTIONAL,
s-nssai-List SEQUENCE (SIZE (1..maxNrofS-NSSAI)) OF S-NSSAI OPTIONAL,
dedicatedNAS-Message DedicatedNAS-Message,
ng-5G-S-TMSI-Value CHOICE {ng-5G-S-TMSI NG-5G-S-TMSI,
ng-5G-S-TMSI-Part2 BIT STRING (SIZE (9))
} OPTIONAL,
lateNonCriticalExtension OCTET STRING OPTIONAL,
nonCriticalExtension SEQUENCE{} OPTIONAL
}
RegisteredAMF ::= SEQUENCE {plmn-Identity PLMN-Identity OPTIONAL,
amf-Identifier AMF-Identifier
}


Initial UE Message主要包含以下IE


Registration Request主要包含以下IE

NAS过程


11. 开始AMF选择,如果gNB不支持多AMF的话略过此步骤。
12. gNB收到MSG5后开始给UE分配对应的RAN UE NGAP ID,AMF使用此ID在gNB级别来分辨UE Context。
13. gNB发送Initial UE message到选中(如果有选的过程的话)的AMF,此消息携带在msg5中收到的Registration Request还有msg3中收到的establishment cause,5G-S-TMSI和AMF Set ID也许会有,也可以没有。
14. AMF通过下行直传发送Identity Request到UE去请求SUCI等身份识别信息(不是每次必须)。
15. UE通过上行直传发送自己的SUCI等身份识别信息(不是每次必须)。
16. AMF发送鉴权请求给UE,携带Key selector, RAND 和 AUTN。
17. UE反馈结合鉴权请求中参数经过运算后的鉴权响应到AMF。
18. AMF通过NAS Security Mode Command发送加密和完整性保护算法给UE,同时还会携带ngKSI、Replayed UE Security capabilities等信息。
19. UE发送对应的Security Mode Complete来响应NAS SMC,有些UE还可能在此条消息中重新携带Registration request信息。
20. 当上述Authentication和SMC过程都完成后,AMF会发起initial Context Setup Request给gNB,其中比较典型的会携带Registration Accept的NAS消息、Allowed NSSAI、UE Aggregate Maximum Bit Rate、PDU Session Resource Setup List Cxt Req等信息,还可能会携带CoreNetworkAssistanceInformation、GUAMI、UESecurityCapabilities、SecurityKey、IndexToRFSP、RRCInactiveTransitionReportRequest和多种多样的NAS PDU。其中,对于每一条需要建立的PDU Session都会有一个对应的PDU Session ID,并且针对于每一条PDU Session都会携带回应的上行的TEID。

AS加密和后续流程

  1. gNB发送AS层加密和完整性保护算法给UE。
SecurityModeCommand ::= SEQUENCE {rrc-TransactionIdentifier RRC-TransactionIdentifier,
criticalExtensions CHOICE {securityModeCommand SecurityModeCommand-IEs,
criticalExtensionsFuture SEQUENCE {}
}
}
SecurityModeCommand-IEs ::= SEQUENCE {securityConfigSMC SecurityConfigSMC,
lateNonCriticalExtension OCTET STRING OPTIONAL,
nonCriticalExtension SEQUENCE{} OPTIONAL
}
SecurityConfigSMC ::= SEQUENCE {securityAlgorithmConfig SecurityAlgorithmConfig,
...
}


22. UE确认对应的算法可用后发送确认给gNB,注意,此消息是有完整性保护但是没有经过加密的,但是从此时开始后续的消息都是加密的。

SecurityModeComplete ::= SEQUENCE {rrc-TransactionIdentifier RRC-TransactionIdentifier,
criticalExtensions CHOICE {securityModeComplete SecurityModeComplete-IEs,
criticalExtensionsFuture SEQUENCE {}
}
}
SecurityModeComplete-IEs ::= SEQUENCE {lateNonCriticalExtension OCTET STRING OPTIONAL,
nonCriticalExtension SEQUENCE{} OPTIONAL
}


23. gNB发送RRC Reconfiguration消息给UE,此消息典型携带信息包括Initial Context Setup Request(可能带有Registration Accept), 无线承载建立的相关参数,UE测量参数,如果有CA的话还会携带辅小区的相关信息。UE在收到此消息后会开始配置主小区组、无线辅小区组(如果有的话)、配置无线承载、基于收到的测量配置开始做测量、根据收到的NAS消息进行上下文和PDU Session(如果有的话)的相应操作。(SRB2和DRB建立)

RRCReconfiguration ::= SEQUENCE {rrc-TransactionIdentifier RRC-TransactionIdentifier,
criticalExtensions CHOICE {rrcReconfiguration RRCReconfiguration-IEs,
criticalExtensionsFuture SEQUENCE {}
}
}
RRCReconfiguration-IEs ::= SEQUENCE {radioBearerConfig RadioBearerConfig OPTIONAL, -- Need M
secondaryCellGroup OCTET STRING (CONTAINING CellGroupConfig) OPTIONAL, -- Need M
measConfig MeasConfig OPTIONAL, -- Need M
lateNonCriticalExtension OCTET STRING OPTIONAL,
nonCriticalExtension RRCReconfiguration-v1530-IEs OPTIONAL
}
RRCReconfiguration-v1530-IEs ::= SEQUENCE {masterCellGroup OCTET STRING (CONTAINING CellGroupConfig) OPTIONAL, -- Need M
fullConfig ENUMERATED {true} OPTIONAL, -- Cond FullConfig
dedicatedNAS-MessageList SEQUENCE (SIZE(1..maxDRB)) OF DedicatedNAS-Message OPTIONAL, -- Cond nonHO
masterKeyUpdate MasterKeyUpdate OPTIONAL, -- Cond MasterKeyChange
dedicatedSIB1-Delivery OCTET STRING (CONTAINING SIB1) OPTIONAL, -- Need N
dedicatedSystemInformationDelivery OCTET STRING (CONTAINING SystemInformation) OPTIONAL, -- Need N
otherConfig OtherConfig OPTIONAL, -- Need M
nonCriticalExtension RRCReconfiguration-v1540-IEs OPTIONAL
}
RRCReconfiguration-v1540-IEs ::= SEQUENCE {otherConfig-v1540 OtherConfig-v1540 OPTIONAL, -- Need M
nonCriticalExtension SEQUENCE {} OPTIONAL
}
MasterKeyUpdate ::= SEQUENCE {keySetChangeIndicator BOOLEAN,
nextHopChainingCount NextHopChainingCount,
nas-Container OCTET STRING             OPTIONAL, -- Cond securityNASC
...
}

关于Initial Context Setup Request所带IE主要如下:

Registration Accept所带主要IE如下:

  1. UE回复RRC Reconfiguration Complete来确认。
RRCReconfigurationComplete ::= SEQUENCE {rrc-TransactionIdentifier RRC-TransactionIdentifier,
criticalExtensions CHOICE {rrcReconfigurationComplete RRCReconfigurationComplete-IEs,
criticalExtensionsFuture SEQUENCE {}
}
}
RRCReconfigurationComplete-IEs ::= SEQUENCE {lateNonCriticalExtension OCTET STRING OPTIONAL,
nonCriticalExtension RRCReconfigurationComplete-v1530-IEs OPTIONAL
}
RRCReconfigurationComplete-v1530-IEs ::= SEQUENCE {uplinkTxDirectCurrentList UplinkTxDirectCurrentList OPTIONAL,
nonCriticalExtension SEQUENCE {} OPTIONAL
}
  1. gNB分配对应TEID供UPF发送下行数据使用。
  2. gNB发送Initial Context Setup Response给AMF,其中携带PDU Session Resource Setup List Cxt Res(也可能在后续用上下行直传消息来建立PDU Session),PDU Session建立响应消息中会指示对应每一条PDU session的下行数据使用哪个TEID。
  3. 通过上行直传消息发送Registration Complete消息到AMF,至此注册过程完成。
    28&29. 可以使用对应的TEID来发送UL/DL data。

NR 5G 入网流程相关推荐

  1. LTE(4G) - NR(5G) RRC连接重建立流程(RRC Connection Reestabelish)

    目录 RRC连接重建立流程(RRC Connection Reestabelish) 描述 举个栗子 流程图建立成功 建立失败流程图 结论 RRC连接重建立流程(RRC Connection Rees ...

  2. NR 5G UE和5G网络功能之间的安全流程

    UE和5G网络功能之间的安全流程 主要身份验证和密钥协议 认证框架 主要认证和密钥协商过程的目的是在UE和网络之间实现相互认证,并提供可在后续安全过程中在UE和服务网络之间使用的密钥材料. 由主认证和 ...

  3. UE开机入网流程及RRC连接建立

    UE开机入网流程及RRC连接建立 UE开机入网,进行小区搜索与选择,完成下行同步 UE读取广播消息,选择合适的小区驻留 随机接入,UE与gNB建立上行同步 UE与gNB建立RRC连接 UE注册到5G网 ...

  4. NR 5G 系统信息

    NR 5G 系统信息 基本说明 1.系统信息(SI)分为最小SI和其他SI,其中最小SI使用不同的消息(MIB和SIB1)在两个不同的下行链路信道上传输,而其他SI在SystemInformation ...

  5. LTE(4G) - NR(5G) 测量配置 Measurement configuration

    目录 LTE(4G) - NR(5G) 测量配置 Measurement configuration 描述 流程图 Log Log中的关键子描述 LTE(4G) - NR(5G) 测量配置 Measu ...

  6. LTE(4G) - NR(5G) RRC连接重配置(RRC Connection Reconfiguration)

    目录 LTE(4G) - NR(5G) RRC连接重配置(RRC Connection Reconfiguration) 描述 RRC Connection Reconfiguration可传递信息 ...

  7. 中国联通回应5G入网问题:尚未对公众客户开放

    [TechWeb]目前,包括华为.中兴在内的智能手机厂商已经相继发布了各自旗下的5G智能手机产品,但是,仅有硬件的支持是不够的,消费者想要体验到5G网络的畅快淋漓,一张支持5G信号的SIM卡也是必不可 ...

  8. 苹果 Siri 被曝涉嫌泄露用户隐私;中国联通回应 5G 入网问题;PHP 7.4 beta 1 发布 | 极客头条...

    快来收听极客头条音频版吧,智能播报由标贝科技提供技术支持. 「CSDN 极客头条」,是从 CSDN 网站延伸至官方微信公众号的特别栏目,专注于一天业界事报道.风里雨里,我们将每天为朋友们,播报最新鲜有 ...

  9. 华为主导 5G 入网之争?

    作者 | 风辞远 本文经授权转自脑极体(ID:unity007) 在5G走入商业市场的前夜,关于的NSA与SA模式的争论,最近经常出现在舆论的核心. 7月17日,由IMT-2020(5G)推进组联合中 ...

最新文章

  1. Android 6.0 变更
  2. [python]练习之递归和循环实现斐波拉契数列
  3. BZOJ.1032.[JSOI2007]祖码(区间DP)
  4. 就差一点点-微妙的强制类型转换
  5. linux下如何在shell中结束进程(ctrl+c\ctrl+z\ctrl+d\ctrl+\的用法)
  6. a类网络被谁用了_谁说学考没有用?浙江三位一体报名要求,需要几A几B都在这里...
  7. Android平台RTSP轻量级服务|RTMP推送摄像头或屏幕之音频接口设计
  8. 作为研究生/博士生导师招收的第一个学生是一种怎样的体验?
  9. 云端部署大数据解决方案该用IaaS还是PaaS?
  10. 鸿蒙谁法力最强,上古神话中,鸿蒙初开时有九大古神,鸿钧勉强上榜,烛龙位列前三...
  11. Java Swing实现局域网QQ
  12. input中加入图标实现搜索框
  13. 隐藏在Windows XP中的28个秘密武器
  14. flex弹性布局教程-02-容器display设置为flex
  15. Java去除空格符号
  16. 个人技术博客的选择:CSDN、博客园、简书、知乎专栏、Github、新浪、个人建站等?
  17. cocoa 键值观察依赖键(KVO)--笔录
  18. 在山东技校学计算机选哪个学校好,山东最好的技校排名
  19. 操作系统—PV操作解决和尚打水问题
  20. svchost.exe占网速解决方法

热门文章

  1. [Qt]图像处理小软件——给证件照换背景
  2. 基于Cookie-Editor与curl实现跨设备的文件下载
  3. 解决sublime汉化后部分中文显示为繁体字
  4. 【超全超详细】2W字零基础黑客学习路线,知识体系(附学习路线图)
  5. python爬取公众号阅读量_公众号没做起来,那是你菜 | 爬取21个公众号数据后
  6. Dos命令 netstat -ano 查看端口占用及关闭进程
  7. Unity TimeLine丨A1.创建TimeLine、Animation Track,Extrapolation属性讲解
  8. usb接上计算机没反应怎么办,u盘插上去电脑没反应怎么办 u盘插上后无任何反应的解决教程...
  9. 小米2020校招软件开发工程师笔试题二
  10. 线程池:酷我音乐网站热歌排行榜里面的歌曲!