infiniband low level protocol -...
TRANSCRIPT
InfiniBand Low Level
Protocol
Seminar
Ausgewählte Themen in Hardwareentwurf
und Optik HWS 08
17.12.2008
Andreas Walter
Universität Mannheim
2
Inhalt
Motivation
InfiniBand Basics
Physical Layer
IB Verbs
IB Packetstruktur
IB-RAW Format
Zusammenfassung
Ziel dieser Ausarbeitung
Realisierung von Low Level Protokollen auf einer
vorhanden InfiniBand Architektur, d.h. ein
nicht-InfiniBand konformes Paket soll auf
unteren Layern verschickt werden.
3
Was ist InfiniBand
InfiniBand Architecture (IBA) ist ein
Industriestandard für ein
Hochgeschwindigkeitsnetzwerk
Aus „Future I/O“ (Compaq, IBM, HP) und „Next
Generation I/0“ (Intel, Microsoft, Sun) entstand die
„InfiniBand Trade Association“
Kunstwort aus „infinity“ = Unendlich und
„bandwith“ = Bandbreite
4
Überblick
Ein InfiniBand-Netzwerk besteht aus
Host Channel Adapter (HCA)
Target Channel Adapter (TCA)
Switches
Router
Repeater
Links
5
Eigenschaften von IB
Niedrige Latenz
Kein Bus, sondern ein Netzwerk geschalteter
bidirektionaler Verbindungen (Punkt zu Punkt)
Skalierbar
Remote Direct Memory Access (RDMA) fähig
User-Level-Kommunikation
Atomare Operationen
7
Eigenschaften von IB
Redundante Anbindungen möglich
Kupfer oder optische Verbindungen
Switching ist paketbasiert
Routing ist table-based
Flusskontrolle credit-based
IBA beschreibt komplettes Transportsystem (Schicht
1-4)
8
IB in den TOP 500
9
28,4 % aller Systeme der TOP 500 benutzen IB
38,88 % der Gesamtleistung der TOP 500 erbringen IB-Systeme
[4]
IB-Channel Adapter
Ports
Queue Pairs
Consumer
Local Identifier (LID) 16 bit
Global Identifier (GID) 128 bit
Memory and Translation Mechanism (MTP)
Subnet Management Agent (SMA)
11
[1]
Kommunikation
Basiert auf Queues
Ein Link kann mit Virtual Lanes (VL) mehrfach
verwendet werden
Ein Port besteht aus VLs (0..15)
Adressierung mittels Local IDs (LIDs) und Global
Identifier (GID)
Keys ermöglichen Isolation und Schutz
Mehrfache Pfade zum Ziel möglich
12
IB-Kommunikationsdienste
(Un)Reliable Connection
(Un)Reliable Datagram
RAW IPv6 Datagram (optional)
RAW Ethertype Datagram (optional)
14
Subnetz-Mangager
Initialisation der Fabric
Weist jedem Port eindeutige LID und Subnet ID zu
Führt alle möglichen Pfade zwischen den Endknoten
im Subnetz ein
Reagiert auf Topologieveränderungen
15
[1]
Physical Layer - Link
Signalrate 2,5 Gbits/s
8B/10B Kodierung
Übertragung optisch oder über Kupferkabel
Kupferkabel bis 17 m Länge
Kabellänge der optischen Variante : 300 m bei Multimode-Fasern
10 km bei Singelmode-Fasern
16
[3]
IB-Verbs
Realisiert die Software Schnittstelle zwischen HCA
und Consumer
Ist als Upper-Layer-Protokoll zu verstehen
Verbs lassen sich grundsätzlich in vier Kategorien
einteilen: Transport Resource Management
Multicast
Work Request Processing
Event Handling
17[1]
Packetstruktur
18
LRH Local Route Header
GRH Global Route Header
BTH Base Transport Header
ETH Extended Transport Header
ICRC Invariante CRC
VCRC Variante CRC
[1]
IB-RAW Paket
23
Untersuchen, welche IB-Paketteile
benötigt werden, um ein Paket, dass in
der Payload ein anderes Protokoll besitzt
über die IB- Architektur zu verschicken
Bisher gesehen: Aufbau eines Standard-IB
Pakets, bestehend aus LRH, GRH (optional),
BTH, ETH, Payload, ICRC, VCRC
RAW Paket Struktur
25
Die EtherType-Werte, werden von IEEE verwaltet, siehe hierzu
http://standards.ieee.org/regauth/ethertype/
Für eigne Protokolle kann der EtherType-Wert „0x88b5“ oder
„0x88b6“ verwendet werden
Nur der Link-Layer wird benötigt
[2][2]
Raw-Paket Eigenschaften
Es gibt nur Send und Receive Operationen
Kein multi-packet-message möglich, daher muss jede
Nachricht in ein Paket passend
Da kein BTH existiert, gibt es auch keine Möglichkeit
die Ziel-QPs anzugebenPaket am Port von einem CA weis nicht in welche QP es muss, dass
demultiplexing für die QP‘s muss man selber regeln
RAW-Transport ist UnreliableEs gibt keine Response auf ein verschicktes Paket
26
Payload eines RAW-Paketes
Ein Standard-IB-Packet hat eine maximale Payload
von 4096 Bytes (=größte Message Transfer Unit
(MTU))
Wegfall von ICRC, GRH, BTH und ETHPayload vergrößert sich auf:
MTU + 124 (größter Packet Header und CRC) – 8 (LRH) – 4
(RWH)
Bei MTU von 4096 Bytes vergrößert sich die Payload auf 4208
Bytes
27
Zusammenfassung
IB-Spezifikation unterstützt das „tunneln“ von nicht-
IB konformen Paketen
Es wird lediglich der Local Routing Header benötigt
mit entsprechendem LNH-EintragEs ist nur der Physical Layer und der Link-Layer involviert
Die maximale Payload vergrößert sich im Vergleich
zu Standard-IB-Paketen
28
Quellen
[1] InfiniBand Architecture Specification Volume 1 & 2,
Release 1.1, November 6, 2002
[2] InfiniBand Network Architecture by MindShare Inc, Tom
Shanely, October 31, 2002
[3] eXtend Computer-Peripherie GmbH. www.extend.de
[4] TOP500 www.top500.org