01-06 通过手动方式增加NodeB(初始)
- 格式:pdf
- 大小:1.81 MB
- 文档页数:188
NodeB 设备数据配置一、教学目标:理解NodeB数据配置步骤掌握设备层数据配置二、教学重点、难点:重点掌握NodeB设备层数据配置三、教学过程设计:1.NodeB数据配置步骤:NodeB数据配置步骤有三步:一是设备层数据配置,主要包括BBU单板的增加、RRU链的增加以及RRU 的增加;二是传输层数据配置,主要包括设置以太网端口属性、增加SCTP链路、增加IUBCP 链路、增加IP Path链路、NodeB操作维护通道以及IP路由等,这一步的链路数据对应RNC侧的Iub接口数据;三是无线层数据配置,主要包括增加NodeB站点,增加扇区信息,增加小区信息。
这一步的无线小区数据对应RNC侧的无线小区数据。
这一节重点介绍第一步:设备层数据配置。
2.设备层数据配置:参考这个BBU设备面板图,第一步首先需要增加BBU的4块必配单板。
比如基带处理板WBBP、主控板WMPT、风扇板UBF以及电源单板UPEA。
表中是NodeB单板所在的槽位范围,其中单板所在的框号为0 。
第一步依次在0号框ADD添加7槽的主控板WMPT、3槽的基带处理板WBBP、16槽的风扇板UBF以及19槽的电源单板UPEA。
第二步增加RRU链。
可以使用该命令增加一个RRU链或者环,目的是为了在链或者环上增加RRU,RRU链和环在一个NodeB内部统一编号,通过组网方式区分。
链/环头接口板槽位,即为连接此条链/环的基带板所在槽位。
刚才添加的基带处理板WBBP在3号槽位。
WBBP单板上光口有3个,这里选0号光口。
第三步增加RRU,可以使用该命令增加一个RRU,增加RRU之前必须首先增加RRU链/环。
表中显示的是RRU的框号范围、槽位号和单板类型。
增加RRU之前必须首先增加RRU链/环。
第一章1.设计现代OS的主要目标是什么?答:(1)有效性(2)方便性(3)可扩充性(4)开放性2.OS的作用可表现在哪几个方面?答:(1)OS作为用户与计算机硬件系统之间的接口(2)OS作为计算机系统资源的管理者(3)OS实现了对计算机资源的抽象3.为什么说OS实现了对计算机资源的抽象?答:OS首先在裸机上覆盖一层I/O设备管理软件,实现了对计算机硬件操作的第一层次抽象;在第一层软件上再覆盖文件管理软件,实现了对硬件资源操作的第二层次抽象。
OS 通过在计算机硬件上安装多层系统软件,增强了系统功能,隐藏了对硬件操作的细节,由它们共同实现了对计算机资源的抽象。
4.试说明推动多道批处理系统形成和发展的主要动力是什么?答:主要动力来源于四个方面的社会需求与技术发展:(1)不断提高计算机资源的利用率;(2)方便用户;(3)器件的不断更新换代;(4)计算机体系结构的不断发展。
5.何谓脱机I/O和联机I/O?答:脱机I/O 是指事先将装有用户程序和数据的纸带或卡片装入纸带输入机或卡片机,在外围机的控制下,把纸带或卡片上的数据或程序输入到磁带上。
该方式下的输入输出由外围机控制完成,是在脱离主机的情况下进行的。
而联机I/O方式是指程序和数据的输入输出都是在主机的直接控制下进行的。
6.试说明推动分时系统形成和发展的主要动力是什么?答:推动分时系统形成和发展的主要动力是更好地满足用户的需要。
主要表现在:CPU 的分时使用缩短了作业的平均周转时间;人机交互能力使用户能直接控制自己的作业;主机的共享使多用户能同时使用同一台计算机,独立地处理自己的作业.7.实现分时系统的关键问题是什么?应如何解决?答:关键问题是当用户在自己的终端上键入命令时,系统应能及时接收并及时处理该命令,在用户能接受的时延内将结果返回给用户.解决方法:针对及时接收问题,可以在系统中设置多路卡,使主机能同时接收用户从各个终端上输入的数据;为每个终端配置缓冲区,暂存用户键入的命令或数据。
NodeB网管操作与维护指导一RNC操作与维护工具Application Launcher Client (2)1.1使用Fault Management查看告警 (3)1.2使用RNC RNW Object Browser查看小区状态 (7)1.3闭锁/解锁小区 (8)二使用Telenet 工具(TANG)登录RNC (9)三基站操作软件BTS Site Manager (10)四基站维护作业计划操作指导 (12)4.1日常维护 (12)4.2检查基站告警 (12)4.3 检查基站机柜 (15)4.4 基站PDH性能监控 (15)五常见的几种基站告警分析 (18)5.1AAL2 path unblock not accomplished (18)5.2Ais on unit [x],interface [y] (18)5.3Antenna line device failure (18)5.4BTS internal SW management problem (19)5.5BTS master clock tuning failure (19)5.6Failure in optical RP3 interface (20)5.7Fan failure (21)5.8System module failure/ RF module failure (21)5.9VSWR alarm (21)5.10WCDMA CELL OUT OF USE./CELL FAULTY. (21)5.11FAILURE IN WCDMA WBTS O&M CONNECTION. (22)5.12EBER on unit 1, interface X. (22)六基站重启操作 (22)一RNC操作与维护工具Application Launcher Client各地RNC用户名:Nemuadmin密码:nemuuserApplication Launcher登陆后界面如下:1.1 使用Fault Management查看告警i. 当前告警:显示当前RNC上的所有告警,包括告警等级、告警号、告警对象、告警产生时间、告警信息等。
BBU1324已经支持IP方式启动,1327和1306的R3.5版本正在测试中,后续也会支持,本文档以1324为例说明一下IP方式启动的相关配置方法。
1、IP启动方式的参数配置需要在NodeB启动成功后,通过LMT-B的配置模块进行设置,然后复位系统后,NodeB就会按照配置采用IP方式启动。
2、NodeB启动成功后,打开LMT-B的配置模块—NodeB系统信息,设置参数如下:1)NodeB传输方式双击“NodeB传输模式“,在弹出对话框中设置1(IP方式)或者3(IP优先);2)RNC管理端IP双击“RNC管理端IP”,设置IP地址,这个地址是在网络规划中已知的,也就是设置的时候需要知道和NodeB所连接的RNC的管理端IP地址。
3)FTP服务器地址此处的FTP地址是用于远程启动的,如果采用本地FTP启动,可以不配置此参数,在NodeB启动时候手动输入本地FTP的IP即可。
注:远程启动时,如果所连接的是RNC1000的3.0版本,则需要配置FTP的IP地址;如果是3.5版本则不用配置;RNC2000只有3.5版本,所以不用配置FTP的IP地址,就可以远程启动。
4)以太口的MAC地址打开LMT-B配置模块—IP链路信息/地址列表/SCTPStream/IMA组/MLPPP组,在“FE 接口链路信息”中,修改MAC地址,如果RIB板卡上已经插入了电口模块,则会显示相应信息。
建议设置的MAC地址的第一个字节为00,例如MAC地址为:00:01:02:03:04:055)RIB网络接口信息打开LMT-B配置模块—NodeB配置信息,右键单击RIB板卡,选择“网络接口信息”。
在弹出的对话框中新建一个网络接口。
网络端口编号:65537(网络端口只有:0x10001和0x20002,其中红色的1和2表示以太网端口号,绿色的1和2表示网络端口号,转换成10进制数为65537和131074)。
接口类型:暂时可以随意设置。
华为常用指令(NodeB)与原GSM不同的是:现在NodeB的操作除了在通过RNC上外,还可以直接连接NodeB进行操作,相比RNC的指令,NodeB的指令更为简洁.1.脚本导入后请检查NODEB的传输状态:执行命令DSP E1T1: CN=0, SRN=0, SN=6, SSN=255;确定每条E1都是正常可用;执行命令DSP IMAGRP: SN=6, IMAGRPN=0;确保IMAGRP状态为激活可用;执行命令DSP IMALNK: SN=6, IMALNKN=0; IMA链路号依次填写;确保每条IMALNK状态为激活可用;2.检查信令链路执行命令DSP SAALLNK:;参数值不用填写,确保每条信令链路都为正常可用.执行命令DSP AAL2PATH:;参数值不用填写,确保每条AAL2信令链路都正常可用.3.检查GPS状态执行命令DSP GPS:;参数不用填写,确保GPS搜星正常, 经纬度数值都有显示.4.检查小区和载波:8PATH天线查询小区状态为命令:DSP LOCELL: LOCALCELLEID=0;DSP LOCELL: LOCALCELLEID=4;DSP LOCELL: LOCALCELLEID=8;确保3个小区的状态为激活可用,小区参数有数值显示,65535除外,如果小区参数显示65535表示小区不正常,还未建立.注:6PATH天线的小区查询为DSP LOCELL: LOCALCELLEID=0;DSP LOCELL: LOCALCELLEID=1;DSP LOCELL: LOCALCELLEID=2;5.检查载波执行命令DSP CARRIERRES参数不填写,确保每个载波状态可用,如果不可用,请先检查单板状态。
执行命令DSP BRD:查看3、2、1、槽的BBI和BBP单板状态是否正常,如果正常而且载波还是不可用请联系RNC侧同事,定位问题。
RST BRD (BBP,BBI)华为常用指令(RNC)1.查看小区状态;DSP CELL:NODEBNAME=XXXXX;2.查询传输:DSP E1T1:框号:槽号(根据基站资料查询到) 单板类型:AOU3.查询RNC本局基本信息LST RNCBASIC 输出 MCC+MNC+RNCID4.查询RNC信令点设置LST OPC5.查询RNC区域编号LST LA(位置区) LST RA(路由区) LST SA(服务区)6.查询RNC CS/PS域基本信息:如周期性位置更新定时器LST CNDOMAIN LST CNNODE LST N7DPC7.查询RNC下所有NodeB,CELLLST NODEB LST CELL8.查询HSDPA控制信道对的分配情况:LST HSCONTROLCHAN如:HS-SICH分配在时隙1的16/16码道;HS-SCCH分配在时隙6的16/1,16/2上;查询HSDPA高速下行物理共享信道分配情况:LST HSPDSCH如:TS3,4,5的所有码道16/1—16/16。
一、RRU长时间起不来DSP BRDVER //查询单板版本信息RRU软件版本必须为:RRUxaV201R002C02SPC420,若显示为:NULL,则说明RRU软件版本不对。
解决方案:让基站督导把该RRU所在光纤倒回3槽位UBBP上、后台在TD侧手动增加一条与之对应的RRU链,把该RRU加上、待该RRU起来以后软件会自动升级到SPC420,这时再把该条光纤倒回到2槽位LBBP板上相对应的光口,再在LTE侧手动添加RRU链、RRU。
二、S1链路异常告警原因:该告警是由于NODEB标识重复造成的。
解决方案:LST ENODEBFUNCTION//查询ENODEB功能配置(查看NODEB标识) MODE ENODEBFUNCTION//修改NODEB标识该项(该标识由网优提供)RST BTSNODEB//复位基站备注:可以通过导出整个RNC的NODEB标识,让后通过工具导出NODEB 标识,找出重复的NODEB标识。
三、新建LTE(单模)小区不可用告警解决方案:LST CLKMODE//查询参考源时钟工作模式(此时一般为“手动”模式)SET CLKMODE//设置参考源时钟工作模式为“自动”模式,而共模LTE站点LTE侧时钟参考源模式必须设置为“手动”。
四、小区无法建立告警1.LST BBP(查询BBP配置)2.MOD BBP——修改“工作模式”该项为“TDD_TL(支持CMCC TDS&TDL双模)”五、新建D频段站点(频带为38)新建D频段站点必须新装RRU3257,LBBP(B4版本)必须装在4槽位。
六、小区服务能力下降告警A类1.DSP SFP(查看光模块速率——9.8G/6.3G/)2.MOD RRUCHAIN 修改CPRI线速率(修改为与实际的光模块速率匹配)B类(宏基站)基站情况描述:基站规划了6个小区,且该站上目前已经有3块LBBP基带板,所有小区都能激活并且都已经建立,LST ALMAF 显示“小区服务能力下降告警”1:分析:1块LBBP(主板——出纤连接RRU的那块板件)最多3个支持3个小区,而扩展上去的LBBP(背板)每块只支持一个小区,所有该站还需要扩一块LBBP板件,小区需要绑定基带板。
一.单项选择题目1、在TD-SCDMA系统中,将业务根据Qos特性进行分类,以下说法中不正确的是:( B )A. 会话类业务,其特征是时延小,且上下业务量对称B. 流体类,该类业务对时延要求宽松C. 交互类和背景类业务的瞬时速率变化较大,对时延要求不严格D. 按照会话类、流体类、交互类、背景类的顺序,业务时延要求越来越不严格,而误码率的要求越来越严格2、下面说法正确的是:( B )A. HSDPA技术在TD-SCDMA制式的R99协议版本实现B. HSDPA技术在TD-SCDMA制式的R5协议版本实现C. HSDPA技术在CDMA2000制式中实现3、12.2kbps业务上行采用( C)位的扩频码A. 1B. 4C.8D. 164、下面说法不正确的是:( D )A. SF越大,扩频增益越大B. 网络的容量、覆盖、质量是相互联系和制约的C. 处理增益越大,需要的功率越小D. 载干比越大,系统抗干扰能力越好5、关于接力切换下面说法正确的是(D )A. UE采用先通后断的方法,原基站和目的基站在一段时间内同时为移动台提供业务B. UE采用先断后通的方法,即先切断与原基站的通信信道,再接通与新基站的通信信道C. 切换过程中任何时间都只有一个基站与移动台之间有信道通信D. UE从源小区接收下行数据,向目标小区发送上行数据,即上下行通信链路先后转移到目标小区。
6、小区的辅载波可用的时隙个数是( B )A. 5B. 6C. 7D. 87、DRNC820最大支持话务量,最大支持PS域数据流量( C )A.40000,3264Mbps B.51000,960Mbps C.66000,5764Mbps D.66000,960Mbps8、DRNC820交换子系统不包含的功能是( D )A.分发RNC各业务单板所需的时钟信号和RFN信号B.为RNC提供框间连接C.为RNC各业务处理框提供业务数据和操作维护通道D.无线资源管理和控制9、在DRNC820的交换插框中,下述哪种单板用于提供系统时间同步所需的系统时间信息和传输同步所需要的同步定时信号( D )A. SPUB. DPUC. AEUD. GCU10、以下DRNC820接口板中不能用于Iu-ps接口的是( A )A.AOUaB.UOIaC.FG2aD.GOUa11、DRNC820中框间互联是由哪两个单板实现的( A )A.SCUa,SCUaB.DPUb,SPUbC. SCUa,SPUaD.GCUa,SCUa12、DBBP530支持的电源输入方式是( B )A.-24V B.-48V C.110V D.220V13、DBBP530的前面板共有( B )个槽位A. 10B. 11C.12D.1414、RNC820采取(D )时钟源时,NodeB无法通过RNC获取时钟A.BITS时钟B.GPS卫星同步时钟C.LINE时钟D.本地晶振15、DBBP530最大可以配置(D)块UBBP单板A.3B.4C.5D.616、在二期TD华为设备中,DBBP530种一块MPT提供( C )路E1接口A.1 B.2 C.4 D.8A.扳手B.快割切线器C.尖嘴钳D.电烙铁17、下面那个不属于射频远端处理模块:( C )A.TRRU261 B. TRRU266 C. DBBP530 D. TRRU26818、BBI是基带接口处理板,除了实现BBP的功能外还提供( D )供连接DRRUA.8个E1接口 B. 4个E1接口 C.1个光口 D. 3个光口19、以下哪些业务不是TD-SCDMA的特色业务(D)A.HSDPAB.HSUPAC. MBMSD.AMR20、2002年10月,中国为TDD分配( C) MHz频率资源。
Node.js的环境安装配置(使⽤nvm⽅式)前⾔神奇的node.js为我们JavaScript提供了在后端运⾏的环境,⽽它的包管理器npm(node package manage)现在也成为了全球最⼤的开源库⽣态系统.我们有很多很多的⼯具都是依赖于node环境进⾏使⽤的,所以我们使⽤node的第⼀步,就是配置node.js环境.那么配置node.js环境,当然,我们可以直接从官⽹下载,然后安装到电脑上就⾏了,当然,这是正确的,但是如果有⼀天我们需要使⽤新版本的node.js,或者使⽤旧版本的node.js时,我们还是需要去官⽹下载,然后安装,因为node.js的官⽅对于node.js的版本更新较慢,以⾄于⼀些⼤神等得不耐烦了,便开始⾃⼰更新node.js(当然node.js是开源的),你这⼀更新,导致官⽅团队坐不住了,那最后的结果就是官⽅的是稳定版本,当有新功能会在这个版本较⾼的发布,所以这就是经常会看到如果你想长期做 node 开发, 或者想快速更新 node 版本, 或者想快速切换 node 版本,那么在⾮ Windows(如 osx, linux) 环境下, 请使⽤ nvm 来安装你的 node 开发环境, 保持系统的⼲净.如果你使⽤ Windows 做开发, 那么你可以使⽤ nvmw 来替代 nvm使⽤nvm之前,我们先来看⼀下,我们使⽤终端打开应⽤程序的实例:我们使⽤终端开启⼀个软件是,必须要cd到这个程序当前所在的⽂件⽬录下,我们可以看到,当前的FlashFXP的链接存在于桌⾯的上,当我们在桌⾯中的node.js⽂件夹中去试图打开它是打不开的,因为我们终端在当前⽂件夹中找不到FlashFXP的启动程序,所以会报错,那么我们有没有办法去改变这⼀现象,可以在任何地⽅,任何⽂件中启动真个程序呢?当然是可以的,我们只需要配置⼀下环境变量就可以了,右键我的电脑->选择属性->⾼级系统设置->环境变量,到了环境变量这,就找对地⽅了环境变量是系统中⼀个特定的对象,当要求系统运⾏⼀个程序⽽且没有告诉系统这个程序的完整路径的时候,系统除了在当前的⽂件夹下边寻找之外,还会去环境变量中path中指定的路径去寻找,也就是说,如果你将⼀个⽂件夹的指定路径保存到了path中,那么每次在终端启动程序时,你根本就不必进去这个程序所在的⽂件夹也能启动它了,这⾥我们会看到有系统变量和⽤户变量,顾名思义,⽤户变量就是当前登录⽤户下配置的各种变量,当我们切换⽤户的时候,这部分的变量是可以变化的,那么这时候我们就需要将想要添加的⽂件夹添加到⽤户变量中就⾏了,FLASH= "C:\Program Files (x86)\//将当前地址复制到⼀个变量中,path = %FLASH%;//将这个变量赋值到path中,这时候在任何地⽅我们都可以打开这个程序了安装nvm好了,有了上边的铺垫之后,我们就可以来安装nvm了,我们可以使⽤git直接下载,当然也可以直接去⽹上下载 下载图标中的nvm就⾏,下载完成后解压,然后安装nvm,安装⽬录地址注意不要有中⽂,不然指不定会出现什么错误,我这⾥直接将它安装在了D:\dev下边,安装完成后⼀般会去⾃动给我们配置好系统变量,如果没有,我们需要⼿动去配置系统变量,原理及⽅法和我们⼀开始所讲的⼀样:NVM_HOME :指向nvm安装⽬录NVM_SYMLINK:nodejs安装⽬录Path :变量值中增加 NVM_HOME 和 NVM_SYMLINK两个环境变量这时我们可以在终端中测试⼀下:$ nvm -vRunning version 1.1.0.Usage:nvm arch : Show if node is running in 32 or 64 bit mode.nvm install <version> [arch] : The version can be a node.js version or "latest" for the latest stable version.Optionally specify whether to install the 32 or 64 bit version (defaults to system arch).Set [arch] to "all" to install 32 AND 64 bit versions.nvm list [available] : List the node.js installations. Type "available" at the end to see what can be installed. Aliased as ls.nvm on : Enable node.js version management.nvm off : Disable node.js version management.nvm proxy [url] : Set a proxy to use for downloads. Leave [url] blank to see the current proxy.Set [url] to "none" to remove the proxy.nvm uninstall <version> : The version must be a specific version.nvm use [version] [arch] : Switch to use the specified version. Optionally specify 32/64bit architecture.nvm use <arch> will continue using the selected version, but switch to 32/64 bit mode.nvm root [path] : Set the directory where nvm should store different versions of node.js.If <path> is not set, the current root will be displayed.nvm version : Displays the current running version of nvm for Windows. Aliased as v.//这时就表⽰nvm安装成功了安装node.js这时候我们就可以安装node了,在终端输⼊命令:nvm ls-remote,⽤来查看远端的node版本,当然,你可能看不到结果,此时,你就需要输⼊另⼀个命令:export NVM_NODEJS_ORG_MIRROR=http:/dist,然后再输⼊nvm ls -remote 这时候使⽤命令nvm install [node版本号]等到进度条⾛完,输⼊命令nvm list 来查看当前安装的nodenode.js版本切换可以看到当前安装的有4.3.1版本,那么我么使⽤ nvm use 4.3.1就可以指定当前使⽤的node版本为4.3.1,4.3.2后边也会出现(当前使⽤的标志),当然,我们可以再去下载⼀个node版本,例如:等到进度条⾛完,这是我们就有了5.7.0和4.3.1两个版本了:这时我们可定是想要去在两个版本之间⾃如的去切换的,这是我们还需要配置⼀个⽂件,就是nvm 中的setting⽂件:打开⽂件进⾏配置如上,根据⾃⼰的⽂件⽬录进⾏配置,root表⽰的是当前nvm中内容的地址,path则是需要写⼊环境变量中的地址path中,会在当天dev/ ⽂件下⽣成⼀个nodejs快捷⽅式,来作为指向当前使⽤的node版本的快捷⽅式如图所⽰当我们配置好了之后,就可以进⾏node版本的切换了:这是我们会发现dev⽂件中⽣成了⼀个nodejs的快捷⽅式,点击这个快捷⽅式,就可以调转到当前使⽤版本的nodejs中,当然,安装好了nodejs之后,node还有⼀个npm(node package manage),这个⼯具,在新版本的node中已经集成了进来,所以我们可以直接使⽤了,通过npm我们不仅可以下载node的各种包,我们还可以下载各种在npm⽣态⽹上的包,例如jQuery,angularJS,bootstrap,等等很多包,还包括gulp,bower,grunt等等⼯具。
全局数据:增加eNodeB功能(ADD ENODEBFUNCTION)设置网元设备配置(SET EQUIPMENT)添加运营商(ADD CNOPERATOR)添加跟踪区域配置信息(ADD CNOPERATORTA) 设置网元工程状态(SET MNTMODE)设备数据:增加机柜(ADD CABINET)增加机框(ADD SUBRACK)增加单板(ADD BRD)增加RRU链环(ADD RRUCHAIN)增加RRU/RFU配置信息(ADD RRU)增加GPS(ADD GPS)设置参考时钟源工作模式(SET CLKMODE)设置基站时钟同步模式(SET CLKSYNCMODE) 设置时区和夏令时(SET TZ)传输数据:增加以太网端口(ADD ETHPORT)增加设备IP地址(ADD DEVIP)增加IP路由(ADD IPRT)增加下一跳VLAN的映射(ADD VLANMAP) LNK方式:增加SCTP链路(ADD SCTPLNK)增加CP承载(ADD CPBEARER)创建S1接口(ADD S1INTERFACE)增加IP Path(ADD IPPATH)添加eNodeB IP Path应用类型(ADD ENODEBPATH) 增加远端维护通道(ADD OMCH)端节点方式:增加端节点组(ADD EPGROUP)增加SCTP参数模板(ADD SCTPTEMPLATE)增加SCTP本端对象(ADD SCTPHOST)增加SCTP对端对象(ADD SCTPPEER)增加端节点组的SCTP本端(ADD SCTPHOST2EPGRP) 增加端节点组的SCTP对端(ADD SCTPPEER2EPGRP) 增加用户面本端对象(ADD USERPLANEHOST)增加用户面对端对象(ADD USERPLANEPEER)增加端节点组的用户面本端(ADD UPHOST2EPGRP) 增加端节点组的用户面对端(ADD UPPEER2EPGRP) 添加S1配置(ADD S1)无线数据:增加扇区(ADD SECTOR)增加扇区设备(ADD SECTOREQM)增加小区(ADD CELL)创建小区扇区设备(ADD EUCELLSECTOREQM)创建小区运营商信息(ADD CELLOP)激活小区(ACT CELL)。
node.js—创建、删除、追加⽂件等⽅法汇总使⽤Node.js的fs模块必须在electron项⽬⾥/*1. fs.stat 检测是⽂件还是⽬录(⽬录⽂件是否存在)2. fs.mkdir 创建⽬录(创建之前先判断是否存在)3. fs.writeFile 写⼊⽂件(⽂件不存在就创建,但不能创建⽬录)4. fs.appendFile 写⼊追加⽂件5.fs.readFile 读取⽂件6.fs.readdir 读取⽬录7.fs.rename 重命名8. fs.rmdir 删除⽬录9. fs.unlink 删除⽂件*/var fs=require('fs'); //fs是node.js的核⼼模块,不⽤下载安装,可以直接引⼊// fs.stat 检测是⽂件还是⽬录 fs.statSync()同步获取stats对象,通过返回值接收。
fs.stat('html',function(error,stats){if(error){console.log(error);return false;}console.log('⽂件:'+stats.isFile());console.log('⽬录:'+stats.isDirectory());})//fs.mkdirSync 创建⽂件---同步创建fs.mkdirSync(`D:/Rabbit3`);//fs.mkdir 创建⽂件---异步创建fs.mkdir('D:/Rabbit2',function(error){if(error){console.log(error);return false;}console.log('创建⽬录成功');})//fs.appendFile 追加⽂件fs.appendFile('D:/Rabbit2/123.txt','这是写⼊的内容\n',function(error){if(error){console.log(error);return false;}console.log('写⼊成功');})//fs.writeFile 写⼊⽂件(会覆盖之前的内容)(⽂件不存在就创建) utf8参数可以省略fs.writeFile('123.txt','你好nodejs 覆盖','utf8',function(error){if(error){console.log(error);return false;}console.log('写⼊成功');})//fs.appendFile 追加⽂件fs.appendFile('123.txt','这是写⼊的内容\n',function(error){if(error){console.log(error);return false;}console.log('写⼊成功');})//fs.readFile 读取⽂件fs.readFile('123.txt',function(error,data){if(error){console.log(error);return false;}//console.log(data); //data是读取的⼗六进制的数据。
nodejs buffer相关操作Node.js Buffer相关操作Node.js是一个基于Chrome V8引擎的JavaScript 运行环境,它能够让JavaScript在服务器端运行。
Node.js中的Buffer是对应V8堆上的一块原始内存的引用,它用于处理二进制数据。
本文将介绍Node.js Buffer相关的一些常用操作。
一、Buffer的创建在Node.js中,可以通过多种方式来创建Buffer对象。
1. 通过长度创建Buffer:```let buf1 = Buffer.alloc(10); // 创建一个长度为10字节的Buffer对象,用0填充let buf2 = Buffer.allocUnsafe(10); // 创建一个长度为10字节的Buffer对象,但是未初始化,可能包含旧数据let buf3 = Buffer.from([1, 2, 3]); // 创建一个包含[1, 2, 3]的Buffer对象```2. 通过字符串创建Buffer:```let buf4 = Buffer.from('hello', 'utf8'); // 创建一个包含字符串'hello'的Buffer对象,默认使用utf8编码```二、Buffer的读写操作1. 写入数据到Buffer:```let buf = Buffer.alloc(10); // 创建一个长度为10字节的Buffer对象buf.write('hello', 'utf8'); // 向Buffer对象中写入字符串'hello',使用utf8编码```2. 从Buffer中读取数据:```let buf = Buffer.from('hello', 'utf8'); // 创建一个包含字符串'hello'的Buffer对象let str = buf.toString('utf8'); // 将Buffer对象转换为字符串,使用utf8解码```三、Buffer的拼接与截取1. Buffer的拼接:let buf1 = Buffer.from('hello', 'utf8');let buf2 = Buffer.from('world', 'utf8');let buf3 = Buffer.concat([buf1, buf2]); // 将buf1和buf2拼接为一个新的Buffer对象```2. Buffer的截取:```let buf = Buffer.from('hello world', 'utf8');let slice = buf.slice(0, 5); // 从Buffer对象中截取前5个字节的子Buffer对象```四、Buffer的转换与比较1. Buffer与数值的转换:```let buf = Buffer.from([0x62, 0x75, 0x66, 0x66, 0x65, 0x72]); // 创建一个包含ASCII码为[98, 117, 102, 102, 101, 114]的Buffer对象let num = buf.readUInt32LE(0); // 将Buffer对象中的前4个字节解析为一个32位无符号整数2. Buffer的比较:```let buf1 = Buffer.from('hello', 'utf8');let buf2 = Buffer.from('world', 'utf8');let result = pare(buf2); // 比较buf1和buf2的大小,返回一个数字```五、Buffer的其他操作1. Buffer的长度:```let buf = Buffer.from('hello', 'utf8');let length = buf.length; // 获取Buffer对象的字节长度```2. Buffer的填充与清空:```let buf = Buffer.alloc(10); // 创建一个长度为10字节的Buffer对象buf.fill(0); // 使用0填充Buffer对象中的所有字节buf.fill(1, 2, 4); // 从索引2到索引4(不包括索引4)填充为1buf.fill('hello', 'utf8'); // 使用'hello'填充Buffer对象,使用utf8编码buf.fill('world', 2, 7, 'utf8'); // 从索引2到索引7(不包括索引7)使用'world'填充,使用utf8编码buf.fill(0); // 清空Buffer对象中的所有字节```3. Buffer的复制:```let buf1 = Buffer.from('hello', 'utf8');let buf2 = Buffer.alloc(10); // 创建一个长度为10字节的Buffer对象buf1.copy(buf2, 2); // 将buf1的内容复制到buf2中,从索引2开始```以上就是Node.js中Buffer相关的一些常用操作。
添加、删除、替换以及插⼊节点的⽅法先简单说下每个⽅法对应的语句和⽤法obj.appendChild(node) 把新的⼦节点添加到指定节点(插⼊新的⼦节点(元素)),这么说可能不是很明⽩,代码可能更清晰哈!node表⽰的就是要添加的节点。
1// 获取元素2var div=document.getElementById("div1");3// 创造元素,给元素添加些⽂字4var p=document.createElement("p");5 p.innerHTML="添加1";6var p1=document.createElement("p");7 p1.innerHTML="添加2";8var p2=document.createElement("p");9 p2.innerHTML="添加3";10// 添加到div中11 div.appendChild(p);12 div.appendChild(p1);13 div.appendChild(p2);但是这个⽅法只能在⽗节点的末尾添加元素。
那如果我们要在⽗元素的中间添加怎么办呢。
w3c⼜提供了⼀个⽅法,就是obj.insertBefore(node,existingnode)。
obj.insertBefore(node,existingnode) 表⽰的是在指定的已有⼦节点之前插⼊新的⼦节点。
node表⽰要添加的节点,existingnode表⽰在其之前插⼊新节点的⼦节点。
如果未规定,则 insertBefore ⽅法会在结尾插⼊。
1// 获取元素2var div=document.getElementById("div1");3// 创造元素,给元素添加些⽂字4var p=document.createElement("p");5 p.innerHTML="添加1";6var p1=document.createElement("p");7 p1.innerHTML="添加2";8var p2=document.createElement("p");9 p2.innerHTML="添加3";10// 添加到div中11 div.appendChild(p);12 div.insertBefore(p1,p);13 div.insertBefore(p2,p1);insetBefore()也可以说是插⼊以节点哈!obj.replaceChild(newnode,oldnode) ⽤新节点替换某个⼦节点。
NodeB初始配置指南 6 通过手动方式增加NodeB(初始)6通过手动方式增加NodeB(初始)关于本章介绍通过手动方式增加NodeB。
手动方式常用于调整导入模板文件或配置文件后的NodeB数据。
操作步骤步骤1 6.1 创建逻辑NodeB(初始)步骤2配置NodeB设备层数据。
l 6.3 增加分布式基站设备层数据(初始)l 6.2 增加宏基站设备层数据(初始)步骤3配置NodeB传输层数据。
步骤4 6.7 增加NodeB无线层数据----结束6.1 创建逻辑NodeB(初始)介绍增加逻辑NodeB的方法。
逻辑NodeB用于向RNC标识一个NodeB的存在。
应用场景NodeB初始配置选配/必配必配涉及的网元NodeBl NodeB名称必须符合windows目录名的命名规则,且保证NodeB名称在RNS内部唯一。
l一块WSPUb单板下最多只可增加50个逻辑NodeB。
前提条件已打开RNS。
配置准备表6-1配置NodeB基本信息数据准备NodeB初始配置指南 6 通过手动方式增加NodeB(初始)操作步骤步骤1在CME 主界面的CME 配置对象框中单击,再单击配置任务框的“NodeB CMExpress ”,进入“NodeB CM Express ”界面。
步骤2单击,或双击左侧空白表记录,进入“NodeB Basic Information ”界面,如图6-1所示。
图6-1 “NodeB Basic Information ”界面NodeB初始配置指南 6 通过手动方式增加NodeB(初始)l在RNC全局信息中设置“RAN Sharing Flag”为“YES”时,可见参数“CnOpIndex”并通过该参数设置可浏览逻辑NodeB及其对应物理NodeB信息的运营商索引值。
l在RNC全局信息中设置“RAN Sharing Flag”为“NO”时,仅可见参数“SharingSupport”且仅能设置为“NON_SHARED”,可浏览逻辑NodeB及其对应物理NodeB信息的运营商索引值在RNC侧运营商信息中设置且仅能为一个。
请参见增加RNC基本数据(初始,基于CME)。
步骤3单击新增一个逻辑NodeB,选定并单击后编辑参数。
步骤4单击完成并保存配置结果。
步骤5单击,刷新数据。
步骤6配置结束后,单击“Close”退出“NodeB Basic Information”界面。
----结束6.2 增加宏基站设备层数据(初始)介绍宏基站设备层数据的配置方法,三种类型宏基站的配置方法基本相同。
1. 6.2.1 创建物理NodeB(初始,通过手动配置方式)设置NodeB基本信息。
2. 6.2.2 增加基带框单板(初始)介绍配置宏基站基带框单板的方法,包括NMPT、NBBI/HBBI、NBOI/HBOI、HULP、NDLP/HDLP、NDTI/NUTI、NMON。
3. 6.2.3 增加上行基带资源组(初始,宏基站)配置上行基带资源组,可使宏基站的上行基带资源被合理分配。
4. 6.2.4 增加RRU(初始,宏基站)宏基站可以通过NBOI/HBOI单板扩展射频单元,包括MRRU、RHUB和PicoRRU(PRRU)。
5. 6.2.5 增加射频模块(初始)介绍增加宏基站射频处理模块MAFU和MTRU的方法。
6. 6.2.6 增加NGRU(初始)NGRU为GPS接收机,它是NodeB的外部设备,用于UE定位和给NodeB提供时钟源。
7. 6.2.7 增加NEMU(初始)NEMU是环境监控模块。
8. 6.2.8 增加NCMU(初始)NCMU是BTS3812A/BTS3812AE的温度控制板,用于控制空调或者热交换器的温度。
9. 6.2.9 增加NPMU(初始)NPMU是电源环境监测模块。
10. 6.2.10 增加NPSU(初始)NPSU为宏基站的供电单元。
11. 6.2.11 增加蓄电池(初始)蓄电池是宏基站的备用电源设备,根据基站电源备用需求选配蓄电池。
12. 6.2.12 增加ALD(宏基站)配置宏基站的天线设备,包括RET(电调天线)、TMA(塔放)和RET_2G(2G基站上的RET)。
6.2.1 创建物理NodeB(初始,通过手动配置方式)设置NodeB基本信息。
应用场景NodeB初始配置选配/必配必配涉及的网元NodeB前提条件已6.1 创建逻辑NodeB(初始)。
配置准备表6-2创建物理NodeB数据准备NodeB初始配置指南 6 通过手动方式增加NodeB(初始)NodeB初始配置指南 6 通过手动方式增加NodeB(初始)操作步骤步骤1在CME配置对象框中单击,再单击配置任务框中的“NodeB CM Express”,进入“NodeB CM Express”界面。
步骤2在“NodeB CM Express”界面,单击,进入“Physical NodeB Basic Information”界面。
步骤3在“Physical NodeB Basic Information”界面的左侧选定一个逻辑NodeB,单击,弹出“Create Physical NodeB”对话框,如图6-2所示。
图6-2“Create Physical NodeB”对话框按住“Ctrl”键可选择多个逻辑NodeB。
步骤4根据准备数据选择“Series”和“Version”,在“Template”下拉列表框中选择“Do not use template”,单击“OK”。
步骤5物理NodeB创建成功后,弹出导入NodeB的“Information”对话框,单击“确定”返回“Physical NodeB Basic Information”界面。
步骤6双击“Physical NodeB Basic Information”界面右侧区域,或单击,进入“NodeB Equipment Layer”界面。
l分布式基站的“NodeB Equipment Layer”界面如图6-3所示。
l宏基站的“NodeB Equipment Layer”界面如图6-4所示。
图6-3 “NodeB Equipment Layer”界面(分布式基站)NodeB 初始配置指南6 通过手动方式增加NodeB (初始)图6-4“NodeB Equipment Layer”界面(宏基站)步骤7选择“NodeB Equipment Layer”界面的“Basic Info”页签,在该页签中配置NodeB基本信息各参数。
l单击,进入“FTP SSL IP Configuration”界面配置NodeB作为FTP客户端时,访问的FTP服务器IP地址及其目的端口。
如图6-5所示。
图6-5“FTP SSL IP Configuration”界面目的端口与服务器IP地址一一对应。
可以设置多条不同的IP地址端口对应值,但最多只能设置20条记录。
l单击,配置时区及夏令时相关参数。
步骤8单击完成并保存配置结果。
----结束6.2.2 增加基带框单板(初始)介绍配置宏基站基带框单板的方法,包括NMPT、NBBI/HBBI、NBOI/HBOI、HULP、NDLP/HDLP、NDTI/NUTI、NMON。
应用场景NodeB初始配置选配/必配必配涉及的网元NodeB配置NDTI/NUTI时,单板属性中参数MaxVPI与MinVPI的差值不能大于5。
前提条件已6.2.1 创建物理NodeB(初始,通过手动配置方式)。
NodeB初始配置指南 6 通过手动方式增加NodeB(初始)配置准备表6-3配置基带框单板数据准备NodeB初始配置指南 6 通过手动方式增加NodeB(初始)操作步骤步骤1进入“NodeB Equipment Layer”界面。
1.在CME配置对象框中单击,再单击配置任务框中的“NodeB CMExpress”,进入“NodeB CM Express”界面。
2.在“NodeB CM Express”界面,单击,进入“Physical NodeB BasicInformation”界面。
3.在“Physical NodeB Basic Information”界面选定物理NodeB后,单击,进入“NodeB Equipment Layer”界面。
步骤2在“NodeB Equipment Layer”界面选择“Device Panel”页签。
l BTS3812E的“Device Panel”页签,如图6-6所示。
l BTS3812A/BTS3812AE的“Device Panel”页签,如图6-7所示。
图6-6“Device Panel”页签(BTS3812E)图6-7 “Device Panel ”页签(BTS3812A/BTS3812AE)步骤3右键单击0号框的10~11号槽位,增加NMPT 。
NMPT 必须首先配置。
步骤4右键单击0号框的00~01号槽位,增加NBBI/HBBI 或NBOI/HBOI 。
步骤5配置上/下行处理板。
l 右键单击0号框的02~07号槽位,增加HULP 。
l右键单击0号框的08~09号槽位,增加NDLP 或HDLP 。
步骤6右键单击0号框的12~13号槽位,增加NDTI 或NUTI 。
l 12~13号槽位中配置的NUTI 添加扣板方法与14~15号槽位NUTI 相同。
l12~13号槽位中,NUTI 与NDTI 可以混插。
步骤7右键单击0号框的14~15号槽位,增加NUTI 。
NodeB 初始配置指南6 通过手动方式增加NodeB (初始)步骤8右键单击0号框的16号槽位,增加NMON。
在弹出的NMON“Board”页面的“NMON Bool External Alarm”页签中,设置端口参数“WorkMode”为“CUSTOM”后,可以配置该端口输入告警数据。
----结束6.2.3 增加上行基带资源组(初始,宏基站)配置上行基带资源组,可使宏基站的上行基带资源被合理分配。
应用场景NodeB初始配置选配/必配必配涉及的网元NodeBl同一个上行基带资源组内的小区可以进行更软切换,同频小区应尽量分在一个上行基带资源组内。
l上行基带资源组应尽量少,如3×4扇区载频模式可分为两个资源组,每个资源组支持6个小区。
前提条件已配置以下单板中的一种:l上行基带处理板HULP。
l可提供上行基带资源的NBBI/HBBI/NBOI/HBOI单板。
配置方法请参见6.2.2 增加基带框单板(初始)。
NodeB初始配置指南 6 通过手动方式增加NodeB(初始)配置准备表6-4配置宏基站上行资源数据准备表6-5配置Iub接口传输共享功能数据准备操作步骤步骤1在CME配置对象框中单击,再单击配置任务框中的“NodeB CM Express”,进入“NodeB CM Express”界面。