專利名稱:一種無線局域網(wǎng)ip組播傳輸異常的快速檢測(cè)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及無線通訊領(lǐng)域中無線局域網(wǎng)組網(wǎng)時(shí)IP組播技術(shù)業(yè)務(wù)應(yīng)用的實(shí)現(xiàn)方法,尤其涉及IEEE 802.11無線局域網(wǎng)(WLAN)傳輸IP組播幀的方法。
背景技術(shù):
無線局域網(wǎng)作為網(wǎng)絡(luò)終端的一種接入技術(shù),具備接入速度高,布線簡(jiǎn)易等優(yōu)點(diǎn),越來越被廣泛地應(yīng)用于家庭網(wǎng)絡(luò),隨著寬帶和視頻壓縮技術(shù)的不斷發(fā)展,以視頻和語音為主的多媒體在網(wǎng)絡(luò)傳輸?shù)男枨笤谘杆俚卦鲩L(zhǎng)。當(dāng)前比較流行的多媒體應(yīng)用,如視頻和語音的實(shí)時(shí)交互、IPTV(Internet Protocol TV)等應(yīng)用,均要求比較高的網(wǎng)絡(luò)帶寬支持,通過無線局域網(wǎng)技術(shù)傳輸多媒體應(yīng)用逐漸成為今后發(fā)展的一個(gè)重要方向。
傳統(tǒng)的IEEE 802.11無線局域網(wǎng)是為數(shù)據(jù)應(yīng)用設(shè)計(jì)的,對(duì)組播應(yīng)用的支持比較弱,從組播源發(fā)送一個(gè)組播報(bào)文到達(dá)無線接入點(diǎn)后,無線接入點(diǎn)將這個(gè)組播報(bào)文發(fā)送到關(guān)聯(lián)的無線客戶端,但是不屬于這個(gè)組播組并已經(jīng)關(guān)聯(lián)到這個(gè)無線接入點(diǎn)的其他無線客戶端也可以收到這個(gè)組播報(bào)文。
IEEE 802.11無線局域網(wǎng)傳輸目的地址是無線客戶端MAC地址的單播(Unicast)數(shù)據(jù)報(bào)文時(shí),無線接入點(diǎn)發(fā)送的單播報(bào)文到達(dá)無線客戶端后,接收數(shù)據(jù)的無線客戶端發(fā)送802.11確認(rèn)(ACK)幀到無線接入點(diǎn),如果接入點(diǎn)設(shè)備沒有接收到無線客戶端的ACK幀,PHY層會(huì)重傳這一幀,如果重傳次數(shù)超過預(yù)先設(shè)定的閾值,則丟棄該數(shù)據(jù)。在一個(gè)干擾比較高的802.11無線網(wǎng)絡(luò)里,802.11 ACK提供了可靠的數(shù)據(jù)傳輸機(jī)制。接入點(diǎn)設(shè)備還可以通過接收無線客戶端的802.11 ACK幀以及其他管理或數(shù)據(jù)幀,來檢測(cè)無線客戶端的信號(hào)質(zhì)量,并根據(jù)信號(hào)質(zhì)量實(shí)時(shí)調(diào)整無線客戶端的數(shù)據(jù)發(fā)送速率,進(jìn)一步可以保證數(shù)據(jù)的可靠傳輸。
IEEE 802.11無線局域網(wǎng)傳輸組播(Multicast)數(shù)據(jù)報(bào)文時(shí),802.11協(xié)議規(guī)定,負(fù)責(zé)接收組播的無線客戶端不能發(fā)送802.11 ACK幀到無線接入點(diǎn),導(dǎo)致無線接入點(diǎn)不能確定無線客戶端是否正確接收了組播幀,由于沒有802.11 ACK的確認(rèn)重傳機(jī)制以及其他可靠保證機(jī)制,組播數(shù)據(jù)的傳輸可靠性比較低。
同時(shí)由于負(fù)責(zé)接收組播的無線客戶端不發(fā)送802.11 ACK幀到無線接入點(diǎn),無線接入點(diǎn)也就不能通過發(fā)送的組播報(bào)文來檢測(cè)接收方的信號(hào)質(zhì)量。當(dāng)無線接入點(diǎn)和無線客戶端之間傳輸?shù)慕M播報(bào)文占據(jù)主要流量時(shí),由于無線接入點(diǎn)不能實(shí)時(shí)檢測(cè)接收方的信號(hào)質(zhì)量以及根據(jù)信號(hào)質(zhì)量調(diào)整無線客戶端的數(shù)據(jù)發(fā)送速率,會(huì)導(dǎo)致某個(gè)時(shí)段內(nèi)組播報(bào)文發(fā)送的誤碼率增加,組播數(shù)據(jù)傳輸?shù)目煽啃赃M(jìn)一步降低。
以IP組播為主的IPTV直播業(yè)務(wù),無線接入點(diǎn)和無線客戶端之間傳輸?shù)膯尾?bào)文較少,IP組播報(bào)文占據(jù)了主要帶寬。當(dāng)無線接入點(diǎn)與無線客戶端間的信號(hào)質(zhì)量發(fā)生變化時(shí),無線接入點(diǎn)和無線客戶端之間不能及時(shí)調(diào)整組播報(bào)文發(fā)送速率,導(dǎo)致組播報(bào)文發(fā)送誤碼率增加,同時(shí)由于無線接入點(diǎn)和無線客戶端之間的組播幀沒有確認(rèn)接收機(jī)制,組播幀的傳輸可靠性比較低,經(jīng)常出現(xiàn)播放不流暢,影響業(yè)務(wù)的開展。
無線接入點(diǎn)發(fā)送組播報(bào)文是發(fā)向所有無線客戶端,無線接入點(diǎn)為了保證所有無線客戶端都能接收到組播幀,通常無線接入點(diǎn)以最保守的數(shù)據(jù)速率發(fā)送組播幀,如802.11b通常為1Mbps,802.11a/g通常為2Mbps,但實(shí)際的帶寬比上述的組播幀數(shù)據(jù)發(fā)送速率還要低,這對(duì)于至少需要2Mbps甚至更高帶寬的多媒體應(yīng)用如IPTV業(yè)務(wù)來說,帶寬明顯不足,影響業(yè)務(wù)的正常開展。如果固定配置了比較高的組播數(shù)據(jù)發(fā)送速率,會(huì)導(dǎo)致信號(hào)質(zhì)量比較低的某些無線客戶端不能正確接收,特別是當(dāng)無線客戶端與無線接入點(diǎn)之間的距離、障礙物等環(huán)境發(fā)生變化引起的無線客戶端與無線接入點(diǎn)間的信號(hào)質(zhì)量發(fā)生變化,如果無線接入點(diǎn)與無線客戶端間的組播發(fā)送速率不能實(shí)時(shí)調(diào)整,則會(huì)出現(xiàn)較高的組播發(fā)送誤碼率,導(dǎo)致無線客戶端不能正確接收組播報(bào)文。因此需要增加組播的發(fā)送速率以提高帶寬,組播發(fā)送速率必須支持可實(shí)時(shí)調(diào)整。
在實(shí)際應(yīng)用中,由于無線物理層重傳機(jī)制的影響,如果發(fā)送到一個(gè)客戶端的數(shù)據(jù)出現(xiàn)過多的重傳,將導(dǎo)致其他客戶端的數(shù)據(jù)不能被發(fā)送,因此針對(duì)實(shí)時(shí)性要求較高業(yè)務(wù),無線接入設(shè)備必須能夠快速檢測(cè)出異??蛻舳耍⑦M(jìn)行處理,保證在一個(gè)客戶端出現(xiàn)異常不能影響其他客戶端。通常的做法是設(shè)置一個(gè)老化時(shí)間,譬如5分鐘,如果5分鐘內(nèi)客戶端和無線接入點(diǎn)之間沒有數(shù)據(jù)交互,就認(rèn)為客戶端異常。但是這種做法不能實(shí)時(shí)檢測(cè),反應(yīng)速度較慢。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題是提供一種無線局域網(wǎng)IP組播傳輸異常的快速檢測(cè)方法,可以快速檢測(cè)出異常的客戶端,避免不必要的數(shù)據(jù)重傳,提高IP組播傳輸?shù)目煽啃浴?br>
為了解決上述技術(shù)問題,本發(fā)明提供了一種無線局域網(wǎng)IP組播傳輸異常的快速檢測(cè)方法,報(bào)文發(fā)送時(shí)的處理包括(a)無線接入設(shè)備收到數(shù)據(jù)包,對(duì)所述數(shù)據(jù)包的目標(biāo)無線客戶端鑒權(quán)通過后,根據(jù)該目標(biāo)客戶端允許向無線接入設(shè)備硬件緩沖區(qū)送入的報(bào)文數(shù)目判斷,若該目標(biāo)客戶端允許向所述硬件緩沖區(qū)送入報(bào)文,則將該數(shù)據(jù)包送入所述硬件緩沖區(qū),否則,丟棄所述數(shù)據(jù)包;發(fā)送回調(diào)時(shí)的處理包括(b)數(shù)據(jù)發(fā)送完成后,無線接入設(shè)備若判斷該數(shù)據(jù)包發(fā)送失敗,記錄連續(xù)發(fā)送失敗次數(shù),減小該目標(biāo)客戶端允許向無線接入設(shè)備硬件緩沖區(qū)送入的報(bào)文數(shù)目,若判斷該數(shù)據(jù)包發(fā)送成功,則增加該目標(biāo)客戶端允許向無線接入設(shè)備硬件緩沖區(qū)送入的報(bào)文數(shù)目;當(dāng)連續(xù)發(fā)送的錯(cuò)誤次數(shù)達(dá)到了預(yù)先設(shè)定的最大數(shù)值,則認(rèn)定客戶端異常。
進(jìn)一步地,上述方法還可具有以下特點(diǎn)在所述步驟(a)中,所述根據(jù)該目標(biāo)客戶端允許向無線接入設(shè)備硬件緩沖區(qū)送入的報(bào)文數(shù)目,判斷該目標(biāo)客戶端允許向所述硬件緩沖區(qū)送入報(bào)文是指,所述目標(biāo)客戶端允許送入所述硬件緩沖區(qū)的報(bào)文數(shù)目的最大值不為零,且所述目標(biāo)客戶端在所述硬件緩沖區(qū)中沒有報(bào)文。
進(jìn)一步地,上述方法還可具有以下特點(diǎn)如果所述目標(biāo)客戶端允許送入所述硬件緩沖區(qū)的報(bào)文數(shù)目的最大值為零,且所述目標(biāo)客戶端在所述硬件緩沖區(qū)中沒有報(bào)文,則將該數(shù)據(jù)包送入所述硬件緩沖區(qū)。
進(jìn)一步地,上述方法還可具有以下特點(diǎn)如果所述目標(biāo)客戶端允許送入所述硬件緩沖區(qū)的報(bào)文數(shù)目的最大值不為零,且所述目標(biāo)客戶端在所述硬件緩沖區(qū)中的報(bào)文數(shù)據(jù)小于該目標(biāo)客戶端允許送入所述硬件緩沖區(qū)的報(bào)文數(shù)目的最大值,則將該數(shù)據(jù)包送入所述硬件緩沖區(qū)。
進(jìn)一步地,上述方法還可具有以下特點(diǎn)如果所述目標(biāo)客戶端允許送入所述硬件緩沖區(qū)的報(bào)文數(shù)目的最大值不為零,且所述目標(biāo)客戶端在所述硬件緩沖區(qū)中的報(bào)文數(shù)據(jù)小于該目標(biāo)客戶端允許送入所述硬件緩沖區(qū)的報(bào)文數(shù)目的最大值,則判斷當(dāng)前發(fā)送時(shí)間與上次發(fā)送失敗時(shí)間之差是否小于設(shè)定的閾值,如果是則丟棄該數(shù)據(jù)包,否則將該數(shù)據(jù)包送入所述硬件緩沖區(qū)。
進(jìn)一步地,上述方法還可具有以下特點(diǎn)在所述步驟(b)中,所述增加該目標(biāo)客戶端允許向無線接入設(shè)備硬件緩沖區(qū)送入的報(bào)文數(shù)目是指,將該客戶端允許送入緩沖區(qū)的最大報(bào)文數(shù)目調(diào)整為,當(dāng)前允許的最大報(bào)文數(shù)目加倍后的數(shù)值與緩沖區(qū)最大長(zhǎng)度之間的最小值。
進(jìn)一步地,上述方法還可具有以下特點(diǎn)在所述步驟(b)中,所述減小該目標(biāo)客戶端允許向無線接入設(shè)備硬件緩沖區(qū)送入的報(bào)文數(shù)目是指,將該客戶端允許送入緩沖區(qū)的最大報(bào)文數(shù)目直接調(diào)整為零,或者將該客戶端允許送入緩沖區(qū)的最大報(bào)文數(shù)目調(diào)整為當(dāng)前允許的最大報(bào)文數(shù)目減半后的數(shù)值與緩沖區(qū)最大長(zhǎng)度之間的最小值。
進(jìn)一步地,上述方法還可具有以下特點(diǎn)在所述步驟(b)中,認(rèn)定客戶端異常后,則斷開與客戶端的連接。
采用本發(fā)明所述方法,使得在以IEEE 802.11a/b/g標(biāo)準(zhǔn)以及下一代無線標(biāo)準(zhǔn)IEEE 802.11n組建的無線局域網(wǎng)產(chǎn)品中,能夠快速檢測(cè)出異??蛻舳?,避免對(duì)其他客戶的影響,克服了IEEE 802.11傳輸組播報(bào)文可靠性差的缺陷,保證了以IP組播技術(shù)為主的視頻直播業(yè)務(wù)在無線局域網(wǎng)產(chǎn)品的可靠應(yīng)用,極大地拓展了無線局域網(wǎng)產(chǎn)品的應(yīng)用范圍,促進(jìn)無線局域網(wǎng)IP組播業(yè)務(wù)應(yīng)用的發(fā)展。
圖1為本發(fā)明IP組播傳輸設(shè)備圖;圖2為本發(fā)明IP組播傳輸系統(tǒng)應(yīng)用圖;圖3為本發(fā)明IP組播傳輸?shù)姆桨改K圖;圖4為本發(fā)明IP組播傳輸?shù)膽?yīng)用示例圖;圖5為本實(shí)施例異常客戶端檢測(cè)報(bào)文發(fā)送流程圖;圖6為本實(shí)施例異??蛻舳藱z測(cè)報(bào)文發(fā)送回調(diào)處理流程圖。
具體實(shí)施例方式
如圖1所示,傳輸IP組播的無線接入點(diǎn)設(shè)備由無線接口模塊、組播成員管理模塊、上行接口模塊、802.1d橋接模塊、IP路由模塊、協(xié)議應(yīng)用模塊和配置管理模塊組成。設(shè)備的無線接口模塊接收的報(bào)文經(jīng)802.1d橋接模塊或IP路由模塊轉(zhuǎn)發(fā)到上行接口模塊,上行接口模塊接收的報(bào)文經(jīng)802.1d橋接模塊或IP路由模塊轉(zhuǎn)發(fā)到無線接口模塊。當(dāng)無線接口模塊或上行接口模塊接收到IGMP(Internet組管理協(xié)議)報(bào)文或IP組播報(bào)文時(shí)則送由組播成員管理模塊處理組播成員管理模塊處理從無線接口模塊接收的IGMP報(bào)文,維護(hù)組播成員列表;上行接口模塊接收的IP組播報(bào)文經(jīng)802.1d橋接模塊或IP路由模塊,進(jìn)一步轉(zhuǎn)發(fā)到組播成員管理模塊處理,由組播成員管理模塊將IP組播報(bào)文轉(zhuǎn)發(fā)到無線接口模塊。其中無線接口模塊,包括無線驅(qū)動(dòng)模塊以及硬件接口,其中無線驅(qū)動(dòng)模塊用于接收和發(fā)送無線接入點(diǎn)和無線客戶端間的802.11管理和數(shù)據(jù)幀,并依據(jù)與無線客戶端交互的802.11幀實(shí)時(shí)檢測(cè)無線接入點(diǎn)和無線客戶端的連接信號(hào)質(zhì)量,實(shí)時(shí)調(diào)整和確定無線接入點(diǎn)發(fā)送到無線客戶端的“最佳單播報(bào)文發(fā)送速率”及“最佳廣播報(bào)文發(fā)送速率”;
組播成員管理模塊,用于維護(hù)組播成員列表以及記錄組播成員無線客戶端的MAC地址信息,還負(fù)責(zé)接收和轉(zhuǎn)發(fā)組播源與組播成員無線客戶端間的IP組播報(bào)文;802.1d橋接模塊和IP路由模塊,用于報(bào)文選路和轉(zhuǎn)發(fā)報(bào)文;上行接口模塊,包括驅(qū)動(dòng)和上行硬件接口,用于連接外部網(wǎng)絡(luò),如Internet的接口,可通過連接DSLAM、交換機(jī)、BRAS等設(shè)備間接連接到Internet,所述上行接口可以是以太網(wǎng)接口、xDSL接口、xPON等接口;設(shè)備的協(xié)議應(yīng)用模塊和配置管理模塊用于完成各種協(xié)議和上層應(yīng)用,以及本地或遠(yuǎn)程的配置管理。
IP組播傳輸系統(tǒng)應(yīng)用如圖2所示,在IP組播傳輸?shù)膽?yīng)用系統(tǒng)中至少包括無線客戶端、無線接入點(diǎn)、分布系統(tǒng)(DS)以及組播源。無線客戶端需要請(qǐng)求加入或離開組播源的某個(gè)組播組時(shí),無線客戶端發(fā)送的IGMP(互聯(lián)網(wǎng)組管理協(xié)議)報(bào)文經(jīng)無線接入點(diǎn)發(fā)送到組播源,無線接入點(diǎn)將無線客戶端加入到這個(gè)組播組。組播源發(fā)送某個(gè)IP組播報(bào)文給組播組的成員時(shí),組播源發(fā)送的IP組播報(bào)文經(jīng)無線接入點(diǎn)發(fā)送給組播組的成員無線客戶端,完成IP組播的傳輸。
其中組播源,用于發(fā)送IP組播報(bào)文;分布系統(tǒng),用于連接無線接入點(diǎn)與組播源;一個(gè)或多個(gè)無線接入點(diǎn),用于將IP組播報(bào)文處理為單播報(bào)文并發(fā)送給無線客戶端,以及處理無線客戶端發(fā)出的加入或離開組播組的請(qǐng)求信息;一個(gè)或多個(gè)無線客戶端,是使用組播業(yè)務(wù)的用戶,可以向無線接入點(diǎn)發(fā)出加入或離開組播組的請(qǐng)求。
如圖3所示,在實(shí)現(xiàn)本方案所述的高速可靠傳輸組播報(bào)文的無線接入點(diǎn)內(nèi),包括無線驅(qū)動(dòng)模塊、組播成員管理模塊。在無線驅(qū)動(dòng)模塊中針對(duì)每個(gè)無線客戶端都保存有一個(gè)最佳單播報(bào)文發(fā)送速率,當(dāng)每個(gè)無線客戶端新接入到無線接入點(diǎn)時(shí),無線驅(qū)動(dòng)模塊確定該無線客戶端的“最佳單播報(bào)文發(fā)送速率”,或者當(dāng)無線客戶端的“最佳單播報(bào)文發(fā)送速率”實(shí)時(shí)發(fā)生變化時(shí),無線驅(qū)動(dòng)模塊在所有客戶端中選擇最小的“最佳單播報(bào)文發(fā)送速率”值,作為無線接入點(diǎn)發(fā)送其他廣播組播報(bào)文(即非IP組播報(bào)文)到每個(gè)無線客戶端的“最佳廣播報(bào)文發(fā)送速率”,所述“最佳廣播報(bào)文發(fā)送速率”也可稱為“最佳組播報(bào)文發(fā)送速率”,是所有客戶端共用的速率。
組播成員列表,記錄組播組以及組播組的成員無線客戶端信息,每個(gè)組播組有一張組播成員列表,由組播成員管理模塊動(dòng)態(tài)維護(hù),可以存儲(chǔ)在組播成員管理模塊內(nèi),其中無線客戶端信息包括無線客戶端的MAC地址信息。
在具體應(yīng)用中如圖4所示。在以IEEE 802.11a/b/g標(biāo)準(zhǔn)以及下一代無線標(biāo)準(zhǔn)IEEE 802.11n組建的無線局域網(wǎng)產(chǎn)品中,無線接入點(diǎn)設(shè)備接入多個(gè)無線客戶端STA。無線客戶端向無線接入點(diǎn)發(fā)送IGMP組播加入報(bào)文IGMPReport請(qǐng)求加入某個(gè)IP組播組,或者無線客戶端向無線接入點(diǎn)發(fā)送IGMP組播離開報(bào)文IGMP Leave請(qǐng)求離開某個(gè)IP組播組。無線接入點(diǎn)的組播成員管理模塊從無線驅(qū)動(dòng)模塊接收到無線客戶端的IGMP組播加入或離開報(bào)文,動(dòng)態(tài)維護(hù)組播成員列表以及無線客戶端的MAC(介質(zhì)訪問控制)地址等信息。
在現(xiàn)有的IEEE 802.11a/b/g無線局域網(wǎng)網(wǎng)絡(luò)以及下一代無線標(biāo)準(zhǔn)IEEE802.11n無線局域網(wǎng)網(wǎng)絡(luò)內(nèi),IP組播報(bào)文的傳輸方法包括以下步驟步驟110,從組播源發(fā)出的IP組播報(bào)文到達(dá)無線接入點(diǎn);步驟120,無線接入點(diǎn)中的組播成員管理模塊查找組播成員列表,判斷該IP組播報(bào)文對(duì)應(yīng)的組播組在組播成員列表內(nèi)是否有組播成員無線客戶端,如果有,則執(zhí)行下一步,否則,丟棄該IP組播報(bào)文;步驟130,組播成員管理模塊將IP組播報(bào)文進(jìn)行組播報(bào)文轉(zhuǎn)單播報(bào)文的處理,將IP組播報(bào)文的組播目的地址替換成該組播組中成員無線客戶端的MAC地址;如果無線客戶端有多個(gè),則將IP組播報(bào)文的目的MAC地址依次替換為組播組中各無線客戶端的MAC地址,每替換一次地址發(fā)送一次,直到向組播組中所有成員無線客戶端全部發(fā)送完畢。
步驟140,組播成員管理模塊將該IP組播報(bào)文以單播報(bào)文的形式轉(zhuǎn)發(fā)到無線驅(qū)動(dòng)模塊;步驟150,無線驅(qū)動(dòng)模塊向組播組中的成員無線客戶端發(fā)送IP組播報(bào)文;如果無線驅(qū)動(dòng)模塊發(fā)送的報(bào)文目的地址是無線客戶端的MAC地址,則依據(jù)各無線客戶端的“最佳單播報(bào)文發(fā)送速率”發(fā)送到無線客戶端,無線接入設(shè)備事先根據(jù)接收的無線客戶端的802.11報(bào)文確定最佳單播報(bào)文發(fā)送速率。
步驟160,無線客戶端收到報(bào)文后返回確認(rèn)消息。
無線接入點(diǎn)接收無線客戶端的802.11確認(rèn)幀(ACK)保證數(shù)據(jù)的可靠傳輸。
其他進(jìn)入無線接入點(diǎn)的廣播(Broadcast)類型數(shù)據(jù)報(bào)文和非IP組播的多播(Multicast)類型數(shù)據(jù)報(bào)文,不需要交給組播成員管理模塊,直接交給無線驅(qū)動(dòng)模塊發(fā)送。無線驅(qū)動(dòng)模塊發(fā)送的廣播和其他組播報(bào)文,以“最佳廣播報(bào)文發(fā)送速率”發(fā)送。
與通常無線接入點(diǎn)以最保守的數(shù)據(jù)速率發(fā)送組播幀(如802.11b通常為1Mbps,802.11a/g通常為2Mbps)相比,當(dāng)每個(gè)無線客戶端的“最佳單播報(bào)文發(fā)送速率”都高于最保守的數(shù)據(jù)速率,也就是“最佳廣播報(bào)文發(fā)送速率”高于最保守的數(shù)據(jù)速率時(shí),可以提高組播報(bào)文的發(fā)送速率。
以IEEE 802.11a/b/g標(biāo)準(zhǔn)以及下一代無線標(biāo)準(zhǔn)IEEE 802.11n的無線局域網(wǎng)產(chǎn)品中,無線局域網(wǎng)接入點(diǎn)設(shè)備通過將IP組播轉(zhuǎn)換為無線客戶端單播MAC地址報(bào)文的方法,組播源發(fā)送到無線接入點(diǎn)的IP組播報(bào)文可以分別發(fā)送到IP組播對(duì)應(yīng)的組播組成員無線客戶端,不同組播組間的報(bào)文互相不影響,同時(shí)由于報(bào)文是以單播報(bào)文送達(dá)的無線客戶端,其速率和可靠性達(dá)到單播報(bào)文的性能和可靠性指標(biāo),保證了以IP組播技術(shù)為主的視頻直播業(yè)務(wù)在無線局域網(wǎng)產(chǎn)品的可靠應(yīng)用。
在現(xiàn)有的IEEE 802.11a/b/g無線局域網(wǎng)網(wǎng)絡(luò)以及下一代無線標(biāo)準(zhǔn)IEEE802.11n無線局域網(wǎng)網(wǎng)絡(luò)內(nèi),實(shí)現(xiàn)IP組播傳輸異??焖贆z測(cè)的技術(shù)方案分為數(shù)據(jù)發(fā)送和發(fā)送回調(diào)處理兩個(gè)部分。當(dāng)報(bào)文發(fā)送時(shí),無線接入設(shè)備收到數(shù)據(jù)包,對(duì)所述數(shù)據(jù)包的目標(biāo)無線客戶端鑒權(quán)通過后,根據(jù)該目標(biāo)客戶端允許向無線接入設(shè)備硬件緩沖區(qū)送入的報(bào)文數(shù)目判斷,若該目標(biāo)客戶端允許向所述硬件緩沖區(qū)送入報(bào)文,則將該數(shù)據(jù)包送入所述硬件緩沖區(qū),否則,丟棄所述數(shù)據(jù)包;當(dāng)發(fā)送回調(diào)時(shí),無線接入設(shè)備若判斷該數(shù)據(jù)包發(fā)送失敗,則減小該目標(biāo)客戶端允許向無線接入設(shè)備硬件緩沖區(qū)送入的報(bào)文數(shù)目。
首先初始化判別準(zhǔn)則參數(shù),每個(gè)客戶端都有如下這些參數(shù)。
當(dāng)前發(fā)送時(shí)間Current_time,表示當(dāng)前數(shù)據(jù)包(報(bào)文)放入無線接入設(shè)備硬件緩沖區(qū)的時(shí)間;上次發(fā)送失敗時(shí)間Time_i,表示第i個(gè)客戶端上次數(shù)據(jù)包發(fā)送失敗的時(shí)間;連續(xù)發(fā)送錯(cuò)誤值Tx_err_i,第i個(gè)客戶端連續(xù)發(fā)送失敗的數(shù)據(jù)包個(gè)數(shù);緩沖區(qū)報(bào)文數(shù)目PKT_i,第i個(gè)客戶端在硬件隊(duì)列中數(shù)據(jù)包的個(gè)數(shù);允許最大報(bào)文數(shù)目MAX_PKT_i,第i個(gè)客戶端允許硬件隊(duì)列中數(shù)據(jù)包個(gè)數(shù)的最大值;連續(xù)失敗時(shí)間閾值Min_time_gap,客戶端允許連續(xù)兩次發(fā)送失敗的時(shí)間差的最大值,例如,客戶端的第i個(gè)數(shù)據(jù)包出現(xiàn)錯(cuò)誤的時(shí)刻是Ti,第j(j>i)個(gè)數(shù)據(jù)包在被放入硬件緩沖隊(duì)列時(shí)刻是Tj,i到j(luò)之間的數(shù)據(jù)包沒有出現(xiàn)發(fā)送錯(cuò)誤,我們檢查Tj與Ti的時(shí)間差,這個(gè)時(shí)間差不能小于Min_time_gap;連續(xù)失敗閾值Max_allow_err,客戶端允許連續(xù)發(fā)送失敗次數(shù)的最大值;隊(duì)列最大長(zhǎng)度MAX_TX_QUEUE_LEN,硬件緩沖區(qū)中所有數(shù)據(jù)包的個(gè)數(shù)。
報(bào)文發(fā)送處理流程,如圖5所示,包括以下步驟步驟5-1,無線接入設(shè)備收到數(shù)據(jù)包后,判斷該數(shù)據(jù)包的目標(biāo)無線客戶端是否關(guān)聯(lián)(即是否有權(quán)限訪問網(wǎng)絡(luò)),如果沒有關(guān)聯(lián)則丟棄數(shù)據(jù),否則,執(zhí)行步驟5-2;步驟5-2,判斷該目標(biāo)客戶端允許送入硬件緩沖區(qū)的報(bào)文數(shù)目的最大值MAX_PKT_i是否為0,如果是,執(zhí)行步驟5-3,否則,執(zhí)行步驟5-4;步驟5-3,根據(jù)該目標(biāo)客戶端在硬件緩沖區(qū)中報(bào)文數(shù)目PKT_i判斷硬件緩沖區(qū)中有是否有報(bào)文,如果有,則丟棄當(dāng)前數(shù)據(jù),否則,將當(dāng)前數(shù)據(jù)送到硬件緩沖區(qū),將PKT_i值加1,等待發(fā)送數(shù)據(jù);在另一實(shí)施例中,在步驟5-2判斷MAX_PKT_i為零后,也可直接丟棄數(shù)據(jù)包,而不進(jìn)行步驟5-3的判斷,那么以后發(fā)往該客戶端的數(shù)據(jù)包都會(huì)被丟棄,只有該客戶端重新連接后才能接收到數(shù)據(jù)包。
步驟5-4,判斷該目標(biāo)客戶端在硬件緩沖區(qū)中報(bào)文數(shù)目PKT_i是否小于允許的報(bào)文數(shù)目的最大值MAX_PKT_i,如果是,執(zhí)行下一步,否則,則丟棄數(shù)據(jù);步驟5-5,比較當(dāng)前發(fā)送時(shí)間Current_time與上次發(fā)送失敗時(shí)間Time_i,如果時(shí)間差小于設(shè)定的閾值Min_time_gap,則丟棄數(shù)據(jù)包,否則將數(shù)據(jù)包送入硬件緩沖區(qū),將PKT_i值加1;在另一實(shí)施例中,也可不進(jìn)行時(shí)間差的比較,而直接將數(shù)據(jù)包送入硬件緩沖區(qū),將PKT_i值加1。
數(shù)據(jù)發(fā)送回調(diào)處理(硬件完成發(fā)送后的回調(diào),用于通知上層數(shù)據(jù)包發(fā)送情況,包括成功失敗等等),如圖6所示步驟6-1,數(shù)據(jù)發(fā)送完成后,無線接入設(shè)備將硬件緩沖區(qū)報(bào)文數(shù)目PKT_i減1;步驟6-2,無線接入設(shè)備判斷物理層是否正常發(fā)送數(shù)據(jù),如果是,復(fù)位發(fā)送錯(cuò)誤統(tǒng)計(jì)數(shù)值Tx_err_i,同時(shí)將允許送入硬件緩沖區(qū)的數(shù)值MAX_PKT_i調(diào)大,等待下一次發(fā)送回調(diào),否則,執(zhí)行下一步;可以將緩沖區(qū)允許的最大報(bào)文數(shù)目調(diào)整為MIN(MAX_PKY_i*2,AX_TX_QUEUE_LEN),即允許最大報(bào)文數(shù)目MAX_PKY_i乘2與緩沖區(qū)最大長(zhǎng)度二者之間的最小值。
步驟6-3,將數(shù)據(jù)發(fā)送錯(cuò)誤統(tǒng)計(jì)值Tx_err_i加1;步驟6-4,將緩沖區(qū)中允許的最大報(bào)文數(shù)目MAX_PKT_i與1相比較,如果小于等于1則執(zhí)行步驟6-5,否則執(zhí)行步驟6-6;比較的目的是將MAX_PKT_i調(diào)整為零,在其他實(shí)施例中,也可以和其他數(shù)值進(jìn)行比較,如果MAX_PKT_i不從零開始記,則也可將其調(diào)整為其他數(shù)值,便于數(shù)據(jù)發(fā)送時(shí)進(jìn)行判斷。
步驟6-5,設(shè)置緩沖區(qū)中允許的最大報(bào)文數(shù)目MAX_PKT_i為零,執(zhí)行步驟6-7;步驟6-6,將緩沖區(qū)中允許的最大報(bào)文數(shù)目MAX_PKT_i調(diào)小,執(zhí)行步驟6-7;可以將允許的最大報(bào)文數(shù)目MAX_PKT_i調(diào)整為MUIN(MAX_PKT_i/2,1),即減半后的允許的最大報(bào)文數(shù)目與1二者的最小值。
步驟6-7,記錄當(dāng)前數(shù)據(jù)發(fā)送失敗的時(shí)間Time_i;步驟6-8,判斷連續(xù)發(fā)送的錯(cuò)誤次數(shù)Tx_err_i是否達(dá)到了預(yù)先設(shè)定的最大數(shù)值Max_allow_err,如果是,則斷開與客戶端的連接,否則等待下一次發(fā)送回調(diào)。
斷開與客戶端的連接后,無線接入點(diǎn)設(shè)備中的無線驅(qū)動(dòng)模塊會(huì)通知組播管理模塊從組播成員列表中刪除該客戶端。
本發(fā)明在數(shù)據(jù)交互過程中,根據(jù)無線網(wǎng)絡(luò)鏈路狀況來檢測(cè),并且采用了反應(yīng)靈敏的數(shù)值調(diào)節(jié)方法,因此能夠在極短的時(shí)間內(nèi)發(fā)現(xiàn)客戶端發(fā)生異常,避免過多的重傳。
本方法克服了IEEE 802.11傳輸IP組播報(bào)文帶寬低可靠性差的缺陷,極大地拓展了無線局域網(wǎng)產(chǎn)品的應(yīng)用,特別是以IP組播技術(shù)為主的視頻直播業(yè)務(wù)在無線局域網(wǎng)產(chǎn)品的應(yīng)用,為無線局域網(wǎng)產(chǎn)品在家庭網(wǎng)絡(luò)的普及與發(fā)展提供了有力的保證。
權(quán)利要求
1.一種無線局域網(wǎng)IP組播傳輸異常的快速檢測(cè)方法,報(bào)文發(fā)送時(shí)的處理包括(a)無線接入設(shè)備收到數(shù)據(jù)包,對(duì)所述數(shù)據(jù)包的目標(biāo)無線客戶端鑒權(quán)通過后,根據(jù)該目標(biāo)客戶端允許向無線接入設(shè)備硬件緩沖區(qū)送入的報(bào)文數(shù)目判斷,若該目標(biāo)客戶端允許向所述硬件緩沖區(qū)送入報(bào)文,則將該數(shù)據(jù)包送入所述硬件緩沖區(qū),否則,丟棄所述數(shù)據(jù)包;發(fā)送回調(diào)時(shí)的處理包括(b)數(shù)據(jù)發(fā)送完成后,無線接入設(shè)備若判斷該數(shù)據(jù)包發(fā)送失敗,記錄連續(xù)發(fā)送失敗次數(shù),減小該目標(biāo)客戶端允許向無線接入設(shè)備硬件緩沖區(qū)送入的報(bào)文數(shù)目,若判斷該數(shù)據(jù)包發(fā)送成功,則增加該目標(biāo)客戶端允許向無線接入設(shè)備硬件緩沖區(qū)送入的報(bào)文數(shù)目;當(dāng)連續(xù)發(fā)送的錯(cuò)誤次數(shù)達(dá)到了預(yù)先設(shè)定的最大數(shù)值,則認(rèn)定客戶端異常。
2.如權(quán)利要求1所述方法,其特征在于,在所述步驟(a)中,所述根據(jù)該目標(biāo)客戶端允許向無線接入設(shè)備硬件緩沖區(qū)送入的報(bào)文數(shù)目,判斷該目標(biāo)客戶端允許向所述硬件緩沖區(qū)送入報(bào)文是指,所述目標(biāo)客戶端允許送入所述硬件緩沖區(qū)的報(bào)文數(shù)目的最大值不為零,且所述目標(biāo)客戶端在所述硬件緩沖區(qū)中沒有報(bào)文。
3.如權(quán)利要求2所述方法,其特征在于,如果所述目標(biāo)客戶端允許送入所述硬件緩沖區(qū)的報(bào)文數(shù)目的最大值為零,且所述目標(biāo)客戶端在所述硬件緩沖區(qū)中沒有報(bào)文,則將該數(shù)據(jù)包送入所述硬件緩沖區(qū)。
4.如權(quán)利要求2所述方法,其特征在于,如果所述目標(biāo)客戶端允許送入所述硬件緩沖區(qū)的報(bào)文數(shù)目的最大值不為零,且所述目標(biāo)客戶端在所述硬件緩沖區(qū)中的報(bào)文數(shù)據(jù)小于該目標(biāo)客戶端允許送入所述硬件緩沖區(qū)的報(bào)文數(shù)目的最大值,則將該數(shù)據(jù)包送入所述硬件緩沖區(qū)。
5.如權(quán)利要求4所述方法,其特征在于,如果所述目標(biāo)客戶端允許送入所述硬件緩沖區(qū)的報(bào)文數(shù)目的最大值不為零,且所述目標(biāo)客戶端在所述硬件緩沖區(qū)中的報(bào)文數(shù)據(jù)小于該目標(biāo)客戶端允許送入所述硬件緩沖區(qū)的報(bào)文數(shù)目的最大值,則判斷當(dāng)前發(fā)送時(shí)間與上次發(fā)送失敗時(shí)間之差是否小于設(shè)定的閾值,如果是則丟棄該數(shù)據(jù)包,否則將該數(shù)據(jù)包送入所述硬件緩沖區(qū)。
6.如權(quán)利要求1所述方法,其特征在于,在所述步驟(b)中,所述增加該目標(biāo)客戶端允許向無線接入設(shè)備硬件緩沖區(qū)送入的報(bào)文數(shù)目是指,將該客戶端允許送入緩沖區(qū)的最大報(bào)文數(shù)目調(diào)整為,當(dāng)前允許的最大報(bào)文數(shù)目加倍后的數(shù)值與緩沖區(qū)最大長(zhǎng)度之間的最小值。
7.如權(quán)利要求1所述方法,其特征在于,在所述步驟(b)中,所述減小該目標(biāo)客戶端允許向無線接入設(shè)備硬件緩沖區(qū)送入的報(bào)文數(shù)目是指,將該客戶端允許送入緩沖區(qū)的最大報(bào)文數(shù)目直接調(diào)整為零,或者將該客戶端允許送入緩沖區(qū)的最大報(bào)文數(shù)目調(diào)整為當(dāng)前允許的最大報(bào)文數(shù)目減半后的數(shù)值與緩沖區(qū)最大長(zhǎng)度之間的最小值。
8.如權(quán)利要求1所述方法,其特征在于,在所述步驟(b)中,認(rèn)定客戶端異常后,斷開與客戶端的連接。
全文摘要
無線局域網(wǎng)IP組播傳輸異常的快速檢測(cè)方法,可以快速檢測(cè)出異常的客戶端,避免不必要的數(shù)據(jù)重傳,提高IP組播傳輸?shù)目煽啃?。?bào)文發(fā)送時(shí)的處理包括(a)無線接入設(shè)備收到數(shù)據(jù)包,對(duì)所述數(shù)據(jù)包的目標(biāo)無線客戶端鑒權(quán)通過后,根據(jù)該目標(biāo)客戶端允許向無線接入設(shè)備硬件緩沖區(qū)送入的報(bào)文數(shù)目判斷,若該目標(biāo)客戶端允許向所述硬件緩沖區(qū)送入報(bào)文,則將該數(shù)據(jù)包送入所述硬件緩沖區(qū),否則,丟棄所述數(shù)據(jù)包;發(fā)送回調(diào)時(shí)的處理包括(b)數(shù)據(jù)發(fā)送完成后,無線接入設(shè)備若判斷該數(shù)據(jù)包發(fā)送失敗,記錄連續(xù)發(fā)送失敗次數(shù),減小該目標(biāo)客戶端允許向無線接入設(shè)備硬件緩沖區(qū)送入的報(bào)文數(shù)目;當(dāng)連續(xù)發(fā)送的錯(cuò)誤次數(shù)達(dá)到了預(yù)先設(shè)定的最大數(shù)值,則認(rèn)定客戶端異常。
文檔編號(hào)H04L12/26GK1937519SQ200610159659
公開日2007年3月28日 申請(qǐng)日期2006年9月30日 優(yōu)先權(quán)日2006年9月30日
發(fā)明者孫旺強(qiáng), 劉鵬午, 王占利 申請(qǐng)人:中興通訊股份有限公司