麻豆精品无码国产在线播放,国产亚洲精品成人AA片新蒲金,国模无码大尺度一区二区三区,神马免费午夜福利剧场

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

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

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


為了描述能夠獲得本發(fā)明的上述和其他優(yōu)點(diǎn)和特征的方式,通過參照在附圖中示出的以上簡單描述的本發(fā)明的實(shí)施例來更具體地描述本發(fā)明。應(yīng)理解,這些附圖僅描述了本發(fā)明的典型實(shí)施例,因此不被認(rèn)為是限制其范圍,通過使用附圖來更詳細(xì)地描述和說明本發(fā)明圖1示出具有一組并行共享存儲器的交換機(jī)中數(shù)據(jù)高速緩存的示例性實(shí)施方式。圖2示出了本發(fā)明的處理的流程圖。
圖3示出了組播流量的讀取請求高速緩存的示例性實(shí)施方式。
具體實(shí)施例方式以下詳細(xì)討論本發(fā)明的各種實(shí)施方式。雖然討論了具體的實(shí)現(xiàn)方式,但應(yīng)當(dāng)理解這樣做僅用于說明的目的。在相關(guān)領(lǐng)域中技術(shù)人員將認(rèn)識到,在不背離本發(fā)明的精神和范圍的情況下,可使用其他組件和配置。隨著組播流量的消耗以極快的速度增加,組播流量已變得越來越重要。在將單個的數(shù)據(jù)流高效地傳輸?shù)蕉鄠€目的地時,組播提供節(jié)省網(wǎng)絡(luò)帶寬的高效機(jī)制。為了支持多媒體應(yīng)用的不斷擴(kuò)展,底層基礎(chǔ)架構(gòu)必須相應(yīng)地提高其性能,以滿足QoS保證。這里底層基礎(chǔ)架構(gòu)必須滿足諸如低延遲、最小抖動、公平的性能要求。如上所述,解決單個共享存儲器交換機(jī)的存儲器帶寬限制的一個解決方案是利用一組并行的共享存儲器。該方法的一個實(shí)例是并行共享存儲器交換機(jī),其中,所有共享存儲器資源位于中心位置。該方法的另一實(shí)例是分布式共享存儲器交換機(jī),其中,存儲器分布在線路卡間。從邏輯上講,分布式共享存儲器交換機(jī)相當(dāng)于并行共享存儲器交換機(jī)。應(yīng)理解,存儲器管理算法可用于確定在給定實(shí)現(xiàn)中所需要的存儲器單元的具體數(shù)量。然而,在這方面最重要的是來針對特定交換機(jī)所確定的存儲器單元的具體數(shù)量主要基于單播流量模式。另一方面,組播流量存在不同的挑戰(zhàn)。在將組播流量路由至多個輸出端口時,在共享存儲器交換機(jī)中可以利用多個方法。在一個方法中,在共享存儲器之前可以復(fù)制組播數(shù)據(jù)包。然而,由于多個副本保持在存儲器中,所以該方法將需求更大的存儲器。這樣減少了共享存儲器交換機(jī)的有效吞吐量。在另一方法中,可以從相同的存儲器位置多次讀取組播包,其中控制電路將組播包保持在存儲器中,直到為了分布組播包被讀出到組播組中的所有輸出端口。該方法也會導(dǎo)致效率低下,因?yàn)樵谔囟ü蚕泶鎯ζ鹘M中組播數(shù)據(jù)包的存在將引入該特定共享存儲器組的高度時間局部性。該時間局部性將導(dǎo)致共享存儲器組中的瓶頸,因?yàn)楣蚕泶鎯ζ鹘M被限制為每時隙一次讀取。例如,如果存儲器管理模塊將組播數(shù)據(jù)包發(fā)送到存儲器單元,并且組播數(shù)據(jù)包被傳送到輸出端口 I至N中的每個,然后相同組播數(shù)據(jù)包的N個讀取將需要在N個時隙發(fā)生,因?yàn)槊總€時隙只發(fā)生一次讀取。這將有效地減少存儲單元的吞吐量,因?yàn)樵诖鎯卧械钠渌麊尾?shù)據(jù)包的讀取可被延遲。因此,可能發(fā)生線速的折中。在本發(fā)明中認(rèn)別到可采用由組播流量在共享存儲器組中產(chǎn)生的時間局部性來解決線速問題。因此,通過使用高速緩存(cache)協(xié)助共享存儲器組中存儲的組播流量的讀取來利用時間局部性是本發(fā)明的特征。圖1示出了具有一組平行共享存儲器單元的交換機(jī)中的數(shù)據(jù)高速緩存(caching)的示例性實(shí)施方式。所示出的存儲單元110包括主存儲器112,以及較小的高速緩沖存儲器(cache memory)114。如將在下文中更詳細(xì)描述的,高速緩沖存儲器114被設(shè)計(jì)為存儲組播包。在一個實(shí)施方式中,高速緩沖存儲器114可以包括在每個共享存儲器組中。在另一實(shí)施方式中,高速緩沖存儲器可以與一群(group )共享存儲器組相關(guān)聯(lián)。當(dāng)流量進(jìn)入交換機(jī)時,包處理單元對包進(jìn)行實(shí)時操作,例如,組巾貞/分巾貞、分類、流量監(jiān)管和整形、修改、壓縮/加密、排隊(duì)等。作為該處理的一部分,包處理單元可以分離單播和組播流量,并且將那些包放在不同的隊(duì)列中。這里,應(yīng)注意,讀或?qū)懣梢园l(fā)生在包邊界(boundary)或(包的)段邊界。為了示出流量的單播和組播類型的相對處理,單個組播包被識別為包122,而單個單播包被識別為包124。如圖所示,單播包122被路由到存儲單元110。存儲器單元組中的一個特定組的選擇基于實(shí)現(xiàn)的特定的存儲器管理算法。在存儲單元110中,單播包122被存儲在主存儲器112中。相比之下,當(dāng)組播包124通過存儲器管理算法被路由到存儲單元110時,它首先被寫入主存儲器中,隨后在從主存儲器讀取組播包時被寫入到組播高速緩沖存儲器114。這是由于組播包產(chǎn)生的時間局部性。這里,應(yīng)注意,首先進(jìn)行檢查以確定高速緩沖存儲器114是否具有空間來存儲組播包124。該檢查是必要的,因?yàn)榫彌_存儲器114的大小沒有被設(shè)計(jì)為保證每個組播包的存儲。雖然根據(jù)被設(shè)計(jì)為處理以給定的線速到達(dá)的輸出單播包的存儲的實(shí)現(xiàn)存儲管理算法能夠確定交換機(jī)中的存儲單元的數(shù)量,但是當(dāng)事先不知道組播流量和單播流量的百分比時,不能夠如此確定組播存儲器的大小。此外,給定的組播高速緩沖存儲器可以與一組存儲單元而不是單個存儲單元相關(guān)聯(lián),從而以很少的額外開銷為提供顯著改進(jìn)的組播流量性能。高速緩沖存儲器114中的組播數(shù)據(jù)包124的存儲利用由組播包114創(chuàng)建的高度時間局部性。應(yīng)理解,當(dāng)組播數(shù)據(jù)包124被存儲在存儲單元110中時,對于組播數(shù)據(jù)包124期望多次讀取存儲單元110。根據(jù)本發(fā)明,高速緩沖存儲器114中的組播包124的存儲能夠在組播包駐留在高速緩沖存儲器114中的時隙中從存儲單元110進(jìn)行兩次讀 取。具體地,在給定的時隙中,可從主存儲器中讀取單播包122,可以從高速緩沖存儲器114讀取組播包124。在隨后的時隙中,相同組播包的124可進(jìn)一步從緩沖存儲器中讀取,而不抑制從主存儲器112讀取單播包。為了進(jìn)一步示出高速緩沖存儲器114處理組播流量的使用,現(xiàn)在參照圖2的流程圖。如圖所示,從存儲單元讀取組播流量的處理從步驟202開始,在步驟202,接收到讀取組播流量的請求。在步驟204,評估組播包讀取請求,以確定該組播包是否存儲在高速緩沖存儲器中。如果在步驟204中確定組播包存儲在高速緩沖存儲器中,則在步驟206從高速緩沖存儲器讀取該組播包。可選地,如果在步驟204確定該組播數(shù)據(jù)包沒有存儲在高速緩沖存儲器中,則在步驟208從主存儲器讀取組播數(shù)據(jù)包。應(yīng)理解,包括小的高速緩沖存儲器114被設(shè)計(jì)為以高效的方式解決交換機(jī)中組播流量的處理。在本發(fā)明中,小的高速緩沖存儲器114相對于主存儲器小并且其大小基于具體的性能目標(biāo)來確定。這里,應(yīng)注意,包括小的高速緩沖存儲器114與創(chuàng)建額外的共享存儲器組不同。只添加額外的共享存儲器組將導(dǎo)致效率低下,因?yàn)榻?jīng)常根據(jù)模擬先到先得的OQ交換機(jī)的存儲器管理算法的設(shè)計(jì)來選擇共享存儲器組的數(shù)量。因此,添加小的組播高速緩沖存儲器在提供存儲單元大小的邊界增加方面有優(yōu)勢,其中該邊界增加提供了高效解決組播流量產(chǎn)生的時間局部性的交換機(jī)存儲器吞吐量的大幅增加。使用高速緩存來解決時間局部性問題不限于上述數(shù)據(jù)高速緩存實(shí)例。在一個實(shí)施方式中,高速緩存可以應(yīng)用于組播流量的讀取請求,而不是組播數(shù)據(jù)本身。這里,各組播讀取請求將被存儲在組播讀取請求緩存中。將對在來自共享存儲器組的實(shí)際讀取事件之前發(fā)生的對同一共享存儲器組的請求進(jìn)行計(jì)數(shù)。換言之,額外的組播讀取請求將在實(shí)際讀取事件之前積累。應(yīng)理解,組播讀取請求的積累還包括諸如額外組播讀取請求的目的端口的控制信息的通過(passage)。當(dāng)來自共享存儲器組的組播數(shù)據(jù)包的實(shí)際讀取發(fā)生時,將一次讀取組播數(shù)據(jù)包。所讀取的組播數(shù)據(jù)包將與指定目的地端口的控制信息一起傳遞,此時,組播數(shù)據(jù)包將被復(fù)制并且傳送到積累其組播數(shù)據(jù)包請求的多個目的端口。圖3示出用于讀取請求緩存的組播數(shù)據(jù)包的通用控制結(jié)構(gòu)。如圖所示,在單個讀取事件中,從存儲單元310讀取組播包。該包被傳遞到也接收控制信息(例如,計(jì)數(shù)和目的地端口)的控制元件320,從而將組播包傳送到多個所確定(identify,識別)的目的端口。這里,應(yīng)注意,組播讀取請求的累積數(shù)量可以代表小于特定組播包的組播讀取請求的總數(shù)。事實(shí)上,共享存儲器組中的特定組播數(shù)據(jù)包的多次實(shí)際讀取仍然可能發(fā)生。然而,重要的是,對一組共享存儲器的組播包的各實(shí)際讀取能夠代表多個讀取請求。因此,讀取請求緩存通過減少對特定共享存儲器分組的實(shí)際讀取次數(shù)解決了時間局部性問題。這種減少有效地增加了共享存儲器交換機(jī)的吞吐量。通過對前面詳細(xì)描述的回顧,本發(fā)明的這些和其它方面對本領(lǐng)域的技術(shù)人員將變得顯而易見。雖然上面已 經(jīng)描述了本發(fā)明的大量顯著特征,但是本發(fā)明可以具有其它實(shí)施例,并能夠在本領(lǐng)域的技術(shù)人員閱讀所公開的發(fā)明之后以對本領(lǐng)域技術(shù)人員顯而易見的各種方式來實(shí)施和執(zhí)行,因此上面的描述不應(yīng)被認(rèn)為排除這些其它實(shí)施例。此外,應(yīng)理解,本文使用的措辭和術(shù)語是僅用于說明的目的,并且不應(yīng)被視為限制。
權(quán)利要求
1.一種交換機(jī),包括 多個入站端口,所述多個入站端口從相應(yīng)的多個第一網(wǎng)絡(luò)設(shè)備接收流量,所述多個第一網(wǎng)絡(luò)設(shè)備經(jīng)由各自的多個第一網(wǎng)絡(luò)通信電纜耦接至所述多個入站端口; 多個出站端口,所述多個出站端口向相應(yīng)的多個第二網(wǎng)絡(luò)設(shè)備發(fā)送流量,所述多個第二網(wǎng)絡(luò)設(shè)備經(jīng)由各自的多個第二網(wǎng)絡(luò)通信電纜耦接至所述多個出站端口 ;以及 多個共享存儲組,將所述多個入站端口耦接至所述多個出站端口,所述多個共享存儲組中的每個都具有主存儲器,其中,與所述多個共享存儲組中的第一個相關(guān)聯(lián)的高速緩沖存儲器用于存儲組播流量,從而使在所述第一共享存儲組的主存儲器中存儲的單播流量的讀取能夠與所述第一共享存儲組相關(guān)聯(lián)的所述高速緩沖存儲器中存儲的組播流量的讀取并行。
2.根據(jù)權(quán)利要求1所述的交換機(jī),其中,所述多個共享存儲組中的每個都具有用于存儲組播流量的高速緩沖存儲器。
3.根據(jù)權(quán)利要求1所述的交換機(jī),其中,所述高速緩沖存儲器與一群共享存儲組相關(guān)聯(lián)。
4.一種交換機(jī)中的組播流量讀取方法,包括 接收在多個共享存儲組中的所確定的一個中存儲的組播包的讀取請求,所述多個共享存儲組f禹接所述交換機(jī)中的多個入站端口和多個出站端口 ; 確定所請求的組播流量包是否存儲在與所述多個共享存儲組的所確定的一個相關(guān)聯(lián)的高速緩沖存儲器中; 如果確定所請求的組播流量包存儲在與所述多個共享存儲組的所確定的一個相關(guān)聯(lián)的高速緩沖存儲器中,則從所述高速緩沖存儲器中讀取所請求的組播流量包;以及 如果確定所請求的組播流量包沒有存儲在與所述多個共享存儲組的所確定的一個相關(guān)聯(lián)的高速緩沖存儲器中,則從所述多個共享存儲組中的所確定的一個的主存儲器讀取所請求的組播流量包。
5.根據(jù)權(quán)利要求4所述的方法,其中,所述確定包括確定所請求的組播流量包是否存儲在所述多個共享存儲組中的所述一個中包含的高速緩沖存儲器中。
6.根據(jù)權(quán)利要求5所述的方法,其中,所述確定包括確定所請求的組播流量包是否存儲在與包括所述多個共享存儲組的所述一個的多個共享存儲組相關(guān)聯(lián)的高速緩沖存儲器中。
7.根據(jù)權(quán)利要求5所述的方法,還包括在從所述高速緩沖存儲器讀取所請求的組播流量包的同時,從所述多個共享存儲組的所確定的一個的主存儲器中讀取所請求的單播流量包。
8.—種交換機(jī)中的組播流量讀取方法,包括 接收在多個共享存儲組中的所確定的一個中存儲的組播流量包的讀取請求,所述多個共享存儲組耦接所述交換機(jī)中的多個入站端口和多個出站端口; 將對所述組播流量包的所述讀取請求存儲在請求高速緩存中; 在所述組播流量包的讀取事件之前,對所述組播流量包的額外讀取請求進(jìn)行計(jì)數(shù);以及 將通過所述讀取事件獲得的所述組播流量包傳送到由所述額外讀取請求代表的多個出站端口。
9.根據(jù)權(quán)利要求8所述的方法,還包括將入站端口的確定傳遞到控制所述傳送的控制元件。
全文摘要
本發(fā)明涉及用于改善分組共享存儲器體系結(jié)構(gòu)的組播性能的系統(tǒng)和方法。解決由共享存儲器組中的組播包產(chǎn)生的時間局部性通過高速緩存得以解決。在一個實(shí)施方式中,組播數(shù)據(jù)包被存儲在與共享存儲器組相關(guān)聯(lián)的高速緩沖存儲器中。在另一實(shí)施方式中,組播包的讀取請求被存儲在讀取請求高速緩存中,其中在實(shí)際讀取事件之前積累額外的讀取請求。
文檔編號H04L12/933GK103036805SQ20121036608
公開日2013年4月10日 申請日期2012年9月27日 優(yōu)先權(quán)日2011年9月30日
發(fā)明者布拉德·馬修斯 申請人:美國博通公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
主站蜘蛛池模板: 红安县| 仪征市| 淅川县| 巧家县| 乌恰县| 贵南县| 开平市| 遵化市| 湘潭县| 秦安县| 唐海县| 万全县| 苍山县| 西乌| 淅川县| 贡山| 闵行区| 柳州市| 永善县| 英吉沙县| 建湖县| 鲁山县| 宁南县| 铜川市| 大兴区| 扎赉特旗| 光山县| 营山县| 盈江县| 温宿县| 崇文区| 宣化县| 慈溪市| 郎溪县| 嵊州市| 岳普湖县| 澜沧| 水富县| 内乡县| 锡林郭勒盟| 漠河县|