欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

用于接入層交換機的基于端口的負載共享的制作方法

文檔序號:7608671閱讀:183來源:國知局
專利名稱:用于接入層交換機的基于端口的負載共享的制作方法
技術領域
本發(fā)明涉及網絡,更具體而言,涉及在接入層衛(wèi)星交換機和分發(fā)層交換機之間的冗余鏈路的負載共享。
背景技術
為了提供更好的網絡可靠性,在網絡中經常包括冗余的交換機和鏈路。如果交換機或鏈路發(fā)生故障,則已經處于網絡中的冗余交換機或鏈路可以快速地被啟用以取代發(fā)生故障的交換機或鏈路。由于冗余交換機或鏈路一般可以比故障組件可被取代或修復更快地被啟用作為替代物,因此具有冗余鏈路和/或交換機可以提供更可靠的網絡。
當冗余組件被包括在網絡中時,經常希望在相應組件的故障之前的正常網絡操作期間能夠使用冗余組件。例如,如果兩條鏈路被實現在布線柜中的接入層交換機(這里稱為衛(wèi)星交換機)和一組分發(fā)層交換機之間,則希望使用這兩條鏈路(而不是使一條鏈路空閑)來提供更大的帶寬。然而,使用這兩條鏈路會導致不希望出現的橋接環(huán)路。
當在兩個LAN(局域網)之間有多條路徑并且這些路徑中的每一條都被用來發(fā)送相同分組的拷貝時,會出現橋接環(huán)路。這可以導致分組被發(fā)送到的設備接收到分組的多個拷貝。如果分組正被廣播,則使用多條路徑可能導致這樣的情形,即分組被無休止地轉發(fā),從而消耗了可用網絡帶寬中的顯著一部分,并且阻擋了其他分組的傳輸。橋接環(huán)路還可能通過干擾網絡設備正確地學習網絡配置的能力而導致網絡發(fā)生問題。一般地,網絡設備通過“學習”哪一個LAN包括特定客戶端設備而進行操作,該“學習”是通過跟蹤網絡設備的哪個端口接收到由客戶端設備發(fā)送的分組而實現的。例如,如果相同分組的拷貝經由多條路徑被發(fā)送到多個不同的網絡設備,則這些網絡設備之一可以進而將其拷貝轉發(fā)回網絡設備中的另一個,這另一個網絡設備已經直接從客戶端設備接收到分組的拷貝。結果,這另一個網絡設備接收到分組的兩份拷貝,并且不正確地更新其轉發(fā)信息以指示網絡設備應當經由接收到分組的第二份拷貝的端口與客戶端設備通信。然而,相反地,網絡設備的轉發(fā)信息應當指示網絡設備應當經由直接從客戶端設備接收到分組的第一份拷貝的端口與客戶端設備通信。這種不正確的轉發(fā)信息使得網絡設備在隨后試圖與客戶端設備通信時使用錯誤的端口,這可能導致效率低下,甚至引發(fā)通信中的故障。
為了避免由于使用冗余鏈路而導致的橋接環(huán)路,可以使用STP(生成樹協議)。一般來說,STP標識給定網絡節(jié)點對之間的多條路徑,并阻擋這些路徑中除一條以外的所有路徑。從而,STP在防止橋接環(huán)路的同時,還可防止網絡節(jié)點之間冗余鏈路的使用。基于每個VLAN(虛擬局域網)操作的STP的更新版本提供了更好的解決方案(VLAN在邏輯上將單個物理LAN劃分為多個邏輯LAN)。利用每VLAN的STP,對于一個或多個VLAN的一個集合,可以阻擋一條冗余鏈路,而對于VLAN的另一集合,可阻擋另一條冗余鏈路。從而,如果實現了多個VLAN,則這兩條冗余鏈路都可以被使用,并且可以避免每個VLAN的橋接環(huán)路。然而,這種解決方案只可用于有多個VLAN的情況下。如果未實現多個VLAN,則避免橋接環(huán)路的這兩條冗余鏈路的有效使用可能很困難。另外,由每VLAN的STP提供的負載平衡的粒度受限于VLAN的數目。如果一個VLAN承載的流量明顯比其他VLAN多,則由每VLAN的STP提供的負載平衡也可能嚴重失衡。如上所述,現有技術無法提供在某些情形中所需的冗余資源的占用。

發(fā)明內容
本發(fā)明公開了用于在衛(wèi)星交換機中執(zhí)行基于端口的負載共享的系統和方法的各種實施例。這些系統和方法可用來實現比其他方式更好的冗余資源的使用。
一種方法可以包括接收分組(例如,經由衛(wèi)星交換機中的端口或上行鏈路接口)并在一個或多個端口和若干上行鏈路接口之一之間傳送分組。這一個或多個端口和上行鏈路接口彼此關聯。該關聯過程可以獨立于VLAN(虛擬局域網)。作為示例,在一個實施例中,這種方法可以包括經由第一端口接收第一分組;經由第一上行鏈路接口將第一分組傳送到分發(fā)層;經由第二端口接收第二分組;以及經由第二上行鏈路接口將第二分組傳送到分發(fā)層,其中第一上行鏈路接口與第一端口相關聯,第二上行鏈路接口與第二端口相關聯。第一端口可以關聯到與第二端口相同的VLAN。通過僅在關聯的端口和上行鏈路接口之間傳輸分組,可以避免不希望出現的橋接環(huán)路。若干端口可以與相同的上行鏈路接口相關聯,若干上行鏈路接口可以與相同的端口相關聯。
在某些實施例中,一種系統包括若干端口、若干上行鏈路接口和被配置為在端口和上行鏈路接口之間傳送分組的本地目標代理。本地目標代理被配置為在端口之一和上行鏈路接口之一之間傳送分組。所述端口之一和上行鏈路接口之一是彼此關聯的(例如,通過被分配到相同的虛擬線路卡)。與不同VLAN相關聯的端口可以被分配到相同的虛擬線路卡。
本地目標代理可以使用添加到經由上行鏈路接口之一接收到的每個分組的轉發(fā)索引來選擇端口中從其輸出每個分組的一個或多個端口。如果添加了第一轉發(fā)索引的第一分組是經由上行鏈路接口之一接收到的,則本地目標代理選擇端口中的一個集合。然而,如果添加了第一轉發(fā)索引的第二分組是經由多個上行鏈路接口中的另一不同的上行鏈路接口接收到的,則本地目標代理被配置為選擇端口中的另一不同集合。換句話說,相同的轉發(fā)索引可以依賴于哪一個上行鏈路接口接收到該轉發(fā)信息而被不同地使用。
實現本地目標代理的軟件可被存儲在計算機可讀介質上。這種軟件可被配置為檢測網絡設備對分組的接收,該網絡設備包括若干端口和若干上行鏈路接口。該軟件可以在一個或多個端口和上行鏈路接口中的一個相關上行鏈路接口之間傳送分組。
前述內容是對本發(fā)明的概括,因此必要地包含細節(jié)的簡化、概括和省略;因此,本領域技術人員將意識到,該概括僅是示例性的,不應當以任何方式作為限制。這里公開的操作可以以多種方式實現,并且在不脫離本發(fā)明和其更廣泛的意義的前提下可以進行這樣的變化和修改。僅由權利要求限定的本發(fā)明的其他方面會在下面給出的非限制性具體實施方式
中變得清楚。


通過參考下面的描述和附圖可以更完整地理解本發(fā)明,在附圖中,相似的標號指示相似的特征。
圖1是根據一個實施例包括若干分發(fā)層交換機和若干接入層衛(wèi)星交換機的網絡的框圖。
圖2圖示了根據一個實施例通過若干鏈路耦合到分發(fā)層的衛(wèi)星交換機。
圖3A是根據一個實施例的衛(wèi)星交換機的框圖,其示出了衛(wèi)星交換機是如何被劃分為若干虛擬線路卡的,其中每個虛擬線路卡充當不同分發(fā)層交換機的虛擬線路卡。
圖3B示出了根據一個實施例實現在衛(wèi)星交換機中的每個虛擬線路卡是如何表現得好像它們被物理地包括在分配虛擬線路卡的分發(fā)層交換機中一樣。
圖3C示出了根據一個實施例將衛(wèi)星交換機端口分配到特定虛擬線路卡的端口專有寄存器的內容示例。
圖4是在衛(wèi)星交換機中執(zhí)行基于端口的負載共享的方法的一個實施例的流程圖。
圖5是根據一個實施例將若干衛(wèi)星交換機端口中的每一個與衛(wèi)星交換機上行鏈路接口相關聯的方法的流程圖。
圖6A是根據一個實施例將分組從衛(wèi)星交換機轉發(fā)到分發(fā)層的方法的流程圖。
圖6B是根據一個實施例將分組從衛(wèi)星交換機轉發(fā)到客戶端設備的方法的流程圖。
圖7是根據一個實施例包括在衛(wèi)星交換機中的本地目標單元的框圖。
圖8是根據一個實施例操作衛(wèi)星交換機的方法的流程圖,該衛(wèi)星交換機利用虛擬線路卡專有的掩碼(mask)來實現基于端口的負載共享,以確保包括在不同虛擬線路卡中的端口和上行鏈路不直接傳輸分組。
圖9A是根據另一個實施例包括在衛(wèi)星交換機中的本地目標單元的框圖。
圖9B圖示了根據一個實施例由分發(fā)層交換機生成的轉發(fā)索引是如何被衛(wèi)星交換機修改以確保包括在不同虛擬線路卡中的端口和上行鏈路不直接傳輸分組的。
圖10是根據另一實施例操作衛(wèi)星交換機的方法的另一流程圖,該衛(wèi)星交換機實現了基于端口的負載共享,以確保包括在不同虛擬線路卡中的端口和上行鏈路不直接傳輸分組。
圖11A是根據一個實施例將多條上行鏈路分配到相同的虛擬線路卡的衛(wèi)星交換機的框圖。
圖11B圖示了根據一個實施例可用在將多條上行鏈路分配到相同的虛擬線路卡的衛(wèi)星交換機中的本地目標掩碼。
圖12是根據一個實施例的衛(wèi)星交換機的框圖,其示出了如何可以在運行在交換機上的軟件中實現本地目標代理。
本發(fā)明容許具有各種修改和替換形式,本發(fā)明的特定實施例被提供在附圖和具體實施方式
中作為示例。應當理解,附圖和具體實施方式
并不是要將本發(fā)明限制在公開的特定形式。相反地,本發(fā)明要覆蓋落在所附權利要求限定的本發(fā)明的精神和范圍內的所有修改、等同物和替換。
具體實施例方式
圖1示出了網絡100的框圖,網絡100包括若干分發(fā)層交換機110A-110n(統稱為分發(fā)層交換機110)和若干衛(wèi)星交換機150A-150n(統稱為衛(wèi)星交換機150)。網絡100被配置為包括核心層(未示出)、分發(fā)層(包括分發(fā)層交換機110)和接入層(包括衛(wèi)星交換機150)的多層校園網。
分發(fā)層交換機是駐留在網絡中的分發(fā)層上的交換機。換句話說,它是與接入層交換機相對的交換機。分發(fā)層交換機110執(zhí)行OSI(開放式系統互連)第2層和/或第3層交換。
衛(wèi)星交換機是駐留在網絡的接入層上的交換機。在許多實施例中,衛(wèi)星交換機不支持本地交換。例如,在某些實施例中,衛(wèi)星交換機150位于分發(fā)層交換機110上以執(zhí)行第2層轉發(fā)功能,第2層轉發(fā)功能用來確定如何交換分組(在圖7-10中提供了這種實施例的示例)。
注意,在本公開文件中,由相同標號(例如,分發(fā)層交換機110A-110n)標識的附圖特征共同由該標號自身(例如,分發(fā)層交換機110)指代。此外,盡管本發(fā)明是在圖1-12所示的具體示例的上下文中描述的,但是本發(fā)明并不限于用在這些上下文中。
分發(fā)層交換機110通過網絡100彼此耦合。分發(fā)層交換機110可以彼此直接耦合(例如,一個分發(fā)層交換機直接耦合到另一個分發(fā)層交換機并與之通信),或者通過核心層交換機(未示出)耦合(例如,一對分發(fā)層交換機經由核心層交換機彼此耦合并進行通信)。
衛(wèi)星交換機150中每一個都通過鏈路102耦合到至少兩個分發(fā)層交換機110。許多分發(fā)層交換機被包括在內以提供冗余。例如,分發(fā)層交換機110A和110B彼此是冗余的。如果分發(fā)層交換機110A發(fā)生故障,則衛(wèi)星交換機150A和150B仍然能夠經由分發(fā)層交換機110B與分發(fā)層通信。在一個實施例中,鏈路102是以太網鏈路。
交換機110和150接收和轉發(fā)的數據被邏輯分組為一個或多個分組。在本公開文件中,術語“分組”用來指在傳輸介質上作為數據單元發(fā)送的信息的邏輯分組。分組可以包括頭部和/或尾部信息,這些信息中包含有包含在數據單元中的用戶數據。出于公開目的,“分組”可以包括信元、數據報、幀、消息、片段、或信息的任意其他邏輯組。
在圖示示例中,每個衛(wèi)星交換機(例如,衛(wèi)星交換機150A)耦合到兩個分發(fā)層交換機(例如,分發(fā)層交換機110A和110B),每個分發(fā)層交換機(例如,分發(fā)層交換機110A)耦合到兩個衛(wèi)星交換機(例如,衛(wèi)星交換機150A和150B)。在其他實施例中,每個衛(wèi)星交換機可以耦合到不同數目(除2以外)的分發(fā)層交換機,反之亦然。此外,每個分發(fā)層交換機耦合的衛(wèi)星交換機的數目可以不同于每個衛(wèi)星交換機耦合的分發(fā)層交換機的數目。例如,每個衛(wèi)星交換機可以耦合到三個分發(fā)層交換機,而每個分發(fā)層交換機耦合到四個衛(wèi)星交換機。另外,每個衛(wèi)星交換機和/或分發(fā)層交換機的鏈路102的數目在相同實施例中可以不同(例如,一個衛(wèi)星交換機可以具有三條到分發(fā)層的上行鏈路,而另一個衛(wèi)星交換機有五條上行鏈路)。網絡100還可以包括不同數目的衛(wèi)星交換機150和分發(fā)層交換機110(例如,分發(fā)層交換機的數目n可以不同于衛(wèi)星交換機的數目n)。
用多條鏈路102將每個衛(wèi)星交換機150耦合到分發(fā)層提供了在鏈路102或分發(fā)層交換機110發(fā)生故障時的冗余。例如,如果將衛(wèi)星交換機150B耦合到分發(fā)層交換機110B的鏈路發(fā)生故障,或者如果分發(fā)層交換機110B發(fā)生故障,則衛(wèi)星交換機150B仍然能夠經由到分發(fā)層交換機110A的鏈路與分發(fā)層通信。
每個衛(wèi)星交換機150使用基于端口的負載共享方案來利用將該衛(wèi)星交換機耦合到分發(fā)層的冗余鏈路?;诙丝诘呢撦d共享方案的實現方式涉及每個衛(wèi)星交換機基于哪一個衛(wèi)星交換機端口(耦合到一個或多個網絡客戶端設備,如工作站)接收分組來選擇用以發(fā)送分組的若干鏈路102之一。例如,如果衛(wèi)星交換機150A接收來自工作站的分組,則衛(wèi)星交換機150A基于哪一個端口接收分組來確定是經由到分發(fā)層交換機110A的鏈路將分組發(fā)送到分發(fā)層還是經由到分發(fā)層交換機110B的鏈路將分組發(fā)送到分發(fā)層。該確定與哪一個VLAN(虛擬局域網)包括發(fā)送分組到衛(wèi)星交換機150A的工作站無關。
由于基于端口的負載共享并不依賴于VLAN,因此將給定衛(wèi)星交換機耦合到分發(fā)層的所有冗余鏈路都可以使用,即使該衛(wèi)星交換機的所有端口都耦合到相同VLAN中的網絡客戶端設備也是如此。換句話說,經由不同衛(wèi)星交換機端口(其中每一個耦合到相同VLAN中的網絡客戶端設備)接收的分組可以經由不同鏈路102被發(fā)送到分發(fā)層。
在某些實施例中,衛(wèi)星交換機150通過使用虛擬線路卡來實現基于端口的負載共享。使用虛擬線路卡防止了橋接環(huán)路,這種橋接環(huán)路可能由于在衛(wèi)星交換機和分發(fā)層之間使用冗余鏈路而出現。虛擬線路卡在下面結合圖3A-3B更詳細地進行了描述。
衛(wèi)星交換機150可以是不實現OSI第2層轉發(fā)功能的相對較簡單的交換機。相反,衛(wèi)星交換機150可以依賴于分發(fā)層交換機110來執(zhí)行OSI第2層和/或第3層轉發(fā)功能,并向衛(wèi)星交換機150提供指示這些轉發(fā)功能的結果的轉發(fā)信息。然后,衛(wèi)星交換機150基于從分發(fā)層接收的該轉發(fā)信息來交換分組。在這樣的實施例中,衛(wèi)星交換機150將所有從網絡客戶端設備接收的分組轉發(fā)到分發(fā)層。分發(fā)層確定這些分組如何被通過網絡轉發(fā)(例如,通過判斷是將這些分組轉發(fā)到其他分發(fā)層交換機110,到核心層交換機(未示出),還是經由特定的衛(wèi)星交換機150轉發(fā)到一個或多個網絡客戶端設備的集合)。每個分發(fā)層交換機110可以執(zhí)行轉發(fā)功能以選擇該分發(fā)層交換機110中從其輸出分組的端口。這些轉發(fā)功能也可以選擇耦合到該分發(fā)層交換機110的衛(wèi)星交換機150中的從其輸出分組的端口。
在分發(fā)層交換機110為衛(wèi)星交換機150執(zhí)行OSI第2層和/或第3層轉發(fā)的實施例中,衛(wèi)星交換機150有效地充當分發(fā)層交換機110的附加端口。例如,如果衛(wèi)星交換機150A包括8個端口,其中每個端口耦合到一個或多個網絡客戶端設備(其被配置為經由上行鏈路轉發(fā)分組到分發(fā)層交換機110A),則衛(wèi)星交換機150A中的8個端口有效地充當分發(fā)層交換機110A的端口。如果衛(wèi)星交換機不執(zhí)行第2層轉發(fā),則衛(wèi)星交換機150可以比分發(fā)層交換機成本低,因此相比于由更復雜的分發(fā)層交換機110提供的增加的特征,使用衛(wèi)星交換機150可以提供減少的每端口成本。另外,由于更多的高級功能被級聯在分發(fā)層交換機110中,因此分發(fā)層交換機110為網絡100的第2層功能提供了更集中的管理點。例如,分發(fā)層交換機110可以位于由校園網鏈接的同一校園區(qū)域中。相反地,衛(wèi)星交換機150可能分布在校園中的各個布線柜中。如果網絡的第2層功能被級聯在分發(fā)層交換機中,則對該功能的補丁和更新可以更容易地和/或快速地應用于分發(fā)層交換機,這是與它們應用于分發(fā)層交換機110和接入層衛(wèi)星交換機150兩者的情形相比得出的結論。例如,技術人員可以簡單地更新可能位于同一座樓中的每個分發(fā)層交換機,而不需要到達校園中的每一個布線柜去更新每個接入層衛(wèi)星交換機。
圖2圖示了通過兩條鏈路(鏈路102A和鏈路102B)耦合到分發(fā)層的衛(wèi)星交換機150。鏈路102A將衛(wèi)星交換機150耦合到分發(fā)層交換機110A,而鏈路102B將衛(wèi)星交換機150耦合到分發(fā)層交換機110B。在該示例中,分發(fā)層交換機110A和110B通過冗余鏈路122耦合。
分發(fā)層交換機110每一個都包括若干端口112。在該示例中,分發(fā)層交換機110A包括接口到冗余鏈路122的端口112A1和112A2以及接口到鏈路102A的端口112A3。端口112A1-112A3統稱為端口112A。類似地,分發(fā)層交換機110B包括接口到冗余鏈路122的端口112B1和112B2以及接口到鏈路102B的端口112B3。端口112B1-112B3統稱為端口112B。
在圖示實施例中,衛(wèi)星交換機150包括兩個上行鏈路接口153A和153B(統稱為上行鏈路接口153)、本地目標代理155和6個端口151A-151F(統稱為端口151)。本地目標代理155是用于在端口151和上行鏈路接口153之間傳送分組的裝置的示例。端口151和上行鏈路接口153分別是用于發(fā)送和接收分組的裝置的示例。每個端口151耦合到網絡客戶端設備190A-190F中的相應那個。這里所用的衛(wèi)星交換機中的端口是被配置用來向網絡客戶端設備190A-190F發(fā)送分組并從其接收分組的接口。
在某些實施例中,網絡客戶端設備190中每一個都包括一個或多個各種類型的計算設備。例如,網絡客戶端設備190每一個可以包括一個或多個交換機、路由器、個人計算機、工作站、因特網服務器、網絡用具、手持式計算設備(如手機或PDA(個人數據助理))或任何其他類型的計算設備。網絡客戶端設備190A-190F每一個都具有唯一MAC(媒體訪問控制)標識符MAC A-MAC F。
每個上行鏈路接口153耦合到鏈路102中的相應一條。上行鏈路接口153A經由鏈路102A耦合到分發(fā)層交換機110A并與之通信,上行鏈路接口153B經由鏈路102B耦合到分發(fā)層交換機110B并與之通信。這里所用的衛(wèi)星交換機中的上行鏈路接口是被配置用來向分發(fā)層交換機發(fā)送分組和關聯的轉發(fā)信息并從其接收分組和關聯的轉發(fā)信息的接口。注意,上行鏈路接口153和端口151的配置可以是基本類似的。在某些實施例中,相同的衛(wèi)星交換機接口可被選擇性地配置(和重配置)為端口或上行鏈路接口。
注意,圖2中所示的網絡配置被提供為示例。在其他實施例中,多于一個設備190可以耦合到端口151之一。類似地,其他實施例可以實現更少的或附加的端口151和/或上行鏈路接口153。
為了在鏈路102A和102B上實現基于端口的負載共享,衛(wèi)星交換機150將每個端口151與上行鏈路接口153之一相關聯。例如,衛(wèi)星交換機150可以將端口151A、151B和151D與上行鏈路接口153A相關聯,并將端口151C、151E和151F與上行鏈路接口153B相關聯。在一個實施例中,對于每個端口151,與上行鏈路接口153之一的關聯可以通過將與該端口相關聯的寄存器設為某一值來創(chuàng)建,該值標識了與該端口相關聯的上行鏈路接口153。
只要經由端口151之一從設備190之一接收到分組,衛(wèi)星交換機150就會基于哪一個上行鏈路接口與接收該分組的端口相關聯來選擇從其輸出該分組的上行鏈路接口。從而,如果經由端口151A接收到分組并且端口151A與上行鏈路接口153A相關聯,則衛(wèi)星交換機150會經由上行鏈路接口153A輸出分組到分發(fā)層。
在某些實施例中,上行鏈路接口153和端口151之間的關聯可以在衛(wèi)星交換機150的操作期間的各個時刻更新。例如,如果鏈路102B發(fā)生故障并且端口151C、151E和151F與上行鏈路接口153B相關聯,則衛(wèi)星交換機150可以將這些端口重新關聯到上行鏈路接口153A,153A耦合到未發(fā)生故障的鏈路102A。
當衛(wèi)星交換機150經由上行鏈路接口153A或上行鏈路接口153B輸出分組到分發(fā)層時,衛(wèi)星交換機150也可以添加標識哪一個端口151接收該分組的信息。該信息可以由分發(fā)層交換機110用來學習網絡100的配置并隨后進行衛(wèi)星交換機150的轉發(fā)判決,如下更詳細所述。
每個分發(fā)層交換機110包括其各自的轉發(fā)代理114和各自的本地目標代理116。轉發(fā)代理114A被配置用來進行分發(fā)層交換機110A的轉發(fā)判決,轉發(fā)代理114B被配置用來進行分發(fā)層交換機110B的轉發(fā)判決。在一個實施例中,轉發(fā)代理114基于MAC標識符來執(zhí)行OSI第2層轉發(fā)。轉發(fā)代理114B通過觀察哪一個端口112B接收由具有特定MAC地址的網絡客戶端設備發(fā)送的分組,來跟蹤分發(fā)層交換機110B的哪一個端口112B被用來與該網絡客戶端設備通信。例如,轉發(fā)代理114B可以向每個端口112B分配一個或多個唯一的轉發(fā)索引或其他轉發(fā)信息。該分配由本地目標代理116B跟蹤。如果經由端口112B3從具有特定MAC地址的網絡客戶端設備接收到分組,則轉發(fā)代理114B將分配到端口112B3的轉發(fā)索引與MAC地址相關聯(例如,轉發(fā)索引被存儲在由MAC地址索引的轉發(fā)表條目中)。如果接收到指定該MAC地址作為其目的地的后續(xù)分組,則轉發(fā)代理114B輸出關聯的轉發(fā)索引到本地目標代理116B。由于轉發(fā)索引被分配到端口112B3,因此本地目標代理116B從端口112B3輸出后續(xù)分組。
在該示例中,衛(wèi)星交換機150包括本地目標代理155,本地目標代理155的操作可以類似于本地目標代理116。然而,與分發(fā)層交換機110A和110B中的本地目標代理116不同的是,本地目標代理155不包括任何第2層轉發(fā)功能。相反地,衛(wèi)星交換機150依賴于分發(fā)層交換機110A和110B來進行轉發(fā)判決。每個分發(fā)層交換機110將衛(wèi)星交換機150配置為正確地對該分發(fā)層交換機中的轉發(fā)代理114進行的轉發(fā)判決作出響應。例如,分發(fā)層交換機110A和110B中的轉發(fā)代理114A和114B每一個都可以向衛(wèi)星交換機150中的每個端口151分配轉發(fā)索引。衛(wèi)星交換機150中的本地目標代理155維護這些分配。每個分發(fā)層交換機110將適當的轉發(fā)索引添加到發(fā)送到衛(wèi)星交換機150的每個分組。當衛(wèi)星交換機150接收到分組和關聯的轉發(fā)索引時,本地目標代理155使得分組從與該轉發(fā)索引相關聯的(一個或多個)端口151輸出。
注意,本地目標代理155和本地目標代理116每一個從以下意義上來說是“本地的”其每一個基于轉發(fā)索引是如何分配到對于該交換機來說是本地(即,物理地包括在內)的端口,來轉發(fā)分組到交換機的輸出端口。從而,本地目標代理116A維護分發(fā)層交換機110A內的端口112A1-112A3(統稱為端口112A)的轉發(fā)索引分配。類似地,本地目標代理116B維護分發(fā)層交換機110B內的端口112B1-112B3(統稱為端口112B)的轉發(fā)索引分配。衛(wèi)星交換機150中的本地目標代理155維護上行鏈路接口153和端口151的轉發(fā)索引分配。本地目標代理155不同于包括在分發(fā)層交換機110中的本地目標代理116,這是因為本地目標代理155存儲由多個不同的轉發(fā)代理114生成的轉發(fā)索引分配,這多個不同的轉發(fā)代理114每一個都包括在與本地目標代理155不同的物理交換機中。相反地,每個本地目標代理116維護由單個轉發(fā)代理114生成的轉發(fā)索引分配,這單個轉發(fā)代理114包括在與本地目標代理116相同的交換機中。
作為分發(fā)層交換機110中的轉發(fā)代理114如何可以執(zhí)行衛(wèi)星交換機的轉發(fā)判決的示例,假設分發(fā)層交換機110A中的轉發(fā)代理114A將轉發(fā)索引1分配到衛(wèi)星交換機150的端口151B(該分配由衛(wèi)星交換機150中的本地目標代理155來維護)和分發(fā)層交換機110A的端口112A3(該分配由分發(fā)層交換機110A中的本地目標代理116A來維護)。由于轉發(fā)索引1標識衛(wèi)星交換機端口151B和端口112A3,因此轉發(fā)代理114A會將該轉發(fā)索引關聯到與衛(wèi)星交換機150的端口151B通信的設備的MAC地址。例如,衛(wèi)星交換機150可以將標識端口151B的信息添加到經由端口151B從設備190B接收的分組。然后,轉發(fā)代理114A可以響應于經由端口112A3從衛(wèi)星交換機150接收到分組和標識端口151B的信息,而將轉發(fā)索引1與設備190B的MAC B相關聯。如果分發(fā)層交換機110A接收到地址為MAC B的后續(xù)分組,則由于索引1與MAC B相關聯,因此轉發(fā)單元114A使得索引1添加到分組。響應于索引1被添加到分組并且索引1被分配到端口112A3,分發(fā)層交換機110A中的本地目標代理116A經由端口112A3輸出分組和添加的轉發(fā)索引。衛(wèi)星交換機150的上行鏈路接口153A經由鏈路102A接收分組和添加的轉發(fā)索引1。響應于轉發(fā)索引1被分配到端口151B,本地目標代理155經由端口151B輸出分組到設備190B。衛(wèi)星交換機150可以在輸出分組到設備190之前移去添加的轉發(fā)索引。
由于每個分發(fā)層交換機110A和110B將轉發(fā)索引分配到衛(wèi)星交換機150中的每個端口151,因此存在每個分發(fā)層交換機會將相同的轉發(fā)索引分配到衛(wèi)星交換機150中的不同端口或端口集的可能性。例如,分發(fā)層交換機110A可以將轉發(fā)索引1分配到端口151A,而分發(fā)層交換機110B將轉發(fā)索引1分配到端口151C。在某些實施例中,分發(fā)層交換機110被配置為在彼此之間協商轉發(fā)索引分配以避免使分配發(fā)生沖突。在其他實施例中,衛(wèi)星交換機150被配置為以允許沖突分配的方式來處理轉發(fā)索引。在這樣的實施例中,衛(wèi)星交換機150不同地依賴于哪一個上行鏈路接口153接收到添加轉發(fā)索引的分組來使用相同的轉發(fā)索引。例如,假設上述轉發(fā)索引1的沖突分配,如果添加了轉發(fā)索引1的分組是經由上行鏈路接口153A接收到的,,本地目標代理155則使用由分發(fā)層交換機110A生成的分配,并使得分組經由端口151A輸出。如果相反經由上行鏈路接口153B接收到添加了轉發(fā)索引1的分組,則本地目標代理155使用由分發(fā)層交換機110B生成的分配,并使得分組經由端口151C輸出。下面結合圖7-10描述了用于處理衛(wèi)星交換機150中的沖突轉發(fā)索引分配的各種技術。
在某些實施例中,衛(wèi)星交換機端口和衛(wèi)星交換機上行鏈路接口之間的關聯是通過將每個端口和上行鏈路接口分配到虛擬線路卡來創(chuàng)建的。圖3A是衛(wèi)星交換機150的框圖,其示出了衛(wèi)星交換機150是如何被劃分為若干虛擬線路卡300A和300B(統稱為虛擬線路卡300)的,其中每個虛擬線路卡充當不同分發(fā)層交換機110的虛擬線路卡。在該實施例中,衛(wèi)星交換機150通過將每個端口和每個上行鏈路接口分配到特定的虛擬線路卡,來將每個端口151與上行鏈路接口153之一相關聯。例如,衛(wèi)星交換機150通過將端口151A分配到相同的虛擬線路卡300A作為上行鏈路接口153A,來將端口151A與上行鏈路接口153A相關聯。如上所述,這種端口和上行鏈路接口之間的關聯允許衛(wèi)星交換機實現基于端口的負載共享。
在圖3A的示例中,每個端口151A-151F與各自的寄存器310A-310F相關聯。每個端口151通過設置與該端口相關聯的寄存器310中的值而被分配到虛擬線路卡300A或300B。例如,端口151C可通過將寄存器310C設置為指示虛擬線路卡300A的值而被分配到虛擬線路卡300A。下面結合圖3C描述可存儲在寄存器310中的值的示例。寄存器310A-310F是用于將端口與上行鏈路接口相關聯的裝置的示例。
每個虛擬線路卡300與特定的分發(fā)層交換機110相關聯??梢杂尚l(wèi)星交換機150實現的虛擬線路卡300的數目取決于包括在該衛(wèi)星交換機中的上行鏈路接口的數目。當每個上行鏈路接口153耦合到不同的分發(fā)層交換機時,實現了最大數目的虛擬線路卡300。當所有上行鏈路接口耦合到同一分發(fā)層交換機時(或者當未耦合到同一分發(fā)層交換機的上行鏈路接口未被使用時),實現了最小數目的虛擬線路卡300。從而,將上行鏈路接口分配到虛擬線路卡取決于每個上行鏈路接口耦合到哪一個分發(fā)層交換機并與之通信。例如,如果上行鏈路接口153A耦合到與上行鏈路接口153B不同的分發(fā)層交換機110,則上行鏈路接口153A被分配到與上行鏈路接口153B不同的虛擬線路卡。如果相反上行鏈路接口153A耦合到與上行鏈路接口153B相同的分發(fā)層交換機并與之通信,則這兩個上行鏈路接口被分配到相同的虛擬線路卡。
衛(wèi)星交換機150可以動態(tài)地重分配端口151到不同的虛擬線路卡。例如,端口151A可以通過將寄存器310A設置為指示虛擬線路卡300B的值而被重分配到虛擬線路卡300B。重分配可以由于多種原因而發(fā)生。在某些實施例中,衛(wèi)星交換機150可以響應于鏈路或分發(fā)層交換機的故障而重分配端口151到另一個虛擬線路卡。例如,如果耦合到上行鏈路接口153A的分發(fā)層交換機110A發(fā)生故障,則端口151A-151C可被重分配到虛擬線路卡300B。在某些實施例中,重分配也可以響應于流量狀況而發(fā)生。例如,如果在某一延長時間段內,虛擬線路卡300A經歷的流量比虛擬線路卡300B多,則當前分配到虛擬線路卡300A的一個或多個端口可被重分配到虛擬線路卡300B。
如圖3B所示,衛(wèi)星交換機150的每個虛擬線路卡可被邏輯地視為相應分發(fā)層交換機的線路卡。盡管這兩種虛擬線路卡共享相同的本地目標代理(如圖2所示)并且實現在相同的物理接入層衛(wèi)星交換機中,但是虛擬線路卡表現為就好像它們被物理地包括在不同的分發(fā)層交換機中一樣。
每個分發(fā)層交換機110被配置為控制包括在衛(wèi)星交換機150內的相應虛擬線路卡中的衛(wèi)星交換機端口和上行鏈路接口。例如,分發(fā)層交換機110A控制虛擬線路卡300A中的端口151A-151C和上行鏈路接口153A。分發(fā)層交換機110通過將轉發(fā)索引分配到該虛擬線路卡中的每個端口和上行鏈路接口和對經由該虛擬線路卡中的衛(wèi)星交換機端口接收的分組進行轉發(fā)判決以及其他方式,來控制衛(wèi)星交換機端口和上行鏈路接口。注意,分發(fā)層交換機可以控制若干衛(wèi)星交換機中每一個的虛擬線路卡。
虛擬線路卡的使用允許通過向本地目標代理155(如圖2所示)提供用于區(qū)分由不同分發(fā)層交換機生成的轉發(fā)分配的機制,來處理沖突轉發(fā)索引分配。例如,本地目標代理155可以為每個虛擬線路卡維護單獨的轉發(fā)索引分配。只要從分發(fā)層接收到分組,本地目標代理155就可以基于哪一個虛擬線路卡包括接收到分組的上行鏈路接口,來判斷使用哪組轉發(fā)索引分配。在替換實施例中,不同虛擬線路卡的轉發(fā)索引分配被集中維護,并且使用虛擬線路卡專有的掩碼來處理沖突轉發(fā)索引分配(結合圖7-8描述了該實施例)。在另一個實施例中,衛(wèi)星交換機150可以基于哪一個虛擬線路卡包括從分發(fā)層接收到轉發(fā)索引的上行鏈路接口,來將轉發(fā)索引映射到虛擬線路卡專有的轉發(fā)索引空間(結合圖9A-10描述了該實施例)。
使用虛擬線路卡也可以防止錯誤分組傳遞和/或橋接環(huán)路,如果經由多于一個的衛(wèi)星交換機的上行鏈路接口從分發(fā)層接收到相同分組的拷貝,則可能發(fā)生橋接環(huán)路。例如,假設端口151B從設備190B接收到具有這樣的目的地MAC地址的分組,該目的地MAC地址使得分發(fā)層交換機轉發(fā)代理114A還未與端口相關聯(例如,具有該MAC地址的設備可能還未發(fā)送任何分組),并且衛(wèi)星交換機150中的所有端口151與相同VLAN相關聯(從而所有端口151被該VLAN的泛濫索引標識)。因為端口151B與上行鏈路153A相關聯(因為其包括在相同的虛擬線路卡中),所以衛(wèi)星交換機150經由上行鏈路接口153A輸出分組。當分發(fā)層交換機110A(如圖2所示)接收到分組時,轉發(fā)代理114A輸出包括設備190B的VLAN的泛濫索引。該泛濫索引可使得分發(fā)層交換機110A中的本地目標邏輯116A從端口112A3以及端口112A1和112A2之一輸出分組。當分發(fā)層交換機110B接收到分組時,其轉發(fā)代理114B也可以將VLAN的泛濫索引添加到分組,這又使得本地目標邏輯116B經由端口112B3將分組和泛濫索引輸出到衛(wèi)星交換機150。從而,衛(wèi)星交換機150可以接收到分組的兩個拷貝-一個拷貝是經由上行鏈路接口153A接收的,另一個拷貝是經由上行鏈路接口153B接收的。如果衛(wèi)星交換機不依賴于哪一個虛擬線路卡接收分組來不同地處理分組,并且所有衛(wèi)星交換機端口被分配到相同的VLAN,則本地目標代理155將通過從所有端口151(而不是從設備190B接收分組的原始端口)輸出分組的每個拷貝來響應于添加到分組的每個拷貝的泛濫索引。如果分組序列正被發(fā)送,則這可能導致分組被無序地輸出到設備190(例如,如果一個上行鏈路接口在其他上行鏈路接口接收到序列中的在先分組的拷貝之前接收到序列中特定分組的拷貝,則這種情形可能出現)。另外,分組可以被重新發(fā)送到分發(fā)層(例如,經由上行鏈路接口153A接收的拷貝可以經由上行鏈路接口153B輸出,而經由上行鏈路接口153B接收的拷貝可以經由上行鏈路接口153A輸出),這引起了不希望出現的橋接環(huán)路。
為了避免這些可能的問題,將分組從上行鏈路接口153之一轉發(fā)到端口151之一取決于接收分組的上行鏈路接口是否被包括在與端口相同的虛擬線路卡中。如果上行鏈路被包括在與端口相同的虛擬線路卡中,則分組可以被轉發(fā)到端口。否則,分組不能被轉發(fā)到端口。從而,利用上述示例,當經由上行鏈路接口153A接收到分組的拷貝和關聯泛濫索引時,本地目標代理155僅從端口151A和151C輸出分組,端口151A和151C被包括在與上行鏈路接口153A相同的虛擬線路卡中(原本從設備190B接收分組的端口151B和從分發(fā)層接收分組的上行鏈路接口153A通過通常的轉發(fā)技術被排除在目的地集中)。類似地,當經由上行鏈路接口153B接收到分組的拷貝和關聯泛濫索引時,本地目標代理155僅從包括在與上行鏈路接口153B相同的虛擬線路卡中的端口151D-151F輸出分組(同樣,從分發(fā)層接收分組的上行鏈路接口153B通過通常的轉發(fā)技術被排除在目的地集中)。從而,通過使用虛擬線路卡避免了橋接環(huán)路的出現,并且每個網絡客戶端設備190僅被發(fā)送分組的一個拷貝。
圖3C示出了用來分配端口151到特定虛擬線路卡的端口專有的寄存器310的內容示例。在該示例中,寄存器310包括指示被分配到端口151的轉發(fā)索引的值312,其中端口151與寄存器310相關聯。該轉發(fā)索引可由分發(fā)層交換機110中的轉發(fā)代理114來分配(由于在給定時刻每個端口只能被包括在一個虛擬線路卡中,因此在任何給定時刻只有一個分發(fā)層交換機可以將轉發(fā)索引分配到該端口)。寄存器310還包括標識端口151相關聯的上行鏈路的值314。該值314將端口151分配到與所標識的上行鏈路接口相同的虛擬線路卡,還將該上行鏈路接口分配到與端口相同的虛擬線路卡。
圖4是在衛(wèi)星交換機中執(zhí)行基于端口的負載共享的方法的一個實施例的流程圖。在401,衛(wèi)星交換機的每個端口與衛(wèi)星交換機的上行鏈路接口之一相關聯。在某些實施例中,這包括將與每個端口相關聯的寄存器設為標識該端口要與其相關聯的上行鏈路接口的值。將衛(wèi)星交換機端口與衛(wèi)星交換機上行鏈路接口相關聯的操作是獨立于VLAN的;耦合到一個VLAN中的設備的端口可以關聯到與耦合到不同VLAN中的設備的另一個端口相同的上行鏈路接口。
在一個實施例中,端口和上行鏈路接口之間的關聯是通過將端口分配到與端口關聯到的上行鏈路接口相同的虛擬線路卡來創(chuàng)建的。在一個實施例中,如果衛(wèi)星交換機中不是全部端口都被使用(例如,被耦合用來發(fā)送分組到設備并從設備接收分組),則對于未使用的端口不創(chuàng)建與上行鏈路接口的關聯。類似地,某些實施例不將任何端口與未使用的上行鏈路接口相關聯。
如403所指示,在關聯的端口和上行鏈路接口之間允許進行分組通信。例如,如果經由端口從網絡客戶端設備接收到分組,則該分組可通過與接收端口相關聯的上行鏈路接口被轉發(fā)到分發(fā)層。如果經由上行鏈路接口接收到分組和其關聯的轉發(fā)信息(例如轉發(fā)索引),并且轉發(fā)信息指示分組應當從特定端口輸出,則分組將會從指示的端口輸出,只要該端口與上行鏈路接口相關聯即可。
如405所指示,非關聯的端口和上行鏈路接口之間的分組通信被阻擋。例如,如果經由特定端口接收到分組,則該分組不會經由與接收分組的端口不相關聯的任何上行鏈路接口輸出。類似地,如果經由上行鏈路接口接收到分組和關聯的轉發(fā)信息,則該分組不會經由與該上行鏈路接口不相關聯的任何端口或上行鏈路接口輸出,即使轉發(fā)信息標識了非關聯的端口和/或上行鏈路接口也是如此。
圖5示出了衛(wèi)星交換機端口如何可以與衛(wèi)星交換機上行鏈路接口(如圖4的功能401所示)相關聯以實現基于端口的負載共享。在501,衛(wèi)星交換機中的每個端口被分配到虛擬線路卡。在503,每個上行鏈路接口被分配到虛擬線路卡。功能501和503共同操作來創(chuàng)建端口和上行鏈路接口之間的關聯;如果端口被分配到與上行鏈路接口相同的虛擬線路卡,則該端口與該上行鏈路接口相關聯以用于基于端口的負載共享。如果端口被分配到與上行鏈路接口不同的虛擬線路卡,則該端口不與該上行鏈路接口相關聯以用于基于端口的負載共享。端口可以通過設置與端口相關聯的寄存器值來標識特定上行鏈路接口而被分配到虛擬線路卡。上行鏈路接口基于哪些端口具有標識該上行鏈路接口的寄存器并且哪些其他上行鏈路接口(如果存在的話)耦合到與該上行鏈路接口相同的分發(fā)層交換機并與之通信而被分配到虛擬線路卡。例如,上行鏈路接口被分配到與其關聯寄存器標識上行鏈路接口的任何端口相同的虛擬線路卡,并且被分配到與耦合到相同分發(fā)層交換機并與之通信的任何其他上行鏈路接口相同的虛擬線路卡。
圖6A是根據一個實施例將分組從衛(wèi)星交換機轉發(fā)到分發(fā)層交換機的方法的流程圖。在該示例中,衛(wèi)星交換機經由若干端口之一接收分組,如603所指示。取決于哪一端口接收分組,選擇從其輸出分組到分發(fā)層的上行鏈路接口。選擇在與接收分組的端口相同的虛擬線路卡中的上行鏈路接口,如605所指示。對于未包括在與接收分組的端口相同(或者與其關聯)的虛擬線路卡中的任何上行鏈路接口,阻擋從其輸出分組。
圖6B是根據一個實施例將分組從衛(wèi)星交換機轉發(fā)到客戶端設備的方法的流程圖。這里,分組和添加的轉發(fā)信息(例如,上述的轉發(fā)索引)是經由上行鏈路接口從分發(fā)層接收的,如613所指示。然后,分組從包括在與接收分組的上行鏈路接口相同的虛擬線路卡中的一個或多個端口(這一個或多個端口由端口標識信息標識,端口標識信息在衛(wèi)星交換機內維護,由添加的轉發(fā)信息選擇)輸出,如615所指示。對于未包括在與接收分組的上行鏈路接口相同(或者與其關聯)的虛擬線路卡中的任何端口,阻擋從其輸出分組,即使這種端口被包括在由添加到分組的轉發(fā)信息選擇的端口標識信息中也是如此。
圖7是包括在衛(wèi)星交換機150中的本地目標代理155的框圖。在該示例中,本地目標代理155包括本地目標表756和本地目標掩碼757。本地目標表756存儲一個或多個端口的群組與由分發(fā)層交換機110A和110B(如圖2所示)的轉發(fā)代理114A和114B生成的轉發(fā)索引之間的關聯。注意,在其他實施例中,本地目標表756可以存儲端口和由多于兩個不同的分發(fā)層交換機110生成的轉發(fā)索引之間的關聯。
在該示例中,關聯被存儲為由各種轉發(fā)索引,即索引1-索引12(其他實施例可以使用明顯更多的轉發(fā)索引)索引的位圖。每個位圖包括用于每個端口151A-151F和上行鏈路接口153A-153B的位。當在特定位圖中設置一位時,其指示相應的端口或上行鏈路接口與索引本地目標表756中的位圖的轉發(fā)索引相關聯。例如,在與索引1相關聯的位圖中,設置對應于端口151A的位,從而指示索引1與端口151A相關聯。當經由上行鏈路接口接收到具有包括索引1的轉發(fā)信息的分組時,本地目標代理155查找哪些端口對應于本地目標表756中的索引1。由于本地目標表指示端口151A與本地目標表756中的索引1相關聯,因此本地目標代理使得分組從端口151A輸出(假設上行鏈路接口在與端口151A相同(或者與其關聯)的虛擬線路卡中)。
每個分發(fā)層交換機可被配置為僅生成針對包括在與該分發(fā)層交換機相關聯的虛擬線路卡中的端口的轉發(fā)索引。例如,分發(fā)層交換機110A(如圖2所示)被配置為僅生成針對包括在虛擬線路卡300A中的端口151A、151B和151C的轉發(fā)索引,分發(fā)層交換機110B(如圖2所示)被配置為僅生成針對包括在虛擬線路卡300B中的端口151D、151E和151F的轉發(fā)索引。本地目標代理155可以通過阻止分發(fā)層交換機設置本地目標表756中標識了未包括在由該分發(fā)層交換機控制的虛擬線路卡中的端口的位來加強該規(guī)則。
不同的分發(fā)層交換機可以將相同的轉發(fā)索引與不同的端口或端口組相關聯。例如,如圖7所示,分發(fā)層交換機110A可以將索引2分配到端口151B,分發(fā)層交換機110B可以將索引2分配到包括端口151D和151F的組播組。在一個實施例中,本地目標代理155對與相同轉發(fā)索引相關聯的分發(fā)層交換機專有的位圖執(zhí)行邏輯或,從而索引2具有其中針對端口151B、151D和151F的位已被設置的位圖。在至少某些實施例中,分發(fā)層交換機110可以使用相同的轉發(fā)索引作為泛濫索引。例如,分發(fā)層交換機110A和分發(fā)層交換機110B都可以使用索引8作為包括耦合到端口151A、151B、151C和151E的網絡客戶端設備的VLAN的泛濫索引。類似地,這兩個分發(fā)層交換機可以使用索引9作為針對包括耦合到端口151D和151F的網絡客戶端設備的VLAN的泛濫索引。每個VLAN專有的泛濫索引的位圖會包括耦合到該VLAN中的網絡客戶端設備190的每個端口,無論哪一個虛擬線路卡包括該端口。
在圖7中,在本地目標表756中示出了12個轉發(fā)索引和其關聯的位圖。注意,其他實施例可以支持與這里所示的不同數目的轉發(fā)索引,圖中所示的位圖僅提供作為示例。在該示例中,索引1與選擇虛擬線路卡300A中的端口151A的位圖相關聯。虛擬線路卡300B中沒有端口被索引1選擇。索引2選擇虛擬線路卡300A中的端口151B以及虛擬線路卡300B中的端口151D和151F。索引3選擇虛擬線路卡300A中的端口151C和虛擬線路卡300B中的端口151D(例如,這是因為分發(fā)層交換機110A將索引3分配到端口151C,分發(fā)層交換機110B將索引3分配到端口151D)。索引4選擇包括虛擬線路卡300A中的端口151B和151C的組播組。索引4還選擇虛擬線路卡300B中的端口151E。索引5選擇虛擬線路卡300B中的端口151F。索引6在該示例中未被使用。索引7選擇包括虛擬線路卡300A中的端口151A和151C的組播組。在該示例中,索引8是VLAN的泛濫索引。端口151A、151B、151C和151E被包括在該VLAN中。索引9是包括端口151D和151F的另一個VLAN的泛濫索引。索引10選擇虛擬線路卡300B中的上行鏈路接口153B。索引11選擇虛擬線路卡300A中的上行鏈路接口153A。
本地目標代理155包括存儲由衛(wèi)星交換機150實現的每個虛擬線路卡(VLC)300的本地目標掩碼的存儲介質757。虛擬線路卡300A的本地目標掩碼選擇端口151A-151C和上行鏈路接口153A。虛擬線路卡300B的本地目標掩碼選擇端口151D-151F和上行鏈路接口153B。
在相同的轉發(fā)索引被不同的分發(fā)層交換機不同地使用的情形中,本地目標代理155使用本地目標掩碼757來修改與該轉發(fā)索引相關聯的位圖,以隔離由特定分發(fā)層交換機生成的位圖。例如,如果經由上行鏈路接口153A從分發(fā)層交換機110A接收到具有轉發(fā)索引2的分組,則本地目標代理155可以從本地目標表756中檢索出與索引2相關聯的位圖,并從本地目標掩碼757中選擇與包括上行鏈路接口153A的虛擬線路卡300A相關聯的掩碼。然后,本地目標代理155對與虛擬線路卡300A相關聯的掩碼和與索引2相關聯的位圖逐位地執(zhí)行邏輯AND(與)操作。所得到的位圖具有與端口151B相關聯的單個設置位(與端口151D和151F相關聯的位通過應用與虛擬線路卡300A相關聯的掩碼而被清零)?;谠摰玫降奈粓D,本地目標代理155使得接收的分組從端口151B輸出。如果相反地經由上行鏈路接口153B接收到分組,則本地目標代理155會選擇與包括上行鏈路接口153B的虛擬線路卡300B相關聯的掩碼,并將其應用到索引2選擇的位圖。在該情形中,與端口151D和151F相關聯的位會被設置在所得到的位圖中,而與端口151B相關聯的位會被清零。作為響應,本地目標代理155會使得分組從端口151D和151F輸出。本地目標代理155可以類似地處理其他轉發(fā)索引。
在替換實施例中,本地目標代理155可以為由該衛(wèi)星交換機實現的每個虛擬線路卡維護單獨的本地目標表756。本地目標代理155基于哪一個上行鏈路接口接收分組和添加的轉發(fā)索引來選擇要訪問哪一個本地目標表。本地目標代理155使用添加的轉發(fā)索引來選擇與下述虛擬線路卡相關聯的本地目標表中的位圖,該虛擬線路卡包括接收到添加了轉發(fā)索引的分組的上行鏈路接口。在這樣的實施例中,可以不需要本地目標掩碼757。
圖8是操作衛(wèi)星交換機的方法的流程圖,該衛(wèi)星交換機利用虛擬線路卡專有的掩碼來實現基于端口的負載共享,以確保包括在不同虛擬線路卡中的端口和上行鏈路不直接傳輸分組。在801,衛(wèi)星交換機接收分組和添加的轉發(fā)信息(例如,轉發(fā)索引)。如上所述,在至少某些實施例中,衛(wèi)星交換機缺乏任何OSI第2層轉發(fā)邏輯;結果,衛(wèi)星交換機依賴于分發(fā)層交換機來執(zhí)行第2層轉發(fā)操作并將轉發(fā)信息添加到每個分組以不直接地指示由轉發(fā)操作選擇的端口。
在803,衛(wèi)星交換機使用添加到分組的轉發(fā)信息來選擇在衛(wèi)星交換機內被維護的若干位圖(或者其他可用來標識應當從其輸出分組的端口的端口標識信息的集合)之一。添加的轉發(fā)信息標識了要選擇的位圖(例如,添加的轉發(fā)索引可以選擇查找表中的位圖)。在一個實施例中,每個位圖包括用于衛(wèi)星交換機中每個端口和每個上行鏈路接口的位。如果由轉發(fā)信息選擇的位圖中的特定位被設置,則其指示由該位代表的端口或上行鏈路是分組的目的地端口或上行鏈路(假設該端口或上行鏈路被包括在與接收分組的上行鏈路相同的虛擬線路卡中)。
在805,取決于哪一個虛擬線路卡包括接收分組的上行鏈路接口,選擇若干掩碼之一以應用到在803選擇的位圖或其他標識信息。例如,每個虛擬線路卡可以具有關聯的掩碼,這些掩碼當被應用到位圖上時,僅會選擇那些包括在該虛擬線路卡中的端口和上行鏈路接口。通過對標識在位圖中但是未包括在與接收分組的上行鏈路接口相同的虛擬線路卡中的端口和上行鏈路接口進行掩碼操作,可以移去由相同轉發(fā)信息標識但是針對另一個虛擬線路卡生成的端口標識信息。這允許不同的分發(fā)層交換機使用相同轉發(fā)信息來標識不同的端口標識信息集合,這樣可以簡化分發(fā)層交換機的開銷。例如,分發(fā)層交換機可以分配轉發(fā)信息以獨立地標識端口標識信息集,而不需要彼此協同地進行分配。
在807,在805選擇的掩碼被應用到在803選擇的位圖以產生掩碼后的位圖。掩碼后的位圖標識了分組的目的地端口。這些目的地端口是那些既標識在由轉發(fā)信息選擇的位圖中又包括在與上行鏈路接口相同的虛擬線路卡中的端口。然后在809,分組從由掩碼后的位圖標識的端口輸出。
其他實施例可以處理沖突轉發(fā)信息分配,而不需要使用掩碼。圖9A是根據另一個實施例包括在衛(wèi)星交換機中的本地目標代理155的框圖。在該實施例中,本地目標代理155中的索引修改單元958被配置為在利用與分組一起從分發(fā)層交換機接收到的轉發(fā)索引來選擇本地目標表中的位圖之前修改該轉發(fā)索引。對給定轉發(fā)索引的修改的應用取決于哪一個分發(fā)層交換機生成該轉發(fā)索引。在轉發(fā)索引修改之后,在多個分發(fā)層交換機之間不再共享輸入到本地目標表756中的轉發(fā)索引。例如,分發(fā)層交換機110A可以將索引1分配到一個端口,而分發(fā)層交換機110B可以將索引1分配到不同端口。索引修改單元958可被配置為在索引1被添加到從分發(fā)層交換機110A接收的分組的情況下將索引1重映射到索引11,而在索引1被添加到從分發(fā)層交換機110B接收的分組的情況下不重映射索引1。索引11可以通過分發(fā)層交換機110A選擇與索引1相關聯的端口標識信息(例如,本地目標表756中的位圖),并且索引1可以通過分發(fā)層交換機110B選擇與索引1相關聯的端口標識信息。
圖9B提供了由兩個分發(fā)層交換機(交換機110A和110B)生成的轉發(fā)索引如何可以被衛(wèi)星交換機150中的索引修改單元958修改的示例。這里,轉發(fā)索引在4K的模塊中被重映射。每個分發(fā)層交換機使用了5個4K大小的轉發(fā)索引區(qū)域開始于0x8000的區(qū)域對應于單播泛濫,開始于0x9000的區(qū)域對應于沒有路由器情況下的組播泛濫,開始于0xA000的區(qū)域對應于單播泛濫保護,開始于0xC000的區(qū)域對應于組播泛濫,開始于0xE000的區(qū)域對應于組播泛濫,開始于0xB000、0xD000和0xF000的區(qū)域未被使用。在該示例中,對應于沒有路由器情況下的廣播泛濫和組播泛濫的區(qū)域總是具有相同的端口選擇,從而,對于每個分發(fā)層交換機,這兩個區(qū)域(分別開始于0x8000和0x9000)被映射到衛(wèi)星交換機內的相同區(qū)域。
對于由分發(fā)層交換機110A生成的索引,索引修改單元958將開始于0x8000和0x9000的區(qū)域(其每一個具有相同的端口選擇,如上所述)映射到開始于0x8000的區(qū)域。對于分發(fā)層交換機110B,這些相同的區(qū)域被映射到開始于0xC000的區(qū)域。索引修改單元958將由分發(fā)層交換機110A生成的開始于0xA000的區(qū)域中的索引映射到開始于0x9000的區(qū)域。在相同區(qū)域中由分發(fā)層交換機110B生成的索引被重映射到開始于0xD000的區(qū)域。索引修改單元958將由分發(fā)層交換機110A生成的開始于0xC000的區(qū)域中的索引映射到開始于0xA000的區(qū)域。在相同區(qū)域中由分發(fā)層交換機110B生成的索引被重映射到開始于0xE000的區(qū)域。索引修改單元958將由分發(fā)層交換機110A生成的開始于0xE000的區(qū)域中的索引映射到開始于0xB000的區(qū)域。在相同區(qū)域中由分發(fā)層交換機110B生成的索引被重映射到開始于0xF000的區(qū)域。然后,重映射的索引被本地目標代理155用來索引到本地目標表中。由于每個重映射的索引對于給定虛擬線路卡來說是唯一的,因此不需要如同圖7中所示的本地目標掩碼。
在諸如參考圖9A和9B所述的實施例中,轉發(fā)索引分配的協同可通過限制可以同時耦合到給定衛(wèi)星交換機的分發(fā)層交換機的數目來簡化。例如,在一個實施例中,在給定時刻允許不超過兩個分發(fā)層交換機耦合到相同的衛(wèi)星交換機。這允許衛(wèi)星交換機中的本地目標代理155被配置為更高效地處理重映射或修改由不同分發(fā)層交換機生成的轉發(fā)索引。例如,索引修改單元958不需要能夠為可變數目的分發(fā)層交換機生成并應用映射。從而,索引修改單元958不需要包括被配置用來處理兩個、三個、四個或更多個分發(fā)層交換機的復雜邏輯和/或軟件,相反地,索引修改單元958可被配置以被配置用來處理至多兩個分發(fā)層交換機的更簡單和/或更高效的邏輯和/或軟件。
圖10是操作衛(wèi)星交換機的方法的另一個流程圖,該衛(wèi)星交換機通過將每個分發(fā)層交換機的轉發(fā)索引分配映射到特定范圍的轉發(fā)索引來處理沖突轉發(fā)索引分配并且實現了基于端口的負載共享。在1001,經由衛(wèi)星交換機中的上行鏈路接口接收到分組和添加的轉發(fā)信息(例如,轉發(fā)索引)。轉發(fā)信息依賴于哪一個虛擬線路卡包括接收分組的上行鏈路接口而被修改,如1003所指示。例如,如果轉發(fā)信息是轉發(fā)索引,則轉發(fā)索引可以依賴于虛擬線路卡而被不同地重映射。在圖9的示例中,區(qū)域0x8000中的轉發(fā)索引或者可被重映射到區(qū)域0x8000中的相應轉發(fā)索引(在轉發(fā)索引是被由分發(fā)層交換機110A控制的虛擬線路卡中的上行鏈路接口接收的情況下),或者可被重映射到區(qū)域0xC000中的索引(在轉發(fā)索引是被由分發(fā)層交換機110B控制的虛擬線路卡中的上行鏈路接口接收的情況下)。
在1005,使用修改后的轉發(fā)信息(例如,重映射的轉發(fā)索引)來選擇若干位圖之一或其他端口標識信息集合。每個位圖或其他端口標識信息集合標識了一個或多個端口的集合。添加了轉發(fā)信息的分組從在由修改后的轉發(fā)信息選擇的位圖或其他端口標識信息中標識的一個或多個端口輸出,如1007所指示。
結合圖7和9A-9B所述的實施例允許分發(fā)層交換機將轉發(fā)索引分配到衛(wèi)星交換機端口,而不需要與其他分發(fā)層交換機協同進行轉發(fā)索引分配。其他實施例涉及耦合到特定衛(wèi)星交換機150的分發(fā)層交換機110A和110B,這兩個分發(fā)層交換機在彼此之間協同進行針對該衛(wèi)星交換機的轉發(fā)索引分配。該協同可以直接發(fā)生在耦合到相同的衛(wèi)星交換機的分發(fā)層交換機之間,或者通過與集中的轉發(fā)索引管理器進行協同而間接地進行(例如,實現在正在對其協同轉發(fā)索引分配的衛(wèi)星交換機的本地目標代理中)。在一個這樣的實施例中,當分發(fā)層交換機耦合到衛(wèi)星交換機時,分發(fā)層交換機確定用于由其他分發(fā)層交換機控制的衛(wèi)星交換機端口的本地目標索引范圍。例如,分發(fā)層交換機可以向衛(wèi)星交換機中的本地目標代理查詢關于當前分配到其他分發(fā)層交換機的轉發(fā)索引的范圍的信息。然后,分發(fā)層交換機通過從本地目標代理請求本地目標索引塊來分配其自身的本地目標索引的范圍。如果該塊與另一個分發(fā)層交換機所用的任何本地目標索引的范圍相重疊,則分發(fā)層交換機從本地目標代理請求另一個本地目標索引的范圍(然而,重疊的塊不被釋放)。該過程重復,直到分發(fā)層交換機找到非重疊的本地目標索引塊或者本地目標管理器不再具有任何的自由本地目標索引為止。在分配了本地目標索引范圍后(或者在發(fā)現不存在非重疊范圍后),重疊的塊被釋放回本地目標代理。
圖11A是根據一個實施例將多條上行鏈路分配到相同的虛擬線路卡的衛(wèi)星交換機的框圖。在該實施例中,將上行鏈路接口153和端口151分配到虛擬線路卡300的操作與圖3A中所示的相同,除了附加的上行鏈路接口153C被分配到虛擬線路卡300B以外。包括在虛擬線路卡300B中的兩個上行鏈路接口153B和153C構成了到相同分發(fā)層交換機(例如,圖2中所示的分發(fā)層交換機110B)的上行鏈路組。多個上行鏈路接口可以耦合到相同的分發(fā)層交換機,以在該分發(fā)層交換機和衛(wèi)星交換機150之間提供額外的帶寬和/或可靠性。
出于基于端口的負載共享的目的,上行鏈路接口153B和153C通過被分配到相同的虛擬線路卡300B而與端口151D-151F相關聯。分配到相同虛擬線路卡的操作可以包括將與端口151D-151F中每一個相關聯的寄存器設為標識上行鏈路接口153B和153C中任何一個或兩者的值,將與上行鏈路接口153B和153C中每一個相關聯的寄存器設為指示這兩個上行鏈路接口耦合到相同分發(fā)層交換機的值,和/或將相同的本地目標掩碼與每個上行鏈路接口153B和153C相關聯。如圖11B所示,與上行鏈路接口153B和153C相關聯的本地目標掩碼選擇被分配到虛擬線路卡300B的所有端口和上行鏈路接口端口151D、端口151E、端口151F、上行鏈路接口153B和上行鏈路接口153C。
虛擬線路卡300B中的流量可被配置為使得經由特定端口151D-151F接收的分組經由單個上行鏈路接口153B或153C被轉發(fā)到分發(fā)層。例如,與端口151D相關聯的寄存器(例如,圖3A中所示的寄存器310D)可被設為標識上行鏈路接口153B的值,而分別與端口151E-151F相關聯的寄存器可被設為標識上行鏈路接口153C的值。從而,只要經由端口151D接收到分組,分組就會經由上行鏈路接口153B被轉發(fā)到分發(fā)層,并且只要經由端口151E或151F接收到分組,分組就會經由上行鏈路接口153C被轉發(fā)到分發(fā)層?;蛘?,從其轉發(fā)經由任何一個端口151D-151E接收的分組的上行鏈路接口可從上行鏈路接口153B和153C中動態(tài)選擇(例如,選擇可以是隨機的,或者基于過去轉發(fā)歷史進行)。耦合到上行鏈路接口153B和153C兩者的分發(fā)層交換機被配置為以這樣的方式發(fā)送分組到衛(wèi)星交換機150,該方式使得每個分組僅被發(fā)送到上行鏈路接口153B-153C之一。
圖12是衛(wèi)星交換機150的框圖,其圖示了本地目標代理155如何可以實現在運行在交換機上的軟件中(在替換實施例中,本地目標代理155的全部或一部分可以實現在硬件中)。如圖所示,交換機150包括一個或多個處理器1201(例如,微處理器、PLD(可編程邏輯器件)、或ASIC(專用集成電路)),處理器1201被配置為執(zhí)行存儲在存儲器1220中的程序指令。存儲器1220可以包括各種類型的RAM(隨機存取存儲器)、ROM(只讀存儲器)、閃存、MEMS(微機電系統)存儲器等。處理器1201和存儲器1220由總線或其他互連耦合以發(fā)送并接收數據和控制信號。
存儲器1220存儲可由處理器1201執(zhí)行用來實現本地目標代理155的程序指令。存儲器1220還可用來存儲由本地目標代理155使用和維護的本地目標表756。在某些實施例中,存儲器1220還存儲本地目標掩碼757(如圖7所示)和/或可執(zhí)行來實現索引修改單元958(如圖9A所示)的程序指令。
存儲器1220還可以存儲各種虛擬線路卡配置信息1222。配置信息1222可以包括每個寄存器310(如圖3C所示)中的值的拷貝,該值用來將衛(wèi)星交換機端口分配到虛擬線路卡,或者用來將衛(wèi)星交換機端口與一個或多個上行鏈路接口相關聯以用于基于端口的負載共享。
在本地目標代理被實現在硬件和軟件的組合中的某些實施例中,配置信息1222例如還可以包括虛擬線路卡專有的本地目標表。每個虛擬線路卡專有的本地目標表可以包括由特定分發(fā)層交換機生成的轉發(fā)索引與衛(wèi)星交換機端口和上行鏈路接口之間的關聯。本地目標代理155可以組合虛擬線路卡專有的本地目標表(例如,通過對每位執(zhí)行邏輯或)以生成本地目標表,該本地目標表包括由控制衛(wèi)星交換機中的虛擬線路卡的所有分發(fā)層交換機生成的所有關聯。該綜合的本地目標表可被存儲以供執(zhí)行分組轉發(fā)的本地目標代理硬件使用。通過維護虛擬線路卡專有的本地目標表,本地目標代理155可以在例如分發(fā)層交換機之一發(fā)生故障的情況下更新綜合的本地目標表,這使得包括在由發(fā)生故障的分發(fā)層交換機控制的虛擬線路卡中的端口和上行鏈路接口被轉移到一個或多個其他虛擬線路卡。
實現本地目標代理155的程序指令和數據可存儲在諸如存儲器1220之類的各種計算機可讀介質上。在某些實施例中,本地目標代理155軟件被存儲在計算機可讀介質上,如CD(壓縮盤)、DVD(數字化視頻光盤)、硬盤、光盤、磁帶設備、軟盤等。為了由處理器1201執(zhí)行,實現本地目標代理155的指令和數據是從其他計算機可讀介質上加載到存儲器1220中的。指令和/或數據也可以經由網絡(如因特網)或在載波上被轉移到交換機150。在某些實施例中,計算機可讀介質是諸如網絡和/或無線鏈路之類的載體介質,在該介質上傳送諸如電、電磁或數字信號之類的信號,在信號中編碼了實現本地目標代理155的數據和指令。
盡管已經結合特定實施例描述了本發(fā)明,但是本領域技術人員可提出各種改變和修改。這種改變和修改應當落入所附權利要求的范圍內。
工業(yè)應用本發(fā)明的實施例可用在網絡領域中。
權利要求
1.一種方法,包括接收分組;以及在多個端口之一和多個上行鏈路接口之一之間傳送所述分組,其中所述端口之一和所述上行鏈路接口之一是關聯的。
2.如權利要求1所述的方法,其中多個端口與所述上行鏈路接口之一相關聯,所述方法還包括在所述多個端口和所述上行鏈路接口之一之間傳送分組。
3.如權利要求2所述的方法,其中多個上行鏈路接口與所述端口中的第一端口相關聯。
4.如權利要求3所述的方法,還包括經由所述端口中的第一端口接收第一分組;以及在所述端口中的第一端口和所述多個上行鏈路接口中的單個接口之間傳送所述第一分組。
5.如權利要求2所述的方法,還包括將所述端口之一與所述上行鏈路接口之一相關聯,其中所述關聯與哪一個VLAN與所述端口之一相關聯無關。
6.如權利要求2所述的方法,還包括將所述端口之一與所述上行鏈路接口之一相關聯,其中所述關聯包括將所述端口之一分配到多個虛擬線路卡之一,以及將所述上行鏈路接口之一分配到所述虛擬線路卡之一。
7.如權利要求6所述的方法,還包括耦合到包括所述端口和所述上行鏈路接口的交換機的第一多個交換機之一,其控制所述虛擬線路卡中的一個相應的虛擬線路卡,其中所述控制包括所述第一多個交換機之一將轉發(fā)索引分配到所述端口之一,其中所述端口之一被分配到所述虛擬線路卡中的那個相應的虛擬線路卡,所述第一多個交換機之一將所述轉發(fā)索引添加到所述分組,以及所述第一多個交換機之一將所述分組和添加的轉發(fā)索引轉發(fā)到包括所述端口和所述上行鏈路接口的交換機。
8.如權利要求7所述的方法,其中包括在所述第一多個交換機中的每個交換機是分發(fā)層交換機,并且包括所述端口和所述上行鏈路接口的交換機是接入層衛(wèi)星交換機。
9.如權利要求7所述的方法,其中所述添加的轉發(fā)索引標識所述端口中應當向其傳送所述分組的一個或多個端口。
10.如權利要求2所述的方法,還包括經由所述上行鏈路接口之一接收所述分組和添加到分組的轉發(fā)信息;修改所述轉發(fā)信息;以及使用修改后的轉發(fā)信息來選擇將向其傳送所述分組的端口,其中所述修改后的轉發(fā)信息僅僅指示與所述上行鏈路接口之一相關聯的一個或多個端口。
11.如權利要求10所述的方法,其中所述修改轉發(fā)信息的操作與哪一個上行鏈路接口接收所述分組和轉發(fā)信息無關。
12.如權利要求10所述的方法,其中所述修改轉發(fā)信息的操作包括將轉發(fā)索引重映射為重映射后的轉發(fā)索引,并且所述使用修改后的轉發(fā)信息的操作包括使用所述重映射后的轉發(fā)索引來查找本地目標表中的位圖,其中所述位圖標識一個或多個端口。
13.如權利要求2所述的方法,還包括經由所述上行鏈路接口之一接收所述分組和添加到所述分組的轉發(fā)信息;使用所述轉發(fā)信息來查找查找表中的位圖,其中所述位圖標識所述端口的子集;選擇多個掩碼之一,其中所述多個掩碼中的一個所選擇的掩碼標識所述端口中與接收到所述分組的所述上行鏈路接口之一相關聯的每個端口;將所選擇的那個掩碼應用到所述位圖以生成掩碼后的位圖;以及將所述分組傳送到由所述掩碼后的位圖標識的一個或多個端口。
14.如權利要求13所述的方法,其中所述選擇多個掩碼中的一個掩碼的操作依賴于所述上行鏈路接口中的哪一個接收到所述分組。
15.如權利要求2所述的方法,還包括多個交換機中的每一個將轉發(fā)索引分配到至少一個端口,以及所述交換機中的每一個與所述交換機中的每個其他交換機協同進行針對所述端口的轉發(fā)索引分配。
16.如權利要求2所述的方法,還包括將所述端口中的一個端口和所述端口中的另一端口與所述上行鏈路接口中的同一個上行鏈路接口相關聯,其中所述端口中的所述一個端口與一個VLAN相關聯,而所述端口中的所述另一端口與另一不同的VLAN相關聯。
17.如權利要求2所述的方法,還包括將所述端口中的一個特定端口與所述上行鏈路接口中的第一上行鏈路接口相關聯,以及重新將所述端口中的所述特定端口與所述上行鏈路接口中的第二上行鏈路接口相關聯,其中在所述重新關聯后所述端口中的所述特定端口不再與所述上行鏈路接口中的所述第一上行鏈路接口相關聯。
18.如權利要求1所述的方法,還包括經由所述端口中的第一端口接收第一分組;經由所述上行鏈路接口中的第一上行鏈路接口將所述第一分組傳送到分發(fā)層;經由所述端口中的第二端口接收第二分組;經由所述上行鏈路接口中的第二上行鏈路接口將所述第二分組傳送到所述分發(fā)層,其中所述第一上行鏈路接口與所述端口中的所述第一端口相關聯,并且所述第二上行鏈路接口與所述端口中的所述第二端口相關聯。
19.如權利要求18所述的方法,其中所述端口中的所述第一端口關聯到與所述端口中的第二端口相同的VLAN。
20.如權利要求18所述的方法,其中所述端口中的第三端口關聯到與所述端口中的第一端口不同的VLAN,并且所述端口中的第三端口與所述第一上行鏈路接口相關聯。
21.如權利要求18所述的方法,還包括經由所述第一上行鏈路接口從所述分發(fā)層接收第三分組和添加的轉發(fā)信息,其中所述添加到所述第三分組的轉發(fā)信息標識標識所述端口中的一個或多個;以及僅僅經由所述端口中的一個或多個端口中與所述第一上行鏈路接口相關聯的那些端口輸出所述第三分組。
22.一種系統,包括多個端口(151),多個上行鏈路接口(153),和本地目標代理(155),其中所述本地目標代理(155)被配置為在所述端口(151)之一和所述上行鏈路接口(153)之一之間傳送分組,其中所述端口(151)之一和所述上行鏈路接口(153)之一是關聯的。
23.如權利要求22所述的系統,其中多個端口與所述上行鏈路接口之一相關聯,并且所述本地目標代理被配置為在所述多個端口和所述上行鏈路接口之一之間傳送分組。
24.如權利要求23所述的系統,其中多個上行鏈路接口與所述端口中的第一端口相關聯。
25.如權利要求24所述的系統,其中所述本地目標代理被配置為響應于經由所述端口中的第一端口接收到所述第一分組,在所述端口中的第一端口和所述多個上行鏈路接口中的單個接口之間傳送第一分組。
26.如權利要求23所述的系統,其中所述端口之一接收所述分組,并且所述本地目標代理響應于所述上行鏈路接口之一被包括在多個虛擬線路卡中的與所述端口中接收到所述分組的那個端口相同的那個虛擬線路卡中,而將所述分組傳送到所述上行鏈路接口之一。
27.如權利要求26所述的系統,其中所述虛擬線路卡之一與多個分發(fā)層交換機中的一個相應的分發(fā)層交換機相關聯,被分配到所述虛擬線路卡之一的一個或多個上行鏈路接口被耦合到所述分發(fā)層交換機中的所述那個相應的分發(fā)層交換機并與之通信。
28.如權利要求26所述的系統,其中經由所述上行鏈路接口之一接收到所述分組和添加的轉發(fā)信息,并且所述本地目標代理被配置為使用添加到所述分組的轉發(fā)信息來選擇標識所述端口中的一個或多個端口的位圖;選擇多個掩碼之一,其中所述多個掩碼中的每一個選擇所述端口中被包括在所述虛擬線路卡中的一個相應的虛擬線路卡中的一個或多個端口;將所述掩碼中所選擇的那個掩碼應用到所述位圖以產生掩碼后的位圖;以及從所述端口中由所述掩碼后的位圖標識的一個或多個端口輸出所述分組。
29.如權利要求28所述的系統,其中所述本地目標代理被配置為依賴于所述上行鏈路接口中哪一個接收到所述分組來選擇所述掩碼之一。
30.如權利要求23所述的系統,其中所述本地目標代理被配置為修改添加到所述分組的轉發(fā)信息;使用所述修改后的轉發(fā)信息來選擇標識所述端口中從其輸出所述分組的一個或多個端口的位圖。
31.如權利要求30所述的系統,其中所述本地目標代理被配置為依賴于所述上行鏈路接口中哪一個接收到所述轉發(fā)信息和所述分組來修改所述轉發(fā)信息。
32.如權利要求23所述的系統,其中所述端口中的第一端口和所述端口中的第二端口關聯到所述上行鏈路接口中的同一個上行鏈路接口,并且所述第一端口關聯到與所述第二端口不同的VLAN。
33.如權利要求23所述的系統,其中所述本地目標代理被配置為使用添加到經由所述上行鏈路接口之一接收到的每個分組的轉發(fā)索引來選擇所述端口中從其輸出每個分組的一個或多個端口;所述本地目標代理被配置為在添加了第一轉發(fā)索引的第一分組是經由所述上行鏈路接口中的第一上行鏈路接口接收到的情況下,選擇一個或多個端口中的第一集合;并且所述本地目標代理被配置為在添加了所述第一轉發(fā)索引的第二分組是經由所述上行鏈路接口中的第二上行鏈路接口接收到的情況下,選擇一個或多個端口中的另一不同集合。
34.一種包括可執(zhí)行程序指令的計算機可讀介質,所述程序指令可執(zhí)行用于檢測網絡設備(155)對分組的接收,其中所述網絡設備(155)包括多個端口(151)和多個上行鏈路接口(153);以及在所述端口(151)之一和所述上行鏈路接口(153)之一之間傳送所述分組,其中所述端口(151)之一和所述多個上行鏈路接口(153)之一是關聯的。
35.如權利要求34所述的計算機可讀介質,其中多個端口與所述上行鏈路接口之一相關聯。
36.如權利要求34所述的計算機可讀介質,其中多個上行鏈路接口與所述端口中的第一端口相關聯。
37.如權利要求36所述的計算機可讀介質,其中所述程序指令還可執(zhí)行用于如果所述端口之一和所述上行鏈路接口之一被分配到多個虛擬線路卡中的同一個,則檢測到所述端口之一和所述虛擬線路卡之一是彼此關聯的。
38.如權利要求36所述的計算機可讀介質,其中所述程序指令還可執(zhí)行用于使用添加到所述分組的轉發(fā)信息來選擇所述端口中從其輸出所述分組的一個或多個端口。
39.如權利要求38所述的計算機可讀介質,其中所述程序指令還可執(zhí)行用于依賴于所述上行鏈路接口中哪一個接收到所述分組而修改添加到所述分組的轉發(fā)信息;以及使用所述修改后的轉發(fā)信息來選擇從所述端口中的哪一個端口輸出所述分組,其中所述修改后的轉發(fā)信息僅僅指示所述端口中與所述上行鏈路接口中接收到所述分組和轉發(fā)信息的那個上行鏈路接口相關聯的一個或多個端口。
40.如權利要求34所述的計算機可讀介質,其中所述端口中的第一端口和所述端口中的第二端口與所述上行鏈路接口中的第一上行鏈路接口相關聯,并且所述端口中的第一端口與第一VLAN相關聯,所述端口中的第二端口與第二VLAN相關聯。
41.如權利要求34所述的計算機可讀介質,其中所述程序指令還可執(zhí)行用于將所述端口中的第一端口與所述上行鏈路接口中的第一上行鏈路接口相關聯,以及重新將所述端口中的第一端口與所述上行鏈路接口中的第二上行鏈路接口相關聯,其中在重新關聯后所述端口中的第一端口不再與所述上行鏈路接口中的第一上行鏈路接口相關聯。
42.一種系統,包括處理器(1201);和存儲可由所述處理器(1201)執(zhí)行的程序指令的存儲器(1220),其中所述程序指令可執(zhí)行用于檢測網絡設備對分組的接收,其中所述網絡設備包括多個端口和多個上行鏈路接口;以及在所述端口之一和所述上行鏈路接口之一之間傳送所述分組,其中所述端口之一和所述多個上行鏈路接口之一是關聯的。
43.如權利要求42所述的系統,其中多個端口與所述上行鏈路接口之一相關聯。
44.如權利要求43所述的系統,其中所述程序指令還可執(zhí)行用于如果所述端口之一和所述上行鏈路接口之一被分配到多個虛擬線路卡中的同一個,則檢測到所述端口之一和所述虛擬線路卡之一是彼此關聯的。
45.如權利要求43所述的系統,其中所述程序指令還可執(zhí)行用于使用添加到所述分組的轉發(fā)信息來選擇所述端口中從其輸出所述分組的一個或多個端口。
46.如權利要求45所述的系統,其中所述程序指令還可執(zhí)行用于依賴于所述上行鏈路接口中哪一個接收到所述分組而修改添加到所述分組的轉發(fā)信息;以及使用所述修改后的轉發(fā)信息來選擇從所述端口中的哪一個端口輸出所述分組,其中所述修改后的轉發(fā)信息僅僅指示所述端口中與所述上行鏈路接口中接收到所述分組和轉發(fā)信息的那個上行鏈路接口相關聯的一個或多個端口。
47.如權利要求43所述的系統,其中所述端口中的第一端口和所述端口中的第二端口與所述上行鏈路接口中的同一個相關聯,并且所述端口中的第一端口與第一VLAN相關聯,所述端口中的第二端口與第二VLAN相關聯。
48.一種系統,包括用于接收分組的裝置;用于在多個端口之一和多個上行鏈路接口之一之間傳送所述分組的裝置,其中所述端口之一和所述上行鏈路接口之一是關聯的。
49.如權利要求48所述的系統,其中多個端口與所述上行鏈路接口之一相關聯,以及用于在所述多個端口和所述上行鏈路接口之一之間傳送分組的裝置。
50.如權利要求49所述的系統,其中多個上行鏈路接口與所述端口中的第一個相關聯。
51.如權利要求49所述的系統,還包括用于以獨立于哪一個VLAN與所述端口中的每一個相關聯的方式將所述端口之一與所述上行鏈路接口之一相關聯的裝置。
52.如權利要求49所述的系統,還包括用于將所述端口之一與所述上行鏈路接口之一相關聯的裝置,其中所述用于關聯的裝置將所述端口之一分配到多個虛擬線路卡中的一個虛擬線路卡,并將所述上行鏈路接口之一分配到所述虛擬線路卡中的所述一個虛擬線路卡。
53.如權利要求49所述的系統,其中所述用于傳送的裝置響應于經由所述上行鏈路接口之一接收到所述分組和添加的轉發(fā)索引,而使用所述添加的轉發(fā)索引來選擇所述端口中從其輸出所述分組的一個或多個端口。
54.如權利要求53所述的系統,其中所述用于傳送的裝置在使用所述添加的轉發(fā)索引來選擇所述端口中從其輸出所述分組的一個或多個端口之前,修改所述添加的轉發(fā)信息,其中所述修改后的轉發(fā)信息僅僅指示所述端口中與所述上行鏈路接口中接收到所述分組和添加的轉發(fā)信息的那個上行鏈路接口相關聯的一個或多個端口。
55.如權利要求53所述的系統,其中所述用于傳送的裝置依賴于所述上行鏈路接口中哪一個接收到所述分組和添加的轉發(fā)信息而修改所述添加的轉發(fā)信息。
56.如權利要求53所述的系統,還包括用于將所述端口中的第一端口和所述端口中的第二端口與所述上行鏈路接口中的同一個相關聯的裝置,其中所述端口中的第一端口與第一VLAN相關聯,所述端口中的第二端口與第二VLAN相關聯。
全文摘要
一種方法可以包括接收分組(例如,經由衛(wèi)星交換機(150)中的端口(151)或上行鏈路接口(153))并在一個或多個端口(151)和若干上行鏈路接口(153)之一之間傳送分組。這一個或多個端口(151)和上行鏈路接口(153)彼此關聯。關聯過程可以與VLAN(虛擬局域網)無關。作為示例,這種方法可以包括經由第一端口接收第一分組;經由第一上行鏈路接口將第一分組傳送到分發(fā)層;經由第二端口接收第二分組;以及經由第二上行鏈路接口將第二分組傳送到分發(fā)層,其中第一上行鏈路接口與第一端口相關聯,第二上行鏈路接口與第二端口相關聯。在某些實施例中,端口(151)和上行鏈路接口(153)通過被分配到相同的虛擬線路卡(300)而被關聯。
文檔編號H04L12/46GK1871822SQ200480031155
公開日2006年11月29日 申請日期2004年10月21日 優(yōu)先權日2003年10月21日
發(fā)明者邁克爾·R·史密斯, 杰弗里·伊·王, 艾力·戈爾杉 申請人:思科技術公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
高青县| 肥西县| 元阳县| 麦盖提县| 兴安盟| 西乡县| 休宁县| 柳州市| 贡嘎县| 克拉玛依市| 阜宁县| 夏邑县| 沈丘县| 峨边| 东莞市| 黄龙县| 永定县| 漠河县| 新和县| 巍山| 扎鲁特旗| 高唐县| 江口县| 迭部县| 库车县| 潼南县| 黎川县| 社旗县| 尚志市| 芷江| 美姑县| 鸡东县| 上饶县| 高安市| 平山县| 五台县| 家居| 体育| 仁寿县| 泰州市| 鹿泉市|