《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 模擬設(shè)計 > 設(shè)計應(yīng)用 > 移動網(wǎng)數(shù)據(jù)庫系統(tǒng)接口協(xié)議分析
移動網(wǎng)數(shù)據(jù)庫系統(tǒng)接口協(xié)議分析
摘要: NP是NetworkProcessor的縮寫,意為網(wǎng)絡(luò)處理器。絡(luò)處理器器件內(nèi)部通常由若干個微碼處理器和若干硬件協(xié)處理器組成,且多個微碼處理器在NP內(nèi)部并行處理,通過預(yù)先編制的微碼來控制處理流程。
Abstract:
Key words :

1 設(shè)計背景

  NP是Network Processor的縮寫,意為網(wǎng)絡(luò)處理器。絡(luò)處理器器件內(nèi)部通常由若干個微碼處理器和若干硬件協(xié)處理器組成,且多個微碼處理器在NP內(nèi)部并行處理,通過預(yù)先編制的微碼來控制處理流程。對于某些復(fù)雜的標(biāo)準(zhǔn)操作,如內(nèi)存操作、路由表查找算法、QoS的擁塞控制算法、流量調(diào)度算法等,則采用硬件協(xié)處理器來進(jìn)一步提高處理性能,從而實現(xiàn)了業(yè)務(wù)靈活性和高性能的有機(jī)結(jié)合。

  在我國開始實施的移動網(wǎng)間號碼攜帶(NP:Number
Portability)現(xiàn)網(wǎng)試驗,目前NP主要用于網(wǎng)絡(luò)骨干設(shè)備和網(wǎng)絡(luò)接入設(shè)備,用來開發(fā)從網(wǎng)絡(luò)第2層到第7層的各種服務(wù)和應(yīng)用。目前,采用NP處理分組交換的廠家,既有第一梯隊的網(wǎng)絡(luò)公司,如思科、北電和朗訊等,也有不少后起之秀,如華為、中興、港灣等。但是,其NP用途卻不盡相同:思科寬帶匯聚系列產(chǎn)品使用了思科的并行快速轉(zhuǎn)發(fā)(PXF)NP,它被業(yè)內(nèi)稱為“NP的鼻祖”;華為在“第五代路由器”NE80/40/20系列產(chǎn)品中全面采用了NP;港灣的高端路由器、核心交換機(jī),如NetHammer G系列采用了NP相關(guān)技術(shù);UT斯達(dá)康公司選擇了Motorola的NP作為幾項3G無線接入網(wǎng)產(chǎn)品的封包轉(zhuǎn)發(fā)引擎。采用了一種集中數(shù)據(jù)庫的方式,即在號碼攜帶業(yè)務(wù)網(wǎng)絡(luò)中設(shè)置一個集中的數(shù)據(jù)庫,也稱為集中業(yè)務(wù)管理系統(tǒng)(CSMS:Central Service Management System),運(yùn)營商的號碼攜帶業(yè)務(wù)節(jié)點通過此集中數(shù)據(jù)庫系統(tǒng)進(jìn)行通信,實現(xiàn)號碼攜帶的業(yè)務(wù)協(xié)商及NP數(shù)據(jù)下發(fā)。此體系結(jié)構(gòu)如圖1所示。

  

 

  圖1 NP業(yè)務(wù)體系架構(gòu)

  本地業(yè)務(wù)管理系統(tǒng)(LSMS)保存本地的號碼攜帶數(shù)據(jù),并負(fù)責(zé)管理運(yùn)營商內(nèi)部的網(wǎng)元設(shè)備;業(yè)務(wù)受理系統(tǒng)(SOA)主要負(fù)責(zé)受理和處理用戶提出的號碼攜帶申請;而CSMS處理所有SOA之問的交互信息,并負(fù)責(zé)向LSMS同步號碼攜帶數(shù)據(jù)。

  2 設(shè)計原則

  在開始進(jìn)行CSMS接口協(xié)議設(shè)計之前,首先擬定了如下的幾條設(shè)計原則,協(xié)議的具體內(nèi)容也都是遵循這幾條原則進(jìn)行設(shè)計的。

  (1)滿足各種NP業(yè)務(wù)流程的需求

  這一條是最基本的設(shè)計原則。由于此接口協(xié)議是直接服務(wù)于NP業(yè)務(wù)流程,因此通過協(xié)議定義的各種流程,都與實際的NP業(yè)務(wù)需求相對應(yīng)。例如NP業(yè)務(wù)開展的第一步就是受理NP申請,在協(xié)議中就定義了與之對應(yīng)的規(guī)范化的流程。

  (2)協(xié)議有較高的可靠性

  提出這點原則,是與協(xié)議的應(yīng)用環(huán)境有關(guān)的。一方面,運(yùn)營商側(cè)的NP業(yè)務(wù)節(jié)點以及CSMS都是IT設(shè)備,基于TCP/IP的網(wǎng)絡(luò)環(huán)境進(jìn)行信息傳輸,網(wǎng)絡(luò)可靠性并不高;另一方面此協(xié)議對于NP業(yè)務(wù)體系又至關(guān)重要,一旦出現(xiàn)問題會影響NP業(yè)務(wù)的正常開展,這就需要在協(xié)議可靠性方面做一些特殊的考慮。

  (3)易于開發(fā)和維護(hù)

  一個易于開發(fā)和維護(hù)的協(xié)議將擁有更強(qiáng)的生命力。CSMS接口協(xié)議雖然是一個自定義的協(xié)議,但是自定義的部分主要是在應(yīng)用層,在基礎(chǔ)承載協(xié)議還會選擇現(xiàn)成的協(xié)議。

  下面將會逐一介紹上述設(shè)計原則是如何體現(xiàn)在CSMS接口協(xié)議中的。3 業(yè)務(wù)流程設(shè)計

 

  為了實現(xiàn)完整的NP業(yè)務(wù),在接口協(xié)議中共定義“NP業(yè)務(wù)申請流程”、“NP業(yè)務(wù)生效流程”、“NP業(yè)務(wù)取消流程”、“NP業(yè)務(wù)注銷流程”、“NP業(yè)務(wù)審計流程”、“欠費(fèi)處理流程”等6大類的業(yè)務(wù)流程。而在每一個大類中,基于正常的或者可能出現(xiàn)異常的情況,還定義出了若干的子流程。

  在CSMS接口協(xié)議業(yè)務(wù)流程中,兩個主要元素就是“消息”和“定時器”。下面就以成功的NP業(yè)務(wù)申請流程為例說明CSMS接口協(xié)議中的流程設(shè)計思路,以及消息和定時器的定義方法(圖2)。

  

 

  圖2成功的NP業(yè)務(wù)申請流程

  從圖2可以看到,攜入方SOA首先需要將用戶的申請信息發(fā)送給CSMS,CSMS響應(yīng)后轉(zhuǎn)發(fā)給攜出方SOA,SOA驗證通過后,將響應(yīng)結(jié)果返回CSMS,并由CSMS告知攜入SOA申請成功。

  在流程圖中,每一條消息(申請請求、申請響應(yīng)、申請結(jié)果告知)都對應(yīng)一種消息結(jié)構(gòu),用于傳遞相應(yīng)的信息。例如,在申請響應(yīng)消息中,就包含了“消息ID”、“請求消息ID”、“消息命令碼”、“業(yè)務(wù)類型”、“NP號碼”、“NP流程ID”、“返回代碼”、“拒絕消息”等參數(shù)字段。每個參數(shù)的用法、長度、數(shù)據(jù)類型在協(xié)議中也都進(jìn)行了嚴(yán)格的定義。比如“消息ID”是由發(fā)送方維護(hù)的流水號,用于唯一標(biāo)識的消息,采用l6位的定長字符串的方式來存儲和傳遞。

  除了消息,另一種對流程影響非常大的元素就是定時器。可以說,定時器嚴(yán)格的限定了NP業(yè)務(wù)節(jié)點的行為方式。在圖2中,Tl-1定時器是申請請求與申請響應(yīng)之間最大間隔的定時器,此定時器要求CSMS在收到申請請求消息后,必須在T1-1超時之前發(fā)送申請響應(yīng)消息;而攜入方一旦在T1-1的時間內(nèi)沒有正確地收到申請響應(yīng)消息,將會進(jìn)行重發(fā)和告警。

  4 協(xié)議高可靠性的設(shè)計

  為了提高CSMS接口協(xié)議的可靠性,在設(shè)計過程中引入了以下三種機(jī)制:

  ·ACK快速反饋機(jī)制;

  ·完善的錯誤定義和后處理機(jī)制;

  ·心跳檢測機(jī)制。

  首先,在CSMS接口協(xié)議中,定義了一種特殊的消息,稱為ACK消息。在業(yè)務(wù)節(jié)點接收到任何一條NP消息后,將首先返回一條ACK消息。ACK消息不攜帶任何應(yīng)用層面上的信息,僅僅是告知發(fā)送方我已經(jīng)接收到了你方發(fā)來的消息。有了ACK消息,發(fā)送方就能立刻確認(rèn)對方是否已經(jīng)正確地接收到了消息,而不是在等待對方超時仍然沒有返回響應(yīng)消息時才發(fā)現(xiàn)上一條消息對方并沒有正確接收到。通過使用ACK機(jī)制,無疑是提高了協(xié)議的可靠性。

  其次,在CSMS接口協(xié)議中,定義了50多種錯誤消息代碼,并且根據(jù)實際應(yīng)用情況,還有可能繼續(xù)擴(kuò)充。這些錯誤消息代碼的定義,最大程度上細(xì)化了NP業(yè)務(wù)中可能出現(xiàn)的異常情況,而細(xì)化的結(jié)果就是針對每一種錯誤情況都定義了完備的后處理機(jī)制。例如當(dāng)消息發(fā)送方收到的ACK消息中攜帶“500”(接收方服務(wù)器異常)錯誤代碼,則發(fā)送方應(yīng)在五分鐘后使用新的MessageID號重發(fā)此消息。

  最后,CSMS接口協(xié)議中還定義了心跳檢測機(jī)制,CSMS會定期通過網(wǎng)絡(luò)層的消息(例如Ping消息)檢測對端的健康狀態(tài)。一旦發(fā)現(xiàn)與對端之間的網(wǎng)絡(luò)出現(xiàn)問題,則暫停發(fā)送消息,避免在網(wǎng)絡(luò)故障時出現(xiàn)大量重發(fā)消息的堆積。5 底層承載協(xié)議的選擇

 

  CSMS接口協(xié)議是一種自定義的協(xié)議,但是自定義的部分主要是為了實現(xiàn)NP特有的業(yè)務(wù)流程,即自定義了各種消息和定時器。而從協(xié)議的網(wǎng)絡(luò)模型上看,接口協(xié)議然是構(gòu)建于一些底層的承載協(xié)議之上。CSMS接口協(xié)議的層次結(jié)構(gòu)如圖3所示。

  

 

  圖3 CSMS接口協(xié)議層次結(jié)構(gòu)

  采用以上這種協(xié)議架構(gòu),是基于CSMS接口協(xié)議的網(wǎng)絡(luò)環(huán)境決定的。CSMS接口協(xié)議需要應(yīng)用于TCP/IP的網(wǎng)絡(luò)環(huán)境之下,在此網(wǎng)絡(luò)環(huán)境下,HTTP協(xié)議具有最強(qiáng)的適應(yīng)性,可以很好地解決私網(wǎng)穿越、防火墻隔離等問題。TCP/IP(Transmission Control Protocol/Internet Protocol)的簡寫,中文譯名為傳輸控制協(xié)議/因特網(wǎng)互聯(lián)協(xié)議,又叫網(wǎng)絡(luò)通訊協(xié)議,這個協(xié)議是Internet最基本的協(xié)議、Internet國際互聯(lián)網(wǎng)絡(luò)的基礎(chǔ),簡單地說,就是由網(wǎng)絡(luò)層的IP協(xié)議和傳輸層的TCP協(xié)議組成的。TCP/IP 定義了電子設(shè)備(比如計算機(jī))如何連入因特網(wǎng),以及數(shù)據(jù)如何在它們之間傳輸?shù)臉?biāo)準(zhǔn)。TCP/IP是一個四層的分層體系結(jié)構(gòu)。高層為傳輸控制協(xié)議,它負(fù)責(zé)聚集信息或把文件拆分成更小的包。低層是網(wǎng)際協(xié)議,它處理每個包的地址部分,使這些包正確的到達(dá)目的地。

  而使用SOAP協(xié)議,簡單對象訪問協(xié)議,簡單對象訪問協(xié)議(SOAP)是一種輕量的、簡單的、基于 XML 的協(xié)議,它被設(shè)計成在 WEB 上交換結(jié)構(gòu)化的和固化的信息。 SOAP 可以和現(xiàn)存的許多因特網(wǎng)協(xié)議和格式結(jié)合使用,包括超文本傳輸協(xié)議( HTTP),簡單郵件傳輸協(xié)議(SMTP),多用途網(wǎng)際郵件擴(kuò)充協(xié)議(MIME)。它還支持從消息系統(tǒng)到遠(yuǎn)程過程調(diào)用(RPC)等大量的應(yīng)用程序。

  誠然,TCP/IP網(wǎng)絡(luò)和HTTP協(xié)議在先天上都具有可靠性不夠強(qiáng)的缺陷,但是作為主流的應(yīng)用協(xié)議,基于它們進(jìn)行協(xié)議開發(fā),能夠大大降低開發(fā)周期和開發(fā)難度,自然也就提高了協(xié)議的易用性和可維護(hù)性。而對于可靠性不高的問題,也可以通過各種提高可靠性的機(jī)制加以彌補(bǔ)。

  6 結(jié)語

  從內(nèi)部測試和試運(yùn)行的情況來看,這套協(xié)議基本達(dá)到了當(dāng)初的設(shè)計目標(biāo),能夠很好地支撐各種NP業(yè)務(wù)流程。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。