Network Processors

Network Processors

Network Processors Douglas Comer Computer Science Department Purdue University 250 N. University Street West Lafayette, IN 47907-2066 http://www.cs.purdue.edu/people/comer Copyright 2003. All rights reserved. This document may not be reproduced by any means without written consent of the author. Topic And Scope The emerging ®eld of network processors: devices that form the basis of the modern packet processing systems used in computer networks and the Internet. We will examine the motivation, architectures and technologies. Network Processors 1 2003 List Of Topics Generations of network systems Emergence of network processors Network processor architectures Network Processors 2 2003 List Of Topics Generations of network systems Emergence of network processors Network processor architectures Network Processors 3 2003 Our Goal Construct a network system ± Individual hardware component that processes packets ± May contain processor(s) and software ± Operates at one or more layers of the protocol stack Accommodate ± Change of speci®cation during construction ± Changes for next-generation product Network Processors 3 2003 Example Network Systems Layer 2 ± Bridge, VLAN switch, DSL modem Layer 3 ± IP router Layer 4 ± NAT box, TCP splicer Layer 5 ± Firewall, web load balancer, softswitch Network Processors 4 2003 Challenges Operate at wire speed without packet loss Manage state information ef®ciently (e.g., TCP ¯ow) Support traf®c in both directions Handle reordered packets ± IP fragments especially dif®cult ± May require storing packets Network Processors 5 2003 First Generation Network Systems Traditional software-based router ± Packet processing in software Use conventional (minicomputer) hardware ± Single CPU ± Single shared memory ± I/O over a bus ± Network interface cards function like other I/O devices Network Processors 6 2003 Protocol Processing In First Generation Network Systems NIC1 Standard CPU NIC2 framing & all other framing & address address recognition processing recognition General-purpose processor handles most tasks NIC handles layer 1 and basic layer 2 tasks Suf®cient for low-speed networks Network Processors 7 2003 Statement Of Hope (1990 version) If there is hope, it lies in faster CPUs. Network Processors 8 2003 How Fast Is A Fast Network? De®nition of fast data rate keeps changing ± 1960: 10 Kbps ± 1970: 1 Mbps ± 1980: 10 Mbps ± 1990: 100 Mbps ± 2000: 1000 Mbps (1 Gbps) ± 2003: 2400 Mbps (2.4 Gbps) Network Processors 9 2003 How Fast Is A Fast Network? De®nition of fast data rate keeps changing ± 1960: 10 Kbps ± 1970: 1 Mbps ± 1980: 10 Mbps ± 1990: 100 Mbps ± 2000: 1000 Mbps (1 Gbps) ± 2003: 2400 Mbps (2.4 Gbps) ± Soon: 10 Gbps??? Network Processors 10 2003 The Importance Of Packet Rates 105 Kpps 77760.0 19440.0 104 Kpps 4860.0 1953.1 1214.8 103 Kpps 303.8 195.3 102 Kpps 19.5 101 Kpps 100 Kpps 10Base-T 100Base-T OC-3 OC-12 1000Base-T OC-48 OC-192 OC-768 Gray areas show rates for large packets Network Processors 10 2003 Fundamental Question About Software-Based Network Systems Which is growing faster? ± Processing power ± Network data rates Network Processors 11 2003 Growth Of Technologies 10 Gbps OC-192 2.4 Gbps 10,000 ..... OC-48 ........... ........... ........... ......... .... .... .... .... ... .... 622 Mbps .... ... .... .... OC-12 .... .... Pent.-3GHz 1,000 .... .... ... .... .... ... ..... .... ..... .... .... ...... ..... ....... 100 Mbps ..... ....... .... ....... Pent.-400 FDDI ..... ....... ..... ......... ..... ......... ..... ......... 100 .. ......... Pent.-166 ... ......... .. ......... 486-33 ............ .......... ......... ... 486-66 ... ... ... ... ... 10 .. 10 Mbps Ethernet 1990 1992 1994 1996 1998 2000 2002 Network Processors 12 2003 Second Generation Network Systems Concurrent with ATM development (early 1990s) Purpose: scale to speeds faster than single CPU capacity Decentralized architecture with multiple NICs to of¯oad CPU Classi®cation rather than demultiplexing High-speed interconnect (switching fabric) General-purpose processor only handles exceptions Network Processors 13 2003 Protocol Processing In Second Generation Network Systems Interface1 Standard CPU Interface2 Control And Exceptions Layer 1 & 2 Class- Forward- Forward- Class- Layer 1 & 2 (framing) ification ing fast data path ing ification (framing) NIC handles most of layers 1 - 3 Fast data path (switching fabric) avoids CPU completely Network Processors 14 2003 Packet Classi®cation Alternative to demultiplexing Designed for higher speed Considers all layers at the same time Linear in number of ®elds Network Processors 15 2003 Illustration Of Classi®cation 0 4 8 10 16 19 24 31 ETHERNET DEST. (0-1) ETHERNET DESTINATION (2-5) ETHERNET SOURCE (0-3) ETHERNET SOURCE (4-5) ETHERNET TYPE VERS HLEN SERVICE IP TOTAL LENGTH IP IDENT FLAGS FRAG. OFFSET IP TTL IP TYPE IP HDR. CHECKSUM IP SOURCE ADDRESS IP DESTINATION ADDRESS TCP SOURCE PORT TCP DESTINATION PORT TCP SEQUENCE TCP ACKNOWLEDGEMENT HLEN NOT USED CODE BITS TCP WINDOW TCP CHECKSUM TCP URGENT PTR Start Of TCP Data . Highlighted ®elds are used for classi®cation of Web server traf®c Network Processors 16 2003 Switching Fabric Used inside a single network system Central interconnects for I/O ports (and possibly CPU) Can transfer unicast, multicast, and broadcast packets Typical architecture: synchronous bus Network Processors 17 2003 Third Generation Design NIC contains ± ASIC hardware ± Embedded processor plus code in ROM NIC handles ± Packet forwarding ± Traf®c policing ± Monitoring and statistics Network Processors 18 2003 Protocol Processing In Third Generation Systems Interface1 Standard CPU Interface2 Layer 4 Other processing Layer 4 Embedded Embedded processor Traffic Mgmt. (ASIC) Processor Layers 1 & 2 Layers 1 & 2 Layer 3 & class. fast data path Layer 3 & class. ASIC ASIC Special-purpose ASICs handle lower layer functions Embedded (RISC) processor handles layer 4 CPU only handles low-demand processing Network Processors 19 2003 Statement Of Hope (1995 version) If there is hope, it lies in ASIC designers. Network Processors 20 2003 List Of Topics Generations of network systems Emergence of network processors Network processor architectures Network Processors 21 2003 Problems With Third Generation Systems High cost Long time to market Dif®cult to simulate/test Require in-house expertise (ASIC designers) Expensive and time-consuming to change ± 18-20 months for silicon respin Little reuse across products Limited reuse across versions Network Processors 21 2003 Statement Of Hope (1999 version) ??? If there is hope, it lies in ASIC designers. Network Processors 22 2003 A Fourth Generation Goal: combine best features of ®rst generation and third generation systems ± Flexibility of programmable processor ± High speed of ASICs Technology called network processors Network Processors 23 2003 De®nition Of A Network Processor A network processor is a special-purpose, programmable hardware device that combines the low cost and flexibility of a RISC processor with the speed and scalability of custom silicon (i.e., ASIC chips). Network processors are building blocks used to construct network systems. Network Processors 24 2003 Network Processors: Potential Advantages Relatively low cost Straightforward hardware interface Facilities to access ± Memory ± Network interface devices Programmable Ability to scale to higher ± Data rates ± Packet rates Network Processors 25 2003 Network Processors: Potential Advantages Relatively low cost Straightforward hardware interface Facilities to access ± Memory ± Network interface devices Programmable Ability to scale to higher ± Data rates ± Packet rates Network Processors 26 2003 Statement Of Hope (2003 version) programmers! If there is hope, it lies in ASIC designers. Network Processors 26 2003 Costs And Bene®ts Of Network Processors ? ASIC Designs ? Network Increasing Processor Performance Designs Software On Conventional Processor Increasing cost Currently more expensive than conventional processors Currently slower than ASICs Future trends still unclear Network Processors 27 2003 List Of Topics Generations of network systems Emergence of network processors Network processor architectures Network Processors 28 2003 Network Processor Design What is known ± Must partition packet processing into separate functions ± To achieve highest speed, must handle each function with separate hardware Still being researched ± Which functions to choose ± Which hardware building blocks to use ± How building blocks should be interconnected Network Processors 28 2003 The Range Of Architecture Styles Embedded processor plus ®xed coprocessors Embedded processor plus programmable I/O processors Parallel (number of processors scales to handle load) Pipeline processors Network Processors 29 2003 Embedded Processor Architecture f(); g(); h() Single processor ± Handles all functions ± Passes packet on Known as run-to-completion Network Processors 30 2003 Parallel Architecture coordination f(); g(); h() mechanism f(); g(); h() . f(); g(); h() Each processor handles 1/N of total load Network Processors 31 2003 Pipeline Architecture f () g () h () Each processor handles one function Packet moves through ``pipeline'' Network Processors 32 2003 Clock Rates Embedded processor runs at > wire speed Parallel processor runs at < wire speed Pipeline processor runs at wire speed Network Processors 33 2003 Commercial Network Processors Emerge in late 1990s Become popular in early 2000s Exceed thirty vendors by 2003 Network Processors 34 2003 Examples Chosen to ± Illustrate

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    72 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us