《协议栈的结构及模块培训37073.docx》由会员分享,可在线阅读,更多相关《协议栈的结构及模块培训37073.docx(24页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、协议栈的结结构及模模块培训训目录1.协议栈栈的总体体架构221概述21.协议实实现22.协议运运行过程程简述332、GSMM部分的的体系结结构图:63、GPRRS部分分的体系系结构图图:72.协议栈栈的模块块功能771.APII模块82.CC模模块83.SM模模块84.SS模模块85.SMSS模块86.CB模模块87.SNDDCP模模块88.MM模模块99.LLCC模块910.RRR模块10011.LAAPDmm模块10012.RLLU模块块1013.RLLD模块块1114.L11模块11115.SIIM模块块1116.RLLP模块块113.协议栈栈的TRRACEE实现111Changge H
2、HisttoryyDateChaptterTypeConteentssOwnerr2006.01.16AllNewLiujiiangguoNote: Tyype inccluddes: Neew, Addd, MModiify, Deelette1. 协议栈的总总体架构构1 概述1. 协议实现StackkComm协议栈栈是基于于3GPPP规范范relleasse 119999,实现了了GSMM/GPRRS的基基本功能能。StackkComm协议栈栈是基于于StaackCCom的的嵌入式式实时操操作系统统(SXXR)开开发的。该操作系统实现了内存及队列管理,信箱管理,信号量管理,定时器管理,任务
3、表管理,JOB管理等功能。StackkComm协议栈栈主要使使用了操操作系统统的内存存及队列列管理,信箱管理,定时器管理,任务管理,JOB管理。StackkComm协议栈栈的实现现主要是通通过消息息传送驱驱动任务务调度及及帧中断驱驱动JOOB调度度来实现现,还采采用了部部分函数数调用。LL2、L3的功能能实现基基本是依依靠任务务调度。LL1使用用了任务务及JOOB,在在接收上上层控制制时,是是通过任任务实现现的,而而处理帧帧内容(8时序),响响应帧中断,是是通过JJOB调调度实现现的。任务调度通通过消息息驱动来来实现,在Stackcom中,消息由消息ID、消息长度和消息体(message bo
4、dy)组成。其中消息ID和消息长度构成了消息头(message header)。消息在各个个任务间间传递方方式有两两种:信信箱(mmaillboxx)和队队列(qqueuue)。在stacckcoom中定定义了两两种信箱箱,主信箱箱(maain maiilboox)和和保存信信箱(ssavee maailbbox)。主信箱,用用于任务务间通讯讯。任务在在发送消消息后,如如果接收收消息的的模块优优先级高高于发送送消息模模块的优优先级,则则转入接接收消息息的任务务,对该该消息进进行处理理,同时时把发送送消息的的任务挂挂起。当taskk在某些些状态下下无法处处理接收收到的消消息,但但该消息息可以随随
5、后处理理时,ttaskk把该消消息保存存到保存存信箱中,在在适当的的时候进进行处理理。消息通过队队列传递递存在于于L1,LL2之间间,用于于L2发发送bllockk到无线线接口,使使用队列列的目的的是避免免无谓的的激活LL1,因因为L11只有到到特定的的时间才才发送保保存的bblocck。帧中断根据据启动的的JOBB及JOOB优先先级调用用不同JJOB处处理相关关的信息息。2. 协议运行过过程简述述协议在开始始运行后后首先从从操作系系统预留留的空间间(起始始地址为为_HEEAP_STAART,长长度为SSXS_HEAAP_SSIZEE)创建建堆。创创建堆分分为两类类,内部部SRAMM,和外外部
6、SRAMM。然后初始化化信箱,任任务,JJOB,分分配可用用信箱IID(即即创建信信箱),然然后初始始化定时时器,队队列,串串口,II/O。创创建Iddle tassk,根根据用户户tassk配置置表创建建各个用用户taask。创创建任务务包括给给各个任任务分配配栈,优优先级(IIdlee任务优优先级最最低)。设置traace位位图,设设置各个个tassk中能能够输出出traace信信息的级级别;然然后在在在外部RRAM堆堆(heeap)中中根据用用户需要要创建cclussterr,创建建出大小小不同的的块。最后启动适适合的任任务。流流程建图图1:图1对于JOBB,协议议在运行行期间根根据需要
7、要可以创创建,挂挂起或者者删除JJOB。在创建建JOBB时包括括给各个个JOBB分配栈栈,优先先级(IIdlee任务优优先级最最低),JJOB ID,JJOB响响应处理理函数,JJOB退退出函数数等。协议栈一共共包括AAPI,SSMS,SSS,CCC,MMM(MMMC,MMMP),CB,SIM,RR(MAC),LAPDm,SM,SNDCP,LLC,RLU,RLD,RLP,L116个模块,由17个任务完成,其中一个为IDLE任务。16个模块块是由221个状态态机实现现。其中中SMSS由4个状状态机实实现。MMM由两两个状态态机实现现,包括括MMCC,MMMP分别别实现GGSM与与GPRRS功能能
8、。SMMS与MMM的关关系见图图2: 图22RR由三个个状态机机实现。RRI_P主要负责PLMN选择功能,RRI_C负责小区选择及重选、系统消息的接收及测量报告的发送功能。RR_RRD主要负责在专用模式下的无线资源的管理。3. 体系结构图图下面为协议议栈的体体系结构构图,表表明了各各个模块块之间的的交互及及控制和和数据的的流向.2、GSMM部分的的体系结结构图:图33、GPRRS部分分的体系系结构图图:图4JOB一共共包括CCch Jobb,Cbbch Jobb, Bccch Jobb,Raach Jobb,SDDcchh Joob,TTch Jobb,Poowerr Joob,NNearr
9、Joob,PPCchhJobb,PBccchJJob,PdcchJoob,PTCCchJJob,PSJoob,TBFFSettUpJJob,MonnitoorinngJoob,HoAAcceessJJob,TBFFRelleasseJoob,117个JJob是是根据逻逻辑信道道及有关关功能进进行划分分的。2. 协议栈的模模块功能能协议栈中,每每个模块块都实现现了各自的的功能。下下面分述述如下:1. API模块块为上层应用用提供与与协议栈栈的接口口。2. CC模块这个模块负负责电路路切换呼呼叫控制制,主要要包括:普通呼叫建建立,包包括主叫叫与被叫叫。紧急呼叫建建立呼叫保持及及呼叫终终止(挂挂断)
10、呼叫中修改改(Beaarerr)DTMF控控制呼叫相关的的附加业业务3. SM模块SM(seessiion mannageemennt)会会话管理理,是指指GPRRS MMS连接接到外部部数据网网络的处处理过程程,支持持用户终终端的PPDP上上下文处处理。功能主要包包括:PPDP上上下文的的激活、解解除和修修改。4. SS模块该模块主要要功能是是处理独独立于呼呼叫的附附加业务务和非结结构性的的附加业业务数据据流程。附加业务包括呼叫转移,用户参与转移,三方通话等。5. SMS模块块该模块处理理短消息息。包括括电路交交换或者者包交换换信道下下点对点点的发送送短消息息的链路路建立及及短消息息传送的的
11、处理流流程、接接收短消消息的处处理流程程。6. CB模块主要根据时时间表非非连续性性的接收收小区广广播消息息。7. SNDCPP模块SNDCPP( SSubnnetwworkk Deepenndennt CConvverggencce PProttocool ),子网网汇集协协议。MMS或者者SGSSN中继继的分组组数据协协议(PPDP)使使用SNNDCPP提供的的业务。此此外,一一个控制制实体也也可以是是一个SSNDCCP用户户,例如如AT命命令解释释器。SSNDCCP使用用逻辑控控制链路路(LLLC)层层和会话话管理(SSM)子子层提供供的业务务。SNDCPP的主要要功能包包括:1、 若干
12、PDPP的合路路;2、 N-PDUU的缓存存3、 端对端的应应答LLLC业务务的建立立及释放放;4、 XID参数数协商5、 用户数据的的压缩和和解压缩缩;6、 协议控制信信息的压压缩和解解压缩;将网络协议议数据单单元(NN-PDDU)分分解成逻逻辑链路路控制协协议数据据单元(LLL-PPDU),同同时,也也将LLL-PDDU组装装成N-PDUU。8. MM模块该模块主要要实现GGSM/GPRRS移动动性管理理,安全全管理功功能,例例如通知知网络它它的当前前位置和和提供用用户机密密性身份份。MMM子层的的进一步步功能是是为上层层接续管管理子层层的不同同实体提提供连接接管理服服务。TMSI再再分配
13、流流程鉴权流程ID标识流流程异常终止流流程IMSI分分离流程程普通注册更更新流程程周期更新流流程IMSI附附加流程程MM连接管管理流程程GPRS TMSSI再分分配流程程GPRS 鉴权和和计算流流程GPRS ID标标识流程程GPRS MM信信息流程程GPRS IMSSI分离离流程GPRS IMSSI附加加和结合合GPRRS附加加流程GPRS IMSSI分离离和结合合GPRRS分离离流程普通路由区区域更新新和结合合路由更更新流程程、周期期路由区区域更新新流程、服服务请求求9. LLC模块块LLC主要要为GMMM,SSMS,SSNDCCP提供供一条可可靠的加加密链路路。主要要功能包包括:应答模式的
14、的建立、重重建立和和释放;传输上层的的应答数数据和非非应答数数据;错误检测和和恢复;加密;10. RR模块该模块主要要是对GGSM/GPRRS物理理信道的的分配、管管理及保保持。也也包括了了GPRRS的MMAC。主主要功能能有:小区选择和和重选;PLMN选选择和重重选;获取BCCCH和PPBCCCH上的的系统信信息;转发系统信信息给相相应的模模块;建立和释放放deddicaatedd链路;传输和路由由GSMM高层信信令消息息;加密控制;Handooverr;建立和释放放包信道道,TBBF;传输RLCC数据BBlocck;传输RLCC/MAAC控制制Bloock;网络控制的的celll ccha
15、nnge小区更新测量和测量量报告设置物理层层参数TLLI管管理11. LAPDmm模块LAPDmm为3层层传送来来自GSSM PPLMNN空口上上的消息息。主要要提供下下列功能能:非应答数据据的传输输;多帧操作的的建立和和释放;多帧操作建建立冲突突的解决决应答数据的的传输;多帧操作时时异常的的报告和和恢复;多帧操作的的挂起和和恢复;L3数据的的分段和和重组;多帧操作的的终止12. RLU模块块在LLC层层和MAAC层间间向下传输LLLC PDUU;把LLC PDUU分段成成RLCC bllockk;把RLC/MACC 控制制消息分分段成RRLC/MACC 控制制bloock;把RLC/MACC
16、 控制制bloock重重组成RRLC/MACC 控制制消息;BEC流程程;RLC数据据bloock的的选择性性重传13. RLD模块块在LLC层层和MAAC层间间向下传传输LLLC PPDU;把RLC bloock重重组成LLLC PDUU;14. L1模块L1在处于于RR的的控制下下,进行行与小区区的同步步,在逻逻辑信道道上接收收及传送送数据及及信息。主主要功能能有:FCH/SSCH检检测;在(P)BBCCHH、(P)CCCCH、(P)PCHH、SDCCCH、TCHH(/H)、FACCCH(/H)、SACCCH(/H)、PDCCH和PTCCCH上上接收数数据;在(P)BBCCHH、(P)CC
17、CCH、(P)PCHH、SDCCCH、TCHH(/H)、FACCCH(/H)、SACCCH(/H)、PDCCH和PTCCCH上上发送数数据;Handooverr管理;测量;接收增益控控制;功率控制;时间和频率率控制;15. SIM模块块该模块主要要负责与与SIMM的操作作,包括括有关数数据的读读写操作作,安全全验证等等。16. RLP模块块RLP是无无线链路路协议(rradiio llinkk prrotoocoll),处处理GSSM有关关数据的的业务。3. 协议栈的TTRACCE实现现Tracee输出根根据用户户设定输输出级别别选择性性进行输输出。用用户设置置traace位位图,设设置各个个
18、tassk中能能够输出出traace信信息的级级别。每每个任务务及相应应函数会会根据内内容设定定不同的的输出级级别。举举个例子子:假设设在MMM位置注注册请求求处理函函数中,有有信息需需要输出出,设置置的输出出级别为为2。在在用户设设置的ttracce位图图中,用用户没有有开放个个级别,即即在MMM的trracee位图变变量中,相相应的第第二个bbit没没有置位位。 用户可以设设置模块块相应ttracce位图图为全部部级别开开放,然然后在TTracce工具具上对相相应的级级别进行行选择。每个模块的的traace位位图变量量为一个个32位位的变量量。trracee位图bbit构构成见下下图5 图
19、55ID:用户户ID,标标识模块块LEVELL:定义义traace输输出级别别,用44个biit表示示,一共共16个个级别,116个级级别中,级级别15为系系统占用用级别,66166为各模模块自定定义级别别TIDU:不打印印traace信信息标志志,如果果该位置置位,不不论输出出级别和和STDDOUTT域是否否被置位位均不打打印trracee信息。ABORTT:Abbortt标志,如如果该位位置位,表表示发生生异常,需需要退出出。RAISEE:捕获获异常标标志,表表示有异异常产生生。TDB:数数据库标标志,未未使用。SMAP:6biit,未未使用。STDOUUT:当当该位置置位时,输输出trr
20、acee信息。只只要输出出级别被被置位或或者STTDOUUT被置置位,则则输出ttracce信息息。ARG:存存在参数数标志,未未使用。NB_ARRG:参参数个数数,未使使用。输出开关使使用的是是LEVVEL域域,及TTSTDDOUTT位。下面为一个个开机到到注册成成功的流流程图:图6下面为对应应的TRRACEE输出信信息,这这些信息息显示了了需要的的内容,没没有得到到显示的的是TRRACEE级别没没开或者者没有改改模块参参与处理理。SYS 000 : =SYS 000 : Sttarttingg SttarttStaack ( BBandd ) 144:266:377SYS 000 : =T
21、SP 000 : Fnn 83379 T1 6 TT2 77 T33 155API 001 : - API 001 : - _RR 001 : - TSP 000 : Fnn 83380 T1 6 TT2 88 T33 166_RR 001 : - L1S 001 : Exxit Neaar JJobTSP 000 : Fnn 0 T1 0 TT2 00 T33 0L1S 001 : Sttartt Moonittoriing schheduulerr.L1S 001 : Sttartt neear celll sscheeduller.L1S 001 : Exxit Neaar JJobL1
22、S 001 : Sttartt neear celll sscheeduller.TSP 000 : Fnn 1 T1 0 TT2 11 T33 1L1S 001 : Sttartt innitiial powwer meaasurremeent hanndleer, 23665 MMeassureesAPI 001 : - _MM 001 : - _MM 005 : mmmc_FFsm mmcc_NUULL , STTK_SSTARRT_RREQ = mmmc_NULLL _MM 005 : API 001 : - API 001 : - TSP 000 : Fnn 4009 TT1 00
23、T22 199 T33 1API 001 : - API 001 : - API 001 : - API 001 : - _RR 001 : - TSP 000 : Fnn 4110 TT1 00 T22 200 T33 2API 001 : - _MM 001 : - _MM 006 : SIIM aavaiilabble_MM 006 : Reead Simm fiile 0x220_MM 003 : - TSP 000 : Fnn 4112 TT1 00 T22 222 T33 4_RR 001 : - TSP 000 : Fnn 4115 TT1 00 T22 255 T33 7_RR 001 : - _MM 006 : C00 133 BDD 600 644 F00 000 100 388 133 000 TSP 000 : Fnn 4118 TT1 00 T22 2 T3 10