《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 業界動態 > 一種支持多協議的超高速轉發引擎的設計與實現

一種支持多協議的超高速轉發引擎的設計與實現

2008-07-17
作者:趙崢嶸, 蘭巨龍, 曲 晶, 姜

  摘 要: 從節約FPGA資源的角度出發,分析了超高速條件下多協議" title="多協議">多協議支持策略的實現難點,設計了一種可支持10Gbps" title="10Gbps">10Gbps速率下多協議報文線速轉發的引擎結構,解決了FPGA“資源與速度互換”的矛盾。
  關鍵詞: 路由器 轉發引擎" title="轉發引擎">轉發引擎 協議


  光纖傳輸技術發展迅速,網絡鏈路層的接口速率目前已達到10Gbps,出現了諸如10G的LAN、WAN、POS等接口類型。高端路由器作為骨干網的核心交換結點,必須支持10Gbps接口,轉發引擎的單包處理時間將急劇縮短。
  另一方面,隨著IPv6、組播" title="組播">組播、MPLS協議的成熟及廣泛應用,高端路由器也要求提供對以上協議的支持。而不同類型的報文處理流程不盡相同,很難實現通用模塊的處理。這無疑增加了超高速轉發引擎的設計難度。
  傳統的報文處理流程已不能滿足超高速轉發和多協議支持的要求。作為轉發處理的代表方向之一,網絡處理器(NP)目前的商用化水平還不支持10Gbps接口,大多不具備多協議支持的能力。
  同時,從自主知識產權的角度出發,也必須在高端路由器上開發自己的轉發“芯”。
  本文在深入分析了轉發引擎的實現難點后,從提高報文處理速度和節省FPGA資源的角度出發,設計了一種可支持多協議的超高速轉發引擎結構,并經國家“863”課題(“大規模接入匯聚路由器ACR”)工程驗證,可支持10Gbps接口下多種類型報文的線速轉發。
1 10Gbps接口下的線速轉發
  表1給出了不同接口下,40字節超短包的線速轉發時間。


  對于40字節的超短包,10Gbps接口下的處理時間只有32ns,即使在100MHz時鐘下,也只有不到4個周期的時間。而轉發引擎的報文處理流程包括報頭有效性檢查、直連檢查、組播RPF檢查、查表" title="查表">查表(單、組播、MPLS查表)、報頭修改等復雜操作。傳統的串行處理流程顯然無法滿足線速轉發的時間要求。
1.1 并行流水線方案
  按照處理流程各步驟之間的時間關系,筆者在對整個處理流程進行了功能劃分后,采用流水線設計,縮短了處理時間,如圖1。


  引進該方案的最大好處是:整個轉發引擎可以處于流水線狀態,不必等待單個任務的完成,省去了串行處理中的等待時間。整個流水線的周期等于最長流水段的周期(路由查表),而不是簡單的各段周期之和。
  按照這個思路,在實際工程應用時,采用了如下并行流水線引擎結構:
  對某些流水段,可以通過段內的并行設計,進一步縮短處理時間。例如,對圖2中的有效性檢查模塊,可以進一步細化為版本號檢查、TTL檢查、地址范圍檢查、Payload Length檢查四個子模塊,作并行處理,如圖3。


1.2 方案分析
  采用并行流水線的設計,其關鍵在于整個流水線的不斷流、不溢出。這要求對各流水段進行精細劃分,使各段的周期盡量接近,即實現同步流水線,減少段間的緩存容量。
2 多協議支持策略
  本方案考慮支持的協議為IPv4、IPv6、MPLS,均含單播、組播、二次查表。要支持如此多的協議類型,而不同類型報文的處理流程不盡相同,在時序上很難對齊,難以用通用模塊實現,必然需要大量的緩存FIFO。圖4給出了其分析。


  可以看出,報頭處理的設計非常復雜,資源占用較多。為了合理利用FPGA的內部資源,必須對報頭處理單元精心設計。
  報頭處理單元要處理的報文包括以下類型:IPv4(單、組播)、IPv6(單、組播)、MPLS(單、組播)6種,加上二次查表,共有12種類型的報文。對此,有如下分析:
  (1)對以上的12種情況各用一個單元進行實現,這就意味著報頭處理中任何一處的緩存FIFO都必須生成12個。
  (2)粗略劃分成IPv4、IPv6和MPLS三種實現單元,每一個單元又采用單組播獨立實現的方式,也就是將二次查表和非二次查表的報頭處理做成通用處理方式。這樣也需要6套FIFO緩存報文。
  (3) 只分成IPv4、IPv6和MPLS三種情況,對單播和組播、二次查表以及非二次查表做成通用的處理模塊,這樣內部需要3套緩存FIFO。
  (4) 與(3)的區別在于,通過精細設計報頭處理單元的各種讀寫信號(上報、轉發、二次查表),使得報頭處理單元內部不需要緩存報文,報頭處理主要完成生成內部報頭(轉發、上報和二次查表),將緩存FIFO合并為一個,不管是IPv4、IPv6還是MPLS共用一個轉發FIFO和上報FIFO。
  為節省FPGA資源,提高設計可靠性,筆者在實際工程中采用了方案(4)的設計方法。其實現結構如圖5。


  方案分析:顯然,該設計方案在節省資源的同時,復雜了內部邏輯的設計,因為任何一個報頭處理都需要同時完成單播和組播、非二次查表和二次查表的統一處理,而且各種報文都統一存放于一個緩存FIFO,因此還需要IPv4、IPv6和MPLS報頭處理單元中的轉發設計和上報設計進行時序對齊,即從緩存FIFO讀出報文的同時送往轉發和上報,供兩路同時使用(在轉發和上報都有效時),需要二者的時序進行配合。
3 工程應用
  該方案已應用在“大規模接入匯聚路由器ACR”的10G轉發引擎上,采用的FPGA為VIRTEX PRO系列的XC2VP70芯片。圖6給出了測試數據。


  分析:
  (1) 單一包長測試條件下,在負荷為100%時,當包長大于等于109.5字節時的丟包率低于1.07E×10-6,吞吐率接近于1。
  (2) 混合包傳輸條件下,在端口負荷低于90%時,丟包率低于3.0E×10-4
  本文著重結合項目需要,解決了10Gbps線速轉發和多協議支持兩個問題。通過并行流水線設計,縮短了報文處理時間。而通過報頭處理內部各模塊的時序配合,減少了FPGA內部緩存FIFO的使用,節省了FPGA資源,保證了該設計的工程實用性。方案的難點在于報頭綜合處理單元的時序邏輯設計。
  可以預見,鏈路接口速率即將突破40Gbps,可以考慮采用多條類似流水線并行處理的引擎結構,但將面臨流量均衡及轉發表效率的問題,這是下一步的研究方向之一。
參考文獻
1 Xilinx Corporation.RocketIO transceiver user guide[Z].UG024 (v2.3.2)June 24,2004
2 Xilinx Corporation.Virtex pro platform FPGA handbook.2003
3 Mohammad J.Akhbarizadeh and mehrdad nourani. An IP packet forwarding technique based on partitioned lookup table
4 Newman P, Minshall G, Huston L. IP switching and gigabitrouters.

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
久久精品av麻豆的观看方式| 国产精品久久久久av免费| 亚洲婷婷在线| 亚洲毛片在线观看.| 亚洲高清色综合| 久久se精品一区二区| 欧美一区=区| 欧美一区网站| 欧美在线一级视频| 久久av资源网| 久久精品夜色噜噜亚洲aⅴ| 久久成人免费网| 亚洲第一成人在线| 母乳一区在线观看| 老司机精品导航| 麻豆精品视频在线观看视频| 久久最新视频| 免费观看一区| 你懂的国产精品| 欧美精品乱人伦久久久久久 | 欧美电影在线观看完整版| 麻豆成人综合网| 欧美成人精品高清在线播放| 欧美高清日韩| 欧美日韩国产一区| 欧美视频二区36p| 国产精品永久免费观看| 国产午夜精品全部视频播放| 激情丁香综合| 91久久精品视频| 中文一区字幕| 欧美一级成年大片在线观看| 久久精品国产v日韩v亚洲| 亚洲肉体裸体xxxx137| 一本久久综合| 午夜在线播放视频欧美| 久久欧美中文字幕| 欧美精品在线免费播放| 国产精品久久久久久福利一牛影视| 国产酒店精品激情| 国产亚洲一区二区三区在线播放| 在线观看国产一区二区| 亚洲精品免费网站| 亚洲午夜一区二区| 亚洲二区在线| 一区二区三区精品视频在线观看| 亚洲女爱视频在线| 久久久久久久久岛国免费| 欧美激情在线免费观看| 国产精品日韩欧美一区| 影音先锋日韩资源| 一本色道久久88综合日韩精品| 亚洲女性裸体视频| 亚洲国产欧美在线| 亚洲在线观看免费视频| 老司机精品视频网站| 欧美性色综合| 有码中文亚洲精品| 亚洲图片欧美一区| 亚洲韩国日本中文字幕| 亚洲一级二级在线| 久久免费的精品国产v∧| 欧美乱妇高清无乱码| 国产拍揄自揄精品视频麻豆| 亚洲国产色一区| 午夜国产精品影院在线观看| 最新国产拍偷乱拍精品| 午夜一区二区三区不卡视频| 欧美大片免费观看| 国产私拍一区| 一区二区三区欧美在线| 亚洲春色另类小说| 亚洲欧美日韩人成在线播放| 欧美a级片网| 国产欧美日韩精品专区| 亚洲精品视频在线观看免费| 欧美亚洲视频一区二区| 亚洲网站视频福利| 免费欧美在线视频| 国产午夜精品视频| 中文国产成人精品| 亚洲裸体视频| 玖玖玖免费嫩草在线影院一区| 欧美午夜宅男影院在线观看| 亚洲第一视频| 欧美在线观看日本一区| 亚洲免费影视| 欧美日韩成人综合天天影院| 国产字幕视频一区二区| 亚洲综合视频在线| 亚洲午夜精品国产| 欧美激情一区二区三区不卡| 黄色日韩精品| 久久99在线观看| 欧美一区二区三区在线观看| 欧美三区在线观看| 亚洲老司机av| 亚洲人成网站777色婷婷| 久久久天天操| 国产色视频一区| 亚洲影视在线播放| 亚洲在线播放电影| 欧美视频一区二区三区…| 亚洲国产高清一区| 亚洲国内在线| 毛片一区二区| 在线观看一区| 91久久国产综合久久蜜月精品 | 国产午夜精品全部视频在线播放 | 香蕉久久一区二区不卡无毒影院| 亚洲视频一区在线| 欧美久色视频| 最新国产乱人伦偷精品免费网站| 亚洲国产日韩一区| 久热国产精品| 精品1区2区| 亚洲国产天堂网精品网站| 久久久综合精品| 精品成人在线视频| 亚洲国产综合在线| 欧美大片在线观看一区| 亚洲国产欧美久久| 日韩视频不卡中文| 欧美精品日韩一区| 日韩午夜av电影| 亚洲尤物在线视频观看| 国产精品入口日韩视频大尺度| 亚洲一区二区三区激情| 欧美一区二区三区久久精品| 国产欧美欧美| 欧美在线免费观看视频| 久久亚洲高清| 亚洲第一页中文字幕| 99re6这里只有精品视频在线观看| 欧美激情一区二区三区成人| 日韩视频在线观看国产| 亚洲尤物影院| 国产欧美短视频| 久久激情一区| 欧美国产精品va在线观看| 亚洲伦理网站| 亚洲欧美精品在线| 国产亚洲欧美一区在线观看 | 91久久精品美女高潮| 欧美激情中文字幕一区二区| aa级大片欧美三级| 欧美一区二区精美| 国产亚洲欧美另类一区二区三区| 亚洲福利在线看| 欧美区视频在线观看| 亚洲神马久久| 久久蜜桃香蕉精品一区二区三区| 亚洲国产成人精品女人久久久| 亚洲视频第一页| 国产精品专区h在线观看| 亚洲国产精品va在看黑人| 欧美福利一区二区三区| 在线视频欧美日韩精品| 久久精品国产亚洲高清剧情介绍| 永久久久久久| 亚洲一区二区三区精品在线| 国产日韩欧美二区| 亚洲精品久久久久久久久| 国产精品电影观看| 久久精品日产第一区二区三区| 欧美激情在线观看| 亚洲欧美激情四射在线日| 久久这里只精品最新地址| 日韩一二在线观看| 久久精品首页| 日韩视频―中文字幕| 小嫩嫩精品导航| 亚洲经典在线看| 欧美一区影院| 亚洲日本电影在线| 久久疯狂做爰流白浆xx| 亚洲激情在线观看视频免费| 欧美亚洲系列| 亚洲精品乱码久久久久久蜜桃91| 欧美亚洲日本网站| 亚洲日本va午夜在线电影| 欧美一级大片在线观看| 亚洲国产婷婷综合在线精品 | 久久一区二区三区av| 一区二区高清| 久久精品国产综合精品| 日韩午夜电影| 玖玖综合伊人| 午夜一级在线看亚洲| 欧美日本亚洲| 久久成人免费视频| 国产精品美女在线观看| 99视频一区| 精品51国产黑色丝袜高跟鞋| 先锋影院在线亚洲| 一本色道久久综合狠狠躁篇怎么玩 | 久久免费午夜影院| 亚洲一区二区成人| 欧美精品日韩综合在线| 亚洲国产精品久久久久婷婷老年|