Network Processing
                in Reconfigurable Hardware
                                          OpenSig 2002
     ...
Properties of Ideal Network Processor
    • High Performance
          – Fast Network Interfaces                          ...
FPX in Washington University Gigabit Switch


                    FPX                                           WUGS

    ...
FPX “in a box” Firewall Configuration


                                                                      Fiber uplink...
Properties of a Module




9 - John Lockwood : Network Platform in Reconfigurable Hardware
Extensible Networking Processin...
Layout of typical FPX Hardware Module


                                 Packet Processing Hardware




 Data             ...
DHP Implementation on the FPX
                  RAD FPGA                                                                  ...
Floorplannings - DHP




Extensible Networking Platform
15 - John Lockwood : Network Processing in Reconfigurable Hardware...
Other Modules Implemented
• IPv6 Tunneling Module                                     • IPv4 CAM Filter
      – Tunnels IP...
Reprogramming the FPX
                                                                      Configuration
                ...
Control and Configuration Services
      – Allows communication to FPX                                  Basic
            ...
Installation of New Hardware Module
 • Allows uploading and
   downloading of full or
   partial bitfiles

 • Allows user ...
Upcoming SlideShare
Loading in...5
×

Network Processing in Reconfigurable Hardware

413

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
413
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
6
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Network Processing in Reconfigurable Hardware

  1. 1. Network Processing in Reconfigurable Hardware OpenSig 2002 Lexington, KY John W. Lockwood lockwood@arl.wustl.edu Washington University in Saint Louis Applied Research Laboratory http://www.arl.wustl.edu/arl/projects/fpx/ 1 - John Lockwood : Network Platform in Reconfigurable Hardware Extensible Networking Processing 1 Technology Options for Network Processing • Microprocessors ' Fully Reprogrammable Optimized for general purpose purpose computing Sequential Processing • Custom Packet Processing Hardware • Highly concurrent processing ' Optimized for specific networking application Static Functionality • Network Processors ' Fully Reprogrammable • Some concurrent processing (8-32 cores) ' Some hardware optimized for applications ... ... • Reconfigurable Hardware ... ' Fully Programmable ... ... ' Highly concurrent processing ... ... ' Hardware optimized for specific application 2 - John Lockwood : Network Platform in Reconfigurable Hardware Extensible Networking Processing 2
  2. 2. Properties of Ideal Network Processor • High Performance – Fast Network Interfaces Line Network IPP OPP Card Processor • OC48 (2.4 Gbps) and better OC3/ IPP OPP OC12/ – Hardware Accelerated Network Packets OC48 Gigabit Switch • 10 Million packets/second + Fabric IPP OPP • Fully Extensible Line Card Network IPP OPP Processor – Fully Programmable OC3/ OC12/ Network OC48 – Modular Plugins Packets • Open Interfaces – Open switch interface • Device fits into existing switch and firewall – Open hardware interface • FPGA modules can be added and combined – Open software and signaling interfaces 3 - John Lockwood : Network Platform in Reconfigurable Hardware Extensible Networking Processing 3 Field Programmable Port Extender (FPX) 4 - John Lockwood : Network Platform in Reconfigurable Hardware Extensible Networking Processing 4
  3. 3. FPX in Washington University Gigabit Switch FPX WUGS FPX FPX FPX 5 - John Lockwood : Network Platform in Reconfigurable Hardware Extensible Networking Processing 5 Using FPX & WUGS Process and Route Packets Fast Ethernet Switch Fast Ethernet Switch w/Fiber uplink w/Fiber uplink PC PC PC PC Internet 6 - John Lockwood : Network Platform in Reconfigurable Hardware Extensible Networking Processing 6
  4. 4. FPX “in a box” Firewall Configuration Fiber uplink Fast Ethernet Switch To backbone switch w/Fiber uplink (Fore PH 8000) PC 1 PC 2 Internet 7 - John Lockwood : Network Platform in Reconfigurable Hardware Extensible Networking Processing 7 FPX Platform platform developed FPX combined with WUGS to route and process Internet packets 8 - John Lockwood : Network Platform in Reconfigurable Hardware Extensible Networking Processing 8
  5. 5. Properties of a Module 9 - John Lockwood : Network Platform in Reconfigurable Hardware Extensible Networking Processing 9 Payload Processing Environment – Network applications benefit from higher-level data abstractions – Protocol Wrapper Framework provides a simple interface to multiple layers of a Network Net App Wrapper Wrapper Extensible Networking Platform 10 - John Lockwood : Network Processing in Reconfigurable Hardware 10
  6. 6. Layout of typical FPX Hardware Module Packet Processing Hardware Data Data Input Output UDP/TCP Processor IP Processor Frame Processor Cell Processor Extensible Networking Platform 11 - John Lockwood : Network Processing in Reconfigurable Hardware 11 Content-Aware Firewall on a Chip Off-Chip Synchronous Random Off-Chip Static Random Access Memory (SDRAM) Access Memory (SRAM) SDRAM SRAM Identify packets Controller SDRAM Free Controller Based on List Manager SDRAM Free pointers Content- Flow based Buffer CAM-based p p Match p p (regex) Firewall Head Tail SRAM Input 16 Pointers Pointers Interface Output Traffic Queue Traffic Scheduler Data Match Flow# Manager (RR, DRR, 3DQ) Data vector from CAM From To Linecard Linecard Layered Protocol Wrappers or switch ( Implemented on the RAD on the FPX, using a VirtexE 2000 FPGA ) Extensible Networking Platform 12 - John Lockwood : Network Processing in Reconfigurable Hardware 12
  7. 7. DHP Implementation on the FPX RAD FPGA Dynamic Hardware Plugins • Reprogrammable Application Device (RAD) SDRAM Int. SDRAM Int. 64 MB 64 MB – Circuit on XCV2000E Control Cell Processor Control Cell Processor SDRAM SDRAM DHP Module DHP Module – SRAM and SDRAM Interfaces – Control Cell Processor SRAM Int. SRAM Int. ZBT ZBT SRAM SRAM – Holds 2+ DHP Modules SelectMap Programming Static Infrastructure – Reprogrammable over Interface Control Logic network • Network Interface Device (NID) Reconfiguration Network Switch Control Logic Bitstream Cache – XCV600E FPGA NID FPGA – Controls FPX – Full packet switch with Switch Port Line Card per-flow routing – Controls bitstream cache Network Interfaces – Programs RAD over net Extensible Networking Platform 13 - John Lockwood : Network Processing in Reconfigurable Hardware 13 Floorplanning - Sample Infrastructure Extensible Networking Platform 14 - John Lockwood : Network Processing in Reconfigurable Hardware 14
  8. 8. Floorplannings - DHP Extensible Networking Platform 15 - John Lockwood : Network Processing in Reconfigurable Hardware 15 Floorplannings - INFRA Extensible Networking Platform 16 - John Lockwood : Network Processing in Reconfigurable Hardware 16
  9. 9. Other Modules Implemented • IPv6 Tunneling Module • IPv4 CAM Filter – Tunnels IPv6 over IPv4 – 104 Bit header matching • Statistics Module • Fast IP Lookup (FIPL) – Event counter – Longest Prefix Match – MAE-West at 10M • Traffic Generator pkts/second – Per-flow mixing • Packet Content Scanner • Video Recoder – Reg. Expression Search – Motion JPEG • Data Queueing • Embedded Processor – Per-flow queue in – KCPSM SDRAM Extensible Networking Platform 17 - John Lockwood : Network Processing in Reconfigurable Hardware 17 Control and Reconfiguration Extensible Networking Platform 18 - John Lockwood : Network Processing in Reconfigurable Hardware 18
  10. 10. Reprogramming the FPX Configuration Cache RAD NID FPGA FPGA (1) New Module is created IPP OPP IPP OPP IPP OPP IPP Switch OPP IPP Element OPP IPP OPP IPP OPP IPP OPP 2) The full or partial bitstream (4) NID Reads Memory (3) A Command Issued is sent over network to the and reprograms to reconfigure NID on the FPX and stored in RAD via SelectMAP hardware The configuration cache Extensible Networking Platform 19 - John Lockwood : Network Processing in Reconfigurable Hardware 19 Reconfiguration Times • Million-Gate Reconfiguration (XCV2000E) – Configuration Size: 1.25 Mbytes = 10 Mbits – Network Transfer: 10 Mbit / 1 Gbps = 10ms – Configuration Time: 1.25 Mbyte / 50 MHz = 25ms • Hardware Plug-in Module Reconfiguration – Configuration Size: 200 Kbytes = 1.6 Mbits – Network Transfer: 1.6 Mbit / 1 Gbps = 1.6 ms – Configuration Time: 200 Kbytes / 50 MHz = 4ms Extensible Networking Platform 20 - John Lockwood : Network Processing in Reconfigurable Hardware 20
  11. 11. Control and Configuration Services – Allows communication to FPX Basic Send Telnet WEB Access hardware over the Internet using the Web, TCP/IP Sockets, or Apache other signalling packages. Basic Send – Provides API to controls and configures the FPX NCHARGE NCHARGE – Provides reliable transport GLINK : Gigabit Link mechanism with retransmission to communicate with hardware NID NID RAD RAD – Allows multiple control devices to remotely connect and control common FPX resources Extensible Networking Platform 21 - John Lockwood : Network Processing in Reconfigurable Hardware 21 Control and Configuration GUI • Web interface to communicate with the FPX • Menu Functions – Route traffic flows – Reprogram hardware – Upload bitfiles – Read & write on-chip Memory – Create test cells Extensible Networking Platform 22 - John Lockwood : Network Processing in Reconfigurable Hardware 22
  12. 12. Installation of New Hardware Module • Allows uploading and downloading of full or partial bitfiles • Allows user to select a bitfile for programming • FPGA reconfigurs when user presses ‘Execute Command’ Extensible Networking Platform 23 - John Lockwood : Network Processing in Reconfigurable Hardware 23 Summary • Reconfigurable Hardware performs Network Processing – Provides high degree of configurability • Literally, every gate of a module can be reprogrammed – Provides high performance • OC48 (2.4 Gbps) performance achieved using Xilinx XCV2000E-6 • Field Programmable Port Extender (FPX) Platform Developed – 85 FPX devices built – Over 20 Hardware modules have been developed • Layered Internet Protocol wrappers – Enable processing Internet packets at Gigabit rates • Control and Reconfiguration Mechanisms – Hardware Modules dynamically reconfigure over the network – Control software provides extendable socket interfaces – Web interface simplifies FPX control and configuration – Chained TCP/IP channel simultaneously programs multiple FPX devices Extensible Networking Platform 24 - John Lockwood : Network Processing in Reconfigurable Hardware 24

×