本發(fā)明涉及光通信語(yǔ)音領(lǐng)域,具體涉及一種基于分布式dsp的voip業(yè)務(wù)主備倒換系統(tǒng)及方法。
背景技術(shù):
msan(multi-serviceaccessnetwork,綜合業(yè)務(wù)接入網(wǎng))設(shè)備中實(shí)現(xiàn)voip(voiceoverinternetprotocol,網(wǎng)絡(luò)電話)業(yè)務(wù)的主備倒換時(shí),需要主控盤和業(yè)務(wù)單盤同時(shí)參與,主控盤是整個(gè)設(shè)備的核心數(shù)據(jù)轉(zhuǎn)發(fā)節(jié)點(diǎn),所有的數(shù)據(jù)均通過(guò)主控盤完成轉(zhuǎn)發(fā)。為避免單點(diǎn)故障,需要采用1+1冗余備份方式增加可靠性:當(dāng)正在工作的主控盤(即主盤)出現(xiàn)故障或者其他原因?qū)е轮貑r(shí),備用的主控盤(即備盤)立即接管業(yè)務(wù),替代原有主盤完成數(shù)據(jù)轉(zhuǎn)發(fā),保證設(shè)備上業(yè)務(wù)不被中斷。
目前voip業(yè)務(wù)一般通過(guò)voip協(xié)議軟件實(shí)現(xiàn)主備倒換,但是,在實(shí)際在倒換過(guò)程中,voip業(yè)務(wù)的媒體流難以在倒換時(shí)間內(nèi)全部發(fā)送,進(jìn)而出現(xiàn)或長(zhǎng)或短的業(yè)務(wù)中斷丟包現(xiàn)象,對(duì)于丟包敏感的voip業(yè)務(wù)(例如傳真、moden業(yè)務(wù)等)會(huì)有極大的概率出現(xiàn)倒換失敗。
技術(shù)實(shí)現(xiàn)要素:
針對(duì)現(xiàn)有技術(shù)中存在的缺陷,本發(fā)明解決的技術(shù)問(wèn)題為:如何讓主備倒換過(guò)程中媒體流完全不丟包。
為達(dá)到以上目的,本發(fā)明提供的基于分布式dsp的voip業(yè)務(wù)主備倒換系統(tǒng),包括2塊主控盤和若干塊業(yè)務(wù)單盤,每塊主控盤均包括voip協(xié)議模塊、主備通信模塊和數(shù)據(jù)轉(zhuǎn)發(fā)硬件,voip協(xié)議模塊分別與數(shù)據(jù)轉(zhuǎn)發(fā)硬件、主備通信模塊通信,2塊主控盤的主備通信模塊之間通信;每塊業(yè)務(wù)單盤中均設(shè)置有dsp芯片,每塊業(yè)務(wù)單盤的dsp芯片均與主控盤的數(shù)據(jù)轉(zhuǎn)發(fā)硬件通信;
主備通信模塊用于:檢測(cè)到另一塊主備通信模塊發(fā)送的通信信號(hào)時(shí),將所屬主控盤確定為備盤;與另一塊主備通信模塊建立通信通道;檢測(cè)另一塊主備通信模塊的通信狀態(tài),當(dāng)檢測(cè)到主盤的通信狀態(tài)異常時(shí),進(jìn)行主備倒換;
voip協(xié)議模塊用于:根據(jù)媒體流的媒體參數(shù),在所屬主控盤的數(shù)據(jù)轉(zhuǎn)發(fā)硬件上設(shè)置媒體流轉(zhuǎn)發(fā)規(guī)則,將媒體流轉(zhuǎn)發(fā)規(guī)則發(fā)送至另一塊主控盤的數(shù)據(jù)轉(zhuǎn)發(fā)硬件;在dsp芯片上設(shè)置媒體流轉(zhuǎn)發(fā)參數(shù);
數(shù)據(jù)轉(zhuǎn)發(fā)硬件用于:所屬的主控盤為主盤時(shí),設(shè)置dps芯片的通信狀態(tài)為轉(zhuǎn)發(fā)狀態(tài),所屬的主控盤為備盤時(shí),設(shè)置dps芯片的通信狀態(tài)為鎖止?fàn)顟B(tài);收到dsp芯片發(fā)送的媒體流時(shí),按照voip協(xié)議模塊設(shè)置的轉(zhuǎn)發(fā)規(guī)則,對(duì)媒體流的源mac和目的mac進(jìn)行變更后轉(zhuǎn)發(fā);收到遠(yuǎn)端設(shè)備發(fā)送的媒體流時(shí),按照voip協(xié)議模塊設(shè)置的轉(zhuǎn)發(fā)規(guī)則,對(duì)媒體流的源mac和目的mac進(jìn)行變更后,轉(zhuǎn)發(fā)至dsp芯片;
dsp芯片用于:收到媒體流時(shí),根據(jù)媒體流轉(zhuǎn)發(fā)參數(shù),將媒體流的目的mac設(shè)置為虛擬mac,源mac設(shè)置為dsp芯片的私有mac后,發(fā)送至所屬主控盤的數(shù)據(jù)轉(zhuǎn)發(fā)硬件。
本發(fā)明提供的用于上述系統(tǒng)的基于分布式dsp的voip業(yè)務(wù)主備倒換方法,包括以下步驟:
s1:2塊主控盤初始化后,向?qū)Ψ降闹鱾渫ㄐ拍K發(fā)送通信信號(hào),2塊主控盤中,先檢測(cè)通信信號(hào)的主控盤為備盤,后檢測(cè)到通信信號(hào)的主控盤為主盤,主盤和備盤的主備通信模塊建立主備通信通道,轉(zhuǎn)到s2;
s2:將主盤的數(shù)據(jù)轉(zhuǎn)發(fā)硬件與dsp芯片的通信狀態(tài)設(shè)置為轉(zhuǎn)發(fā)狀態(tài),將備盤的數(shù)據(jù)轉(zhuǎn)發(fā)硬件與dsp芯片的通信狀態(tài)設(shè)置為鎖止?fàn)顟B(tài),轉(zhuǎn)到s3;
s3:主盤的voip協(xié)議模塊據(jù)媒體流的媒體參數(shù),在數(shù)據(jù)轉(zhuǎn)發(fā)硬件上設(shè)置媒體流轉(zhuǎn)發(fā)規(guī)則;voip協(xié)議模塊將媒體流轉(zhuǎn)發(fā)規(guī)則通過(guò)主備通信通道,發(fā)送至備盤的數(shù)據(jù)轉(zhuǎn)發(fā)硬件,轉(zhuǎn)到s4;
s4:主盤的voip協(xié)議模塊在dsp芯片上設(shè)置媒體流轉(zhuǎn)發(fā)參數(shù),轉(zhuǎn)到s5;
s5:dsp芯片收到媒體流后,根據(jù)媒體流轉(zhuǎn)發(fā)參數(shù),將媒體流發(fā)送至主盤的數(shù)據(jù)轉(zhuǎn)發(fā)硬件,媒體流目的mac為主盤的虛擬mac,源mac為dsp芯片的私有mac,轉(zhuǎn)到s6;
s6:主盤的數(shù)據(jù)轉(zhuǎn)發(fā)硬件,按照s3中設(shè)置的媒體流轉(zhuǎn)發(fā)規(guī)則,對(duì)媒體流的源mac和目的mac進(jìn)行變更后轉(zhuǎn)發(fā),轉(zhuǎn)到s7;
s7:主盤的數(shù)據(jù)轉(zhuǎn)發(fā)硬件收到遠(yuǎn)端設(shè)備發(fā)送的媒體流時(shí),根據(jù)s3中設(shè)置的媒體流轉(zhuǎn)發(fā)規(guī)則,對(duì)媒體流的源mac和目的mac進(jìn)行變更后,轉(zhuǎn)發(fā)至dsp芯片,轉(zhuǎn)到s8;
s8:在執(zhí)行s3至s7的過(guò)程中,備盤的主備通信模塊檢測(cè)主盤的通信狀態(tài),當(dāng)檢測(cè)到主盤的通信狀態(tài)異常時(shí),進(jìn)行主備倒換,轉(zhuǎn)到s2。與現(xiàn)有技術(shù)相比,本發(fā)明的優(yōu)點(diǎn)在于:
本發(fā)明采用分布式dsp,即在每塊業(yè)務(wù)單盤中均設(shè)置有dsp芯片,本發(fā)明發(fā)生主備倒換時(shí),voip業(yè)務(wù)媒體流能立即切換到備用主控盤上實(shí)現(xiàn)轉(zhuǎn)發(fā),通常媒體流打包間隔在20毫秒,主備倒換時(shí)切換到備用主控由硬件完成,耗時(shí)在毫秒級(jí),可以實(shí)現(xiàn)倒換過(guò)程中媒體流完全不丟包。
因此,本發(fā)明對(duì)丟包敏感的voip業(yè)務(wù)(比如傳真,modem業(yè)務(wù)),主備倒換完全不會(huì)有影響。在信令處理平面能實(shí)現(xiàn)非穩(wěn)態(tài)voip業(yè)務(wù)倒換,進(jìn)而完美支持各種狀態(tài)下的voip業(yè)務(wù)的主備倒換。
與此同時(shí),本發(fā)明的方法也同樣適用于voip業(yè)務(wù)之外的其他業(yè)務(wù)數(shù)據(jù)平面主備倒換。
附圖說(shuō)明
圖1為本發(fā)明實(shí)施例中基于分布式dsp的voip業(yè)務(wù)主備倒換方法的工作數(shù)據(jù)流向圖。
具體實(shí)施方式
以下結(jié)合附圖及實(shí)施例對(duì)本發(fā)明作進(jìn)一步詳細(xì)說(shuō)明。
參見(jiàn)圖1所示,本發(fā)明實(shí)施例中的基于分布式dsp的voip業(yè)務(wù)主備倒換系統(tǒng),包括2塊主控盤和若干塊業(yè)務(wù)單盤,每塊主控盤均包括voip協(xié)議模塊、主備通信模塊和數(shù)據(jù)轉(zhuǎn)發(fā)硬件(本實(shí)施例中數(shù)據(jù)轉(zhuǎn)發(fā)硬件為交換芯片),voip協(xié)議模塊分別與數(shù)據(jù)轉(zhuǎn)發(fā)硬件、主備通信模塊通信,2塊主控盤的主備通信模塊之間通信。每塊業(yè)務(wù)單盤中均設(shè)置有dsp(digitalsignalprocessing,數(shù)字信號(hào)處理)芯片,每塊業(yè)務(wù)單盤的dsp芯片均與主控盤的數(shù)據(jù)轉(zhuǎn)發(fā)硬件通信。
主備通信模塊用于:
(1)檢測(cè)到另一塊主備通信模塊發(fā)送的通信信號(hào),將所屬主控盤確定為備盤,將另一塊主控盤確定為主盤;
(2)與另一塊主備通信模塊建立通信通道;
(3)檢測(cè)另一塊主備通信模塊的通信狀態(tài),當(dāng)檢測(cè)到主盤的通信狀態(tài)異常時(shí),進(jìn)行主備倒換(即將備盤變更為主盤,主盤變更為備盤)。
voip協(xié)議模塊用于:
(1)根據(jù)媒體流的媒體參數(shù)(例如本地ip和遠(yuǎn)端ip等),在所屬主控盤的數(shù)據(jù)轉(zhuǎn)發(fā)硬件上設(shè)置媒體流轉(zhuǎn)發(fā)規(guī)則,將媒體流轉(zhuǎn)發(fā)規(guī)則發(fā)送至另一塊主控盤的數(shù)據(jù)轉(zhuǎn)發(fā)硬件;
(2)在dsp芯片上設(shè)置媒體流轉(zhuǎn)發(fā)參數(shù)。
數(shù)據(jù)轉(zhuǎn)發(fā)硬件用于:
(1)所屬的主控盤為主盤時(shí),設(shè)置dps芯片的通信狀態(tài)為轉(zhuǎn)發(fā)狀態(tài),所屬的主控盤為備盤時(shí),設(shè)置dps芯片的通信狀態(tài)為鎖止?fàn)顟B(tài);
(2)收到dsp芯片發(fā)送的媒體流時(shí),按照voip協(xié)議模塊設(shè)置的轉(zhuǎn)發(fā)規(guī)則,對(duì)媒體流的源mac和目的mac進(jìn)行變更后(源mac變更為主盤的虛擬mac,目的mac變更為遠(yuǎn)端設(shè)備的mac,遠(yuǎn)端設(shè)備即為需要轉(zhuǎn)發(fā)的設(shè)備)轉(zhuǎn)發(fā);
(3)收到遠(yuǎn)端設(shè)備發(fā)送的媒體流時(shí),按照voip協(xié)議模塊設(shè)置的轉(zhuǎn)發(fā)規(guī)則,對(duì)媒體流的源mac和目的mac進(jìn)行變更后(源mac變更為主盤的虛擬mac,目的mac變更為主盤dsp芯片的私有mac),轉(zhuǎn)發(fā)至dsp芯片。
dsp芯片用于:收到媒體流時(shí),根據(jù)媒體流轉(zhuǎn)發(fā)參數(shù),將媒體流的目的mac設(shè)置為虛擬mac,源mac設(shè)置為dsp芯片的私有mac后,發(fā)送至所屬主控盤的數(shù)據(jù)轉(zhuǎn)發(fā)硬件。
參見(jiàn)圖1所示,本發(fā)明實(shí)施例中的用于上述系統(tǒng)的基于分布式dsp的voip業(yè)務(wù)主備倒換方法,包括以下步驟:
s1:2塊主控盤初始化后,向?qū)Ψ降闹鱾渫ㄐ拍K發(fā)送通信信號(hào),2塊主控盤中,先檢測(cè)通信信號(hào)的主控盤為備盤,后檢測(cè)到通信信號(hào)的主控盤為主盤,主盤和備盤的主備通信模塊建立主備通信通道,轉(zhuǎn)到s2。
s2:將主盤的數(shù)據(jù)轉(zhuǎn)發(fā)硬件與dsp芯片的通信狀態(tài)設(shè)置為轉(zhuǎn)發(fā)狀態(tài)(forward),將備盤的數(shù)據(jù)轉(zhuǎn)發(fā)硬件與dsp芯片的通信狀態(tài)設(shè)置為鎖止?fàn)顟B(tài)(block),轉(zhuǎn)到s3。
s3:主盤的voip協(xié)議模塊據(jù)媒體流的媒體參數(shù)(例如本地ip和遠(yuǎn)端ip等),在數(shù)據(jù)轉(zhuǎn)發(fā)硬件上設(shè)置媒體流轉(zhuǎn)發(fā)規(guī)則(圖1中的c1);voip協(xié)議模塊將媒體流轉(zhuǎn)發(fā)規(guī)則通過(guò)主備通信通道,發(fā)送至備盤的數(shù)據(jù)轉(zhuǎn)發(fā)硬件(圖1中的c2),轉(zhuǎn)到s4。
s4:主盤的voip協(xié)議模塊在dsp芯片上設(shè)置媒體流轉(zhuǎn)發(fā)參數(shù)(對(duì)應(yīng)圖1中的c3),轉(zhuǎn)到s5。
s5:dsp芯片收到媒體流后,根據(jù)媒體流轉(zhuǎn)發(fā)參數(shù),將媒體流發(fā)送至主盤的數(shù)據(jù)轉(zhuǎn)發(fā)硬件,媒體流目的mac(物理地址)為主盤的虛擬mac,源mac為dsp芯片的私有mac(對(duì)應(yīng)圖1中的d1),轉(zhuǎn)到s6。
s6:主盤的數(shù)據(jù)轉(zhuǎn)發(fā)硬件,按照s3中設(shè)置的媒體流轉(zhuǎn)發(fā)規(guī)則,對(duì)媒體流的源mac和目的mac進(jìn)行變更后(源mac變更為主盤的虛擬mac,目的mac變更為遠(yuǎn)端設(shè)備的mac)轉(zhuǎn)發(fā)(對(duì)應(yīng)圖1中的d2),轉(zhuǎn)到s7。
s7:主盤的數(shù)據(jù)轉(zhuǎn)發(fā)硬件收到遠(yuǎn)端設(shè)備發(fā)送的媒體流時(shí)(對(duì)應(yīng)圖1中的d2),根據(jù)s3中設(shè)置的媒體流轉(zhuǎn)發(fā)規(guī)則,對(duì)媒體流的源mac和目的mac進(jìn)行變更后(源mac變更為主盤的虛擬mac,目的mac變更為主盤dsp芯片的私有mac),轉(zhuǎn)發(fā)至dsp芯片(對(duì)應(yīng)圖1中的d1),轉(zhuǎn)到s8。
s8:在執(zhí)行s3至s7的過(guò)程中,備盤的主備通信模塊檢測(cè)主盤的通信狀態(tài),當(dāng)檢測(cè)到主盤的通信狀態(tài)異常時(shí),進(jìn)行主備倒換(即將備盤變更為主盤,主盤變更為備盤),轉(zhuǎn)到s2。
進(jìn)一步,本發(fā)明不局限于上述實(shí)施方式,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來(lái)說(shuō),在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤(rùn)飾,這些改進(jìn)和潤(rùn)飾也視為本發(fā)明的保護(hù)范圍之內(nèi)。本說(shuō)明書中未作詳細(xì)描述的內(nèi)容屬于本領(lǐng)域?qū)I(yè)技術(shù)人員公知的現(xiàn)有技術(shù)。