專利名稱:封包轉發設備及其平衡負載的方法
技術領域:
本發明涉及網絡通信裝置,尤其涉及一種封包轉發設備及其平衡負載的方法。
背景技術:
在現有的封包轉發設備中,其可以通過各種條件的設定(例如封包源IP地址, 封包大小,或協議類型等),將符合條件的某一類型的網絡封包通過指定的廣域網(Wide AreaNetwork, WAN)端口發送至因特網Gnternet),而將不符合條件的網絡封包通過另一 WAN端口進行發送,但是這種方式可能導致封包轉發設備中的某個WAN端口的流量特別大, 而另一個WAN端口的流量又特別小,這樣將使封包轉發設備中不同WAN端口的負載嚴重失 衡,從而嚴重影響封包轉發設備的處理效率,因此,如何平衡封包轉發設備中不同WAN端口 的負載以提高封包轉發設備處理網絡封包的效率是業界的一大挑戰。
發明內容
有鑒于此,需提供一種封包轉發設備,能平衡不同廣域網端口轉發封包的負載,有 效提高封包轉發設備的運行效率。另外,還需提供一種封包轉發設備平衡負載的方法,能平衡不同廣域網端口轉發 封包的負載,有效提高封包轉發設備的運行效率。一種封包轉發設備,包括多個局域網端口、第一廣域網端口、第二廣域網端口、存 儲媒介、發送模塊、偵測模塊、判斷模塊、平衡模塊及處理器。存儲媒介存儲所述第一廣域網 端口的預設門限值以及預設條件值。發送模塊通過所述第一廣域網端口發送符合所述預設 條件值的封包以及通過所述第二廣域網端口發送不符合所述預設條件值的封包。偵測模塊 偵測所述第二廣域網端口的狀態。判斷模塊判斷通過所述第二廣域網端口發送的封包是否 存在封包丟失現象,并在存在封包丟失現象時,判斷通過所述第一廣域網端口發送的封包 的流量是否超過所述第一廣域網端口的預設門限值。平衡模塊在所述第一廣域網端口發送 的封包的流量沒有超過所述第一廣域網端口的預設門限值時,將不符合所述預設條件值的 封包分配至所述第一廣域網端口進行發送以平衡負載。處理器用于執行上述模塊以實現上 述模塊的功能。一種封包轉發設備平衡負載的方法,其中所述封包轉發設備包括存儲媒介、處理 器、第一廣域網端口、第二廣域網端口以及多個局域網端口,所述存儲媒介存儲有所述第一 廣域網端口的預設門限值以及預設條件值,所述方法包括以下步驟從所述多個局域網端 口接收多個待轉發的封包;通過所述第一廣域網端口發送符合所述預設條件值的封包,并 通過所述第二廣域網端口發送不符合所述預設條件值的封包;偵測所述第二廣域網端口的 狀態;判斷通過所述第二廣域網端口發送的封包是否存在封包丟失現象;若存在封包丟失 現象,則判斷通過所述第一廣域網端口發送的封包的流量是否超過所述第一廣域網端口的 預設門限值;及若沒有超過所述第一廣域網端口的預設門限值,則將不符合所述預設條件 值封包分配至所述第一廣域網端口進行發送以平衡負載。
本發明實施方式所提供的封包轉發設備及其平衡負載的方法,通過偵測第二廣域 網端口的狀態,并在第二廣域網端口發送的封包發生丟失現象且第一廣域網端口的封包流 量沒有超過其預設的門限值時,啟動負載平衡,將不符合預設條件值的封包分配至第一廣 域網端口進行發送以平衡負載,從而提高了封包轉發設備的運行效率。
圖1為本發明一實施方式中封包轉發設備的應用環境結構示意圖。圖2為本發明一實施方式中封包轉發設備的內部結構示意圖。圖3為本發明一實施方式中封包轉發設備轉發封包的一般性示意圖。圖4為本發明一實施方式中封包轉發設備轉發封包的改進示意圖。圖5為本發明一實施方式中封包轉發設備平衡負載的方法流程圖。主要元件符號說明
用戶終端設備101、 103、 105封包轉發設備20處理器202存儲媒介204發送模塊206偵測模塊208判斷模塊210平衡模塊212第一廣域網端口214第二廣域網端口216第一局域網端口218第二局域網端口220第三局域網端口222因特網30
具體實施例方式
請參閱圖1,所示為本發明一實施方式中封包轉發設備20的應用環境結構示意 圖。封包轉發設備20通過局域網(Local Area Network,LAN)端口 218、220及222等可分 別為多個用戶終端設備101、103及105等提供網絡接入或路由功能,其能同時將多個用戶 終端設備101、103及105等接入因特網30。在本實施方式中,用戶終端設備101、103可為^vA(Personal Computer, PC) ,^Α^ Ψ& Μ (Personal Digital Assistant, PDA) 等。封包轉發設備20還包括至少兩個廣域網(Wide Area Network, WAN)端口和多個局域 網端口,例如第一廣域網端口 214、第二廣域網端口 216、第一局域網端口 218、第二局域網 端口 220及第三局域網端口 222,并通過至少兩個廣域網端口連接到因特網30。在本實施 方式中,封包轉發設備20可以是路由器、網關或者調制解調器等通信設備,其用于將來至 多個用戶終端設備101、103及105的封包轉發至因特網30。請參閱圖2,所示為本發明一實施方式中封包轉發設備20的內部結構示意圖。在 本實施方式中,封包轉發設備20包括處理器202、存儲媒介204、發送模塊206、偵測模塊 208、判斷模塊210、平衡模塊212、第一廣域網端口 214、第二廣域網端口 216、第一局域網 端口 218、第二局域網端口 220及第三局域網端口 222。在本實施方式中,第一局域網端口 218、第二局域網端口 220及第三局域網端口 222用于接收多個待轉發的封包,第一廣域網 端口 214和第二廣域網端口 216分別連接到用于發送該等多個待轉發的封包至因特網30。處理器202執行模塊206、208、210、212以實現這些模塊的功能。存儲媒介204存儲有第一廣域網端口 214的預設門限值以及預設條件值。在本 實施方式中,第一廣域網端口 214的預設門限值用于表示第一廣域網端口 214所能承受 的發送封包流量的最大值,預設條件值包括封包源地址(Source IP address),封包大小 (Packet size)以及協議類型(Protocol type)等。例如,若將預設條件值的協議類型設置 為傳輸控制協議CTransmission Control Protocol,TCP),則表明通過第一廣域網端口 214 只能發送TCP封包,而其它不是TCP類型的封包則通過第二廣域網端口 216進行發送。發送模塊206通過第一廣域網端口 214發送符合所述預設條件值的封包以及通過 第二廣域網端口 216發送不符合預設條件值的封包。偵測模塊208偵測第二廣域網端口 216的狀態。在本實施方式中,可以設置一定 的時間間隔對第二廣域網端口 216進行周期性的偵測。判斷模塊210判斷通過第二廣域網端口 216發送的封包是否存在封包丟失現象。 在本實施方式中,若封包轉發設備20在預設的時間內沒有接收到因特網30中的響應封包 時,則判斷模塊210判斷從第二廣域網端口 216發送出去的封包存在封包丟失現象,反之, 則判斷模塊210判斷從第二廣域網端口 216發送出去的封包不存在封包丟失現象。在本實施方式中,如果從第二廣域網端口 216發送出去的封包不存在封包丟失現 象,則表明此時第二廣域網端口 216的負載處于正常水平,此時,發送模塊206繼續通過第 二廣域網端口 216發送不符合預設條件值的封包。在本實施方式中,如果從第二廣域網端口 216發送出去的封包存在封包丟失現 象,則表明第二廣域網端口 216的負載較重,此時,判斷模塊210再判斷通過第一廣域網端 口 214發送的封包的流量是否超過第一廣域網端口 214的預設門限值。平衡模塊212用于在通過第一廣域網端口 214發送的封包的流量沒有超過第一廣 域網端口 214的預設門限值時,啟動平衡負載,將不符合預設條件值的封包分配至第一廣 域網端口 214進行發送。在本實施方式中,如果判斷通過第一廣域網端口 214發送的封包 的流量沒有超過第一廣域網端口 214的預設門限值,則表明此時第一廣域網端口 214的負 載較輕,而第二廣域網端口 216的負載較重,在本實施方式中,通過平衡負載的方式將新增 的不符合預設條件的封包由負載較輕的第一廣域網端口 214來發送,以提高封包轉發設備20的處理效率。在本實施方式中,如果在判斷通過第一廣域網端口 214發送的封包的流量超過第 一廣域網端口 214的預設門限值,則表明第一廣域網端口 214和第二廣域網端口 216的負 載均較重,此時,發送模塊206繼續通過第二廣域網端口 216發送不符合預設條件值的封 包。請參閱圖3,所示為本發明一實施方式中封包轉發設備20轉發封包的一般性示意 圖。如圖所示,封包轉發設備20通過第一局域網端口 218、第二局域網端口 220及第三局域 網端口 222分別接收用戶終端設備101、用戶終端設備103及用戶終端設備105的封包,然 后通過設置不同的路由方式從不同的廣域網端口轉發。在本實施方式中,在封包轉發設備 20上設置將從多個局域網端口所接收到的A封包指定以第一廣域網端口 214發送出去,將 所接收到的其余封包(B封包或者C封包)從第二廣域網端口 216發送出去。這樣一來,將 導致第一廣域網端口 214的負載較輕,而第二廣域網端口 216的負載較重,甚至發生封包丟 失現象,進而影響封包轉發設備20轉發封包的效率。請參閱圖4,所示為本發明一實施方式中封包轉發設備20轉發封包的改進示意 圖。如圖所示,在本實施方式中,例如第一廣域網端口 214與第二廣域網端口 216的設計的 門限值均為每秒鐘發送5個封包,當第二廣域網端口 216每秒鐘需要發送6個封包時,則表 明第六個封包從第二廣域網端口 216發送將會發生封包丟失現象,此時,則判斷第一廣域 網端口 214的流量是否超過其門限值,由圖可知,第一廣域網端口 214此時的流量為每秒鐘 發送3個封包,并未超過其門限值。在本實施方式中,則將第六個封包從第一廣域網端口 214發送出去,以減少第二廣域網端口 216的負載,達到平衡負載的目的,進而提高封包轉 發設備20轉發封包的效率。請參閱圖5,所示為本發明一實施方式中封包轉發設備20平衡負載的方法流程 圖。在本實施方式中,該方法通過圖2所示的各個模塊來實現。在步驟S500中,多個局域網端口接收多個待轉發的封包。在步驟S502中,發送模塊206通過第一廣域網端口 214發送符合預設條件值的封 包以及通過第二廣域網端口 216發送不符合所述預設條件值的封包。在步驟S504中,偵測模塊208偵測第二廣域網端口 216的狀態。在步驟S506中,判斷模塊210判斷通過第二廣域網端口 216發送的封包是否存在 封包丟失現象。在本實施方式中,若封包轉發設備20在預設的時間內沒有接收到因特網30 中的響應封包時,則判斷從第二廣域網端口 216發送出去的封包存在封包丟失現象,反之, 則判斷從第二廣域網端口 216發送出去的封包不存在封包丟失現象。若從第二廣域網端口 216發送的封包存在封包丟失現象,則在步驟S508中,判斷 模塊210判斷通過第一廣域網端口 214發送的封包的流量是否超過第一廣域網端口 214的 預設門限值。若從第二廣域網端口 216發送的封包不存在封包丟失現象,則表明此時第二廣域 網端口 216的負載處于正常水平,因此,在步驟S512中,發送模塊206繼續通過第二廣域網 端口 216發送不符合預設條件值的封包。若通過第一廣域網端口 214發送的封包的流量沒有超過第一廣域網端口 214的預 設門限值,則表明此時第一廣域網端口 214的負載較輕,而第二廣域網端口 216的負載較重,因此,在步驟S510中,平衡模塊212啟動平衡負載,將不符合預設條件值的封包分配至 第一廣域網端口 214進行發送以平衡負載。若通過第一廣域網端口 214發送的封包的流量超過第一廣域網端口 214的預設門 限值,則表明第一廣域網端口 214和第二廣域網端口 216的負載均較重,此時,在步驟S512 中,發送模塊206繼續通過第二廣域網端口 216發送不符合所述預設條件值的封包。本發明實施方式所提供的封包轉發設備20及其平衡負載的方法,通過偵測第二 廣域網端口 216的狀態,并在第二廣域網端口 216發送的封包發生丟失現象且第一廣域網 端口 214的封包流量沒有超過其預設的門限值時,啟動負載平衡,將不符合預設條件值的 封包分配至第一廣域網端口 214進行發送以平衡負載,從而提高了封包轉發設備20的運行 效率。
權利要求
1.一種封包轉發設備,其特征在于,包括 多個局域網端口,用于接收多個待轉發的封包;第一廣域網端口和第二廣域網端口,用于發送所述待轉發的封包; 存儲媒介,用于存儲所述第一廣域網端口的預設門限值以及預設條件值; 發送模塊,用于通過所述第一廣域網端口發送符合所述預設條件值的封包以及通過所 述第二廣域網端口發送不符合所述預設條件值的封包; 偵測模塊,用于偵測所述第二廣域網端口的狀態;判斷模塊,用于判斷通過所述第二廣域網端口發送的封包是否存在封包丟失現象,并 在存在封包丟失現象時,判斷通過所述第一廣域網端口發送的封包的流量是否超過所述第 一廣域網端口的預設門限值;平衡模塊,用于在所述第一廣域網端口發送的封包的流量沒有超過所述第一廣域網端 口的預設門限值時,將不符合所述預設條件值的封包分配至所述第一廣域網端口進行發送 以平衡負載;及處理器,用于執行所述發送模塊、所述偵測模塊、所述判斷模塊及所述平衡模塊。
2.如權利要求1所述的封包轉發設備,其特征在于,所述預設條件值包括封包源地址, 封包大小以及協議類型。
3.如權利要求1所述的封包轉發設備,其特征在于,所述發送模塊還用于在通過所述 第二廣域網端口發送的封包不存在封包丟失現象時,繼續通過所述第二廣域網端口發送不 符合所述預設條件值的封包。
4.如權利要求1所述的封包轉發設備,其特征在于,所述發送模塊還用于在所述第一 廣域網端口發送的封包的流量超過所述第一廣域網端口的預設門限值時,繼續通過所述第 二廣域網端口發送不符合所述預設條件值的封包。
5.一種封包轉發設備平衡負載的方法,所述封包轉發設備包括存儲媒介、處理器、第一 廣域網端口、第二廣域網端口以及多個局域網端口,所述存儲媒介存儲有所述第一廣域網 端口的預設門限值以及預設條件值,其特征在于,所述方法包括從多個局域網端口接收多個待轉發的封包;通過所述第一廣域網端口發送符合所述預設條件值的封包,并通過所述第二廣域網端 口發送不符合所述預設條件值的封包; 偵測所述第二廣域網端口的狀態;判斷通過所述第二廣域網端口發送的封包是否存在封包丟失現象; 若存在封包丟失現象,則判斷通過所述第一廣域網端口發送的封包的流量是否超過所 述第一廣域網端口的預設門限值;及若沒有超過所述第一廣域網端口的預設門限值,則將不符合所述預設條件值的封包分 配至所述第一廣域網端口進行發送以平衡負載。
6.如權利要求5所述的封包轉發設備平衡負載的方法,其特征在于,所述預設條件值 包括封包源地址,封包大小以及協議類型。
7.如權利要求5所述的封包轉發設備平衡負載的方法,其特征在于,若不存在封包丟 失現象,則繼續通過所述第二廣域網端口發送不符合所述預設條件值的封包。
8.如權利要求5所述的封包轉發設備平衡負載的方法,其特征在于,若通過所述第一廣域網端口發送的封包的流量超過所述第一廣域網端口的預設門限值,則繼續通過所述第 二廣域網端口發送不符合所述預設條件值的封包。
全文摘要
一種封包轉發設備,包括存儲媒介、發送模塊、偵測模塊、判斷模塊、平衡模塊及處理器。存儲媒介存儲第一廣域網端口的預設門限值及預設條件值。發送模塊分別通過第一廣域網端口以及第二廣域網端口發送符合與不符合預設條件值的封包。偵測模塊持續偵測第二廣域網端口的狀態。判斷模塊判斷通過第二廣域網端口發送的封包是否存在封包丟失現象,并在存在時,判斷通過第一廣域網端口發送的封包流量是否超過其預設門限值。平衡模塊在通過第一廣域網端口發送的封包流量沒有超過其預設門限值時,啟動負載平衡。處理器執行上述模塊。本發明還提供了一種封包轉發設備平衡負載的方法。本發明可以有效地平衡不同廣域網端口的負載,從而提高轉發封包的效率。
文檔編號H04L12/56GK102143048SQ201010300819
公開日2011年8月3日 申請日期2010年1月28日 優先權日2010年1月28日
發明者張耀文, 楊凱宇 申請人:鴻富錦精密工業(深圳)有限公司, 鴻海精密工業股份有限公司