《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 業界動態 > 10G網絡處理器驅動軟件的設計與實現

10G網絡處理器驅動軟件的設計與實現

2008-09-08
作者:李希鵬1,2,劉乃安1,宋國棟2

  摘 要: 在對10G" title="10G">10G城域網技術研究的基礎上,提出了10G網絡處理器" title="網絡處理器">網絡處理器的驅動程序設計中的一些思路并對此展開一定的分析和研究。
  關鍵詞: 10G以太網 網絡處理器 驅動 應用程序接口 中斷服務程序


  網絡技術的高速發展使下一代網絡技術不斷迎接新的挑戰。網絡處理核心從傳統的基于GPP(General Purpose Processor)的設計到基于ASIC(Application Specific Integrated Circuit)的設計再到基于網絡處理器NP(Network Processor)的設計,不斷向著高性能和高靈活性的方向發展。隨著城域網技術的發展,近年來許多廠家推出了10G的以太網設備。10G網絡處理器是實現10G以太網交換技術的關鍵點,10G網絡處理器的開發成為目前城域網建設中的一個重要環節。
  本文介紹了10G的網絡處理器及其驅動程序,并對驅動程序的開發方法進行了研究和探討。
1 網絡處理器和驅動程序
  網絡處理器是一種可編程器件,它特定地應用于通信領域的多種任務,例如數據包處理、協議分析、路由查找、數據的匯聚、防火墻、QoS等。網絡處理器具有多協議支持、優化的體系結構、專用的硬件設計和高速的數據轉發處理、高性能、高可靠性、豐富的流分類、擁塞管理、隊列調度、靈活的軟件開發和升級、靈活擴展和組合等特點。
  網絡處理器器件內部由若干個微碼處理器和若干硬件協議處理器組成,多個微碼處理器在網絡處理器內部并行處理,通過預先編制的微碼來控制處理數據包的操作。而對于一些復雜的標準操作(如內存操作、路由表" title="路由表">路由表查找算法、QoS的擁塞控制算法、流量調度算法等)則采用硬件協議處理器進一步提高處理性能,從而實現業務的高靈活性與高性能的有機結合。
  目前的網絡處理器系列有:面向網絡接入終端的設備;支持企業、電信市場接入和邊緣應用的設備(支持2.5Gbps數據傳輸率);支持網絡核心應用的設備(支持10Gbps數據傳輸率)等。
  網絡處理器的驅動程序在系統中位于底層BSP(Board Support Packet)和上層軟件之間,如圖1所示。驅動程序是建立起上下層軟件之間通信的一個橋梁,為上下層軟件提供相應的接口,能夠把上層的命令解釋為底層軟硬件可以識別的代碼寫入芯片的寄存器中,包括兩個功能模塊:底層驅動模塊" title="驅動模塊">驅動模塊和業務驅動模塊。底層驅動模塊提供NP芯片初始化、配置、裝載微碼、建立維護NP查找結構、中斷處理、NP內部表項維護、 NP實時檢測等功能;業務驅動模塊為上層應用提供數據包發送和接收、路由表操作、ARP表操作、VLAN操作、端口表操作、MAC表操作等功能。


2 驅動程序開發方法研究
  網絡處理器的芯片廠家需要提供相應的驅動開發軟件包,開發包中主要包括封裝了特定代碼的庫文件和說明文檔,這些庫文件在系統編譯時進行鏈接。開發人員通過調用驅動開發包中的API(Application Programming Interface)來完成對芯片的一系列操作。
2.1 芯片的初始化
  包括正確地初始化網絡處理器芯片,使芯片能正常工作。網絡處理器芯片作為PCI設備掛在CPU的PCI總線上,它通過PCI總線識別,系統為其分配相應的PCI地址和中斷號。CPU通過網絡處理器的PCI地址對NP內部的寄存器進行訪問。
  NP初始化步驟:
  (1)調用識別函數識別NP:如果與廠商號相符,則說明NP已經被識別。
  (2)配置NP的PCI設備:為 NP分配內存地址;為 NP配置中斷號。
  (3)注冊PCI中斷處理程序" title="中斷處理程序">中斷處理程序:安裝芯片的中斷處理程序;將NP的PCI中斷處理程序與中斷號關聯。通常該中斷處理程序內部會調用一個全局的函數指針,開發者可以對其賦值,使能NP的PCI中斷。
  (4)中斷事件處理方式:通常網絡處理器或交換芯片都定義有多種中斷事件,這些中斷事件由中斷事件狀態寄存器和中斷屏蔽寄存器進行控制。NP會定義若干種中斷事件,每種中斷用一個二進制位表示,該二進制位的取值決定中斷事件的中斷狀態(如:1表示有中斷,0表示無中斷)。中斷屏蔽寄存器則決定是否對中斷進行處理。
  (5)NP的中斷事件類型:
  數據幀中斷:當NP需要向CPU發數據包時,就產生此中斷,以通知主控系統有相關的數據幀和該數據幀的指針需要處理;
  查找中斷:當NP的硬件表進行更新時,會產生此中斷。例如,NP的MAC地址學習機制和地址老化機制更新MAC表后,會將更新結果通過消息的形式上報給主控系統;
  統計中斷:當NP的統計隊列有消息時,產生此中斷,通知主控系統某個統計計數器已經到達閾值。
  (6)中斷處理流程如圖2所示。當主機接收到一個NP發生的PCI中斷時,NP的PCI ISR被觸發,PCI ISR確定哪一個NP發生中斷,將該NP編號通過消息的方式傳給驅動任務,驅動任務從中斷消息中獲得NP的ID號、中斷屏蔽寄存器的值和中斷事件寄存器的值,對中斷屏蔽寄存器和中斷事件寄存器的值進行位操作,對操作結果進行判斷,進而確定是否調用該中斷事件的中斷處理程序。
  (7)初始化芯片上的數據通道:復位芯片上的寄存器并賦給默認值;指定硬件搜索引擎個數;設定統計計數器的門限值;設置外部存儲器值;啟動通道進入接收中斷狀態。
  (8)加載硬件表結構和微碼:硬件表結構包括二層表、三層表、路由表、三層接口表、VLAN表等;表結構在微碼中定義;微碼中定義了數據包收發的方式和相應的操作方法。

?


2.2 數據包處理
  在中斷處理的基礎上進行數據包的接收,如圖3所示。CPU通過中斷方式接收來自網絡處理器的數據包。
  (1)CPU接收來自網絡處理器數據包中斷后,會在驅動任務中調用響應的數據包的ISR,在該ISR中將數據包發給上層協議。
  (2)按協議標準對數據包格式或內容進行修改和轉換。
  (3)通過驅動API提供的函數發送數據包。
2.3 硬件表操作
  硬件表是NP中由微碼定義的表查找結構,由NP完成MAC地址查找、VALN表添加、路由表搜索等各種表條目的添加和刪除等操作。
  (1)由微碼定義和創建硬件表的種類、長度、編號等信息。
  (2)由驅動在芯片初始化過程中加載硬件表結構并啟動微碼。
  (3)驅動程序中要為上層協議提供硬件表添加、刪除、修改、顯示等接口。
  隨著10G以太網技術的發展,已經有越來越多的廠家推出了自己的NP產品。高速網絡處理器已經成為當前以太網研究中的一個重點,同時需要對芯片的驅動程序深入開發。本文對10G網絡處理器的驅動程序設計進行了分析和研究,提出了驅動軟件開發中的一些思路。由于目前與10G以太網技術相關標準和技術的成熟和完善還需要一定的時間;各廠家使用不同的軟硬件開發環境;存在不同的嵌入式操作系統;以及一些廠家使用專用的代碼開發和調試工具等因素,使NP及其驅動程序的發展還需要進一步地提高。今后的主要工作包括:提高不同廠家的設備之間互通性和兼容性;加強NP軟件代碼的規范性和可移植性;完善NP驅動軟件的開發方法。
  10G網絡處理器作為下一代網絡的關鍵,以其多方面的優勢,可以較好地滿足未來高速網絡技術發展的需求,具有非常廣泛的發展空間。
參考文獻
1 IEEE 802.3ae-2002. IEEE Standard for Carrier Sense Multiple Access with Collision Detection (CSMA/CD) Access Method and Physical Layer Specifications-Media Access Control (MAC) Parameters. Physical Layer and Management Parameters for 10 Gb/s Operation
2 IEEE 802.3-2002 Edition. IEEE Standard for Information technology--Telecommunications and information exchange between systems--Local and metropolitan area networks--Specific requirements--Part 3: Carrier Sense Multiple Access with Collision Detection (CSMA/CD) Access Method and Physical Layer Specifications
3 IEEE 802.3-2002 Edition. IEEE Standard for Information technology--Telecommunications and information exchange between systems--Local and metropolitan area networks--Specific requirements--Part 3: Carrier Sense Multiple Access with Collision Detection (CSMA/CD) Access Method and Physical Layer Specifications. By EZchip Technologies Ltd., 2003.
4 陳一帥,趙永祥.網絡處理器及應用.網絡世界, 2000;7

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
国产女人18毛片水18精品| 亚洲自拍偷拍一区| 国产日韩欧美在线观看| 午夜精品视频在线观看| 欧美久久影院| 国产精品美女久久福利网站| 国产色爱av资源综合区| 欧美性开放视频| 激情av一区二区| 亚洲黄色成人久久久| 国产中文一区二区| 免费视频一区| 久久亚洲综合色一区二区三区| 久久久亚洲人| 嫩草伊人久久精品少妇av杨幂| 久久深夜福利| 先锋影音国产一区| 亚洲综合日韩中文字幕v在线| 国产精品久在线观看| 亚洲一区二区免费看| 亚洲欧美日韩综合国产aⅴ| 免费在线观看成人av| 亚洲国产成人久久| 亚洲精品视频在线观看免费| 免费国产自线拍一欧美视频| 99在线精品观看| 麻豆成人小视频| 午夜一区不卡| 欧美色中文字幕| 日韩写真在线| 国产精品vip| 一本一本久久a久久精品综合麻豆| 国产无一区二区| 先锋影音久久久| 亚洲精品在线视频| 久久久噜噜噜久噜久久| 欧美一区二区在线免费播放| 欧美亚州一区二区三区| 一区二区三区四区国产| 亚洲国产天堂久久国产91| 老鸭窝亚洲一区二区三区| 亚洲在线视频免费观看| 欧美精品18videos性欧美| 亚洲国产一区二区三区高清 | 国产一区二区久久| 夜夜嗨av一区二区三区网页| 悠悠资源网久久精品| 久久久久一区二区三区四区| 亚洲影院免费| 国产欧美在线看| 久久久久在线| 亚洲精品日韩综合观看成人91| 国产一区视频在线看| 久久综合导航| 久久成人综合视频| 在线观看一区| 久久亚洲综合色| 一本一本久久a久久精品牛牛影视| 99re在线精品| 国产欧美一区二区精品忘忧草| 久久本道综合色狠狠五月| 欧美伊人久久| 亚洲精品乱码| 国产精品美女久久久久av超清 | 亚洲精品在线视频| 亚洲视频一区二区在线观看 | 中国成人亚色综合网站| 国产精品毛片一区二区三区 | 在线亚洲精品福利网址导航| 欧美视频观看一区| 亚洲影院在线观看| 亚洲片在线资源| 国产精品入口福利| 午夜在线电影亚洲一区| 黄色亚洲网站| 欧美不卡视频一区| 久久av二区| 欧美一区二区三区视频在线观看| 日韩写真视频在线观看| 亚洲精品综合久久中文字幕| 亚洲一级网站| 亚洲电影第1页| 国产日韩欧美在线看| 老牛影视一区二区三区| 久久综合狠狠| 亚洲欧美成人在线| 欧美一区二区日韩一区二区| 国产精品爱啪在线线免费观看 | 欧美韩国日本一区| 欧美精品福利视频| 欧美日韩的一区二区| 欧美日韩一区二区三区四区五区| 欧美va亚洲va国产综合| 久久久伊人欧美| 久久久女女女女999久久| 91久久亚洲| 亚洲福利在线看| 亚洲电影在线看| 亚洲视频在线一区| 欧美日韩精品免费观看视一区二区| 日韩网站免费观看| 亚洲精品国产精品国自产观看| 欧美一区二区免费观在线| 欧美一区深夜视频| 亚洲第一主播视频| 亚洲福利视频免费观看| 亚洲一区精品视频| 亚洲黄色av一区| 樱桃成人精品视频在线播放| 亚洲无线一线二线三线区别av| 亚洲性图久久| 国产欧美视频一区二区三区| 欧美福利视频在线观看| 一区二区三区日韩| 久久精品一本| 一本色道**综合亚洲精品蜜桃冫| 国产精品尤物福利片在线观看| 久久免费黄色| 亚洲天堂黄色| 亚洲黄色一区二区三区| 欧美一级淫片播放口| 一区二区三区日韩欧美精品| 国产综合久久久久久鬼色| 国产精品久久久久99| 欧美区高清在线| 欧美激情亚洲一区| 美女国产一区| 麻豆亚洲精品| 久久久久久有精品国产| 午夜精品免费在线| 亚洲欧美中文日韩在线| 99精品国产一区二区青青牛奶 | 亚洲女女女同性video| 亚洲专区一区二区三区| 欧美色视频在线| 欧美一区二区三区视频免费| 亚洲尤物在线视频观看| 午夜宅男久久久| 亚洲午夜国产成人av电影男同| 久久精品欧洲| 久久久久国内| 国产欧美日韩三区| 日韩一区二区精品视频| 最近中文字幕日韩精品| 亚洲一区中文字幕在线观看| 久久精品欧美日韩| 蜜桃伊人久久| 欧美日韩国产专区| 欧美激情综合色| 欧美特黄一级| 国产性做久久久久久| 国产亚洲欧美一区二区三区| 亚洲激情专区| 一区二区三区精品国产| 午夜一区二区三区在线观看| 亚洲第一久久影院| 9国产精品视频| 亚洲欧美中文另类| 久久免费视频网| 欧美片在线观看| 国产精品丝袜白浆摸在线| 国产欧美日韩亚洲| 伊人一区二区三区久久精品| 一区二区三区日韩| 久久成人av少妇免费| 亚洲精品日韩精品| 欧美中文字幕在线播放| 欧美另类一区二区三区| 国产精品美女久久久久av超清| 国模一区二区三区| 亚洲亚洲精品三区日韩精品在线视频 | 亚洲韩国一区二区三区| 日韩午夜在线观看视频| 亚洲一区精品视频| 亚洲男人的天堂在线| 一区二区高清在线| 久久精品日产第一区二区| 欧美精品乱码久久久久久按摩| 欧美日本亚洲视频| 亚洲精品一区二区三区福利| 欧美一区三区三区高中清蜜桃| 国产酒店精品激情| 亚洲少妇自拍| 极品尤物久久久av免费看| 一区二区三区视频在线看| 国产欧美日韩精品丝袜高跟鞋| 亚洲视频精品| 久久久999| 好吊一区二区三区| 国产原创一区二区| 欧美一区二区女人| 亚洲午夜小视频| 一本一本久久| 午夜亚洲福利在线老司机| 激情久久五月天| 亚洲免费高清| 一个色综合av| 久久女同精品一区二区| 欧美日韩免费观看一区三区| 午夜精品网站|