版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、 1 概述概述.7 1.1 本文的目的和內(nèi)容.7 1.2 本文的依據(jù).7 1.3 限制說明.7 1.4 版本說明.7 2 正文正文.9 第一章模擬 msc 流程概述.10 第二章模擬 msc 支持呼叫業(yè)務(wù)流程.16 1 呼叫管理的典型過程.16 2 模擬 msc 支持呼叫管理的流程設(shè)計.17 2.1 模擬 hlr 和 vlr 用戶數(shù)據(jù)庫的 msinfo 數(shù)據(jù)結(jié)構(gòu).17 2.2 存儲呼叫控制信息的 call 數(shù)據(jù)結(jié)構(gòu).18 2.3 task_msc()支持呼叫管理的流程設(shè)計.18 2.4 主叫流程.19 2.5 被叫流程.27 2.6 拆線過程.31 2.7 其他消息的處理.34 2.8 程序中
2、的其余函數(shù)流程.37 第三章模擬 msc 支持 sms 流程.42 3.1 sms 協(xié)議.42 3.2 模擬 msc 支持 sms 的模塊設(shè)計.46 3.2.1 模塊設(shè)計.46 3.2.2 具體函數(shù)設(shè)計.46 3.3 測試方案.52 3.4 測試報告.52 第四章模擬 msc 支持?jǐn)?shù)據(jù)業(yè)務(wù)流程.53 4.1 模擬 msc 支持?jǐn)?shù)據(jù)業(yè)務(wù)的信令流程.53 4.2 支持?jǐn)?shù)據(jù)業(yè)務(wù)的函數(shù)設(shè)計.53 4.2.1 setup 消息(msmsc)及處理函數(shù) set_up( ) .54 4.2.2 call proceeding 消息和 call_proc( )函數(shù).55 4.2.3 assignment re
3、uest 消息和 ass_req( )函數(shù).56 4.2.4 call confirmed 消息和 call_conf( )函數(shù).57 4.3 數(shù)據(jù)業(yè)務(wù)流程的測試.57 第五章模擬 msc 支持外部切換流程.58 5.1 msc 支持外部切換的流程.58 5.2 模擬 msc 支持外部切換的函數(shù)設(shè)計.59 5.2.1 handover required 消息和 handoverreq( )函數(shù).59 5.2.2 handover request acknowledge 消息和 handovercmd( )函數(shù).62 5.2.3 handover detect 消息和 handoverdetec
4、t( )函數(shù).62 5.2.4 handover complete 消息和 hanovercmp( )函數(shù).63 5.2.5 handover failure 消息和 handoverfail( )函數(shù).63 5.2.6 其他函數(shù)的修改.64 5.3 外部切換的測試.65 4 附錄附錄.66 附錄 a:sms 流程調(diào)試問題的解決.66 附錄 b:幾種情況下的 sms 信令流程 .66 參考:.71 縮略語:略.71 4.文件歷史文件歷史.73 1 1 概述概述 bsc 和 bts 的調(diào)試和測試需要 msc 的 a 接口支持,符合 gsm 規(guī)范 phase2+的要求的 a 接口能與符合相應(yīng) gs
5、m 標(biāo)準(zhǔn)的 bsc 連接,實現(xiàn)各種通信業(yè)務(wù)(如呼叫、短消息、數(shù)據(jù) 等)、漫游及切換功能。本文介紹的是模擬 msc 應(yīng)用部分(application e.g call control)的流程設(shè)計,它并不實現(xiàn)真正的 msc 功能,但提供與 bsc 的 a 接口標(biāo)準(zhǔn),為 bsc 的調(diào)試和測試提供規(guī)范的各種標(biāo)準(zhǔn)的消息和正確的信令流程,從而能夠為自我開發(fā) 的 bsc 提供一個靈活 的測試平臺,使之能夠具有 phase2+規(guī)定的功能。 1.11.1 本文的目的和內(nèi)容本文的目的和內(nèi)容 本文是對模擬 msc 的流程設(shè)計的一個說明文檔,第一章是模擬 msc 流程設(shè)計的概述, 后續(xù)章節(jié)介紹模擬 msc 完成的 a
6、 接口應(yīng)用層功能有: 1呼叫控制(call control service),在第二章詳細(xì)論述; 2短消息業(yè)務(wù)( short message service),在第三章詳細(xì)論述; 3. 數(shù)據(jù)業(yè)務(wù)( data service),在第四章論述; 4.切換支持( handover support),在第五章中論述; 1.21.2 本文的依據(jù)本文的依據(jù) 本文的主要依據(jù):04.08,08.08,03.40,04.11 規(guī)范;bss 系統(tǒng)消息格式 bsc 部分文 檔,bsc v2.0 消息格式文檔。 1.31.3 限制說明限制說明 本文中論述的模擬 msc 流程的實現(xiàn)不能作為實用意義的參考,因為模擬的 m
7、sc 只提 供了標(biāo)準(zhǔn)的 a 接口,其內(nèi)部實現(xiàn)作了很多簡化; 本文也不是 msc 支持 a 接口的全部功能的論述。 1.41.4 版本說明版本說明 本文的有效性由本文的版本號確定,在存在最新版本的情況下,所有以前的版本均 為無效,即本文的最新版本是本文的唯一有效版本。所有使用本文的各方在使用本文 時應(yīng)選擇本文的最新版本。 本文的版本號由一個字母和三個數(shù)字組成,按如下的形式組成: 版本號:vx.y.z。x=2,y=z=0。 其中: v表示版本(version)。 x是一個大于0的整數(shù),由1開始編號,當(dāng)版本中的內(nèi)容與原有內(nèi)容有較大的 修改或補(bǔ)充時,x遞增1; y是大于等于0的整數(shù),在初始版本中或每次
8、x遞增時y設(shè)為0,當(dāng)版本中的內(nèi) 容與原有內(nèi)容在局部發(fā)生變動或修改時y遞增1; z是大于等于0的整數(shù),在初始版本中以及每次x或y遞增時z設(shè)為0,當(dāng)版本 中的內(nèi)容與原有內(nèi)容只在語法或表達(dá)形式上發(fā)生變動時z遞增1。 2 2 正文正文 第一章第一章模擬模擬 mscmsc 流程概述流程概述 bsc 和 bts 的調(diào)試和測試需要 msc 的 a 接口支持,符合 gsm 規(guī)范 phase2+的要求的 a 接口能與 符合相應(yīng) gsm 標(biāo)準(zhǔn)的 bsc 連接,實現(xiàn)各種通信業(yè)務(wù)(如呼叫、短消息、數(shù)據(jù)等)、漫游及切換功能。 圖 1.1 是 a 接口的結(jié)構(gòu)圖。 bss-sidemsc-sidea-interface t
9、o other processes within the bss bssap dtap bss map distribution function bss omap s c c p m t p physicallayer m t p s c c ps c c p m t p distribution function dtap bss map operation and maintenance information to plmn o tno=(tnomsc) 向主叫方發(fā)指配請 求:ass_req(moc) 開啟指配計時器 tassign 圖 2.5 (7)(7) 呼叫繼續(xù)呼叫繼續(xù) call
10、call proceeding-proceeding-調(diào)用函數(shù)調(diào)用函數(shù) call_proc(call_proc( ) ) 這一dtap消息通知bss,在網(wǎng)絡(luò)中呼叫建立已經(jīng)被初始化,并且額外的呼叫建立信息將不再被 接受。call_proc( )完成call proceeding消息幀的組織,并交給send ( )。 call proceeding 的消息格式:可選項略(p232 9.3.3 04.08) transaction identifiercall protocol iscriminator1 octet 0bxxxx0011 call proceeding message type1
11、octet 0b0 x000010 (8)(8) 指配請求指配請求 assignassign request-request-調(diào)用函數(shù)調(diào)用函數(shù) ass_req(ass_req( ) ) 這一bssmap消息從msc發(fā)送到bss以請求指配無線資源。ass_req( )先為對應(yīng)的呼叫分配一個 pcm時隙,并在moc_a_pcm_tsn中記錄下來,然后組織assign request消息,交給send()發(fā)送。同 時還應(yīng)該啟動指配計時器。 如果bss在定時器超時之前沒有收到指配請求,那么bss將發(fā)送一條清除請求消息到msc,它的 原因值被置為“定時器超時”。 assign request 的消息格式
12、:(3.2.1.1 08.08) information element type len value message type m 1 0 x01 channel type m 5-10 見 3.2.2.11 other information o n 略 channel type 中對呼叫的情況可以這樣選擇參數(shù): iei = 0 x0b ; length = 0 x03; sppech/data indicator=0 x01; rate = 0 x08;/*full rate tch*/ sppech version = 0 x01;/*gsm ver1.0*/ ass_req(flag
13、) flag=moc? yes :對主叫方的指配請求 no: 被叫方的指配請求 找出一個空閑的pcm時 隙slot; moc_a_pcm_tsn=slot slot= mtc_a_pcm_tsn=slot+1; 組幀:填寫下列參數(shù) type=ass_req; channel rate=0 x08; speech ver=0 x01; priority=0 x3e; cic=slot|0 x00; 調(diào)用send()發(fā)送ass_req(flag) 調(diào)用 圖 2.6 (9)(9) 指配響應(yīng)指配響應(yīng) assignassign complete-complete-調(diào)用函數(shù)調(diào)用函數(shù) ass_cmp(ass
14、_cmp( ) ) 這一bssmap消息指明請求的指配已經(jīng)正確完成。當(dāng)ms成功到達(dá)所指配的業(yè)務(wù)信道后,bss將這 一條消息發(fā)送到msc。在msc收到這條消息后,它停止計時定時器tassign并且等待被叫方振鈴。 assign complete 消息的格式:(3.2.1.2 08.08)可選項略 information element type len value message type m 1 0 x02 other information o n 略 (10)(10) 指配失敗指配失敗assignassign failurefailure調(diào)用函數(shù)調(diào)用函數(shù)clr_cmd(clr_cmd( )
15、 ) 這一bssmap消息從bss送到msc,指明請求的指配程序不能被正確完成。調(diào)用clr_cmd( )給主叫 或被叫發(fā)送清除命令clear command釋放資源。(消息格式和流程見拆線過程) (11)(11) 提醒振鈴消息提醒振鈴消息alertingalerting調(diào)用調(diào)用alertalert()() 這一dtap消息通知bss/ms被叫方的電話已經(jīng)振鈴。task_msc()調(diào)用alert()將由被叫發(fā)來 的alerting消息轉(zhuǎn)發(fā)給主叫方(組織此消息,交給send()發(fā)送),并更新status=s_alert。 alerting消息格式: (9.3.1.1 04.08) transact
16、ion idcall protocol discriminator1 octet 0bxxxx0011 alerting message type1 octet 0b0 x000001 other informationn octets (12)(12) 連接連接connectconnect調(diào)用調(diào)用connconn()() 這一dtap消息通知bss/ms被叫方已應(yīng)答呼叫。msc收到被叫方的應(yīng)答呼叫連接消息 connect后,向主叫方轉(zhuǎn)發(fā)這個消息(組織此消息,交給send()發(fā)送),并更新 status=s_connect。開啟連接計時器tconn。 connect消息:從msc到bss/ms
17、(9.3.5.1 04.08) transaction idcall protocol discriminator1 octet 0bxxxx0011 connect message type1 octet 0b0 x000111 other informationn octets (13)(13) 連接證實連接證實connectconnect ack-ack-調(diào)用函數(shù)調(diào)用函數(shù)conn_ackconn_ack()() 這一dtap消息由主叫方發(fā)給msc證實已接收到連接消息connect。task_msc( )調(diào)用 conn_ack()來處理:將此消息轉(zhuǎn)交給被叫方(組織此消息,交給send()發(fā)
18、送)。停止連接計時器 tconn。 connect acknowledge消息格式:(9.3.6 04.08) transaction idcall protocol discriminator1 octet 0bxxxx0011 connect message type1 octet 0b0 x001111 other informationn octets 至此,主被叫的呼叫連接已經(jīng)建立,雙方進(jìn)入通話過程。 2.52.5 被叫流程被叫流程 在成功的被叫呼叫連接建立的過程中,msc和bss之間循序交換以下消息: (1) 尋呼請求和尋呼響應(yīng) (2) 鑒權(quán)請求 (3) 鑒權(quán)響應(yīng) (4) 加密模式
19、命令 (5) 加密模式完成 (6) 建立 (7) 呼叫證實 (8) 指配請求 (9) 指配完成 (10)提醒振鈴 (11)連接 (12)連接證實 (1)(1) 尋呼請求尋呼請求 pagingpaging -調(diào)用函數(shù)調(diào)用函數(shù) paging(paging( ) ) 主叫發(fā)出建立消息 setup 之后,msc 可以從中獲得被叫方的 imsi 號(見主叫流程),通過 imsi 號,msc 向被叫發(fā)尋呼請求消息,消息包含了足夠的信息讓 bss 在合適的時間和合適的小區(qū)內(nèi) 做尋呼動作。這個過程由 paging( )函數(shù)來完成,它完成 paging 消息幀的組織,并交給 send ( ) 發(fā)送。 pagin
20、g 的消息格式:(3.2.1.19 08.08) information element type len value message type m 1 0x52 imsi m 3-10 3.2.2.6 tmsi o 6 cell identifier list m 3+7n 3.2.2.27 other information o n 我們?nèi)?cell identifier list 為所有 bss 中的小區(qū)。 iei = 0 x1a; length = 0 x01; cell discriminator = 0 x06 表示所有 bss 中的小區(qū)。 begin 組織paging消息幀: t
21、ype=paging; imsi=mtc-imsi ; cell-list=0 x06;(all cells) 調(diào)用send()發(fā)送消息幀 returnpaging() 調(diào)用 圖 2.7 尋呼響應(yīng)尋呼響應(yīng) pagingpaging responseresponse - 請參見主叫流程中的請參見主叫流程中的(1)(1)節(jié)節(jié) c c 小節(jié)小節(jié) (2)(2) 鑒權(quán)請求鑒權(quán)請求 authenticationauthentication (3)(3) 鑒權(quán)響應(yīng)鑒權(quán)響應(yīng) authenticationauthentication responseresponse (4)(4) 加密模式命令加密模式命令 ci
22、phercipher modemode commandcommand (5)(5) 加密模式完成加密模式完成 ciphercipher modemode completecomplete 請參見主叫流程請參見主叫流程(2)(2)、(3)(3)、(4)(4)、(5)(5)節(jié)。節(jié)。 (6)(6) 建立建立 setupsetup(mscmscmsms)-調(diào)用函數(shù)調(diào)用函數(shù) set_up(set_up( ) ) 這個消息在 msc 接收到由被叫響應(yīng)的加密模式完成消息后向 bss(ms)發(fā)出,指示被叫由主叫 發(fā)起的呼叫已經(jīng)到達(dá),要求被叫作出處理。set_up( ) 組織 setup 消息,交給 send
23、( )發(fā)送。 setup(mscms)消息格式:(9.3.23.1 04.08)可選項略。 transaction idcall protocol discriminator1 octet 0bxxxx0011 setup message type1 octet 0b0 x000101 (7)(7) 呼叫證實呼叫證實 callcall confirmedconfirmed - 調(diào)用函數(shù)調(diào)用函數(shù) call_conf(call_conf( ) ) 被叫收到由 msc 發(fā)來的 setup 消息后,發(fā)回一個呼叫證實消息來響應(yīng),表示已接收到呼叫建立 請求。call_conf( )更新 status,并向
24、被叫發(fā)起指配請求 ass_req(mtc)。 call confirmed 的消息格式:(9.3.2 04.08) 可選項略。 transaction idcall protocol discriminator1 octet 0bxxxx0011 call confirmed message type1 octet 0b0 x001000 begin status = s_call_conf 調(diào)用ass_req(mtc)給被叫發(fā)指 配命令 return call_conf() 圖 2.8 (8)(8)指配請求指配請求 assignassign requestrequest (9)(9)指配完成
25、指配完成 assignassign completecomplete 請參見主叫流程請參見主叫流程(8)(8)、(9)(9)、(10)(10)。 (10)(10) 提醒提醒 alertingalerting -調(diào)用函數(shù)調(diào)用函數(shù) alert(alert( ) ) 當(dāng)被叫完成指配之后,它應(yīng)該發(fā)提醒消息alerting通知主叫。msc收到此消息后,將此消息轉(zhuǎn) 發(fā)到主叫方。msc調(diào)用alert( )完成這個工作(見主叫流程)。 由被叫發(fā)出的alerting 消息格式:(9.3.1.2 04.08) transaction idcall protocol discriminator1 octet 0bx
26、xxx0011 alerting message type1 octet 0b0 x000001 other informationn octets (11)(11) 連接連接connectconnect調(diào)用函數(shù)調(diào)用函數(shù)connconn ( ( ) ) 這一dtap消息通知主叫方被叫方已應(yīng)答呼叫。msc收到被叫方的應(yīng)答呼叫連接消息connect后, 向主叫方轉(zhuǎn)發(fā)這個消息。conn ( )組織connect消息,并交給send ( )發(fā)送(見主叫流程)。開啟 連接計時器tconn。 connect消息:從bss/ms到 msc(9.3.5.2 04.08) transaction idcall
27、protocol discriminator1 octet 0bxxxx0011 connect message type1 octet 0b0 x000111 other informationn octets (12)(12) 連接證實連接證實 請參見主叫流程請參見主叫流程(13)(13)。 2.62.6 拆線過程拆線過程 呼叫拆線就是向終端發(fā)送一條釋放通知,讓ms空閑,并且釋放該呼叫的所有資源。有幾種情況 能引起呼叫拆線程序初始化,比如從起呼或被叫方來的釋放通知、bss復(fù)位、地面資源失敗等等。 這里只描述由主被叫一次通話結(jié)束正常拆線的情況: 斷連通告、釋放請求、釋放完成、清除命令、清除完
28、成、sccp rlsd和sccp rld(對sccp釋放 的層2消息)。 (1)(1) 斷連通告斷連通告disconnect-disconnect-調(diào)用函數(shù)調(diào)用函數(shù)discdisc ( ( ) ) 由主叫或被叫發(fā)起,msc收到此消息后,轉(zhuǎn)發(fā)此消息到被叫或主叫。disc( )完成disconnect 消息幀的組織,并交給send()發(fā)送,并更新status = s_disconnect。并向發(fā)起拆線一方回釋 放請求消息release request。 disconnect 消息的幀格式:從bss/ms到 msc或從msc到bss/ms(9.3.7 04.08) transaction idcal
29、l protocol discriminator1 octet 0bxxxx0011 disconnect message type1 octet 0b0 x100101 cause3-31 octets 10.5.4.11 other informationn octets cause域在正常拆線時的取值: iei 略; length = 0 x02; coding/location = 0 xe2; cause value = 0 x90;表示正常拆線。 begin status = s_disconnect 組織disconnect幀: length = 0 x02; coding/lo
30、cation = 0 xe2; cause value = 0 x90; return disc( )調(diào)用 開啟計時器tdisc 調(diào)用rel( ) 圖2.9 rel( )組織一個release request消息幀,交給send()發(fā)送給拆線發(fā)起方。release request 息幀格式:(9.3.18 04.08) transaction id call protocol discriminator1 octet 0bxxxx0011 release message type1 octet 0b0 x101101 other informationn octets (2)(2) relea
31、serelease request-request-調(diào)用函數(shù)調(diào)用函數(shù)rel_cmp(rel_cmp( ) ) 拆線接收方在收到斷連通告disconnect后,會發(fā)起release request請求到msc,task_msc( ) 調(diào)用rel_cmp()處理:組織release complete消息幀給拆線接收方。然后,msc接著發(fā)釋放連接命 令clear command給拆線接收方。 release complete的消息幀格式:(9.3.19 04.08) transaction idcall protocol discriminator1 octet 0bxxxx0011 release
32、 complete message type1 octet 0b0 x101010 other informationn octets clear command清除命令消息包含以下信息單元:(3.2.1.21 08.08) information element referencetypelen value message type 3.2.2.1 m 1 0 x20 layer 3 header information 3.2.2.9 o (1) 4 cause 3.2.2.5 m 3-4 3.2.2.5 這里的cause取值為: iei=0 x04; length = 0 x01; va
33、lue = 0 x09;表示是呼叫的正常拆線。 begin status = s_release rel_cmp()組織release complete消息; 停止計時器tdisc return 收到release request 消息 s時msc的調(diào)用 函數(shù) clr_cmd()組織clear complete消 息; 調(diào)用send()發(fā)送消息幀 圖2.10 (3)(3) 釋放完成釋放完成releaserelease complete-complete-調(diào)用函數(shù)調(diào)用函數(shù)clr_cmd(clr_cmd( ) ) release complete 是拆線發(fā)起方對由msc發(fā)來的release req
34、uest消息的響應(yīng)。模擬msc調(diào)用 clr_cmd( )處理:組織clear command 幀由send()發(fā)給拆線發(fā)起方。(消息格式見上) (4)(4) 清除命令完成清除命令完成clearclear complete-complete-調(diào)用函數(shù)調(diào)用函數(shù)clr_cmp(clr_cmp( ) ) 在收到清除請求消息后,或者作為釋放完成的繼續(xù),msc向bss發(fā)送一條清除命令消息以指導(dǎo) bss釋放相關(guān)的資源。在發(fā)送清除命令到bss后,msc等待從bss來的清除完成。如果msc收到清除完 成消息,那么該操作被認(rèn)為是成功的。task_msc( )調(diào)用clr_cmp( )來處理來自拆線發(fā)起和接收雙 方的
35、清除命令完成消息clear complete: a. 設(shè)置status=s_clr_comp; b.向下層sccp發(fā)disconnect請求引起sccp的rlsd和rlc工作。(這部分內(nèi)容屬于sccpd范 圍,這里省略) c.清除被占用的call結(jié)構(gòu)。 begin status = s_s_clr_comp 向下層sccp發(fā)disconnect請求引 起sccp的rlsd和rlc工作: send(n_disc_req, 0, bssmap,0) return 收到 clearcomplete 消息s時msc的 調(diào)用函數(shù) 調(diào)用clr_struct()清除被占用的 call結(jié)構(gòu) 圖2.13 其中c
36、lr_struct( )函數(shù)的功能是將被占用的call結(jié)構(gòu)的參數(shù)值恢復(fù)為0 x00或缺省值。(參考 initial( )) 2.72.7 其他消息的處理其他消息的處理 task_msc( )還包含了對其他bssmap消息的處理,對應(yīng)的處理函數(shù)如下:(由于模擬msc并不處 理下列bssmap消息的信息域,所以這里沒有詳細(xì)說明每個消息的信息內(nèi)容,而只給出了參考索引) (1)reset-reset_ack(1)reset-reset_ack( ) ) 全局復(fù)位程序的目的是在msc或bss引起全局故障時通過它的對方引發(fā)初始化。由于故障的類型 是全局的,因此該消息作為無連接消息發(fā)送。 在檢測到全局故障或
37、作為一個初始化的結(jié)果,bss或msc向其對方發(fā)送一條復(fù)位消息。然后對方 執(zhí)行所有必須的初始化功能,例如:釋放所有受影響的呼叫和參考、置閑電路、阻塞電路并確保在 以前呼叫中所涉及的所有ms不再發(fā)送功率。在足夠的初始化保護(hù)時間后,對方證實復(fù)位消息。 這里只描述由bss發(fā)起初始化消息reset,由msc返回reset ack的情況。reset_ack( )簡單地組 織一個reset ack 消息幀交給send( )發(fā)送,并同時發(fā)一個reset消息幀作為測試,引起bss方也作全 局復(fù)位和初始化。 reset 的消息格式:(3.2.1.23 08.08) information element refe
38、rencedirectiontypelen value message type 3.2.2.1 both m 1 0x30 cause 3.2.2.5 both m 3-4 3.2.2.5 reset ack 的消息幀格式:(3.2.1.24 08.08) information element referencedirectiontypelen value message type 3.2.2.1 both m 1 0x31 (2)reset(2)reset circuitcircuit - reset_circuit_ack(reset_circuit_ack( ) ) 當(dāng)發(fā)生的故障只影
39、響設(shè)備的一小部分,并且在故障中 sccp 連接已釋放時,需要用復(fù)位電路對 msc/bss 中的信息進(jìn)行初始化。如果 msc/bss 檢測到由于 sccp 連接的非正常釋放,電路已被迫處于 空閑,就需要發(fā)送復(fù)位電路消息。在收到復(fù)位電路消息后,接收方將被指示的電路置閑并回送一個 證實消息。 如果 bss 檢測到由于 sccp 連接的非正常釋放,電路已被迫處于空閑,就向 msc 發(fā)送一個復(fù)位 電路消息帶有一特定電路識別碼和復(fù)位原因,msc 用這一電路識別碼置閑該電路。msc 調(diào)用 reset_circuit_ack( )處理由 bss 發(fā)來的 reset circuit 消息:簡單地組織一個 res
40、et circuit ack 消息幀交給 send( )發(fā)送,幀內(nèi)容是 reset circuit 消息幀內(nèi)容的拷貝,并同時發(fā)一個 reset circuit 消息幀作為測試,引發(fā) bss 對電路的復(fù)位。 reset circuit 的消息格式:(3.2.1.38 08.08) information element referencedirectiontype len value message type 3.2.2.1 both m 1 0x24 circuit identity code 3.2.2.2 both m 3 cause 3.2.2.5 both m 3-4 reset ci
41、rcuit ack 的消息幀格式:(3.2.1.39 08.08) information element referencedirectiontype len value message type 3.2.2.1 both m 1 0x25 circuit identity code 3.2.2.2 both m 3 (3)block-block_ack(3)block-block_ack( ) ) 阻塞消息從 bss 送到 msc 表示一條特定的地面電路必須在 msc 阻塞。msc 向 bss 發(fā)送該消息證 實已收到阻塞消息并表示已采取相應(yīng)的動作。block_ack( ) 處理由 bss
42、發(fā)來的 block 消息:簡單 地組織一個 block ack 消息幀交給 send( )發(fā)送,幀內(nèi)容是 block 消息幀內(nèi)容的拷貝。 block 的消息幀格式:(3.2.1.4 08.08) information element referencedirectiontypelen value message type 3.2.2.1 both m 1 0 x40 circuit identity code 3.2.2.2 both m 3 cause 3.2.2.5 both m 3-4 connection release requested 3.2.2.3 msc-bss o1 bl
43、ock ack 的消息幀格式:(3.2.1.7 08.08) information element reference directiontype len value message type 3.2.2.1 both m 1 0 x41 circuit identity code 3.2.2.2 both m 3 (4)unblock-unblock_ack(4)unblock-unblock_ack( ) ) 如果 bss 希望解除對某一電路的阻塞,則向 msc 發(fā)送一條解閉消息在收到來自 bs 的解閉消息 后,msc 對這一電路標(biāo)記為可用并向 bss 發(fā)送解閉證實消息。解閉證實消息返回
44、解閉消息的電路識 別碼。unlock_ack( ) 處理由 bss 發(fā)來的 unblock 消息:簡單地組織一個 unblock ack 消息幀交給 send( )發(fā)送,幀內(nèi)容是 unblock 消息幀內(nèi)容的拷貝。 unblock 的消息幀格式:(3.2.1.6 08.08) information element referencedirectiontype len value message type 3.2.2.1 both m 1 0 x42 circuit identity code 3.2.2.2 both m 3 unblock ack 的消息幀格式:(3.2.1.7 08.08
45、) information elementreferencedirectiontype len value message type 3.2.2.1 both m 1 0 x43 circuit identity code 3.2.2.2 both m 3 (5)circuit(5)circuit groupgroup block-cg_block_ack(block-cg_block_ack( ) ) (6)circuit(6)circuit groupgroup unblock-cg_unblock_ack(unblock-cg_unblock_ack( ) ) circuit group
46、 block 和 circuit group unblock 是對一組電路的阻塞和解閉消息, cg_block_ack( )和 cg_unblock_ack( )分別組織 circuit group block ack 和 circuit group unblock ack 消息幀作為響應(yīng),幀內(nèi)容是 circuit group block 和 circuit group unblock 消息幀內(nèi) 容的拷貝。 circuit group block 的消息幀格式:(3.2.1.41 08.08) information element referencedirectiontype len val
47、ue message type 3.2.2.1 both m 1 0 x44 cause 3.2.2.5 both m 3-4 circuit identity code 3.2.2.2 both m 3 circuit identity code list 3.2.2.31 both m 4-35 circuit group block ack 的消息幀格式:(3.2.1.42 08.08) information element referencedirectiontype len value message type 3.2.2.1 both m 1 0 x45 circuit iden
48、tity code 3.2.2.2 both m 3 circuit identity code list 3.2.2.31 both m 4-35 circuit group unblock 的消息幀格式:(3.2.1.43 08.08) information element referencedirectiontype len value message type 3.2.2.1 both m 1 0 x46 circuit identity code 3.2.2.2 both m 3 circuit identity code list 3.2.2.31 both m 4-35 cir
49、cuit group unblock ack的消息幀格式: (3.2.1.44 08.08) information element referencedirectiontype len value message type 3.2.2.1 both m 1 0 x47 circuit identity code 3.2.2.2 both m 3 circuit identity code list 3.2.2.31 both m 4-35 2.82.8 程序中的其余函數(shù)流程程序中的其余函數(shù)流程 (1)(1) send(send( ) )函數(shù)函數(shù) 原型:void send(unsigned c
50、har sign, unsigned char len, unsigned char flag, unsigned char flag_cc,unsigned char dlci) 入口參數(shù):sign = n_undat_req,n_disc_req,n_conn_resp,n_data_req 表示 bssmap 或 dtap 消息 msg 向 sccp 層傳遞時的原語類型; len 表示 msg 消息的總長度; flag = bssmap, dtap 表明 msg 的類型; flag_cc=0 表示 msg 消息應(yīng)該傳送給當(dāng)前與 msc 通信的 ms 一方; =1 表示 msg 消息應(yīng)該傳
51、送給另外的一方。 dlci=0 x83 表示 sdcch 信道, =0 xc3 表示 tch 或 sacch 信道。 全局變量 msg 存儲的是由模擬 msc 組織號的消息(見上面的流程設(shè)計) 出口參數(shù):無 功能 :將流程中組織好的 bssmap 和 dtap 消息存于 msg 中,并達(dá)上原語幀頭, 扔到 t_scoc_des_id 隊列中,由 t_scoc_des 任務(wù)完成真正的消息發(fā)送。 注 :關(guān)于詳細(xì)的模擬 msc 消息處理流程與 sccp 之間的消息格式接口可以完全 參考“bss 消息格式 v2.0 bsc 部分文檔”,這里不在敘述。 begin 組織sccp和msc上層之間的消息頭:
52、 msg0=board_no;(接收板號) msg3=board_no;(發(fā)送板號) msg4=t_msc_id(接收任務(wù)號) msg5=(t_msc_id msg6=sign;(原語類型) 原語類型sign= n_undat_req 依據(jù) n_undat_req格式 填寫消息頭 填寫用戶數(shù)據(jù)部分 msg=msg_out other flag_cc=0? yes sccp消息頭中接續(xù)id賦值 為: msg9=use_data0; msg10=use_data1; msg11=use_data2; no use_data6 msg10=callcall_no.moc_conn_id1; msg1
53、1=callcall_no.moc_conn_id2; no:接續(xù)id為被叫id msg9=callcall_no.mtc_conn_id0; msg10=callcall_no.mtc_conn_id1; msg11=callcall_no.mtc_conn_id2; 依據(jù)各個原語類型將 bssmap和dtap消息 msg_out 打在msg的 用戶數(shù)據(jù)部分 msg10 clr_cmd(1,cause) no 向被叫重新做尋呼請求 paging( ); 重置計時器tpage return t3260:鑒權(quán) callno.timer_t3260= tno yes tflag=3? yes:主被
54、叫的mm連接存在 向主被叫發(fā)清除命令 (cause value=1): use_data6=0 x80; clr_cmd(1,cause) use_data6=0 x0; clr_cmd(1,cause) no 向主叫發(fā)清除命令 (cause value=1): use_data6=0 x80; clr_cmd(1,cause) no 1 1 no 1 tdisc:鑒權(quán) callno.timer_tdis c=tno yes 向主被叫發(fā)清除命令 (cause value=9正 常拆線): use_data6=0 x80; clr_cmd(1,cause) use_data6=0 x0; clr
55、_cmd(1,cause) 2 2 tciph callno.timer_tciph= tno yes tflag= 0:只有主叫存在 1:主被叫都存在 向主被叫發(fā)清除命令 (cause value=9): use_data6=0 x80; clr_cmd(1,cause) use_data6=0 x0; clr_cmd(1,cause) 向主叫發(fā)清除命令 (cause value=9): use_data6=0 x80; clr_cmd(1,cause) return tconn callno.timer_tconn= tno yes no 1 no 1 開啟斷連計時器: start(tdi
56、sc,no) 向主被叫發(fā)斷連通告: use_data6=0 x0; disc(); use_data6=0 x80; disc(); yes no 圖 2.15 超時異常處理函數(shù) expire()流程 (6)search_call(6)search_call( ) )函數(shù)函數(shù) 原型 : unsigned char search_call( ) 入口參數(shù):無 出口參數(shù):返回 char 型數(shù)值 函數(shù)功能:將被占用的 call 結(jié)構(gòu)中的 mtc_conn_id 和 moc_conn_id 與接收到的用戶 數(shù)據(jù)的 sccp id:use_data0use_data2比較,若相同,返回 call 結(jié) 構(gòu)
57、的下標(biāo) char;否則,返回 fail。這樣,對應(yīng)的消息將依據(jù)對應(yīng)的 callno 的信息作出正確的處理。 第三章第三章模擬模擬 mscmsc 支持支持 smssms 流程流程 comment xiwang1: page: 38 注釋沒有,應(yīng)該寫全。 本章分為三部分:首先從 04.11 協(xié)議出發(fā)介紹 msc 和 ms 之間的短消息協(xié)議體系結(jié)構(gòu),簡單敘 述各協(xié)議層的功能。第二部分結(jié)合原有模擬 msc 程序,提出了 msc 處理 sms 的模塊設(shè)計方案,并詳 細(xì)說明其中各函數(shù)的程序設(shè)計。第三部分是程序的測試方案和測試報告。最后附上四種實際情況下 的 sms 信令流圖。 3.13.1 smssms
58、協(xié)議協(xié)議 這里描述的 sms 業(yè)務(wù)協(xié)議只涉及 04.11 規(guī)定的 msc 和 ms 之間的 sms 交互協(xié)議,關(guān)于 msc、sc、sms-gmsc 之間的 sms 協(xié)議請參見 03.40 規(guī)范。 下面是 msc 和 ms 之間的 sms 協(xié)議分層結(jié)構(gòu): mscms sm-al sm-tl sm-rlsmrsmr cm-sublayersmcsmc mm-sublayer rr-sublayer 圖 3.1 msc 和 ms 之間的 sms 協(xié)議分層結(jié)構(gòu) sm-al 短消息應(yīng)用層 sm-tl 短消息傳輸層 sm-rl 短消息中繼層 sm-rp 短消息中繼協(xié)議 smr 短消息中繼實體 cm-sub
59、 cm 管理子層 sm-cp 短消息控制協(xié)議 smc 短消息控制實體 mm-sub mm 管理子層 rr-sub rr 管理子層 用于短消息傳送的物理信道取決于 tch 的是否被分配使用,總結(jié)于表 1。 channelchannel dependencydependencychannelchannel usedused tch not allocated sdcch tch not allocated - tch allocated sdcch - sacch tch allocated sacch tch allocated - tch not allocated sacch - sacch
60、 opt. sdcch 表 1.用于傳送短消息的物理信道 說明: comment xiwang2: page: 39 什么時間該重傳?什么時間該放棄? 與我們設(shè)備有關(guān)的這些地方一定要注 意。這里容易被忽略。 comment xiwang3: page: 39 這個沒有說明 comment xiwang4: page: 39 什么時間該重傳?什么時間該放棄? 與我們設(shè)備有關(guān)的這些地方一定要注 意。這里容易被忽略。 (1) 規(guī)范沒有對 sdcch注釋說明; rr 管理子層為短消息業(yè)務(wù)提供 sapi=3 的鏈路服務(wù)。這有區(qū)別于呼叫業(yè)務(wù)情況的 sapi=0。 smc 實現(xiàn) sm-cp 協(xié)議,它必須完成
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 采購合同明白模板
- 不解除合同上訴狀
- 邊坡塌方合同
- 報刊征訂合同范本
- 山東省棗莊市臺兒莊區(qū)2024-2025學(xué)年九年級上學(xué)期期中考試化學(xué)試題
- 遼寧省鞍山市海城市南臺鎮(zhèn)2024-2025學(xué)年六年級上學(xué)期期末英語試題(含答案)
- 河南省部分學(xué)校2024-2025學(xué)年高一上學(xué)期期中考試歷史試題
- 《棉堿溶性滌綸低彈絲包芯紗本色布》
- 甘肅省武威市涼州片區(qū)2024-2025學(xué)年八年級上學(xué)期期中考試英語試題(含答案無聽力音頻及原文)
- 設(shè)計服務(wù)相關(guān)行業(yè)投資規(guī)劃報告
- 幕墻竣工驗收自評報告7頁
- 機(jī)動車維修企業(yè)安全生產(chǎn)標(biāo)準(zhǔn)化考評方法和考評實施細(xì)則(完整版)
- 外研版小學(xué)英語外研版(一起)五上Module 10《Unit 1 You should tidy your toys》ppt課件2
- 江西省職業(yè)培訓(xùn)補(bǔ)貼范圍及標(biāo)準(zhǔn)-江西省職業(yè)技能鑒定指導(dǎo)中心
- 七年級生物上冊(濟(jì)南版)知識點歸納
- 應(yīng)急聯(lián)防聯(lián)動協(xié)議
- 財務(wù)會計職業(yè)生涯人物訪談報告
- (完整版)電渣壓力焊施工施工工藝
- D600變頻器說明書
- 上海英皇明星城初步設(shè)計(圖文)
- 隧道盾構(gòu)超限質(zhì)量事故報告(完整版)
評論
0/150
提交評論