專利名稱:一種具有多網卡終端設備的網絡層負載分擔系統和方法
技術領域:
本發明涉及通信技術領域,尤其是涉及一種具有多網卡終端的網絡層負載分擔系統和方法。
背景技術:
隨著網絡應用的不斷深入和發展,用戶對網絡可靠性的需求越來越高。為提高網絡的可靠性,在網絡構建時,往往采用多臺路由器,并采用VRRP(Virtual Router Redundancy Protocol,虛擬路由冗余協議)實現網絡內主機與外部網絡的不間斷通信。VRRP是一種LAN(Local Area Network,局域網)接入設備容錯協議,該協議可以實現當主機的下一跳路由器出現故障時,能及時地切換到另一臺路由器,從而保持通訊的連續性和可靠性。
VRRP將局域網的一組路由器組成一個虛擬路由器,該虛擬路由器可以設置一個虛擬IP地址。在配置時,將局域網主機的默認網關設置為該虛擬IP地址,則網絡內的主機通過該虛擬路由器與其它網絡進行通信。一個虛擬路由器包括一個主路由器和多個備份路由器,主路由器實現真正的轉發功能。當主路由器出現故障時,備份路由器成為新的主路由器,繼續向網絡內的主機提供路由服務。
VRRP通過多臺路由器實現冗余,任何時候只有一臺路由器為主路由器,其它的路由器為備份路由器。VRRP協議根據各臺路由器優先級,采用競選的方法選擇主路由器,優先級最大的為主路由器。運行VRRP協議的路由器能夠監視上行接口,當上行接口出現故障時該路由器的優先級會降低。
目前,終端設備向外發送數據時,為避免單點故障,該終端設備會配置多塊網卡。該終端設備向外發送數據時的一種組網結構如圖1所示,該系統包括具有多網卡的終端設備11、二層交換機12、網絡層路由器13和14、廣域網15;其中終端設備11進一步包括網卡111和112。二層交換機12分別與網卡111、網卡112、路由器13和路由器14連接,路由器13和路由器14分別連接到廣域網15。
終端設備11捆綁網卡111和112并配置一個外部地址,該外部地址與網絡層路由器13和14的接口地址處在同一網段。路由器13和路由器14在連接終端設備11的接口上啟用VRRP協議,由VRRP協議對終端設備11提供一個虛擬網關,同時根據VRRP的協議規則選出一臺主路由器提供該網段的虛擬網關服務。配置終端設備11的缺省網關為虛擬網關地址,則終端設備11生成以該地址為網關的缺省路由。
但是,采用該方案時,只能由主路由器進行數據轉發,網絡層的兩臺路由器無法根據實際需要對業務流實行負載分擔,網絡資源得不到充分利用;而且采用該方案時,一旦二層交換機出現單點故障,終端設備11將中斷與外部網絡的通信,網絡可靠性不高。
發明內容
本發明要解決的問題是提供一種具有多網卡終端設備的網絡層負載分擔系統和方法,提供多條鏈路通訊,同時也可以實現鏈路間相互冗余備份,提高系統的可靠性。
為達到上述目的,本發明提供一種具有多網卡終端設備的網絡層負載分擔方法,包括以下步驟A、配置終端設備中多網卡的地址信息;B、所述終端設備通過與所述多網卡對應連接的多個路由器并行發送數據。
按照本發明的一個方面,步驟A進一步包括A1、所述終端設備捆綁所述多網卡;A2、配置所述多網卡的外部地址;A3、分別配置每一個網卡的內部地址。
按照本發明的另一個方面,步驟A2中所述多網卡的外部地址與和所述多網卡連接的路由器接口地址處于同一網段。
按照本發明的再一個方面,當所述終端設備發送數據時,所述數據的源地址為所述多網卡的外部地址。
按照本發明的再一個方面,步驟A3中所述每一個網卡的內部地址與所述多網卡的外部地址處于同一網段,且所述內部地址的網關為與所述網卡連接的路由器接口地址。
按照本發明的再一個方面,步驟B之前還包括所述多個路由器在連接所述多網卡的接口上啟用VRRP,且設置所述多個路由器的初始優先級相同。
按照本發明的再一個方面,當所述路由器的上行接口出現故障時,降低所述路由器的優先級。
按照本發明的再一個方面,步驟B進一步包括B1、判斷與每個網卡對應的鏈路是否出現故障,如果是,則轉步驟B2;否則轉步驟B3;B2、使與出現故障的鏈路對應的路由失效;B3、所述終端設備通過與沒有出現故障的鏈路對應的路由發送數據。
按照本發明的再一個方面,步驟B1進一步包括B11、所述多個路由器分別向對應的網卡發送VRRP消息;B12、判斷所述網卡是否接收到VRRP消息;如果是,則轉步驟B13;否則轉步驟B14;B13、根據所述VRRP消息,判斷所述路由器的優先級是否低于與其它網卡連接的路由器的優先級;如果是,則轉步驟B14;否則轉步驟B15;B14、與所述網卡對應的鏈路出現故障,轉步驟B2;B15、與所述網卡對應的鏈路正常,轉步驟B3。
本發明提供一種具有多網卡終端設備的網絡層負載分擔系統,包括具有多網卡的終端設備、多個路由器和廣域網;其中所述具有多網卡的終端設備,通過所述多網卡分別與所述多個路由器對應連接,用于向所述廣域網發送數據;所述多個路由器,分別連接到所述廣域網,用于向所述終端設備發送虛擬路由冗余協議消息和轉發所述終端設備的數據到所述廣域網。
按照本發明的再一個方面,所述具有多網卡的終端設備還包括網卡配置單元,與所述多網卡連接,用于配置所述多網卡的外部地址和每一個網卡的內部地址。
按照本發明的再一個方面,所述具有多網卡的終端設備還包括故障檢測單元,與所述多網卡連接,用于檢測與每個網卡對應的鏈路是否出現故障;如果鏈路出現故障時,則使與所述鏈路對應的路由失效。
按照本發明的再一個方面,所述鏈路故障包括所述網卡接收不到與其對應連接的路由器發送的VRRP消息,或所述路由器的優先級低于與其它網卡連接的路由器的優先級。
按照本發明的再一個方面,所述VRRP消息包括所述路由器的優先級信息。
按照本發明的再一個方面,所述多個路由器的初始優先級相同,當所述路由器的上行接口出現故障時,所述路由器的優先級降低。
本發明提供一種終端設備,包括網卡配置單元和多網卡;其中,所述網卡配置單元,與所述多網卡連接,用于配置所述多網卡的外部地址和每一個網卡的內部地址,使所述終端設備通過與每個網卡對應的路由器并行發送數據。
按照本發明的再一個方面,所述終端設備還包括故障檢測單元,與所述多網卡連接,用于檢測與每個網卡對應的鏈路是否出現故障;如果鏈路出現故障,則使與所述鏈路對應的路由失效。
按照本發明的再一個方面,所述鏈路故障包括所述網卡接收不到與其對應連接的路由器發送的虛擬路由冗余協議消息,或所述路由器的優先級低于與其它網卡連接的路由器的優先級。
與現有技術相比,本發明具有以下優點本發明通過與終端設備的多網卡連接的多個路由器并行發送數據的方法,實現網絡層業務流的負載分擔,解決了VRRP對于某一個網段只能由主路由器進行轉發的缺陷。
并且,本發明只在終端設備上進行處理,不會改動VRRP協議。
進一步,本發明去掉組網中的二層交換機,避免了因為使用二層交換機而產生的單點故障。
圖1是現有技術的一種組網結構圖;圖2是本發明的一種網絡層負載分擔系統圖;圖3是本發明的一種終端設備結構圖;圖4是本發明實施例一的網絡層負載分擔方法流程圖;圖5是本發明實施例二的故障處理流程圖。
具體實施例方式
下面結合附圖和實施例,對本發明的具體實施方式
作進一步詳細描述本發明的一種網絡層負載分擔系統如圖2所示,該系統包括具有多網卡的終端設備21、路由器22和23、廣域網24;其中終端設備21進一步包括網卡配置單元211、故障檢測單元212、網卡213和214。路由器22通過其接口1與網卡213連接,通過其接口2與廣域網24連接;路由器23通過其接口1與網卡214連接,通過其接口2與廣域網24連接;網卡配置單元211分別與網卡213和214連接;故障檢測單元212分別與網卡213和214連接。
終端設備21捆綁了網卡213和214,通過路由器22和路由器23向廣域網24發送數據。其中終端設備21中的網卡配置單元211用于配置網卡213和214的地址信息,該地址信息包括網卡213和214捆綁后的外部地址、網卡213的內部地址和網卡214的內部地址。該外部地址與路由器22的接口1和路由器23的接口1的地址處于同一網段,且該外部地址不配置網關;網卡213的內部地址與該外部地址處于同一網段,且該內部地址的網關為路由器22的接口1的地址;網卡214的內部地址與該外部地址處于同一網段,且該內部地址的網關為路由器23的接口1的地址。
終端設備21中的故障檢測單元212用于檢測與網卡213和214對應的鏈路是否出現故障。當網卡一段時間接收不到與其對應連接的路由器發送的VRRP消息時,表明該路由器或者鏈路出現故障;當路由器的優先級低于與其它網卡連接的路由器的優先級時,表明該路由器的上行接口出現故障。
路由器22和路由器23用于向終端設備21發送VRRP消息和轉發終端設備21的數據到廣域網24。該VRRP消息包括路由器的優先級信息,路由器22和路由器23的初始優先級是相同的,當路由器的上行接口出現故障時,該路由器的優先級降低。
本發明的一種終端設備的結構如圖3所示,該終端設備包括網卡配置單元211、故障檢測單元212、網卡213和網卡214。其中網卡配置單元211分別與網卡213和214連接,故障檢測單元212分別與網卡213和214連接,該終端設備將網卡213和214進行捆綁。
網卡配置單元211用于配置網卡213和214的地址信息,該地址信息包括網卡213和214捆綁后的外部地址、網卡213的內部地址和網卡214的內部地址。故障檢測單元212用于檢測與網卡213和214對應的鏈路是否出現故障。當網卡一段時間接收不到與其對應連接的路由器發送的VRRP消息時,表明該路由器或者鏈路出現故障;當路由器的優先級低于與其它網卡連接的路由器的優先級時,表明該路由器的上行接口出現故障。
實施例一,當采用圖2所示網絡層負載分擔系統和圖3所示終端設備時,本發明的一種網絡層負載分擔方法流程如圖4所示。首先配置網卡213和214的地址信息,然后終端設備21通過路由器22和路由器23向廣域網24并行發送數據,實現網絡層路由器的負載分擔。參照圖4,本發明包括以下步驟步驟s101,終端設備捆綁多網卡。即終端設備21捆綁網卡213和網卡214。
步驟s102,配置多網卡的外部地址。該外部地址與路由器22的接口1和路由器23的接口1的地址處于同一網段,假設路由器22的接口1的地址為1.1.1.4,路由器23的接口1的地址為1.1.1.5,則配置該外部地址為1.1.1.1,子網掩碼為255.255.255.0,該外部地址的網關不進行配置。
步驟s103,分別配置每一個網卡的內部地址。網卡213和網卡214的內部地址與外部地址1.1.1.1處于同一網段,且內部地址的網關為與各網卡連接的路由器接口地址。配置網卡213的內部地址為1.1.1.2,子網掩碼為255.255.255.0,網關為1.1.1.4;配置網卡214的內部地址為1.1.1.3,子網掩碼為255.255.255.0,網關為1.1.1.5。
步驟s104,多個路由器在連接多網卡的接口上啟用VRRP,并設置該多個路由器的初始優先級相同。即路由器22和路由器23在其接口1上啟用VRRP,并設置路由器22和路由器23的初始優先級相同。
步驟s105,判斷與每個網卡對應的鏈路是否出現故障,如果是,則轉步驟s106;否則轉步驟s107。經檢測,與網卡213和網卡214對應的鏈路工作正常,所以轉步驟s107。
步驟s106,使與出現故障的鏈路對應的路由失效。
步驟s107,終端設備通過與沒有出現故障的鏈路對應的路由發送數據。即終端設備21通過路由器22和路由器23向廣域網24并行發送數據,該數據的源地址為外部地址1.1.1.1,實現網絡層路由器的負載分擔。
實施例二,當采用圖2所示網絡層負載分擔系統和圖3所示終端設備時,如果路由器22或路由器22與網卡213之間的鏈路出現故障,則網卡213接收不到路由器22發送的VRRP消息;或者路由器22的接口2出現故障,根據VRRP規則,路由器22的優先級降低。本發明的故障處理流程如圖5所示,包括以下步驟步驟s201,終端設備捆綁多網卡。即終端設備21捆綁網卡213和網卡214。
步驟s202,配置多網卡的外部地址。該外部地址與路由器22的接口1和路由器23的接口1的地址處于同一網段,假設路由器22的接口1的地址為1.1.1.4,路由器23的接口1的地址為1.1.1.5,則配置該外部地址為1.1.1.1,子網掩碼為255.255.255.0,該外部地址的網關不進行配置。
步驟s203,分別配置每一個網卡的內部地址。網卡213和網卡214的內部地址與外部地址1.1.1.1處于同一網段,且內部地址的網關為與各網卡連接的路由器接口地址。配置網卡213的內部地址為1.1.1.2,子網掩碼為255.255.255.0,網關為1.1.1.4;配置網卡214的內部地址為1.1.1.3,子網掩碼為255.255.255.0,網關為1.1.1.5。
步驟s204,多個路由器在連接多網卡的接口上啟用VRRP,并設置該多個路由器的初始優先級相同。即路由器22和路由器23在其接口1上啟用VRRP,并設置路由器22和路由器23的初始優先級相同。
步驟s205,多個路由器分別向對應的網卡發送VRRP消息。即路由器22向網卡213發送VRRP消息;路由器23向網卡214發送VRRP消息。
步驟s206,判斷網卡是否接收到VRRP消息;如果是,則轉步驟s207;否則轉步驟s208。當網卡213接收不到VRRP消息時,轉步驟s208。
步驟s207,根據VRRP消息,判斷路由器的優先級是否低于與其它網卡連接的路由器的優先級;如果是,則轉步驟s208;否則轉步驟s209。當路由器22因為接口2出現故障而導致優先級降低時,路由器22的優先級低于路由器23的優先級,轉步驟s208。
步驟s208,使與出現故障的鏈路對應的路由失效。即終端設備21使與網卡213對應的路由失效。
步驟s209,終端設備通過與沒有出現故障的鏈路對應的路由發送數據。即終端設備21通過路由器23向廣域網24發送數據,該數據的源地址為外部地址1.1.1.1。
以上所述僅是本發明的優選實施方式,應當指出,對于本技術領域的普通技術人員來說,在不脫離本發明原理的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也應視為本發明的保護范圍。
權利要求
1.一種具有多網卡終端設備的網絡層負載分擔方法,其特征在于,包括以下步驟A、配置終端設備中多網卡的地址信息;B、所述終端設備通過與所述多網卡對應連接的多個路由器并行發送數據。
2.如權利要求1所述具有多網卡終端設備的網絡層負載分擔方法,其特征在于,步驟A進一步包括A1、所述終端設備捆綁所述多網卡;A2、配置所述多網卡的外部地址;A3、分別配置每一個網卡的內部地址。
3.如權利要求2所述具有多網卡終端設備的網絡層負載分擔方法,其特征在于,步驟A2中所述多網卡的外部地址與和所述多網卡連接的路由器接口地址處于同一網段。
4.如權利要求2或3所述具有多網卡終端設備的網絡層負載分擔方法,其特征在于,當所述終端設備發送數據時,所述數據的源地址為所述多網卡的外部地址。
5.如權利要求2所述具有多網卡終端設備的網絡層負載分擔方法,其特征在于,步驟A3中所述每一個網卡的內部地址與所述多網卡的外部地址處于同一網段,且所述內部地址的網關為與所述網卡連接的路由器接口地址。
6.如權利要求1所述具有多網卡終端設備的網絡層負載分擔方法,其特征在于,步驟B之前還包括所述多個路由器在連接所述多網卡的接口上啟用虛擬路由冗余協議,且設置所述多個路由器的初始優先級相同。
7.如權利要求6所述具有多網卡終端設備的網絡層負載分擔方法,其特征在于,當所述路由器的上行接口出現故障時,降低所述路由器的優先級。
8.如權利要求1或7所述具有多網卡終端設備的網絡層負載分擔方法,其特征在于,步驟B進一步包括B1、判斷與每個網卡對應的鏈路是否出現故障,如果是,則轉步驟B2;否則轉步驟B3;B2、使與出現故障的鏈路對應的路由失效;B3、所述終端設備通過與沒有出現故障的鏈路對應的路由發送數據。
9.如權利要求8所述具有多網卡終端設備的網絡層負載分擔方法,其特征在于,步驟B1進一步包括B11、所述多個路由器分別向對應的網卡發送虛擬路由冗余協議消息;B12、判斷所述網卡是否接收到虛擬路由冗余協議消息;如果是,則轉步驟B13;否則轉步驟B14;B13、根據所述虛擬路由冗余協議消息,判斷所述路由器的優先級是否低于與其它網卡連接的路由器的優先級;如果是,則轉步驟B14;否則轉步驟B15;B14、與所述網卡對應的鏈路出現故障,轉步驟B2;B15、與所述網卡對應的鏈路正常,轉步驟B3。
10.一種具有多網卡終端設備的網絡層負載分擔系統,其特征在于,包括具有多網卡的終端設備、多個路由器和廣域網;其中所述具有多網卡的終端設備,通過所述多網卡分別與所述多個路由器對應連接,用于向所述廣域網發送數據;所述多個路由器,分別連接到所述廣域網,用于向所述終端設備發送虛擬路由冗余協議消息和轉發所述終端設備的數據到所述廣域網。
11.如權利要求10所述具有多網卡終端設備的網絡層負載分擔系統,其特征在于,所述具有多網卡的終端設備還包括網卡配置單元,與所述多網卡連接,用于配置所述多網卡的外部地址和每一個網卡的內部地址。
12.如權利要求10所述具有多網卡終端設備的網絡層負載分擔系統,其特征在于,所述具有多網卡的終端設備還包括故障檢測單元,與所述多網卡連接,用于檢測與每個網卡對應的鏈路是否出現故障;如果鏈路出現故障時,則使與所述鏈路對應的路由失效。
13.如權利要求12所述具有多網卡終端設備的網絡層負載分擔系統,其特征在于,所述鏈路故障包括所述網卡接收不到與其對應連接的路由器發送的虛擬路由冗余協議消息,或所述路由器的優先級低于與其它網卡連接的路由器的優先級。
14.一種終端設備,其特征在于,包括網卡配置單元和多網卡;其中,所述網卡配置單元,與所述多網卡連接,用于配置所述多網卡的外部地址和每一個網卡的內部地址,使所述終端設備通過與每個網卡對應的路由器并行發送數據。
15.如權利要求14所述終端設備,其特征在于,還包括故障檢測單元,與所述多網卡連接,用于檢測與每個網卡對應的鏈路是否出現故障;如果鏈路出現故障,則使與所述鏈路對應的路由失效。
16.如權利要求15所述終端設備,其特征在于,所述鏈路故障包括所述網卡接收不到與其對應連接的路由器發送的虛擬路由冗余協議消息,或所述路由器的優先級低于與其它網卡連接的路由器的優先級。
全文摘要
本發明公開了一種終端設備,包括網卡配置單元、故障檢測單元和多網卡,網卡配置單元和故障檢測單元分別與多網卡連接。本發明還公開了一種具有多網卡終端設備的網絡層負載分擔系統,包括具有多網卡的終端設備、多個路由器和廣域網。該終端設備通過多網卡分別與多個路由器對應連接;該多個路由器分別連接到廣域網。本發明還公開了一種具有多網卡終端設備的網絡層負載分擔方法,首先配置多網卡的地址信息,然后終端設備通過與多網卡連接的多個路由器并行發送數據。本發明實現了網絡層業務流的負載分擔,解決了VRRP對于某一個網段只能由主路由器進行轉發的缺陷。并且,本發明去掉組網中的二層交換機,避免了因為使用二層交換機而產生的單點故障。
文檔編號H04L12/66GK1925496SQ20061015214
公開日2007年3月7日 申請日期2006年9月15日 優先權日2006年9月15日
發明者周迪, 黃波 申請人:杭州華為三康技術有限公司