網絡處理器設計的復雜性_第1頁
網絡處理器設計的復雜性_第2頁
網絡處理器設計的復雜性_第3頁
網絡處理器設計的復雜性_第4頁
網絡處理器設計的復雜性_第5頁
已閱讀5頁,還剩5頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、-網絡處理器設計的復雜性華偉網絡處理器Network Processor,簡稱NP是面向網絡應用領域的專用指令處理器Application Specific Instruction Processor,是面向數據分組處理的、具有特定電路的軟件可編程器件。它將RISCReduced Instruction Set puter-精簡指令集處理器的低本錢、靈活性與ASICApplication-Specific Integrated Circuits-專用集成電路專用網絡處理芯片的高性能、可擴展性很好地結合在一起,提供了適應網絡開展新協議、新應用的能力。NP的出現,標志著設備對數據分組的處理能力從低

2、層粗放式處理過渡到高層細化處理。基于NP開發的網絡系統可以縮短進入市場時間time-to-market,而且由于其可編程性使其具有較長的市場壽命。本文將重點圍繞網絡處理器設計的復雜性、設計中所需要權衡的各種因素進展分析。1. 網絡處理器的功能網絡處理器的功能是由它所需要實施的操作以及它在目標網絡系統中的任務決定的。一方面,NP需要有足夠的分組處理能力。另一方面,NP確切的功能依賴于使用它的系統的體系構造。或者換句話說,目標系統中NP與其他組成局部之間的分工方式決定了NP的功能。工業界對于協議棧中各層次協議功能及其特殊需求的實現已經相當有經歷了。然而,NP不是為*個特定的協議而設計的,它的指令集

3、并不需要包含處理*個協議所需的所有指令。NP的目標是具有足夠的功能來處理“任何協議,也就是具有網絡協議處理的通用性。NP的協議處理通用性不是通過設計的全面性來保障的。盡管設計人員可以針對需要處理的協議的每個特征,窮盡所需要的指令,但毫無疑問這種方式將產生笨拙的設計并帶來芯片面積的浪費。反過來,抽取最小化的功能集能夠使設計精簡并高效。為此,設計者必須分析不同協議的特征,識別它們的共性,推導出可以高效處理所有特征的最小指令集。因此,確定“最小化的功能集就成為NP設計的一大挑戰。1.1 分組處理功能設計一個通用的網絡處理器的第一步是識別多數協議所需要的功能。一般來說,完成分組處理任務包括下面一些功能

4、:檢錯和糾錯、流量測量和策略、幀和協議的分解、地址查找和包轉發、分段和重組、包分類、流量整形、定時和調度、排隊、平安認證和私有。盡管這些功能都可以在一個傳統的通用指令集CPU上完成,但增加特定的指令可以提高完成這些功能的性能。例如就排隊來說,NP只需要關心包的隊列,而不是其他任意的隊列,因此NP可以針對包隊列進展優化,設計專用指令。類似的,由于大多數協議都需要CRCCyclic Redundancy Check,循環冗余校驗或校驗和進展過失檢測,NP可以包含相關的專用指令以提高運算速度。NP設計者需要考慮以下一些問題:1上述功能是否足以涵蓋所有協議處理.2哪一項功能的優化最重要.3如何將上述功

5、能映射到一個典型網絡系統的硬件單元.4一個典型網絡系統的哪些硬件單元可以用一個NP來替代.5實現上述功能的最小完備指令集是什么.所有這些問題都不容易答復,它們構成了研究網絡處理器設計的根底問題。1.2 入口和出口處理為了降低設計的復雜性,可以將一個復雜問題分解成幾個小的子問題一一加以解決。這種分而治之divide-and-conquer的方法在很多領域都受到歡迎,NP設計也不例外。最常用的一種方式是將分組處理任務分成入口和出口處理兩局部。入口處理關注包的到達過程,出口處理關注包的離開過程。入口處理:Ø 過失檢測和平安驗證Ø 分類或協議分解Ø 流量測量和策略

6、6; 地址查找和包轉發Ø *修改和傳輸層處理Ø 重組或流終止Ø 轉發、排隊和調度出口處理:Ø 過失檢測碼插入Ø 地址查找和包轉發Ø 分段或分片Ø 流量整形Ø 定時、調度、排隊和緩沖Ø *修改Ø 輸出平安處理物 理 接 口交 換 矩 陣包到達包離開圖1 典型網絡系統中入口和出口處理的示意圖圖1是典型網絡系統中入口和出口處理的示意圖。典型情況是包通過且僅通過交換矩陣一次,因此交換矩陣成為入口和出口處理自然的分水嶺。入口方面,數據包到達一個輸入端口后,首先需要進展過失檢測,然后通過協議分解或分類來確定

7、系統需要對包實施何種操作。系統有時候需要維護一些狀態信息,例如歷史流量的記錄、數據片段的收集重組等。入口處理還需要包含對排隊、調度、轉發的支持。為了使包通過交換矩陣,有時需要將數據包分成固定大小的數據塊傳送。最后,入口處理還包括的修改、傳輸層的一些處理等。出口方面,從交換矩陣獲得包,有時需要對數據片斷進展收集。出口處理包括:確定輸出端口、根據輸出端口信息對數據包進展分段、進展流量整形及相關的排隊調度操作、進展修改、過失檢測、進展加密等輸出平安處理。2. 網絡處理器與網絡系統2.1 并行和分布式構造如果采用集中式設計,讓一個網絡處理器在快速數據通路上完成所有分組處理任務,將系統收到的每一個包轉發

8、到輸出端口上,這樣所得到的NP與傳統的處理器一樣,可擴展性較差。即使這個NP中包含針對協議處理的優化硬件設計,NP本身的時鐘頻率將成為限制吞吐量的關鍵因素。為了防止性能瓶頸,可以采用三種通用的技術提高可擴展性。首先,一個典型的NP可以包含各種硬件單元,對每個硬件單元進展專門設計來完成一個特定的功能;第二,為了提高總的處理速度,在NP上復制多個可以獨立工作的關鍵的硬件單元,使NP可以并行或以流水線的方式實施多個操作;第三,將NP設計成分布式構造。這樣,當多個NP連接起來時,它們可以共同工作以獲得更高的總的吞吐量。總的來說,對可擴展性的要求給NP的設計帶來了很大的困難,設計者必須考慮設計或選擇處理

9、專門任務的硬件單元、能夠并行操作的可重復的硬件單元、以及支持分布式執行的硬件。2.2 網絡處理器在系統中的角色在網絡系統的總體構造中,NP并不固定地處于單一的位置上,相反,它可以承擔系統中多種角色任務,這使得NP的設計進一步復雜化。NP可以設計成替代網絡系統中的功能單元,或者作為附加功能單元對*項功能進展強化。一般來說,NP在網絡系統的總體構造中可以作為下述角色:n 替代一個傳統的CPU:為此,NP必須具有傳統的CPU指令;為了與傳統的CPU區別開來,NP需要增加專用的指令以實現優化的分組處理功能。n 附加在一個傳統的CPU上:由傳統的CPU完成大多數分組處理任務。由NP完成特殊的任務。這種附

10、加可以用預處理或協處理兩種方式實現。預處理一般在入口處理階段實施,例如對來自硬件端口的包進展分類,再交給傳統的CPU進展處理。協處理方式則功能更強大,任何可能通過專門硬件加速的分組處理功能都可以設計協處理器完成。使用附加在一個傳統的CPU上的NP,主要好處是降低了設計的復雜性。設計者可以專注于分組處理功能而不需要考慮傳統的指令;其難點在于需要額外的硬件處理CPU與NP的接口問題,為CPU調用NP提供有效機制。n 在網絡接口卡的輸入通路上,承擔入口分組處理任務:NP的可編程性提供靈活的、可改變的入口處理。n 在網絡接口卡與交換矩陣之間作為網絡接口卡和交換矩陣的中介:NP與交換矩陣的控制器進展交互

11、,以建立通路、傳輸數據和釋放通路。n 在交換矩陣和輸出接口之間控制輸出端口的:*些交換矩陣采用分布式控制機制,由每個輸出端口控制對它自己的。當一個輸入端口需要使用交換矩陣時,它需要使用一種獨立的機制例如獨立的總線通知相應的輸出端口;輸出端口對需求進展調度,通知潛在的發送者發送數據。這些功能可以設計NP來完成。n 在網絡接口卡的輸出通路上承擔出口分組處理任務:NP從交換矩陣承受包、管理隊列、實現流量整形、發送分組到輸出端口。n 像其它端口一樣連接在交換矩陣上作為一個中間站:數據包可以從輸入端口通過交換矩陣到達NP,再從NP通過交換矩陣到達輸出端口。由于交換矩陣允許擴展,因此作為中間站的NP集合也

12、很容易擴展。這樣,為了獲得最大程度的并行,系統可以將到達的包分布在整個NP集合中進展處理。我們可以設想一種宏觀的數據流水線,流水線的每個階段用一個NP來實現,這些NP通過交換矩陣連接起來:NPi實現第i個階段的功能,把處理后的包通過交換矩陣傳輸到實現第i+1個階段功能的處理器NPi+1。由于NP可在系統中勝任多種角色,如今它已不再局限于作為核心交換和路由設備中ASIC的取代品而向更廣泛的應用領域擴展。2003年,多效勞接入網和企業網是網絡處理器的主要應用領域。來自消費電子市場的需求將會延伸網絡處理器的涵,為其帶來新的活力。面向接入層的各種媒體網關,包括用于家庭的接入媒體網關將會是網絡處理器最重

13、要的應用之一。其它存在商機的領域包括無線根底設備、IP效勞交換機、存儲區域網等。網絡處理器在平安方面也有著廣泛應用,如VPNVirtual Private Network虛擬專網、防火墻和入侵偵測業務等。在電信方面,多效勞寬帶接入領域,如第三代無線網絡控制器RNC- Radio Network Controller、媒體網關、光纖環網的寬帶接入等都將是網絡處理器的重要應用領域。2.3 平臺NP和專用NP我們可以從NP在系統中的角色看到設計NP的兩種思路和目前市場上NP的兩種產品類型。一種是實現一個通用的網絡處理器,試圖解決所有分組處理任務,由此產生了平臺NP產品。另一種則針對分組處理功能中*一

14、具體操作進展優化,由此產生了各種專用NP產品。平臺NP應該能夠實現所有的分組處理功能而不是對*種具體處理功能優化。今天,所有的NP廠商幾乎都在圍繞著性價比,以及應用功能的廣泛性進展競爭。未來將要求所有的平臺NP廠商都必須能夠提供真正意義的“平臺。顧名思義,平臺NP應該能夠容納所有分組交換處理功能部件,安置第三方提供給網絡設備制造商的一切軟件和硬件,并成為它們運行的根底。為此,平臺NP應該為網絡設備制造商和第三方的開發人員提供編寫應用軟件開發環境。此外,平臺NP還應該成為連接和控制有關硬件如外圍用NP、專用協處理器、存儲器電路、PHYPhysical layer層的芯片、交換矩陣等等的樞紐。專用

15、NP則是針對分組處理功能中*一具體操作進展了優化的NP,它的作用僅僅限制于該項操作。例如,用于加密或壓縮的專用處理器。加密和壓縮操作要用到相當特殊的算法。這些操作最好由經過優化的專門適合于處理此項操作的集成電路來執行。再如查表/分類操作。如果這類操作運用比較頻繁,就有必要采用一個單獨的專用NP來處理,以便平臺NP能集中精力處理其它的分組處理操作。此外,還有一些專用NP是優化后用在第二層協議上,處理語法分析/幀形成操作。例如,以太網MACMedia Access Control幀,HDLCHigh Level Data Link ControlProtocol幀,或ATMAsynchronous

16、 Transmission Mode單元。有時又把專用NP稱為外圍NP。所謂“外圍的意義在于它需要和負責處理總體分組交換處理任務的主要處理器相配合。可以擔任主要處理器的器件有RISC、CPU、ASIC或者平臺NP。外圍NP廠商所提供的開發工具只針對此外圍NP所擔負功能有關的操作。為外圍NP編寫的程序必須通過APIApplication Program Interface與擔負總體分組處理的處理器進展通信。例如,設計用來加速查表/分類操作的外圍NP必須將其處理結果通知平臺NP,平臺NP再根據此結果執行一定的動作。3. 網絡處理器的硬件體系構造網絡處理器的硬件體系構造一般具有如下一些特征:n 采用

17、多核并行處理器構造:片處理器按任務分為控制平面處理器和數據分組協處理器。控制平面處理器通常負責非實時的管理任務;數據分組處理器進展實時、線速數據分組處理。n 優化指令集,設計專用硬件加速處理單元:通常采用RISC技術,結合多級流水線技術,大局部指令在一個時鐘周期完成。并針對網絡協議處理特點,設置專用硬件加速處理單元,提供專用指令如壓縮指令、哈希查找、狀態判斷、數據讀寫指令。n 優化存管理和分級存儲器組織:NP需要進展大量的數據分組的接收、存儲、復制、轉發,存操作成為系統開銷的一大瓶頸。為了解決這個問題,通常采用塊數據移動技術和特殊的優化存儲接口。同時對數據進展分類存儲:SRAM用于存放需要快速

18、查找的各種表構造;SDRAM用于存放數據分組信息。n 支持硬件多線程:為了提高NP資源利用率,每個數據分組處理器還支持多個硬件線程。每個線程都有一套專門的硬件來存放上下文Conte*t,以獲得線程切換的零開銷。n 多個高速I/O接口:包括物理鏈路接口、交換接口、存儲器接口、PCI總線接口。n 可擴展性:多個NP之間可以互連,構成網絡處理器簇,以支持更為大型高速的網絡處理。由于一個NP上包括許多處理器共同工作,處理器層次是NP最重要的硬件特征。NP一般有如下處理器層次:1一個或多個嵌入式RISC處理器,通常工作在控制平面提供總的控制,處理高層協議,可編程; 2多個I/O處理器又稱為包引擎、微引擎

19、,工作在數據平面,實施入口和出口線速處理,可編程;3一個或多個專用協處理器,優化設計完成特定的分組處理功能,通常被I/O處理器調用,不可編程;4一個或多個交換矩陣接口,不可編程;5一個或多個數據傳輸單元,處理I/O設備和存儲器之間的數據移動,不可編程。一個網絡系統中完全的處理層次還應包括:6傳統的通用CPU,工作在控制平面,處理管理任務,包括監視系統性能、運行路由協議、給系統管理員提供配置界面等,可編程;7成幀器和物理傳輸器件,實現低層次I/O處理,有時也在NP中實現,不可編程。4. 網絡處理器的軟件體系構造許多NP廠商為他們的NP提供參考應用系統,幫助用戶了解如何設計NP的軟件。用戶通常不需

20、要從頭設計軟件,只需在廠商提供的參考軟件根底上進展修改。因此,NP設計者可以影響NP的軟件體系構造。大多數軟件體系構造遵循下面*種模式:n 主程序把協處理器當作子例程調用。n 主程序與可編程I/O處理器上運行的代碼互相作用。n 使用通信線程。n 使用事件驅動程序。n 使用流水線。n 使用遠程過程調用風格程序組件分布在不同處理器上。n 使用上述模式的組合。很顯然,有些軟件體系構造是與底層的硬件相匹配的。例如,NP芯片上如果存在用于異步事件的硬件分派單元,則很自然地就有事件驅動的軟件體系構造。相應的,NP提供的對線程的支持和數據傳輸機制為通信線程體系構造奠定了根底。流水線體系構造則并不一定要求底層

21、硬件使用流水線。例如,通過不同線程實現分組處理的不同階段,可以構建分組處理的流水線,數據包在不同線程中的相繼處理表達了它在流水線不同階段之間的移動。線程可以在一組并行處理器上執行,這些并行處理器本身不需要配置成一條流水線,甚至完全可以在單個處理器上通過創立多個線程來實現軟件流水線。遠程過程調用風格的體系構造不是創立互相獨立的程序,而是建立單個程序,使其不同組件運行在多個處理器上。例如,使程序的主要組件運行在一個嵌入式RISC處理器上,處理復雜計算;而它的子組件則運行在多個I/O處理器上,處理入口和出口操作。NP的軟件體系構造必須與NP在處理器層次上很好地匹配。為了獲得高性能,分配給每個處理器的

22、任務需要和它的處理能力相匹配。數據平面任務的描述非常簡明,協議簡單、傳輸速率高,因此需要的代碼較少,但是處理能力較強。而控制平面處理的協議較為復雜,所以任務的描述也較為復雜,不需要很強處理能力,但需要執行更多的代碼。處理層次越低往往操作速度越高。例如,物理傳輸層次決定了系統的線速度,即數據進入和離開整個系統的最大速率。為了盡可能防止瓶頸存在,數據傳輸、交換矩陣接口、協處理器硬件都需要設計成以線速操作,從而保證包全速流入I/O處理器。I/O處理器上運行的指令操作的層次低于嵌入式處理器,因此前者的時鐘頻率常常高于后者。為了使性能最正確化,任務應該盡可能在I/O處理器上完成。在嵌入式處理器與外部通用

23、處理器之間的任務分配同樣應該使任務盡可能在嵌入式處理器上完成。總的來說,為了獲得最優的性能,分組處理任務應該盡可能被分配到能夠完成該任務的最低層次處理器上。5. 網絡處理器設計與軟件仿真設計一個通用的網絡處理器是相當復雜的。為了控制復雜性,NP設計通常需要依賴于軟件仿真。在硬件設計開場之前,設計者花大量時間來建立軟件仿真器,用來驗證設計的功能和評估性能。為此,需要有運行在目標芯片上針對各種應用的基準程序,把這些程序編譯后使用軟件仿真器來測量可獲得的性能。然而,與傳統的處理器不同,NP的評估不能使用傳統的處理器基準程序。這是因為NP的設計涉及許多低層次的硬件細節,不同NP的在體系構造是不同的,應

24、用程序和基準程序無法在不同NP之間簡單地共享。因此,針對每一特定NP,必須重新設計軟件以匹配目標體系構造。而且,當軟件從一種體系構造移植到另一種體系構造時,有時甚至需要完全重組代碼,這給性能的比較帶來困難。這里,設計者還面臨類似于“雞生蛋還是“蛋生雞的問題。一旦創立了一個硬件體系構造,程序設計人員可以設計軟件來針對這個構造,編寫優化的程序;反過來,一旦有了軟件,硬件設計人員可以選擇一個更好的體系構造來匹配軟件設計。在設計NP時,設計者面臨多種可能的體系構造方案,軟硬件設計必須嚴密集成在一起,互相依賴。NP上運行的軟件必須和硬件一起進展設計,這進一步增加了設計的復雜性和工作量。6. 網絡處理器設

25、計需要權衡的各種因素由于網絡處理器是個復雜的器件,可能用于多種目的,因此設計NP需要權衡的因素相當多。作為本文的總結,這里分析其中一些重要因素,特別是我們在NP設計中遇到的一些難點。n 可編程性和處理速度:可編程性所提供的靈活性和高度適應性在高速開展的網絡領域尤其重要。另一方面,專用的硬件提供了更高的處理速度。假設干年以前,可編程性和處理速度的權衡表達在選擇傳統的通用指令集CPU還是選擇專用芯片上,前者用在低速系統中,后者用在高速系統中。現在這種選擇成為NP設計者需要考慮的重要因素,它與NP的體系構造和指令集設計息息相關。設計者需對應用目標有準確的把握,才能在體系構造的設計中對可編程性與處理速

26、度做出恰當的考慮。n 速度和功能:為了高速處理網絡領域特定的任務,需要對NP的指令集進展優化。隨著任務的擴展,需要增加更多的指令,這樣NP的功能就增強了。但是,不同的指令可能需要不同的執行時間,處理器必須包含復雜的調度和同步機制,反過來增加了時間開銷和設計復雜性。因此,速度和功能之間必須有很好的折衷。n 性能-數據速率、包速率和包的突發性的綜合考慮:在NP的系統設計階段,性能的評估是必不可少的。通常有兩種衡量性能的指標:最大的數據速率和最大的包速率。最大的數據速率是數據能夠到達和離開一個網絡系統的最大速率,它限制了系統能夠匹配的網絡端口的容量,一般使用的計量單位是Mbps或Gbps。如果系統能

27、在所有網絡端口滿負荷的情況下無阻塞地完成分組處理和轉發,我們稱系統能夠進展線速處理,并以端口容量描述線速處理的性能。另一方面,由于許多協議處理操作是以包為單位進展的,盡管每個數據包的大小是不一樣的,但對每個包的處理需要的CPU時間是固定的,因此,包速率通常比數據速率更重要。然而,準確的性能評估非常困難。首先,由于NP應用的圍很廣,不存在可特征化NP操作的小任務集合,于是需要在大量的任務模式下測量NP的性能,而基準程序在不同NP之間不可重用見本文第5局部進一步給測量帶來了困難。第二,NP的測量需要在流通負載下進展,而包的突發性使得流量特征很難刻畫。穩定的包流與現實網絡的情況是不一致的,準確的評估

28、需要采用突發分布。不幸的是盡管這方面的研究很多,人們從來沒有對流量特征達成一致意見。網絡流量模型一直是困擾網絡領域的一大問題。于是用于性能測試的流量負載選擇的困難性就可想而知了。n 協處理器設計:協處理器硬件有兩種工作方式-旁路調用與數據通路。以旁路調用方式工作的協處理器類似于過程調用,由主處理器根據需要調用。而數據通路上的協處理器則以流水線方式處理數據,在數據通過它時對數據進展修改。后者有兩個問題。首先,為了防止成為瓶頸,數據通路上的協處理器必須以線速度工作;第二,由于這些協處理器更嚴密地集成在設計中,很難進展改變。以旁路調用方式工作的協處理器有著模塊化的優勢,可以根據需要擴展,增加新的協處

29、理器,不需要對體系構造作太大改動。但是,旁路調用時主處理器與協處理器之間大量數據傳輸產生的開銷將影響性能。n 流水線-均衡與同步:在一個均衡的流水線上,功能單元處理包的時間是一樣的,從而減少了數據緩沖和同步開銷。但是,對分組處理功能的分解很難做到完全均衡,強制的均衡結果是快速階段必須等待慢速階段。可是如果流水線設計成不均衡的,最慢的階段會成為流水線的瓶頸。n 并行-吞吐量與包的亂序:并行體系構造通常都要有維護包的順序的同步機制。但另一方面,如果放寬對包序的要求,可以簡化復雜的同步操作,減少硬件需求,減少處理器的停滯和輸出端口的等待,從而提高系統總的吞吐量。n 并行-速度與狀態信息共享:并行工作

30、的處理器為了防止干擾,必須同步共享的狀態信息。由于在任何特定時刻只有一個特定處理器可以修改共享的信息,這必然導致并行速度降低。網絡系統中狀態的頻繁更新,使得狀態信息共享對速度的影響變得更嚴重。包的分類是一個典型的例子。靜態的包分類即的值只需要與常數進展比較能夠獲得并行帶來的N倍速度;而動態的包分類即由一組數據流來決定類別由于要保存狀態信息,性能必然要下降。n 存儲器-速度與可編程性:存儲器通常被劃分成幾個存儲體,允許同時不同的存儲體。在多數情況下,為了獲得最大的訪存速度,必須刻意地把數據放到存儲體中以防止訪存沖突。這自然會影響可編程性:程序員需要了解存儲體,給編程帶來困難。n 編程語言設計的權

31、衡:對NP的編程語言來說,必須在易編程性、功能與代碼速度之間找到平衡點。如果以高速為目的,需要在易編程性與功能之間進展折衷。包含為特定任務裁減的高級構件的集合的編程語言雖然容易使用,但對任意任務的適應性差。而具有足夠的特征面向多種任務的編程語言可用性差因為程序員處理每個任務都面臨多種選擇。因此,NP設計者必須選擇既容易編程又提供足夠功能的編程語言。如果想獲得強大的功能,就需要在易編程性與速度之間進展折衷。高級語言雖然容易使用,但映射到底層硬件構造時效率較低。因此,使用高級語言產生的代碼往往不如使用低級語言產生的代碼更有效。這也是為什么許多NP要求程序員使用匯編語言來獲得最大的吞吐量。如果強調易

32、編程性,則需要在速度與功能之間進展折衷。如果將一種語言限制在*個特定應用上,編譯器能夠產生高度優化的代碼。隨著一種語言功能的擴展,其所產生的代碼優化也越來越困難。因此,語言設計者需要在功能與代碼的優化之間作出權衡。n 多線程-吞吐量與可編程性:為了獲得較高的吞吐量NP必須支持多線程。通過允許程序員指定多個計算,使得即使在一個線程阻塞、等待協處理器或I/O處理的情形下,處理器仍然可以繼續執行其它線程。多線程的主要缺點是程序員必須協助線程的活動,從而增加了編程的復雜性。即使在硬件能夠自動處理線程的搶占和切換時,程序員也許還是需要確保線程與共享資源使用之間的協調。因此,在高吞吐量和可編程性之間需要作出權衡。n 流量管理與設計本錢:對網絡效勞收費的ISP和其他組織需要網絡系統能夠管理流量,通過按優先級給流量提供效勞以獲得最高的利益。從體系構造的角度來看,這意味著流量管理、速度與本錢的折衷。嵌入式RISC處理器能夠在較低的速度實施流量管理。如果需要高速的流量管理,就必須由專門的硬件來完成,這將會

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論