新四季網

處理路由下一跳的方法、裝置及網絡設備的製作方法

2023-05-31 12:47:31 1

處理路由下一跳的方法、裝置及網絡設備的製作方法
【專利摘要】本發明提供一種處理路由下一跳的方法、裝置及網絡設備。方法包括:當確定在硬體路由表中添加對應於雙棧用戶的第一鄰居的第一下一跳表項時,確定硬體路由表中是否存在關鍵字與第一下一跳表項相同的下一跳表項;如果不存在,則在硬體路由表中添加第一下一跳表項,並設置第一下一跳表項的狀態標識,使得第一下一跳表項僅對應第一鄰居;如果存在,則設置所述存在的下一跳表項的狀態標識,使得所述存在的下一跳表項同時對應於第一鄰居和第二鄰居;其中,第一鄰居是IPv4鄰居和IPv6鄰居中的一個,第二鄰居是另一個。本發明技術方案可以實現IPv4鄰居和IPv6鄰居共享下一跳表項,解決了硬體路由表中下一跳表項資源不足的問題。
【專利說明】處理路由下一跳的方法、裝置及網絡設備
【技術領域】
[0001]本發明涉及通信技木,尤其涉及ー種處理路由下一跳的方法、裝置及網絡設備。【背景技術】
[0002]隨著網際網路協議版本6 (Internet Protocol Version6,簡稱為IPv6)的推廣,網際網路協議版本4 (Internet Protocol Version4,簡稱為IPv4)/IPv6雙棧用戶越來越多。在IPv4/IPv6雙棧應用環境下,當設備學習到IPv4鄰居後,在硬體路由表的下一跳表項資源中添加對應的下一跳表項,當設備學習到IPv6鄰居後,同樣在硬體路由表的下一跳表項資源中添加對應的下一跳表項。
[0003]在大匯聚扁平化網絡環境中,如果ー個IPv4/IPv6雙棧用戶上線,則在大匯聚網關設備上面就要為該用戶添加IPv4的下一跳表項和IPv6的下一跳表項,這將導致大匯聚網關設備的硬體路由表中下一跳表項資源的不足。

【發明內容】

[0004]本發明提供ー種處理路由下一跳的方法、裝置及網絡設備,用以實現IPv4鄰居和IPv6鄰居共享下ー跳表項,解決硬體路由表中下一跳表項資源不足的問題。
[0005]第一方面提供ー種處理路由下一跳的方法,包括:
[0006]當確定在硬體路由表中添加第一下一跳表項時,確定所述硬體路由表中是否存在關鍵字與所述第一下一跳表項相同的下一跳表項;所述第一下一跳表項是指對應於雙棧用戶的第一鄰居的下一跳表項;
[0007]如果確定出所述硬體路由表中不存在關鍵字與所述第一下一跳表項相同的下一跳表項,在所述硬體路由表中添加所述第一下一跳表項,並設置添加到所述硬體路由表中的所述第一下一跳表項的狀態標識,使得添加到所述硬體路由表中的所述第一下一跳表項僅對應所述雙棧用戶的第一鄰居;
[0008]如果確定出所述硬體路由表中存在關鍵字與所述第一下一跳表項相同的下一跳表項,設置所述硬體路由表中存在的關鍵字與所述第一下一跳表項相同的下一跳表項的狀態標識,使得所述硬體路由表中存在的關鍵字與所述第一下一跳表項相同的下一跳表項同時對應於所述雙棧用戶的第一鄰居和所述雙棧用戶的第二鄰居;
[0009]其中,所述雙棧用戶的第一鄰居是所述雙棧用戶的IPv4鄰居和IPv6鄰居中的一個,所述雙棧用戶的第二鄰居是所述雙棧用戶的IPv4鄰居和IPv6鄰居中的另ー個。
[0010]第二方面提供ー種處理路由下一跳的裝置,包括:
[0011]確定模塊,用於在確定在硬體路由表中添加第一下一跳表項時,確定所述硬體路由表中是否存在關鍵字與所述第一下一跳表項相同的下一跳表項;所述第一下一跳表項是指對應於雙棧用戶的第一鄰居的下一跳表項;
[0012]添加模塊,用於在所述確定模塊確定出所述硬體路由表中不存在關鍵字與所述第一下一跳表項相同的下一跳表項時,在所述硬體路由表中添加所述第一下一跳表項,並設置添加到所述硬體路由表中的所述第一下一跳表項的狀態標識,使得添加到所述硬體路由表中的所述第一下一跳表項僅對應所述雙棧用戶的第一鄰居;
[0013]第一狀態設置模塊,用於在所述確定模塊確定出所述硬體路由表中存在關鍵字與所述第一下一跳表項相同的下一跳表項時,設置所述硬體路由表中存在的關鍵字與所述第一下一跳表項相同的下一跳表項的狀態標識,使得所述硬體路由表中存在的關鍵字與所述第一下一跳表項相同的下一跳表項同時對應於所述雙棧用戶的第一鄰居和所述雙棧用戶的第二鄰居;
[0014]其中,所述雙棧用戶的第一鄰居是所述雙棧用戶的IPv4鄰居和IPv6鄰居中的一個,所述雙棧用戶的第二鄰居是所述雙棧用戶的IPv4鄰居和IPv6鄰居中的另一個。
[0015]第三方面提供一種網絡設備,包括本發明第二方面提供的任一處理路由下一跳的裝置
[0016]本發明提供的處理路由下一跳的方法、裝置及網絡設備,當確定在硬體路由表中添加對應於雙棧用戶的第一鄰居的第一下一跳表項時,首先確定硬體路由表中是否存在關鍵字與該第一下一跳表項相同的下一跳表項,如果確定硬體路由表中不存在關鍵字與該第一下一跳表項相同的下一跳表項,則在硬體路由表中添加第一下一跳表項,並通過設置第一下一跳表項的狀態標識,使得第一下一跳表項僅對應於雙棧用戶的第一鄰居;如果確定硬體路由表中存在關鍵字與該第一下一跳表項相同的下一跳表項,則不在硬體路由表中添加第一下一跳表項,而是直接設置硬體路由表中存在的關鍵字與該第一下一跳表項相同的下一跳表項的狀態標識,使得硬體路由表中存在的關鍵字與該第一下一跳表項相同的下一跳表項同時對應於雙棧用戶的第一鄰居和第二鄰居,其中,雙棧用戶的第一鄰居是IPv4鄰居和IPv6鄰居中的一個,而第二鄰居是IPv4鄰居和IPv6鄰居中的另一個。由此可見,本發明通過設置硬體路由表中下一跳表項的狀態標識,可以實現IPv4鄰居和IPv6鄰居共享同一下一跳表項,有利於節約硬體路由表中的下一跳表項資源,在下一跳表項資源一定的情況下有利於帶動更多的用戶。
【專利附圖】

【附圖說明】
[0017]圖1為本發明實施例提供的一種處理路由下一跳的方法流程圖;
[0018]圖2為本發明實施例提供的一種處理路由下一跳的裝置結構示意圖;
[0019]圖3為本發明實施例提供的另一種處理路由下一跳的裝置結構示意圖。
【具體實施方式】
[0020]圖1為本發明實施例提供的一種處理路由下一跳的方法流程圖。如圖1所示,所述方法包括:
[0021]101、當確定在硬體路由表中添加第一下一跳表項時,確定所述硬體路由表中是否存在關鍵字與所述第一下一跳表項相同的下一跳表項,所述第一下一跳表項是指對應於雙棧用戶的第一鄰居的下一跳表項;如果確定結果為否,即確定出所述硬體路由表中不存在關鍵字與所述第一下一跳表項相同的下一跳表項,執行102 ;如果確定結果為是,即確定出所述硬體路由表中存在關鍵字與所述第一下一跳表項相同的下一跳表項,執行103。
[0022]102、在所述硬體路由表中添加所述第一下一跳表項,並設置添加到所述硬體路由表中的所述第一下一跳表項的狀態標識,使得添加到所述硬體路由表中的所述第一下一跳表項僅對應所述雙棧用戶的第一鄰居。
[0023]103、設置所述硬體路由表中存在的關鍵字與所述第一下一跳表項相同的下一跳表項的狀態標識,使得所述硬體路由表中存在的關鍵字與所述第一下一跳表項相同的下一跳表項同時對應於所述雙棧用戶的第一鄰居和所述雙棧用戶的第二鄰居;其中,所述雙棧用戶的第一鄰居是所述雙棧用戶的IPv4鄰居和IPv6鄰居中的一個,所述雙棧用戶的第二鄰居是所述雙棧用戶的IPv4鄰居和IPv6鄰居中的另一個。
[0024]本實施例提供的方法適用於IPv4/IPv6雙棧應用環境下對下一跳表項的處理。本實施例中的雙棧用戶是指既存在IPv4地址又存在IPv6地址的用戶,更有甚者,雙棧用戶可能存在多個IPv6臨時地址。對應於雙棧用戶的IPv4地址的鄰居,可稱為IPv4鄰居;對應於雙棧用戶的IPv6地址的鄰居,可稱為IPv6鄰居。
[0025]在本實施例中,無論是對對應於IPv4鄰居的下一跳表項的處理,還是對對應於IPv6鄰居的下一跳表項的處理,其處理過程均相同。為了描述上的統一和方便,本實施例以第一鄰居和第二鄰居代替雙棧用戶的IPv4鄰居和IPv6鄰居,其中,第一鄰居可以是雙棧用戶的IPv4鄰居和IPv6鄰居中的一個,則第二鄰居就是雙棧用戶的IPv4鄰居和IPv6鄰居的另一個。具體來說,如果第一鄰居是IPv4鄰居,則第二鄰居是IPv6鄰居;如果第一鄰居是IPv6鄰居,則第二鄰居就是IPv4鄰居。同時,為了簡化描述,將對應於雙棧用戶的第一鄰居的下一跳表項稱為第一下一跳表項。這裡的「第一」並沒有個數和先後順序的限定,僅僅是為了便於描述。
[0026]則當確定在硬體路由表中添加第一下一跳表項時,處理路由下一跳的裝置首先確定硬體路由表中是否存在關鍵字與所述第一下一跳表項相同的下一跳表項。其中,無論是對應於IPv4鄰居的下一跳表項還是對應於IPv6鄰居的下一跳表項,所關注的欄位主要包括:目的IP位址(dip),目的介質訪問控制(Media Access Control,簡稱為MAC)地址(dmac),出口(port),出 口所在的虛擬區域網(Virtual Local Area Network,簡稱為 V1AN)和符合該下一跳表項的報文的轉發行為(action)。其中,目的IP位址是鄰居的IP位址;目的MAC地址是鄰居的MAC地址;出口是指設備上向鄰居發送報文的接口 ;出口所在VLAN是設備上向鄰居發送報文的接口所在的VLAN。對應業務來說,dmac可以確定對應的鄰居,因此下一跳表項實際關注的欄位是dmac, port, vlan, action,這些欄位也就是本實施例所述的下一跳表項的關鍵字。
[0027]具體的,處理路由下一跳的裝置可以將第一下一跳表項的關鍵字和硬體路由表中存在的各個下一跳表項的關鍵字進行逐一比較,從而確定硬體路由表中是否存在關鍵字與第一下一跳表項相同的下一跳表項。在此說明,兩個下一跳表項的關鍵字相同是指兩個下一跳表項的dmac, port, vlan和action均相同。相應的,關鍵字與第一下一跳表項相同的下一跳表項是指dmac, port, vlan和action均與第一下一跳表項相同的下一跳表項。
[0028]如果確定硬體路由表中不存在關鍵字與第一下一跳表項相同的下一跳表項,說明硬體路由表中尚不存在該雙棧用戶對應於任何鄰居的下一跳表項,因此,處理路由下一跳的裝置在硬體路由表中添加第一下一跳表項,並設置添加到硬體路由表中的第一下一跳表項的狀態標識,使得添加到硬體路由表中的第一下一跳表項僅對應於雙棧用戶的第一鄰居。其中,因為第一下一跳表項是對應於第一鄰居的下一跳表項,並且此時硬體路由表中除了新添加的對應於第一鄰居的下一跳表項(即第一下一跳表項)之外,並不需要第二鄰居與第一鄰居共享該第一下一跳表項,因此此時第一下一跳表項僅對應於雙棧用戶的第一鄰居。例如,如果第一鄰居是IPv4鄰居,則處理路由下一跳的裝置可以設置第一下一跳表項的狀態標識為I,標識第一下一跳表項僅對應於IPv4鄰居;如果第一鄰居是IPv6鄰居,貝Ij處理路由下一跳的裝置可以設置第一下一跳表項的狀態標識為2,標識第一下一跳表項僅對應於IPv6鄰居。在此說明,處理路由下一跳的裝置設置第一下一跳表項的狀態標識,使得第一下一跳表項僅對應於第一鄰居的方式並不限於上述舉例,狀態標識還可以是其它的取值。
[0029]如果確定硬體路由表中存在關鍵字與第一下一跳表項相同的下一跳表項,說明硬體路由表中已經存在該雙棧用戶對應於第二鄰居的下一跳表項,為了使得第一鄰居和第二鄰居共享同一個下一跳表項,則處理路由下一跳的裝置設置硬體路由表中存在的關鍵字與第一下一跳表項相同的下一跳表項的狀態標識,使得硬體路由表中存在的關鍵字與第一下一跳表項相同的下一跳表項同時對應於雙棧用戶的第一鄰居和雙棧用戶的第二鄰居,而不在硬體路由表中添加第一下一跳表項,使得雙棧用戶的第一鄰居和第二鄰居共享同一下一跳表項。基於上述設置第一下一跳表項的狀態標識為I或2的舉例,處理路由下一跳的裝置可以設置硬體路由表中存在的關鍵字與第一下一跳表項相同的下一跳表項的狀態標識為3,標識該下一跳表項同時對應於IPv4鄰居和IPv6鄰居,但並不限於此。
[0030]下面通過【具體實施方式】對本實施例提供的技術方案做進一步說明。
[0031]首先,假設僅對應於IPv4鄰居的下一跳表項的狀態標識為1,僅對應於IPv6鄰居的下一跳表項的狀態標識為2,同時對應於IPv4鄰居和IPv6鄰居的下一跳表項的狀態標識為3。
[0032]則對於第一鄰居為IPv4鄰居、第二鄰居為IPv6鄰居的應用場景:如果硬體路由表中不存在對應於IPv6鄰居的下一跳表項,則當需要在硬體路由表中添加對應於IPv4鄰居的下一跳表項時,直接在硬體路由表中添加對應於IPv4鄰居的下一跳表項,並設置狀態標識為I ;如果硬體路由表中存在對應於IPv6鄰居的下一跳表項,此時該對應於IPv6鄰居的下一跳表項的狀態標識為2,則當需要在硬體路由表中添加對應於IPv4鄰居的下一跳表項時,直接將對應於IPv6鄰居的下一跳表項的狀態標識設置為3,使得該下一跳表項同時對應於IPv4鄰居和IPv6鄰居。
[0033]則對於第一鄰居為IPv6鄰居、第二鄰居為IPv4鄰居的應用場景:如果硬體路由表中不存在對應於IPv4鄰居的下一跳表項,則當需要在硬體路由表中添加對應於IPv6鄰居的下一跳表項時,直接在硬體路由表中添加對應於IPv6鄰居的下一跳表項,並設置狀態標識為2 ;如果硬體路由表中存在對應於IPv4鄰居的下一跳表項,此時該對應於IPv4鄰居的下一跳表項的狀態標識為1,則當需要在硬體路由表中添加對應於IPv6鄰居的下一跳表項時,直接將對應於IPv4鄰居的下一跳表項的狀態標識設置為3,使得該下一跳表項同時對應於IPv4鄰居和IPv6鄰居。
[0034]下面簡單介紹幾種確定需要在硬體路由表中添加第一下一跳表項的場景:
[0035]例如,當學習到第一鄰居時,確定需要在硬體路由表中添加對應於第一鄰居的下一跳表項(即所述的第一下一跳表項)。
[0036]又例如,當第一鄰居的報文轉發行為由丟棄(dorp)變為轉發(fwd)時,確定需要在硬體路由表中添加對應於第一鄰居的下一跳表項(即所述的第一下一跳表項)。
[0037]在本實施例中,通過設置硬體路由表中下一跳表項的狀態標識,可以實現IPv4鄰居和IPv6鄰居共享同一下一跳表項,有利於節約硬體路由表中的下一跳表項資源,在下一跳表項資源一定的情況下有利於帶動更多的用戶,尤其可以滿足大匯聚場景的需求。
[0038]進一步,本實施例提供的處理路由下一跳的方法除了包括添加下一跳路由表項之夕卜,還包括下一跳路由表項的更新、刪除等操作。下面分別對更新和刪除下一跳表項的過程進行說明。
[0039]對於下一跳表項的更新,觸發對下一跳表項進行更新的因素很多,不同因素觸發的更新處理並不相同。例如,觸發對下一跳表項進行更新的因素包括:鄰居的MAC地址發生變更,設備上發往鄰居的報文的出口(port)發生變更,出口所在線卡的ID (vid)發生變更,報文轉發行為(action)發生變更,等等。下面以對第一下一跳表項進行更新為例,針對不同的觸發因素分別進行說明。
[0040]當確定第一鄰居的MAC地址發生變更時,直接將硬體路由表中第一下一跳表項中的目的MAC地址更新為第一鄰居的變更後的目的MAC地址。
[0041]當確定向第一鄰居發送報文的接口發生變更時,將所述硬體路由表中所述第一下一跳表項中的出口更新為所述變更後的接口。
[0042]當確定向第一鄰居發送報文的接口所在線卡的ID發生變更時,將所述硬體路由表中所述第一下一跳表項中的出口所在線卡的ID更新為所述接口所在線卡的變更後的ID0
[0043]當確定第一鄰居的報文轉發行為由轉發變更為丟棄時,獲取所述第一下一跳表項的狀態標識;如果所述第一下一跳表項的狀態標識標識所述第一下一跳表項僅對應所述雙棧用戶的第一鄰居,則直接從所述硬體路由表中刪除所述第一下一跳表項;如果所述第一下一跳表項的狀態標識標識所述第一下一跳表項同時對應於所述雙棧用戶的第一鄰居和所述雙棧用戶的第二鄰居,則設置所述第一下一跳表項的狀態標識,使得所述第一下一跳表項僅對應於所述雙棧用戶的第二鄰居;如果所述第一下一跳表項的狀態標識標識所述第一下一跳表項僅對應於所述雙棧用戶的第二鄰居,則返回錯誤。
[0044]具體的,第一鄰居的報文轉發行為由轉發變更為丟棄,說明需要將第一鄰居對應的下一跳表項(即第一下一跳表項)刪除。由於在本實施例中,第一下一跳表項可能同時對應於第一鄰居和第二鄰居,於是需要基於第一下一跳表項的狀態標識對第一下一跳表項進行刪除。因此,在確定第一鄰居的報文轉發行為由轉發變更為丟棄時,處理路由下一跳的裝置獲取所述第一下一跳表項的狀態標識;然後判斷第一下一跳表項的狀態標識所標識的第一下一跳表項的狀態。如果所述第一下一跳表項的狀態標識標識所述第一下一跳表項僅對應所述雙棧用戶的第一鄰居,說明第一下一跳表項沒有被第二鄰居共享,於是處理路由下一跳的裝置直接從所述硬體路由表中刪除所述第一下一跳表項。如果所述第一下一跳表項的狀態標識標識所述第一下一跳表項同時對應於所述雙棧用戶的第一鄰居和所述雙棧用戶的第二鄰居,說明第一下一跳表項同時被第一鄰居和第二鄰居共享,雖然此時該第一下一跳表項不再對應於第一鄰居,但該下一跳表項仍對應於第二鄰居,於是處理路由下一跳的裝置不能從硬體表項中刪除該第一下一跳表項,而僅是設置第一下一跳表項的狀態標識,使得第一下一跳表項僅對應於雙棧用戶的第二鄰居。如果第一下一跳表項的狀態標識標識第一下一跳表項僅對應於雙棧用戶的第二鄰居,意味著硬體路由表中並不存在第一鄰居對應的下一跳表項,但卻需要刪除第一鄰居對應的下一跳表項,所以會發生錯誤。
[0045]對於下一跳表項的刪除,觸發對下一跳表項進行刪除的因素很多,例如鏈路故障、表項老化等。下面以第一下一跳表項為例,說明對下一跳表項的刪除過程,包括:
[0046]當確定要從所述硬體路由表中刪除所述第一下一跳表項時,獲取所述第一下一跳表項的狀態標識;如果所述第一下一跳表項的狀態標識標識所述第一下一跳表項僅對應所述雙棧用戶的第一鄰居,則直接從所述硬體路由表中刪除所述第一下一跳表項;如果所述第一下一跳表項的狀態標識標識所述第一下一跳表項同時對應於所述雙棧用戶的第一鄰居和所述雙棧用戶的第二鄰居,則設置所述第一下一跳表項的狀態標識,使得所述第一下一跳表項僅對應於所述雙棧用戶的第二鄰居;如果所述第一下一跳表項的狀態標識標識所述第一下一跳表項僅對應於所述雙棧用戶的第二鄰居,則返回錯誤。
[0047]下面通過【具體實施方式】對刪除下一跳表項的過程做進一步說明。
[0048]首先,假設僅對應於IPv4鄰居的下一跳表項的狀態標識為1,僅對應於IPv6鄰居的下一跳表項的狀態標識為2,同時對應於IPv4鄰居和IPv6鄰居的下一跳表項的狀態標識為3。
[0049]對於第一鄰居為IPv4鄰居,第二鄰居為IPv6鄰居的場景:當刪除IPv4鄰居對應的下一跳表項時,查看該下一跳表項的狀態標識,如果需要刪除的該IPv4鄰居對應的下一跳表項的狀態標識為1,說明硬體路由表中IPv4鄰居對應的下一跳表項未被雙棧用戶的IPv6鄰居共享,於是直接從硬體路由表中刪除該IPv4鄰居對應的下一跳表項;如果需要刪除的該IPv4鄰居對應的下一跳表項的狀態標識為3,說明硬體路由表中該IPv4鄰居對應的下一跳表項同時被雙棧用戶的IPv4鄰居和IPv6鄰居共享,則此時不能刪除該下一跳表項,而是通過將該下一跳表項的狀態標識修改為2,使得該下一跳表項僅對應於IPv6鄰居,從而實現刪除IPv4鄰居對應的下一跳表項的目的;如果需要刪除的該IPv4鄰居對應的下一跳表項的狀態標識為2,說明硬體路由表中的該下一跳表項僅對應於IPv6鄰居,並未被IPv4鄰居共享,所以此時刪除對應於IPv4鄰居的下一跳表項就會出錯,於是返回錯誤。
[0050]對於第一鄰居為IPv6鄰居,第二鄰居為IPv4鄰居的場景:當刪除IPv6鄰居對應的下一跳表項時,查看該下一跳表項的狀態標識,如果需要刪除的該IPv6鄰居對應的下一跳表項的狀態標識為2,說明硬體路由表中IPv6鄰居對應的下一跳表項未被雙棧用戶的IPv4鄰居共享,於是直接從硬體路由表中刪除該IPv6鄰居對應的下一跳表項;如果需要刪除的該IPv6鄰居對應的下一跳表項的狀態標識為3,說明硬體路由表中該IPv6鄰居對應的下一跳表項同時被雙棧用戶的IPv6鄰居和IPv4鄰居共享,則此時不能刪除該下一跳表項,而是通過將該下一跳表項的狀態標識修改為I,使得該下一跳表項僅對應於IPv4鄰居,從而實現刪除IPv6鄰居對應的下一跳表項的目的;如果需要刪除的該IPv6鄰居對應的下一跳表項的狀態標識為1,說明硬體路由表中的該下一跳表項僅對應於IPv4鄰居,並未被IPv6鄰居共享,所以此時刪除對應於IPv6鄰居的下一跳表項就會出錯,於是返回錯誤。
[0051]由上述可見,本實施例通過設置硬體路由表中下一跳表項的狀態標識,可以實現IPv4鄰居和IPv6鄰居共享同一下一跳表項,有利於節約硬體路由表中的下一跳表項資源,在下一跳表項資源一定的情況下有利於帶動更多的用戶,尤其可以滿足大匯聚場景的需求。同時,本實施例通過修改硬體路由表中下一跳表項的狀態標識,實現對共享同一下一跳表項的更新和刪除等操作。
[0052]圖2為本發明實施例提供的一種處理路由下一跳的裝置結構示意圖。如圖2所示,所述裝置包括:確定模塊21、添加模塊22和第一狀態設置模塊23。
[0053]確定模塊21,用於在確定在硬體路由表中添加第一下一跳表項時,確定所述硬體路由表中是否存在關鍵字與所述第一下一跳表項相同的下一跳表項;所述第一下一跳表項是指對應於雙棧用戶的第一鄰居的下一跳表項。
[0054]可選的,確定模塊21用於確定在硬體路由表中添加第一下一跳表項,包括:確定模塊21具體用於在學習到所述第一鄰居時,確定要在所述硬體路由表中添加所述第一下一跳表項;和/或,在所述第一鄰居的報文轉發行為由丟棄變為轉發時,確定要在所述硬體路由表中添加所述第一下一跳表項。
[0055]添加模塊22,與確定模塊21連接,用於在確定模塊21確定出所述硬體路由表中不存在關鍵字與所述第一下一跳表項相同的下一跳表項時,在所述硬體路由表中添加所述第一下一跳表項,並設置添加到所述硬體路由表中的所述第一下一跳表項的狀態標識,使得添加到所述硬體路由表中的所述第一下一跳表項僅對應所述雙棧用戶的第一鄰居。
[0056]第一狀態設置模塊23,與確定模塊22連接,用於在確定模塊22確定出所述硬體路由表中存在關鍵字與所述第一下一跳表項相同的下一跳表項時,設置所述硬體路由表中存在的關鍵字與所述第一下一跳表項相同的下一跳表項的狀態標識,使得所述硬體路由表中存在的關鍵字與所述第一下一跳表項相同的下一跳表項同時對應於所述雙棧用戶的第一鄰居和所述雙棧用戶的第二鄰居。
[0057]在本實施例中,所述雙棧用戶的第一鄰居是所述雙棧用戶的IPv4鄰居和IPv6鄰居中的一個,所述雙棧用戶的第二鄰居是所述雙棧用戶的IPv4鄰居和IPv6鄰居中的另一個。
[0058]在本實施例中,所述第一下一跳表項的關鍵字包括:目的MAC地址、出口、出口所在VLAN和轉發行為,但不限於此。在此說明,兩個下一跳表項的關鍵字相同是指兩個下一跳表項的目的MAC地址、出口、出口所在VLAN和轉發行為均相同。相應的,關鍵字與第一下一跳表項相同的下一跳表項是指目的MAC地址、出口、出口所在VLAN和轉發行為均與第一下一跳表項相同的下一跳表項。
[0059]上述確定模塊21、添加模塊22和第一狀態設置模塊23用於完成第一下一跳表項的添加操作。
[0060]進一步,如圖3所示,所述裝置還包括:獲取模塊31、刪除模塊32、第二狀態設置模塊33和錯誤處理模塊34。
[0061]獲取模塊31,用於在確定所述第一鄰居的報文轉發行為由轉發變更為丟棄時或者在確定要從所述硬體路由表中刪除所述第一下一跳表項時,獲取所述第一下一跳表項的狀態標識。可選的,獲取模塊31與第一狀態設置模塊23連接。
[0062]刪除模塊32,與獲取模塊31連接,用於在獲取模塊31獲取的所述第一下一跳表項的狀態標識標識所述第一下一跳表項僅對應所述雙棧用戶的第一鄰居時,直接從所述硬體路由表中刪除所述第一下一跳表項。
[0063]第二狀態設置模塊33,與獲取模塊31連接,用於在獲取模塊31獲取的所述第一下一跳表項的狀態標識標識所述第一下一跳表項同時對應於所述雙棧用戶的第一鄰居和所述雙棧用戶的第二鄰居時,設置所述第一下一跳表項的狀態標識,使得所述第一下一跳表項僅對應於所述雙棧用戶的第二鄰居。
[0064]錯誤處理模塊34,與獲取模塊31連接,用於在獲取模塊31獲取的所述第一下一跳表項的狀態標識標識所述第一下一跳表項僅對應於所述雙棧用戶的第二鄰居時,返回錯誤。
[0065]上述獲取模塊31、刪除模塊32、第二狀態設置模塊33和錯誤處理模塊34用於在第一鄰居的報文轉發行為由轉發變更為丟棄時,完成對第一下一跳表項的更新操作。或者,上述獲取模塊31、刪除模塊32、第二狀態設置模塊33和錯誤處理模塊34用於在需要從硬體路由表中刪除第一下一跳表項時,完成對第一下一跳表項的刪除操作。
[0066]進一步,如圖3所示,所述裝置還包括:更新模塊35。更新模塊35,用於在確定所述第一鄰居的MAC地址發生變更時,將所述硬體路由表中所述第一下一跳表項中的目的MAC地址更新為所述第一鄰居的變更後的MAC地址;或者,在確定向所述第一鄰居發送報文的接口發生變更時,將所述硬體路由表中所述第一下一跳表項中的出口更新為所述變更後的接口;或者,在確定向所述第一鄰居發送報文的接口所在線卡的ID發生變更時,將所述硬體路由表中所述第一下一跳表項中的出口所在線卡的ID更新為所述接口所在線卡的變更後的ID。可選的,更新模塊34與添加模塊22連接。
[0067]上述更新模塊35具體完成由其它因素引起的第一下一跳表現的更新操作。
[0068]本實施例提供的處理路由下一跳的裝置的各功能模塊可用於執行圖1所示方法實施例的流程,其具體工作原理不再贅述,詳見方法實施例的描述。
[0069]本實施例提供的處理路由下一跳的裝置,通過設置硬體路由表中下一跳表項的狀態標識,可以實現IPv4鄰居和IPv6鄰居共享同一下一跳表項,有利於節約硬體路由表中的下一跳表項資源,在下一跳表項資源一定的情況下有利於帶動更多的用戶。
[0070]本發明實施例提供一種網絡設備,包括上述實施例提供的處理理由下一跳的裝置。本實施例提供的網絡設備可以是大匯聚網絡中的網關設備,但不限於此。
[0071]本領域普通技術人員可以理解:實現上述各方法實施例的全部或部分步驟可以通過程序指令相關的硬體來完成。前述的程序可以存儲於一計算機可讀取存儲介質中。該程序在執行時,執行包括上述各方法實施例的步驟;而前述的存儲介質包括:R0M、RAM、磁碟或者光碟等各種可以存儲程序代碼的介質。
[0072]最後應說明的是:以上各實施例僅用以說明本發明的技術方案,而非對其限制;儘管參照前述各實施例對本發明進行了詳細的說明,本領域的普通技術人員應當理解:其依然可以對前述各實施例所記載的技術方案進行修改,或者對其中部分或者全部技術特徵進行等同替換;而這些修改或者替換,並不使相應技術方案的本質脫離本發明各實施例技術方案的範圍。
【權利要求】
1.ー種處理路由下一跳的方法,其特徵在於,包括: 當確定在硬體路由表中添加第一下一跳表項時,確定所述硬體路由表中是否存在關鍵字與所述第一下一跳表項相同的下一跳表項;所述第一下一跳表項是指對應於雙棧用戶的第一鄰居的下一跳表項; 如果確定出所述硬體路由表中不存在關鍵字與所述第一下一跳表項相同的下一跳表項,在所述硬體路由表中添加所述第一下一跳表項,並設置添加到所述硬體路由表中的所述第一下一跳表項的狀態標識,使得添加到所述硬體路由表中的所述第一下一跳表項僅對應所述雙棧用戶的第一鄰居; 如果確定出所述硬體路由表中存在關鍵字與所述第一下一跳表項相同的下一跳表項,設置所述硬體路由表中存在的關鍵字與所述第一下一跳表項相同的下一跳表項的狀態標識,使得所述硬體路由表中存在的關鍵字與所述第一下一跳表項相同的下一跳表項同時對應於所述雙棧用戶的第一鄰居和所述雙棧用戶的第二鄰居; 其中,所述雙棧用戶的第一鄰居是所述雙棧用戶的IPv4鄰居和IPv6鄰居中的ー個,所述雙棧用戶的第二鄰居是所述雙棧用戶的IPv4鄰居和IPv6鄰居中的另ー個。
2.根據權利要求1所述的方法,其特徵在於,還包括: 當確定所述第一鄰居的報文轉發行為由轉發變更為丟棄時或者當確定要從所述硬體路由表中刪除所述第一下一跳表項時,獲取所述第一下一跳表項的狀態標識; 如果所述第一下一跳表項的狀態標識標識所述第一下一跳表項僅對應所述雙棧用戶的第一鄰居,則直接從所述硬體路由表中刪除所述第一下一跳表項; 如果所述第一下一跳表項的狀態標識標識所述第一下一跳表項同時對應於所述雙棧用戶的第一鄰居和所述雙棧用戶的第二鄰居,則設置所述第一下一跳表項的狀態標識,使得所述第一下一跳表項僅對 應於所述雙棧用戶的第二鄰居; 如果所述第一下一跳表項的狀態標識標識所述第一下一跳表項僅對應於所述雙棧用戶的第二鄰居,則返回錯誤。
3.根據權利要求1所述的方法,其特徵在於,還包括: 當確定所述第一鄰居的介質訪問控制MAC地址發生變更時,將所述硬體路由表中所述第一下一跳表項中的目的MAC地址更新為所述第一鄰居的變更後的MAC地址;或者 當確定向所述第一鄰居發送報文的接ロ發生變更時,將所述硬體路由表中所述第一下一跳表項中的出口更新為所述變更後的接ロ ;或者 當確定向所述第一鄰居發送報文的接ロ所在線卡的標識ID發生變更時,將所述硬體路由表中所述第一下一跳表項中的出口所在線卡的ID更新為所述接ロ所在線卡的變更後的ID。
4.根據權利要求1或2或3所述的方法,其特徵在於,所述確定在硬體路由表中添加第一下一跳表項,包括: 當學習到所述第一鄰居時,確定要在所述硬體路由表中添加所述第一下一跳表項;和/或 當所述第一鄰居的報文轉發行為由丟棄變為轉發時,確定要在所述硬體路由表中添加所述第一下一跳表項。
5.根據權利要求1或2或3所述的方法,其特徵在於,所述第一下一跳表項的關鍵字包括:目的MAC地址、出ロ、出ロ所在虛擬區域網VLAN和轉發行為。
6.ー種處理路由下一跳的裝置,其特徵在於,包括: 確定模塊,用於在確定在硬體路由表中添加第一下一跳表項時,確定所述硬體路由表中是否存在關鍵字與所述第一下一跳表項相同的下一跳表項;所述第一下一跳表項是指對應於雙棧用戶的第一鄰居的下一跳表項; 添加模塊,用於在所述確定模塊確定出所述硬體路由表中不存在關鍵字與所述第一下一跳表項相同的下一跳表項時,在所述硬體路由表中添加所述第一下一跳表項,並設置添加到所述硬體路由表中的所述第一下一跳表項的狀態標識,使得添加到所述硬體路由表中的所述第一下一跳表項僅對應所述雙棧用戶的第一鄰居; 第一狀態設置模塊,用於在所述確定模塊確定出所述硬體路由表中存在關鍵字與所述第一下一跳表項相同的下一跳表項時,設置所述硬體路由表中存在的關鍵字與所述第一下一跳表項相同的下一跳表項的狀態標識,使得所述硬體路由表中存在的關鍵字與所述第一下一跳表項相同的下一跳表項同時對應於所述雙棧用戶的第一鄰居和所述雙棧用戶的第二鄰居; 其中,所述雙棧用戶的第一鄰居是所述雙棧用戶的IPv4鄰居和IPv6鄰居中的ー個,所述雙棧用戶的第二鄰居是所述雙棧用戶的IPv4鄰居和IPv6鄰居中的另ー個。
7.根據權利要求6所述的裝置,其特徵在於,還包括: 獲取模塊,用於在確定所述第一鄰居的報文轉發行為由轉發變更為丟棄時或者在確定要從所述硬體路由表中刪除所述第一下一跳表項時,獲取所述第一下一跳表項的狀態標識; 刪除模塊,用於在所述第一獲取模塊獲取的所述第一下一跳表項的狀態標識標識所述第一下一跳表項僅對應所述 雙棧用戶的第一鄰居時,直接從所述硬體路由表中刪除所述第一下一跳表項; 第二狀態設置模塊,用於在所述第一獲取模塊獲取的所述第一下一跳表項的狀態標識標識所述第一下一跳表項同時對應於所述雙棧用戶的第一鄰居和所述雙棧用戶的第二鄰居時,設置所述第一下一跳表項的狀態標識,使得所述第一下一跳表項僅對應於所述雙棧用戶的第二鄰居; 錯誤處理模塊,用於在所述第一獲取模塊獲取的所述第一下一跳表項的狀態標識標識所述第一下一跳表項僅對應於所述雙棧用戶的第二鄰居時,返回錯誤。
8.根據權利要求6所述的裝置,其特徵在於,還包括: 更新模塊,用於在確定所述第一鄰居的介質訪問控制MAC地址發生變更時,將所述硬體路由表中所述第一下一跳表項中的目的MAC地址更新為所述第一鄰居的變更後的MAC地址;或者,在確定向所述第一鄰居發送報文的接ロ發生變更時,將所述硬體路由表中所述第一下一跳表項中的出口更新為所述變更後的接ロ ;或者,在確定向所述第一鄰居發送報文的接ロ所在線卡的標識ID發生變更時,將所述硬體路由表中所述第一下一跳表項中的出ロ所在線卡的ID更新為所述接ロ所在線卡的變更後的ID。
9.根據權利要求6或7或8所述的裝置,其特徵在於,所述確定模塊用於確定在硬體路由表中添加第一下一跳表項,包括: 所述確定模塊具體用於在學習到所述第一鄰居時,確定要在所述硬體路由表中添加所述第一下一跳表項,和/或,在所述第一鄰居的報文轉發行為由丟棄變為轉發時,確定要在所述硬體路由表中添加所述第一下一跳表項。
10.根據權利要求6或7或8所述的裝置,其特徵在於,所述第一下一跳表項的關鍵字包括:目的MAC地址、出ロ、出ロ所在虛擬區域網VLAN和轉發行為。
11.ー種網絡設備,其特徵在於,包括權利要求6-10任ー項所述的處理路由下一跳的裝置。·
【文檔編號】H04L12/781GK103457864SQ201310378866
【公開日】2013年12月18日 申請日期:2013年8月27日 優先權日:2013年8月27日
【發明者】陳杰, 熊昭榮 申請人:福建星網銳捷網絡有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀