1 / 19

FlexPath Netzwerkprozessor

FlexPath Netzwerkprozessor. Michael Meitinger Rainer Ohlendorf Thomas Wild Andreas Herkersdorf. Inhalt. Kurzüberblick FlexPath Vervollständigung FlexPath Einzelmodule Path Dispatcher Path Control Systemintegration Dual Core Erweiterung Demonstrator: Einsatzszenarien & Messungen

angie
Download Presentation

FlexPath Netzwerkprozessor

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. FlexPath Netzwerkprozessor Michael Meitinger Rainer Ohlendorf Thomas Wild Andreas Herkersdorf

  2. Inhalt • Kurzüberblick FlexPath • Vervollständigung FlexPath Einzelmodule • Path Dispatcher • Path Control • Systemintegration • Dual Core Erweiterung • Demonstrator: Einsatzszenarien & Messungen • Anbindung an DynaCORE • Ausblick • Erweiterung des MPSoC • Weitere Load Balancing Strategien • Zusammenfassung

  3. Kürzüberlick FlexPath NP • Grundidee FlexPath • Flexible Wegewahl für Pakete • Paketabhängige Entscheidungin Hardware • Regelbasis zur Laufzeit rekonfigurierbar • Stark fluktuierende Verkehrsmuster • Hardwareunterstützung AutoRoute-Pfad CPU Pfad Stand: Mai 2007

  4. Path Dispatcher - Implementierung • Publikationen: • WASP 2007, Salzburg • IEEE TVLSI (under review) • Anforderungen an den Path Dispatcher: • Realtime-Klassifikation des ankommenden Paketstroms nach Applikationen => Ziele im NP • Regelbasis zur Laufzeit rekonfigurierbar • Ansatz: • Heterogeneous Decision Graph Algorithm (HDGA) • optimierte Kombination aus Entscheidungsbaum und Hashtabellenlookup • Baum: • Regeln auf verschiedenen Headerfeldern (heterogen, z.B. protokollspez. Flags) • Überprüfung von max. 2 Feldern pro Takt • Hash-Tabelle: • Bedingungen für ein Headerfeld mit vielen Möglichkeiten (homogen, z.B. Adressen) • Resultate auf Virtex-4 FX60: • 1,446 slices (6%), 14 BlockRAMs (6%) • 101.8 MHz max. Taktfrequenz

  5. Path Control - Implementierung • Publikation: • ARCS 2008, Dresden • Anforderungen an die Path Control: • Sicherstellen der Paketreihenfolge am Ausgang • Vermeidung von TCP-Retransmissions • Erhöhung der Netzwerkperformance (Congestion Control) • Ansatz: • Festhalten der Paketreihenfolge am Eingang • Aggregation Unit zur Wiederherstellung der Reihenfolge am Ausgang • Resultate auf Virtex-4 FX60: • Ingress Tagger • 195 slices (< 1%) • 3 BlockRAMs (1%) • Egress Aggregation Unit • 1093 slices (4%) • 11 BlockRAMs (5%) • 139 MHz max. Taktfrequenz

  6. Systemintegration • Vollständiger, funktionsfähiger Netzwerkprozessor auf einem FPGA • ML410: Virtex-4 FX60 • 2x Gigabit Ethernet • MPSoC mit zwei PowerPCs • Data Plane • Control Plane • Dynamische Pfadwahl • Dedizierte Pfadwahl • Spraying • Zur Laufzeit konfigurierbar • Software • Protocol Stack • IPv4 forwarding • IPSec • Statische Konfiguration

  7. Ressourcenverbrauch • insgesamt: • 16,006 slices (63%) • 77 BlockRAMs (33%) • Max. Taktfrequenz von 100 MHz nur durch sorgfältiges Floorplanning (PlanAhead) erreichbar • Problem: Verdrahtung beim PLB (Leitungslänge) • Baumklassifizierer im Path Dispatcher (40 Logic-Levels) PaC Post- Proc. Buffer Manager (DMA) DDR MAC I/F PLB Arb. Path Disp. Ctx Gen. eng. Pre- Proc.

  8. Verbindung 1 Verbindung 2 Einsatzszenarien: IP forwarding & IPSec • Messszenario: 100 Mbps IMIX + variabler IPSec Verkehr FlexPath IPSec (512 Byte Pakete) IMIX 100 Mbps / 34,5 kpps (forwarding) Fall 1: Alle Pakete ohne Vorklassi- fizierung zur CPU Fall 2: Vorklassifizierung im Path Dispatcher Fall 3: Forwarding dediziert auf zweite Data Plane Fall 4: Forwarding Verkehr verteilt auf beide Data Plane CPUs (Spraying) Fall 5: Forwarding Verkehr per AutoRoute

  9. IPSec >1 ms Einsatzszenarien: Fall 1 Data Plane PathDispatcher • hohe Grundlast durch SPD-Check • geringe IPSec-Paketrate steigert CPU-Last deutlich • Paketverluste bei Forwarding trotz ausreichender CPU Lastreserve

  10. Einsatzszenarien: Fall 2 Data Plane PathDispatcher • Abfall der CPU-Last durch Vorklassifizierung im Path Dispatcher (SPD-Check) • IPSec-Paketverluste ab 2,700 kbit/s

  11. Einsatzszenarien: Fall 3 Data Plane Data Plane PathDispatcher • keine Paketverluste mehr bei Forwarding • Head-of-Line Blocking bei 100% CPU-Last

  12. Einsatzszenarien: Fall 4 Data Plane Data Plane PathDispatcher • CPU 1 hat höhere Priorität am Bus mehr Spraying-Verkehr • keine Verluste bei Forwarding durch 2. CPU

  13. Einsatzszenarien: Fall 5 Data Plane PathDispatcher • AutoRoute-Verhalten vergleichbar mit Fall 3 (2 CPUs, dedizierte Lastverteilung)

  14. DynaCORE DES AES AES Anbindung von DynaCORE (Universität zu Lübeck) Motivation: • Crypto-Funktionen sehr rechenaufwändig  HW-Beschleunigung • DynaCORE als externen HW-Beschleuniger • Anschluss über Ethernet Gemeinsame Demonstration: • flexible Ansteuerung / Wegewahl aus Perspektive FlexPath NP • allgemeine Performanceerhöhung • einfache Anbindung durch Standard-Schnittstellen  gemeinsamer Stand auf FPL 2008 Aktueller Status: • Datenformate spezifiziert • Demonstrator angepasst • Tunnel-SW zum Remote-Paketaustausch über Internet (München-Lübeck) • erster Testlauf in Kürze

  15. Ausblick: MPSoC Ziel • Einbindung weiterer Data Planes (MicroBlazes) Mögliche Probleme • Anbindung der MicroBlazes • MicroBlazes mit PLB-Anschluss erst ab EDK 9.2 / 10.1 • Atomare Zugriffe (bisher: 64 Bit Cacheline Zugriffe) • Interconnect • Mehr Busteilnehmer erschweren Timing • Auslastung des Busses • Alternativen • Infrastruktur mit Bridging • Multiport Memory Controller • …

  16. Ausblick: Weitere Load Balancing Strategien Bisher • Keine Kenntnis des aktuellen Belastungszustandes Ziel • Geregelte Lastzuweisung • System-Monitoring • Auswertung • Regelalgorithmus Aspekte • Zwei Mechanismen • Spraying (Paketverteiler) • Dedizierte Zuweisungen (Path Dispatcher) • Migration von statebehafteten Applikationen in Überlastsituationen • Rechenreserven durch gezielte Lastallokation • z.B. für hochprioren Verkehr • Sicherstellung von QoS

  17. Zusammenfassung • Funktionsfähiger FlexPath Netzwerkprozessor • Vollständiger Multi-Processor System-on-Chip Demonstrator • 2 PowerPCs • Einsatzszenarien zeigen • Vorteile und Möglichkeiten der flexiblen Wegewahl • Anpassungsfähigkeit des FlexPath Systems mittels einfacher Konfiguration

  18. Vielen Dank für Ihre Aufmerksamkeit!

  19. Aufbauend auf Gerüst aus 1. Förderperiode Multi-Prozessor Cluster Mindestens 4 Data Plane CPUs Lastbalancierungsstrategie Multi-Prozessor Interrupt-Controller Hardwarebeschleuniger für Aufgaben mit besonders hoher Rechenanforderung (z.B. Crypto) Dynamisch partielle Rekonfiguration Optimierung der aktuellen Systemkonfiguration FlexPath NP - Systemüberblick 2. Förderperiode

More Related