專利名稱:一種控制軟件通道堵塞的方法及系統的制作方法
技術領域:
本發明屬于網絡通信領域,尤其涉及一種控制軟件通道堵塞的方法及系統。
背景技術:
目前,網絡處理器接收數據包后,直接發送給服務器,服務器根據接收的數據包建立軟件通道。當服務器建立軟件通道后,如果軟件通道發生通道堵塞的狀態,會嚴重影響數據傳輸效率。
發明內容
本發明提供一種控制軟件通道堵塞的方法及系統,以解決上述問題。本發明提供一種控制軟件通道堵塞的方法。上述方法包括以下步驟:網絡處理器接收數據包,并將數據包傳輸至服務器;服務器將數據包分配至相應的軟件通道;若軟件通道堵塞時,服務器將不同類型的數據包及對應的軟件通道信息通知控制器,控制器根據預設策略確定目標軟件通道,并通知服務器,服務器將軟件通道傳輸的數據包遷移至目標軟件通道。其中,預設策略為:每個軟件通道針對待傳輸的不同類型的數據包設置不同的借用接受度,且所有軟件通道針對相同的數據包類型的借用接受度相同,若某個軟件通道堵塞時,根據除了堵塞的軟件通道之外的軟件通道針對堵塞的軟件通道傳輸的數據包類型的借用接受度,確定相應的目標軟件通道。本發明還提供一種控制軟件通道堵塞的系統,包括網絡處理器、服務器及控制器。網絡處理器連接服務器及控制器,控制器連接服務器。網絡處理器,用于接收數據包,并將數據包傳輸至服務器。服務器,用于將數據包分配至相應的軟件通道。若軟件通道堵塞時,服務器,用于將不同類型的數據包及對應的軟件通道信息通知控制器,控制器根據預設策略確定目標軟件通道,并通知服務器,服務器將軟件通道傳輸的數據包遷移至目標軟件通道。其中,預設策略為:每個軟件通道針對待傳輸的不同類型的數據包設置不同的借用接受度,且所有軟件通道針對相同的數據包類型的借用接受度相同,若某個軟件通道堵塞時,根據除了堵塞的軟件通道之外的軟件通道針對堵塞的軟件通道傳輸的數據包類型的借用接受度,確定相應的目標軟件通道。相較于先前技術,根據本發明提供的控制軟件通道堵塞的方法及系統,若軟件通道堵塞時,服務器將不同類型的數據包及對應的軟件通道信息通知控制器,控制器根據預設策略確定目標軟件通道,并通知服務器,服務器將軟件通道傳輸的數據包遷移至目標軟件通道。其中,預設策略為:每個軟件通道針對待傳輸的不同類型的數據包設置不同的借用接受度,且所有軟件通道針對相同的數據包類型的借用接受度相同,若某個軟件通道堵塞時,根據除了堵塞的軟件通道之外的軟件通道針對堵塞的軟件通道傳輸的數據包類型的借用接受度,確定相應的目標軟件通道。如此,解決軟件通道堵塞的問題,從而提高傳輸效率。
此處所說明的附圖用來提供對本發明的進一步理解,構成本申請的一部分,本發明的示意性實施例及其說明用于解釋本發明,并不構成對本發明的不當限定。在附圖中:圖1所示為根據本發明的較佳實施例提供的控制軟件通道堵塞的方法的流程圖;圖2所示為根據本發明的較佳實施例提供的控制軟件通道堵塞的系統的示意圖。
具體實施例方式下文中將參考附圖并結合實施例來詳細說明本發明。需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可以相互組合。圖1所示為根據本發明的較佳實施例提供的控制軟件通道堵塞的方法的流程圖。如圖1所示,本發明的較佳實施例提供的控制軟件通道堵塞的方法包括步驟101 103。于步驟101,網絡處理器接收數據包,并將所述數據包傳輸至服務器。于步驟102,所述服務器將所述數據包分配至相應的軟件通道。于此,本發明并不限定服務器將數據包分配至軟件通道的分配方式,例如,服務器可隨機將數據包分配至相應的軟件通道。于步驟103,若所述軟件通道堵塞時,所述服務器將不同類型的數據包及對應的軟件通道信息通知控制器,所述控制器根據預設策略確定目標軟件通道,并通知所述服務器,所述服務器將所述軟件通道傳輸的數據包遷移至所述目標軟件通道。其中,所述預設策略為:每個軟件通道針對待傳輸的不同類型的數據包設置不同的借用接受度,且所有軟件通道針對相同的數據包類型的借用接受度相同,若某個軟件通道堵塞時,根據除了堵塞的所述軟件通道之外的軟件通道針對堵塞的所述軟件通道傳輸的數據包類型的借用接受度,確定相應的目標軟件通道。此外,若除了堵塞的所述軟件通道之外還有至少兩個軟件通道時,分別根據所述軟件通道的最大承載量、當前承載量及借用接受度確定所述目標軟件通道。其中,借用接受度表示可供借用的數據傳輸量。于本實施例中,數據包類型包括音頻數據、視頻數據及普通數據。然而,本發明對此并不限定。于此,于軟件通道堵塞時,服務器解析數據包的幀頭信息,并根據幀頭信息確定所述數據包的類型。此外,服務器將解析得到的數據包的類型及對應的軟件通道信息通知控制器。控制器接收服務器傳輸的信息后,根據預設策略確定目標軟件通道,并將目標軟件通道的信息通知服務器。服務器根據接收的目標軟件通道的信息將堵塞的軟件通道傳輸的數據包遷移至目標軟件通道。于本實施例中,控制器從服務器接收的數據包類型及對應的軟件通道信息例如表I所示。
數據包類型軟件通道借用接受度
視頻數據軟件通道a接受視頻數據(例如,5M)
音頻數據軟件通道b接受音頻數據(例如,4M)
普通數據軟件通道c接受普通數據(例如,3M)表1
于此,若傳輸視頻數據的軟件通道a發生堵塞,則控制器根據預設策略可知,傳輸音頻數據的軟件通道b和傳輸普通數據的軟件通道c可以接受軟件通道a傳輸的視頻數據。此時,由于軟件通道b及軟件通道c均可接受軟件通道a傳輸的視頻數據,則根據軟件通道b及軟件通道c的最大承載量、當前承載量及借用接受度確定目標軟件通道。具體而言,若軟件通道b的最大承載量與當前承載量的差值大于對應的視頻數據的借用接受度(例如,5M),且軟件通道c的最大承載量與當前承載量的差值小于對應的視頻數據的借用接受度(例如,5M),則確定目標軟件通道為軟件通道b。若軟件通道b的最大承載量與當前承載量的差值小于對應的視頻數據的借用接受度(例如,5M),且軟件通道c的最大承載量與當前承載量的差值大于對應的視頻數據的借用接受度(例如,5M),則確定目標軟件通道為軟件通道C。若軟件通道b及軟件通道c的最大承載量與當前承載量的差值均大于對應的視頻數據的借用接受度,則隨機確定軟件通道b或者軟件通道c為目標軟件通道。此外,若傳輸音頻數據的軟件通道b發生堵塞,則控制器根據預設策略可知,傳輸視頻數據的軟件通道a和傳輸普通數據的軟件通道c可以接受軟件通道b傳輸的音頻數據。具體選擇哪個軟件通道做為目標軟件通道的方式同上述所述,故于此不再贅述。于本實施例中,每個軟件通道針對待傳輸的不同類型的數據包設置不同的借用接受度,且所有軟件通道針對相同的數據包類型的借用接受度相同。如表I所示,軟件通道a針對視頻數據、音頻數據及普通數據有不同的借用接受度,而且軟件通道a c針對相同的數據包類型具有相同的借用接受度,例如,軟件通道a及軟件通道b對普通數據的借用接受度均為3M。此外,于本實施例中,當控制器確定目標軟件通道后,將所述目標軟件通道信息通知服務器,服務器將堵塞的軟件通道傳輸的數據包遷移至目標軟件通道進行傳輸。如此,提高數據傳輸的效率。圖2所示為根據本發明的較佳實施例提供的控制軟件通道堵塞的系統的示意圖。如圖2所示,本發明的較佳實施例提供的控制軟件通道堵塞的系統包括網絡處理器10、月艮務器12及控制器14。網絡處理器10連接服務器12及控制器14,控制器14連接服務器12。于本實施例中,網絡處理器10,用于接收數據包,并將數據包傳輸至服務器12。服務器12,用于將數據包分配至相應的軟件通道。若軟件通道堵塞時,服務器10,用于將不同類型的數據包及對應的軟件通道信息通知控制器14,控制器14根據預設策略確定目標軟件通道,并通知服務器10,服務器10將軟件通道傳輸的數據包遷移至目標軟件通道。其中,預設策略為:每個軟件通道針對待傳輸的不同類型的數據包設置不同的借用接受度,且所有軟件通道針對相同的數據包類型的借用接受度相同,若某個軟件通道堵塞時,根據除了堵塞的軟件通道之外的軟件通道針對堵塞的軟件通道傳輸的數據包類型的借用接受度,確定相應的目標軟件通道。關于所述系統的具體操作如上述方法所述,故于此不再贅述。綜上所述,根據本發明較佳實施例提供的控制軟件通道堵塞的方法及系統,若軟件通道堵塞時,服務器將不同類型的數據包及對應的軟件通道信息通知控制器,控制器根據預設策略確定目標軟件通道,并通知服務器,服務器將軟件通道傳輸的數據包遷移至目標軟件通道。其中,預設策略為:每個軟件通道針對待傳輸的不同類型的數據包設置不同的借用接受度,且所有軟件通道針對相同的數據包類型的借用接受度相同,若某個軟件通道堵塞時,根據除了堵塞的軟件通道之外的軟件通道針對堵塞的軟件通道傳輸的數據包類型的借用接受度,確定相應的目標軟件通道。如此,解決軟件通道堵塞的問題,從而提高傳輸效率。 以上所述僅為本發明的優選實施例而已,并不用于限制本發明,對于本領域的技術人員來說,本發明可以有各種更改和變化。凡在本發明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發明的保護范圍之內。
權利要求
1.一種控制軟件通道堵塞的方法,其特征在于,包括以下步驟: 網絡處理器接收數據包,并將所述數據包傳輸至服務器; 所述服務器將所述數據包分配至相應的軟件通道; 若所述軟件通道堵塞時,所述服務器將不同類型的數據包及對應的軟件通道信息通知控制器,所述控制器根據預設策略確定目標軟件通道,并通知所述服務器,所述服務器將所述軟件通道傳輸的數據包遷移至所述目標軟件通道, 其中,所述預設策略為:每個軟件通道針對待傳輸的不同類型的數據包設置不同的借用接受度,且所有軟件通道針對相同的數據包類型的借用接受度相同,若某個軟件通道堵塞時,根據除了堵塞的所述軟件通道之外的軟件通道針對堵塞的所述軟件通道傳輸的數據包類型的借用接受度,確定相應的目標軟件通道。
2.根據權利要求1所述的方法,其特征在于,若除了堵塞的所述軟件通道之外還有至少兩個軟件通道時,分別根據所述軟件通道的最大承載量、當前承載量及借用接受度確定所述目標軟件通道。
3.根據權利要求1所述的方法,其特征在于,所述數據包類型包括音頻數據、視頻數據及普通數據。
4.根據權利要求1所述的方法,其特征在于,所述服務器解析所述數據包的幀頭信息確定所述數據包的類型。
5.一種控制軟件通道堵塞的系統,其特征在于,包括網絡處理器、服務器及控制器,所述網絡處理器連接所述服務器及所述控制器,所述控制器連接所述服務器, 所述網絡處理器,用于接收數據包,并將所述數據包傳輸至所述服務器, 所述服務器,用于將所述數據包分配至相應的軟件通道, 若所述軟件通道堵塞時,所述服務器,用于將不同類型的數據包及對應的軟件通道信息通知控制器,所述控制器根據預設策略確定目標軟件通道,并通知所述服務器,所述服務器將所述軟件通道傳輸的數據包遷移至所述目標軟件通道, 其中,所述預設策略為:每個軟件通道針對待傳輸的不同類型的數據包設置不同的借用接受度,且所有軟件通道針對相同的數據包類型的借用接受度相同,若某個軟件通道堵塞時,根據除了堵塞的所述軟件通道之外的軟件通道針對堵塞的所述軟件通道傳輸的數據包類型的借用接受度,確定相應的目標軟件通道。
6.根據權利要求5所述的系統,其特征在于,若除了堵塞的所述軟件通道之外還有至少兩個軟件通道時,分別根據所述軟件通道的最大承載量、當前承載量及借用接受度確定所述目標軟件通道。
7.根據權利要求5所述的系統,其特征在于,所述數據包類型包括音頻數據、視頻數據及普通數據。
8.根據權利要求5所述的系統,其特征在于,所述服務器解析所述數據包的幀頭信息確定所述數據包的類型。
全文摘要
本發明提供一種控制軟件通道堵塞的方法及系統。上述方法包括以下步驟網絡處理器接收數據包,并將數據包傳輸至服務器;服務器將數據包分配至相應的軟件通道;若軟件通道堵塞時,服務器將不同類型的數據包及對應的軟件通道信息通知控制器,控制器根據預設策略確定目標軟件通道,并通知服務器,服務器將軟件通道傳輸的數據包遷移至目標軟件通道。其中,預設策略為每個軟件通道針對待傳輸的不同類型的數據包設置不同的借用接受度,且所有軟件通道針對相同的數據包類型的借用接受度相同,若某個軟件通道堵塞時,根據除了堵塞的軟件通道之外的軟件通道針對堵塞的軟件通道傳輸的數據包類型的借用接受度,確定相應的目標軟件通道。
文檔編號H04L12/801GK103117936SQ20121046784
公開日2013年5月22日 申請日期2012年11月19日 優先權日2012年11月19日
發明者謝靜宇 申請人:蘇州億倍信息技術有限公司