亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

用于改善分組共享存儲器體系結構組播性能的系統(tǒng)和方法

文檔序號:7861664閱讀:251來源:國知局
專利名稱:用于改善分組共享存儲器體系結構組播性能的系統(tǒng)和方法
技術領域
本發(fā)明大體上涉及網絡交換機,更具體地,涉及用于改善分組(banked)共享存儲器體系結構的組播(mu 11 i cas t)性能的系統(tǒng)和方法。
背景技術
數據通信基礎架構的需求不斷增長。各種因素驅動這些不斷增長的需求,包括互聯(lián)網多媒體應用(例如,新聞的發(fā)布、財務數據、軟件、視頻,音頻和多人會議等)的日益增長的帶寬需求。為了適應日益增長的帶寬需求,通信鏈路速度也不斷發(fā)展。例如,10千兆以太網(GbE)端口通常用于現今的大量網絡交換機上的I/O。共享存儲器通常用于構建輸出隊列(OQ)交換機。OQ交換機以吞吐量最大化、使延遲最小化并且能夠提供服務質量(QoS)保證著稱。然而,共享存儲器交換機被認為不會很好地擴展到高容量交換機,因為對存儲器大小、存儲器帶寬和存儲器存取時間的需求隨著線速R和端口的數量N線性增加。例如,N端口交換機需要以快于線速N倍操作以實現全
吞吐量??紤]例如128X IOGbps交換機。這里,對于64字節(jié)使用lOGbps,并且有20字節(jié)的包間間隙(IPG),包到達速率是大約67ns。因此,存儲器需要在約67nm內進行讀取和寫入。對于128端口 IOGbps交換機,存儲器需要支持在接收單個65字節(jié)包所需要的時間內的所有的讀取和寫入。因此,存取時間為67ns/(128讀取+128寫入)=約250ps。應理解,250ps的存取時間對現今的交換機是不實用。為此,由于可擴展性,高容量交換機正朝向存儲器組(banks of memory)發(fā)展。通過多個共享存儲器組,帶寬需求可以被均勻地分布在多個存儲器上,從而增加所需的存儲器存取時間。例如,單播流量所需要的平均存儲器帶寬減少了 1/m,其中m是存儲器的數量。雖然已知多個存儲器可增強單播流量的可擴展性,但組播流量給自身提出挑戰(zhàn)。例如,在給定的組播巾貞的所有包位于在相同的存儲器中時,由于在同一時間巾貞或在同一事件幀前后對同一存儲器多次讀取會導致在該存儲器高度的時間局部性。因此,需要提高分組共享存儲系體系機構中的組播性能的機制。

發(fā)明內容
基本上如同結合至少一個附圖所示的和/或描述的,如在權利要求書中更完整地闡述的用于提高分組共享存儲器體系結構的組播性能的系統(tǒng)和/或方法。根據本發(fā)明的一個方面,提供了一種交換機,包括多個入站端口,所述多個入站端口從相應的多個第一網絡設備接收流量,所述多個第一網絡設備經由各自的多個第一網絡通信電纜耦接至所述多個入站端口 ;多個出站端口,所述多個出站端口向相應的多個第二網絡設備發(fā)送流量,所述多個第二網絡設備經由各自的多個第二網絡通信電纜耦接至所述多個出站端口 ;以及多個共享存儲組,將所述多個入站端口耦接至所述多個出站端口,所述多個共享存儲組中的每個都具有主存儲器,其中,與所述多個共享存儲組中的第一個相關聯(lián)的高速緩沖存儲器用于存儲組播流量,從而使在所述第一共享存儲組的主存儲器中存儲的單播流量的讀取能夠與所述第一共享存儲組相關聯(lián)的所述高速緩沖存儲器中存儲的組播流量的讀取并行。優(yōu)選地,所述多個共享存儲組中的每個都具有用于存儲組播流量的高速緩沖存儲器。優(yōu)選地,所述高速緩沖存儲器與一群共享存儲組相關聯(lián)。根據本發(fā)明的另一方面,提供了一種交換機中的組播流量讀取方法,包括接收在多個共享存儲組中的所確定的一個中存儲的組播包的讀取請求,所述多個共享存儲組耦接所述交換機中的多個入站端口和多個出站端口 ;確定所請求的組播流量包是否存儲在與所述多個共享存儲組的所確定的一個相關聯(lián)的高速緩沖存儲器中;如果確定所請求的組播流量包存儲在與所述多個共享存儲組的所確定的一個相關聯(lián)的高速緩沖存儲器中,則從所述高速緩沖存儲器中讀取所請求的組播流量包;以及如果確定所請求的組播流量包沒有存儲在與所述多個共享存儲組的所確定的一個相關聯(lián)的高速緩沖存儲器中,則從所述多個共享存儲組中的所確定的一個的主存儲器讀取所請求的組播流量包。優(yōu)選地,所述確定包括確定所請求的組播流量包是否存儲在所述多個共享存儲組中的所述一個中包含的高速緩沖存儲器中。優(yōu)選地,所述確定包括確定所請求的組播流量包是否存儲在與包括所述多個共享存儲組的所述一個的多個共享存儲組相關聯(lián)的高速緩沖存儲器中。優(yōu)選地,該方法還包括在從所述高速緩沖存儲器讀取所請求的組播流量包的同時,從所述多個共享存儲組的所確定的一個的主存儲器中讀取所請求的單播流量包。根據本發(fā)明的另一方面,提供了一種交換機中的組播流量讀取方法,包括接收在多個共享存儲組中的所確定的一個中存儲的組播流量包的讀取請求,所述多個共享存儲組耦接所述交換機中的多個入站端口和多個出站端口 ;將對所述組播流量包的所述讀取請求存儲在請求高速緩存中;在所述組播流量包的讀取事件之前,對所述組播流量包的額外讀取請求進行計數;以及將通過所述讀取事件獲得的所述組播流量包傳送到由所述額外讀取請求代表的多個出站端口。優(yōu)選地,該方法還包括將入站端口的確定傳遞到控制所述傳送的控制元件。


為了描述能夠獲得本發(fā)明的上述和其他優(yōu)點和特征的方式,通過參照在附圖中示出的以上簡單描述的本發(fā)明的實施例來更具體地描述本發(fā)明。應理解,這些附圖僅描述了本發(fā)明的典型實施例,因此不被認為是限制其范圍,通過使用附圖來更詳細地描述和說明本發(fā)明圖1示出具有一組并行共享存儲器的交換機中數據高速緩存的示例性實施方式。圖2示出了本發(fā)明的處理的流程圖。
圖3示出了組播流量的讀取請求高速緩存的示例性實施方式。
具體實施例方式以下詳細討論本發(fā)明的各種實施方式。雖然討論了具體的實現方式,但應當理解這樣做僅用于說明的目的。在相關領域中技術人員將認識到,在不背離本發(fā)明的精神和范圍的情況下,可使用其他組件和配置。隨著組播流量的消耗以極快的速度增加,組播流量已變得越來越重要。在將單個的數據流高效地傳輸到多個目的地時,組播提供節(jié)省網絡帶寬的高效機制。為了支持多媒體應用的不斷擴展,底層基礎架構必須相應地提高其性能,以滿足QoS保證。這里底層基礎架構必須滿足諸如低延遲、最小抖動、公平的性能要求。如上所述,解決單個共享存儲器交換機的存儲器帶寬限制的一個解決方案是利用一組并行的共享存儲器。該方法的一個實例是并行共享存儲器交換機,其中,所有共享存儲器資源位于中心位置。該方法的另一實例是分布式共享存儲器交換機,其中,存儲器分布在線路卡間。從邏輯上講,分布式共享存儲器交換機相當于并行共享存儲器交換機。應理解,存儲器管理算法可用于確定在給定實現中所需要的存儲器單元的具體數量。然而,在這方面最重要的是來針對特定交換機所確定的存儲器單元的具體數量主要基于單播流量模式。另一方面,組播流量存在不同的挑戰(zhàn)。在將組播流量路由至多個輸出端口時,在共享存儲器交換機中可以利用多個方法。在一個方法中,在共享存儲器之前可以復制組播數據包。然而,由于多個副本保持在存儲器中,所以該方法將需求更大的存儲器。這樣減少了共享存儲器交換機的有效吞吐量。在另一方法中,可以從相同的存儲器位置多次讀取組播包,其中控制電路將組播包保持在存儲器中,直到為了分布組播包被讀出到組播組中的所有輸出端口。該方法也會導致效率低下,因為在特定共享存儲器組中組播數據包的存在將引入該特定共享存儲器組的高度時間局部性。該時間局部性將導致共享存儲器組中的瓶頸,因為共享存儲器組被限制為每時隙一次讀取。例如,如果存儲器管理模塊將組播數據包發(fā)送到存儲器單元,并且組播數據包被傳送到輸出端口 I至N中的每個,然后相同組播數據包的N個讀取將需要在N個時隙發(fā)生,因為每個時隙只發(fā)生一次讀取。這將有效地減少存儲單元的吞吐量,因為在存儲單元中的其他單播數據包的讀取可被延遲。因此,可能發(fā)生線速的折中。在本發(fā)明中認別到可采用由組播流量在共享存儲器組中產生的時間局部性來解決線速問題。因此,通過使用高速緩存(cache)協(xié)助共享存儲器組中存儲的組播流量的讀取來利用時間局部性是本發(fā)明的特征。圖1示出了具有一組平行共享存儲器單元的交換機中的數據高速緩存(caching)的示例性實施方式。所示出的存儲單元110包括主存儲器112,以及較小的高速緩沖存儲器(cache memory)114。如將在下文中更詳細描述的,高速緩沖存儲器114被設計為存儲組播包。在一個實施方式中,高速緩沖存儲器114可以包括在每個共享存儲器組中。在另一實施方式中,高速緩沖存儲器可以與一群(group )共享存儲器組相關聯(lián)。當流量進入交換機時,包處理單元對包進行實時操作,例如,組巾貞/分巾貞、分類、流量監(jiān)管和整形、修改、壓縮/加密、排隊等。作為該處理的一部分,包處理單元可以分離單播和組播流量,并且將那些包放在不同的隊列中。這里,應注意,讀或寫可以發(fā)生在包邊界(boundary)或(包的)段邊界。為了示出流量的單播和組播類型的相對處理,單個組播包被識別為包122,而單個單播包被識別為包124。如圖所示,單播包122被路由到存儲單元110。存儲器單元組中的一個特定組的選擇基于實現的特定的存儲器管理算法。在存儲單元110中,單播包122被存儲在主存儲器112中。相比之下,當組播包124通過存儲器管理算法被路由到存儲單元110時,它首先被寫入主存儲器中,隨后在從主存儲器讀取組播包時被寫入到組播高速緩沖存儲器114。這是由于組播包產生的時間局部性。這里,應注意,首先進行檢查以確定高速緩沖存儲器114是否具有空間來存儲組播包124。該檢查是必要的,因為緩沖存儲器114的大小沒有被設計為保證每個組播包的存儲。雖然根據被設計為處理以給定的線速到達的輸出單播包的存儲的實現存儲管理算法能夠確定交換機中的存儲單元的數量,但是當事先不知道組播流量和單播流量的百分比時,不能夠如此確定組播存儲器的大小。此外,給定的組播高速緩沖存儲器可以與一組存儲單元而不是單個存儲單元相關聯(lián),從而以很少的額外開銷為提供顯著改進的組播流量性能。高速緩沖存儲器114中的組播數據包124的存儲利用由組播包114創(chuàng)建的高度時間局部性。應理解,當組播數據包124被存儲在存儲單元110中時,對于組播數據包124期望多次讀取存儲單元110。根據本發(fā)明,高速緩沖存儲器114中的組播包124的存儲能夠在組播包駐留在高速緩沖存儲器114中的時隙中從存儲單元110進行兩次讀 取。具體地,在給定的時隙中,可從主存儲器中讀取單播包122,可以從高速緩沖存儲器114讀取組播包124。在隨后的時隙中,相同組播包的124可進一步從緩沖存儲器中讀取,而不抑制從主存儲器112讀取單播包。為了進一步示出高速緩沖存儲器114處理組播流量的使用,現在參照圖2的流程圖。如圖所示,從存儲單元讀取組播流量的處理從步驟202開始,在步驟202,接收到讀取組播流量的請求。在步驟204,評估組播包讀取請求,以確定該組播包是否存儲在高速緩沖存儲器中。如果在步驟204中確定組播包存儲在高速緩沖存儲器中,則在步驟206從高速緩沖存儲器讀取該組播包??蛇x地,如果在步驟204確定該組播數據包沒有存儲在高速緩沖存儲器中,則在步驟208從主存儲器讀取組播數據包。應理解,包括小的高速緩沖存儲器114被設計為以高效的方式解決交換機中組播流量的處理。在本發(fā)明中,小的高速緩沖存儲器114相對于主存儲器小并且其大小基于具體的性能目標來確定。這里,應注意,包括小的高速緩沖存儲器114與創(chuàng)建額外的共享存儲器組不同。只添加額外的共享存儲器組將導致效率低下,因為經常根據模擬先到先得的OQ交換機的存儲器管理算法的設計來選擇共享存儲器組的數量。因此,添加小的組播高速緩沖存儲器在提供存儲單元大小的邊界增加方面有優(yōu)勢,其中該邊界增加提供了高效解決組播流量產生的時間局部性的交換機存儲器吞吐量的大幅增加。使用高速緩存來解決時間局部性問題不限于上述數據高速緩存實例。在一個實施方式中,高速緩存可以應用于組播流量的讀取請求,而不是組播數據本身。這里,各組播讀取請求將被存儲在組播讀取請求緩存中。將對在來自共享存儲器組的實際讀取事件之前發(fā)生的對同一共享存儲器組的請求進行計數。換言之,額外的組播讀取請求將在實際讀取事件之前積累。應理解,組播讀取請求的積累還包括諸如額外組播讀取請求的目的端口的控制信息的通過(passage)。當來自共享存儲器組的組播數據包的實際讀取發(fā)生時,將一次讀取組播數據包。所讀取的組播數據包將與指定目的地端口的控制信息一起傳遞,此時,組播數據包將被復制并且傳送到積累其組播數據包請求的多個目的端口。圖3示出用于讀取請求緩存的組播數據包的通用控制結構。如圖所示,在單個讀取事件中,從存儲單元310讀取組播包。該包被傳遞到也接收控制信息(例如,計數和目的地端口)的控制元件320,從而將組播包傳送到多個所確定(identify,識別)的目的端口。這里,應注意,組播讀取請求的累積數量可以代表小于特定組播包的組播讀取請求的總數。事實上,共享存儲器組中的特定組播數據包的多次實際讀取仍然可能發(fā)生。然而,重要的是,對一組共享存儲器的組播包的各實際讀取能夠代表多個讀取請求。因此,讀取請求緩存通過減少對特定共享存儲器分組的實際讀取次數解決了時間局部性問題。這種減少有效地增加了共享存儲器交換機的吞吐量。通過對前面詳細描述的回顧,本發(fā)明的這些和其它方面對本領域的技術人員將變得顯而易見。雖然上面已 經描述了本發(fā)明的大量顯著特征,但是本發(fā)明可以具有其它實施例,并能夠在本領域的技術人員閱讀所公開的發(fā)明之后以對本領域技術人員顯而易見的各種方式來實施和執(zhí)行,因此上面的描述不應被認為排除這些其它實施例。此外,應理解,本文使用的措辭和術語是僅用于說明的目的,并且不應被視為限制。
權利要求
1.一種交換機,包括 多個入站端口,所述多個入站端口從相應的多個第一網絡設備接收流量,所述多個第一網絡設備經由各自的多個第一網絡通信電纜耦接至所述多個入站端口; 多個出站端口,所述多個出站端口向相應的多個第二網絡設備發(fā)送流量,所述多個第二網絡設備經由各自的多個第二網絡通信電纜耦接至所述多個出站端口 ;以及 多個共享存儲組,將所述多個入站端口耦接至所述多個出站端口,所述多個共享存儲組中的每個都具有主存儲器,其中,與所述多個共享存儲組中的第一個相關聯(lián)的高速緩沖存儲器用于存儲組播流量,從而使在所述第一共享存儲組的主存儲器中存儲的單播流量的讀取能夠與所述第一共享存儲組相關聯(lián)的所述高速緩沖存儲器中存儲的組播流量的讀取并行。
2.根據權利要求1所述的交換機,其中,所述多個共享存儲組中的每個都具有用于存儲組播流量的高速緩沖存儲器。
3.根據權利要求1所述的交換機,其中,所述高速緩沖存儲器與一群共享存儲組相關聯(lián)。
4.一種交換機中的組播流量讀取方法,包括 接收在多個共享存儲組中的所確定的一個中存儲的組播包的讀取請求,所述多個共享存儲組f禹接所述交換機中的多個入站端口和多個出站端口 ; 確定所請求的組播流量包是否存儲在與所述多個共享存儲組的所確定的一個相關聯(lián)的高速緩沖存儲器中; 如果確定所請求的組播流量包存儲在與所述多個共享存儲組的所確定的一個相關聯(lián)的高速緩沖存儲器中,則從所述高速緩沖存儲器中讀取所請求的組播流量包;以及 如果確定所請求的組播流量包沒有存儲在與所述多個共享存儲組的所確定的一個相關聯(lián)的高速緩沖存儲器中,則從所述多個共享存儲組中的所確定的一個的主存儲器讀取所請求的組播流量包。
5.根據權利要求4所述的方法,其中,所述確定包括確定所請求的組播流量包是否存儲在所述多個共享存儲組中的所述一個中包含的高速緩沖存儲器中。
6.根據權利要求5所述的方法,其中,所述確定包括確定所請求的組播流量包是否存儲在與包括所述多個共享存儲組的所述一個的多個共享存儲組相關聯(lián)的高速緩沖存儲器中。
7.根據權利要求5所述的方法,還包括在從所述高速緩沖存儲器讀取所請求的組播流量包的同時,從所述多個共享存儲組的所確定的一個的主存儲器中讀取所請求的單播流量包。
8.—種交換機中的組播流量讀取方法,包括 接收在多個共享存儲組中的所確定的一個中存儲的組播流量包的讀取請求,所述多個共享存儲組耦接所述交換機中的多個入站端口和多個出站端口; 將對所述組播流量包的所述讀取請求存儲在請求高速緩存中; 在所述組播流量包的讀取事件之前,對所述組播流量包的額外讀取請求進行計數;以及 將通過所述讀取事件獲得的所述組播流量包傳送到由所述額外讀取請求代表的多個出站端口。
9.根據權利要求8所述的方法,還包括將入站端口的確定傳遞到控制所述傳送的控制元件。
全文摘要
本發(fā)明涉及用于改善分組共享存儲器體系結構的組播性能的系統(tǒng)和方法。解決由共享存儲器組中的組播包產生的時間局部性通過高速緩存得以解決。在一個實施方式中,組播數據包被存儲在與共享存儲器組相關聯(lián)的高速緩沖存儲器中。在另一實施方式中,組播包的讀取請求被存儲在讀取請求高速緩存中,其中在實際讀取事件之前積累額外的讀取請求。
文檔編號H04L12/933GK103036805SQ20121036608
公開日2013年4月10日 申請日期2012年9月27日 優(yōu)先權日2011年9月30日
發(fā)明者布拉德·馬修斯 申請人:美國博通公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1