同步SRAM的傳統應用領域是搜索引擎,用于實現算法。在相當長的一段時間里,這都是SRAM在網絡中發揮的主要作用。然而,隨著新存儲技術的出現,系統設計師為SRAM找到了新的用武之地,如:NetFlow(網流)、計數器、統計、包緩沖、隊列管理和存儲分配器。
如今,人們對所有路由器和交換機的要求都不僅限于FIB(轉發信息庫)搜索。計數器需要跟蹤接受服務的信息包數量,并獲取統計數據來解決帳單編制問題。通過統計來連續監視網絡(被稱為NetFlow),從而完成問題檢測和判定。隨著每個信息包處理量的增加,需要采用包緩沖器來提升處理能力。除了以上提到的之外,由于系統中存儲器資源增多,因而動態存儲分配也是必需的。路由器或交換機的所有這些附加功能正在重新定義網絡系統設計(見圖1)。
圖1 具有多種新功能的網絡系統
此外,隨著IPv6和VRF(虛擬路由器轉發)的迅速普及,對更寬、更深、更快和更高效系統的需求愈加迫切。系統設計師必須能夠以最低的成本來滿足網絡系統的所有度量標準。此時,簡單的同步SRAM就難以滿足要求了。所有這些功能均可借助DDR(雙倍數據速率)或QDR(4倍數據速率)SRAM等速度更快、帶寬更高的SRAM來實現。本文將分析上述的每一種應用及其目前和未來的要求,還將提出旨在滿足這些要求的解決方案和建議。
QDR 與 DDR SRAM
由賽普拉斯、瑞薩、IDT、NEC和三星公司組成的QDR協會開發出了QDR SRAM,旨在通過把性能提升為原先的4倍來滿足那些不僅需要標準ZBT(零總線轉向時間)或NoBL(無總線延遲)SRAM的低延遲和滿周期利用率,而且還需要大幅度提高工作頻率的系統對帶寬的要求。QDR SRAM具有單獨的讀和寫端口,它們在每個數據引腳上以雙倍數據速率彼此獨立地工作,從而在一個時鐘周期中傳輸4個數據字,4倍數據速率因此而得名。采用分離的讀/寫端口完全消除了SRAM與存儲控制器之間發生總線爭用的可能性,而這卻是傳統的公用I/O器件需要解決的問題。QDRII SRAM具有被稱為回波時鐘的源同步時鐘,它們與數據輸出一道生成。QDR SRAM采用了HSTL(高速收發器邏輯)I/O標準,以便實現高速操作。
QDR SRAM面向那些需要在讀和寫操作之間進行轉換的應用,而DDR SRAM則主要面向需要進行數據流式處理(例如,先進行16項讀操作,然后再執行16項寫操作)的應用,此時,讀和寫操作之間的近期平衡為100%的讀操作或100%的寫操作。在這種情況下,有一根QDR SRAM總線在50%的時間里未被使用。其它的總線可能具有不平衡的近期讀/寫比例。后面這兩種情況是促使人們進行DDR公用I/O SRAM開發的主要原因,在這種器件中,輸入和輸出數據共用同一根總線。在從讀操作向寫操作轉換的過程中,需要總線轉向周期,并減小了可用帶寬。然而,對某些系統而言,這將產生優于QDR架構的平均總線利用率??刂?a target="_blank">信號極少,而且與QDR器件控制信號稍有不同。
網絡應用
如引言部分所述,網絡系統設計涉及諸多方面。即將采用網絡設計來實現的各類應用的數量日趨龐大。這里討論的是部分最常見的應用。
轉發/路由選擇
轉發信息庫(FIB)負責保存用于決定輸入信息包的路由選擇特性的路由選擇信息。代表路由的前綴可被存儲于三進制內容可尋址存儲器(TCAM)中并進行即時搜索,或存儲于SRAM中并利用某種算法對地址的若干位進行增量搜索。不管在哪種應用中,結果索引都具有一些用于指示所采取的措施的關聯信息 —— 下一個跳地址、更新統計和另一個端口上的復制等。傳統的做法是把該信息存儲于SRAM中。
與展開式可擴縮包分類解決方案(在該解決方案中,TCAM正逐漸成為事實標準)相比,人們在FIB算法方面進行了大量的研究工作。但是,有兩個發展趨勢對面向FIB解決方案的SRAM型算法提出了重大挑戰:(1)隨著IPv6支持能力的提高,入口的寬度也在增加;(2)由于VRF表和虛擬專用LAN業務(VPLS) 采用率的提高,路由選擇表的規模日益龐大起來。就VRF表而言,每個VLAN都存儲了相似的路由選擇表,而這會增加入口的數量。VPLS是一種新的范例,借助它可實現多層次網絡的扁平化,從而獲得更多的入口。隨著入口寬度的增加,基于SRAM的算法需要構建更深且更寬的多分支樹/trie樹,使得完成一項搜索所需進行的SRAM存取數量有所增加。于是,越來越多的系統設計師開始采用QDR SRAM來取代傳統的SRAM,因為前者提供了更高的帶寬,能夠實現更寬的樹形結構,原因是可在指定的時間期限內完成更多的存取。
NetFlow
Cisco systems公司的NetFlow技術是Cisco IOS軟件的主要組成部分,用于在數據進入特定的路由器或交換機接口時對其進行收集和測量。通過分析NetFlow數據,網絡工程師能夠發現導致擁塞的原因;確定每個用戶和應用的服務類型(CoS),并確認通信量的源網絡和目標網絡。NetFlow實現了極為細致和準確的通信量測量和高級聚合式通信量收集功能。
目前,IETF(因特網工程特別工作組)正在對NetFlow的現有版本(ver9)進行標準化,并將其命名為IPFIX。除了Cisco之外,Enterasys和Juniper等網絡供應商都在該標準的制訂過程中發揮著作用,并且已經表示出采納IPFIX的興趣。當然,在多機種網絡中,作為網絡應用流相關信息的一致性來源,使得NetFlow/IPFIX的吸引力遠遠超過了其它方案。
概括起來,NetFlow提供了以下信息:
*信源 IP地址
*目的IP地址
* 源端口
* 目的端口
*第三層協議類型
*服務類型
NetFlow僅負責捕獲入站通信量,因此,通常需要在鏈路的兩端均安放儀表。目前,NetFlow是以采用特殊算法的軟件來實現的,并把數據存儲于QDR SRAM之中。由于NetFlow是一種需要滿足一定線路速率的新技術,因此它是采用QDR來實現的。如今,可實現40Gbps"56Gbps數據速率的下一代路由器/交換機的大多數供應商都把目光集中在了具有250MHz"300MHz操作速度的QDR SRAM上。隨著數據速率的增加,SRAM的速度指標變得愈發重要。
計數器
在每一種網絡應用中,始終需要保持量度(metrics)。計數器是跟蹤網絡活動所必需的。對于每種網絡協議而言,都需要跟蹤一種特定的量度。例如:在IP層(第三層),通常設置了用于顯示以數據報形式發送的網絡通信量的數據報/秒計數器。這些數據報一般都是廣播信息包,因此,為了減少廣播通信量,了解哪些服務和處理采用了數據報是很有必要的。該信息可通過數據報計數器獲得。在TCP(即第4層)中,一個相似的計數器是TCP段/秒計數器,它能夠提供網絡接收和發送的TCP段的總數。此外,每個網絡都保留了誤差計數器,用于跟蹤檢測到的傳輸誤差和沖突的數量。大體而言,每個網絡所需的計數器數量的增加將被視作網絡緩沖空間不足的表現。
統計
除了NetFlow之外,有些供應商還把帳單編制和診斷作為統計以單獨的系統來實現。例如,在服務提供商的網絡中,帳單編制形成了一個非常重要的量度。每一個客戶的網絡使用記錄都應加以保存,以獲得該客戶的記帳信息。統計信息可以按照每個數據流或每個聚合組來存儲。在統計緩沖器中,對于存儲器的選擇來說,延遲和突發操作是重要的決定因素。在包處理過程中,需要對統計數據進行快速存取,因此,低延遲是至關重要的。而且,由于統計數據的位數往往不是很大,應優先選擇采用短突發操作或無突發操作的SRAM。
與計數器相似,在大多數客戶系統中,統計都是借助類似的數學算法和存儲于DDR SRAM中的數據來實現的。對計數器用SRAM的所有速度和存儲密度規格的要求也適用于統計SRAM。
包緩沖器
包緩沖存儲器通常被用于在包處理過程中對輸出端口和交換機結構中的信息包進行緩沖。在標準線卡中,包處理器具有一個包緩沖器,在該緩沖器中,信息包的內容將在執行包信頭處理的同時被存儲。包緩沖存儲器中的決定因素是ASIC/NPU的速度以及線路速率。運行速度較慢的ASIC需要存儲密度較大的緩沖存儲器。緩沖存儲器還取決于線卡所提供的服務類型。如果執行的是較為復雜的服務,則ASIC通常需要更多的時間來處理信息包,因而必須進行更多的緩沖處理。ASIC設計或NPU的選擇還決定了包括突發操作和I/O寬度要求在內的其它特性。對于其中的某些應用而言,延遲是至關重要的指標。在這樣的場合中,應選擇具有較低延遲的包緩沖器。所以,這樣的設計通常把QDR或DDR SRAM(而不是DRAM)用于包緩沖。然而,有些應用需要一個較深的包緩沖器,ASIC需要執行更多的操作。此時,最為經濟的解決方案是采用DRAM來實現該功能。因此,在實現包緩沖器的過程中,始終需要進行權衡。目前,線卡的設計目標是實現更高的速度并處理更多的信息包。這意味著包緩沖處理器應當兼具深度和速度。針對這種要求,采用QDR SRAM來實現將是理想的解決方案。
隊列管理/通信量規整
隊列管理器負責確保接收到的信息包是否符合通信契約。隊列管理器的工作內容包括在與契約進行比照之后對信息包進行標注。每個線卡接口都擁有一個輸入隊列(輸入信息包將被置于該隊列之上,以等待路由選擇處理器的處理)和一個輸出隊列(路由選擇處理器把即將在接口上發送的待發信息包置于該隊列上)。在某些場合,客戶可通過實現計數器來管理這些隊列(根據處理能力來管理輸入信息包的流動)。由于該應用對速度的需求更甚于對密度的需求,且讀/寫比例幾乎為1,因此,QDR SRAM 將是其理想選擇。
動態存儲器分配
在線卡上,通常存在幾組面向不同應用的存儲器。這往往會增加電路板上的存儲芯片數量以及同一個設計中所使用的存儲器類型。如今,設計師在著手實現存儲分配器時采用的是SRAM,以管理可用的存儲器組。該存儲分配器SRAM負責存儲所有存儲器組的地址規范,并根據請求向提出請求的應用提供對一組特定存儲器的存取。這使得設計師能夠在不同的應用之間共用同一組存儲芯片,而不會發生請求沖突。該應用要求對SRAM進行快速存取,而且幾乎都是讀操作較多而寫操作較少。因此,對于該場合而言,最合適的選擇是DDR SRAM。
結語
新型網絡應用為QDR和DDR SRAM贏得設計機會敞開了多扇大門。由于目前這一代具有300MHz(DDR)速度和72Mb數據存儲空間的QDRII/DDRII SRAM能夠滿足下一代40Gbps"56Gbps路由器/交換機的全部要求,因此,大部分網絡應用都在緩慢地向采用QDR/DDR SRAM過渡。此外,由于這些路由器/交換機達到了下一個節點(80Gbps線路速率)水平,所以,QDRII+/DDRII+和 QDRIII/DDRIII SRAM可實現更高的速度和存儲密度。除了速度和存儲密度之外,QDRII+/DDRII+還具有諸多旨在實現簡易型PCB和系統設計的特點。
評論
查看更多