Title: Firewire
1Was haben
? Die F-22 Raptor
? Das Space Shuttle
? Der MacMini
gemeinsam?
2Spezifikationen IEEE 1394-1995 IEEE
1394a-2000 IEEE 1394b-2001 IEEE 1394.1-2004
IEEE 1394c Funktionsweise Daisy-Chain
Automatische Konfiguration Configuration ROM
Übertragungsmodi Runden mit Firewire Sicherheit?
3Spezifikationen IEEE 1394-1995 IEEE
1394a-2000 IEEE 1394b-2001 IEEE 1394.1-2004
IEEE 1394c Funktionsweise Daisy-Chain
Automatische Konfiguration Configuration ROM
Übertragungsmodi Runden mit Firewire Sicherheit?
4Spezifikationen IEEE 1394-1995 IEEE
1394a-2000 IEEE 1394b-2001 IEEE 1394.1-2004
IEEE 1394c Funktionsweise Daisy-Chain
Automatische Konfiguration Configuration ROM
Übertragungsmodi Runden mit Firewire Sicherheit?
Geschichtliches Apple entwickelte zwischen 1985
und 1995 Firewire, welcher den SCSI-Standard, vor
allem wegen der zu kurzen Leitungslängen und
teilweise schwierigen Terminierung, ersetzten
sollte.
Viele Namen für IEEE 1394 Apple Firewire Sony iLin
k TI Lynx Yamaha mLAN
5Spezifikationen IEEE 1394-1995 IEEE
1394a-2000 IEEE 1394b-2001 IEEE 1394.1-2004
IEEE 1394c Funktionsweise Daisy-Chain
Automatische Konfiguration Configuration ROM
Übertragungsmodi Runden mit Firewire Sicherheit?
Hauptmerkmale Kabelverbindungsmodies S100, S200,
S400 Backplane intern (FireBire) S25, S50 64
Geräte (Nodes) pro Bus 17 Geräte (Nodes) pro
Daisy-Chain Ringschlüsse sind (noch) nicht
gestattet Sechsadriges UTP-Kabel (4 Daten, 2
Energie) hot plug / hot unplug Maximale Länge
zwischen Geräten für S400 4,5m, für
S200 14m Mischung von Geräten unterschiedlicher
Geschwindigkeit auf einem Bus möglich Peer-to-Peer
Verbindung zueinander, kein dedizierter Host
nötig paketorientierte Datenübertragung
(asynchron)
6Spezifikationen IEEE 1394-1995 IEEE
1394a-2000 IEEE 1394b-2001 IEEE 1394.1-2004
IEEE 1394c Funktionsweise Daisy-Chain
Automatische Konfiguration Configuration ROM
Übertragungsmodi Runden mit Firewire Sicherheit?
Neuerungen gegenüber 1394 iLink-Stecker
Anschluss über 4-adriges Kabel (4 Adern für
Datentransfer, keine Stromversorgungsleitungen)
isochroner Datenübertragungsmodus für höheren
aber unsicheren Datendurchsatz Verschiedene DMA-
und IRQ-Optimierungen
7Spezifikationen IEEE 1394-1995 IEEE
1394a-2000 IEEE 1394b-2001 IEEE 1394.1-2004
IEEE 1394c Funktionsweise Daisy-Chain
Automatische Konfiguration Configuration ROM
Übertragungsmodi Runden mit Firewire Sicherheit?
Hauptmerkmale IEEE1394b S800, S1600, S3200
werden ergänzt neues, 9-adriges Kabel und neue
Stecker neues Arbitrierungsverfahren
(Protokoll) nutzt andere Signalkodierung und
Signalpegel Abwärtskompatibilität wird durch
bilinguale-Chips gewährleistet, aber nicht am
gleichen Strang erlaubt den Einsatz
verschiedener Kabelmaterialien (z.B. Glasfaser
100m) Full Duplex Ringschlüsse sind nun
gestattet.
8Spezifikationen IEEE 1394-1995 IEEE
1394a-2000 IEEE 1394b-2001 IEEE 1394.1-2004
IEEE 1394c Funktionsweise Daisy-Chain
Automatische Konfiguration Configuration ROM
Übertragungsmodi Runden mit Firewire Sicherheit?
Hauptmerkmale Bis zu 1.023 Busse können
überbrückt werden, so dass insgesamt 64.449
Geräte verbunden werden können. Isochroner und
asynchroner Modus möglich Bus-Reset auf
einzelnen (Teil-)Bus beschränkt (z.B. hot plug)
Rechenbeispiel Bei der Verwendung von S200
beträgt der Maximalabstand 14 m. Je Daisy Chain
17 Geräte 1023 mögliche Busse ergibt zusammen
243,474 km Gesamtlänge des Systems
9Spezifikationen IEEE 1394-1995 IEEE
1394a-2000 IEEE 1394b-2001 IEEE 1394.1-2004
IEEE 1394c Funktionsweise Daisy-Chain
Automatische Konfiguration Configuration ROM
Übertragungsmodi Runden mit Firewire Sicherheit?
Hauptmerkmale 1394c-2006? S800 über Cat5e
parallel zu Gigabit Ethernet möglich Kabellänge
100m 2 Logische Netze auf einem Kabel Keine
grundsätzliche Brückung beider Netze
10Spezifikationen IEEE 1394-1995 IEEE
1394a-2000 IEEE 1394b-2001 IEEE 1394.1-2004
IEEE 1394c Funktionsweise Daisy-Chain
Automatische Konfiguration Configuration ROM
Übertragungsmodi Runden mit Firewire Sicherheit?
11Spezifikationen IEEE 1394-1995 IEEE
1394a-2000 IEEE 1394b-2001 IEEE 1394.1-2004
IEEE 1394c Funktionsweise Daisy-Chain
Automatische Konfiguration Configuration ROM
Übertragungsmodi Runden mit Firewire Sicherheit?
Automatische Konfiguration Das 1394-Netzwerk
konfiguriert sich komplett selbst. Es sind keine
IDs an den Geräten einzustellen Das
1394-Protokoll definiert einen Autokonfigurations-
Prozess, der aus verschiedenen Stufen besteht,
die nacheinander ablaufen
- Businitialisierung oder Busreset
- Wird beim Ein-/Ausschalten, Entfernen und
Anschließen eines Geräts oder per Softwarebefehl
ausgelöst. Dabei können sich der Root Node und
die IDs der Geräte ändern.
- Baumidentifizierung / Tree Identification
- Bei dieser werden Root Node, Leaf Nodes und
Branch Nodes bestimmt.
- Selbstidentifizierung / Self Identification
- Der Root Node veranlasst den deterministischen
Prozess der ID-Zuordnung für jedes Gerät im
1394-Netzwerk.
12Spezifikationen IEEE 1394-1995 IEEE
1394a-2000 IEEE 1394b-2001 IEEE 1394.1-2004
IEEE 1394c Funktionsweise Daisy-Chain
Automatische Konfiguration Configuration ROM
Übertragungsmodi Runden mit Firewire Sicherheit?
Configuration ROM 64-Bit breiter
Indentifikationskennung, ähnlich einer
MAC-Adresse, welche auch die Fähigkeiten eines
jeden Node beschreibt
Das Gerät mit der höchsten Knoten-ID eines
Segments ist dessen Root-Knoten. Es ist
verantwortlich für asynchrone Arbitrierung und,
als sogenannter Cycle Master, für die
Synchronisierung aller Geräte für isochrone
Übertragungen. Falls ein Gerät mit
entsprechenden Fähigkeiten am Bus vorhanden ist,
gibt es ferner den Isochronous Resource Manager
zur Verwaltung von Kanälen und Bandbreite, den
Bus Manager unter anderem für Optimierung der
Bandbreite, sowie den Power Manager zur Steuerung
von Stromspar-Funktionen.
13Spezifikationen IEEE 1394-1995 IEEE
1394a-2000 IEEE 1394b-2001 IEEE 1394.1-2004
IEEE 1394c Funktionsweise Daisy-Chain
Automatische Konfiguration Configuration ROM
Übertragungsmodi Runden mit Firewire Sicherheit?
Asynchroner Übertragungsmodus Paketweise
Übertragung ECC-Fehlerkontrolle Jedes Paket wird
vom Empfänger bestätigt und ggf. werden
Wiederholversuche durchgeführt
Isochroner Übertragungsmodus Datentransfer mit
garantierter Bandbreite (max 80) Keine
Adressierung Daten werden im Kanal
übertragen Keine Fehlerkontrolle
14Spezifikationen IEEE 1394-1995 IEEE
1394a-2000 IEEE 1394b-2001 IEEE 1394.1-2004
IEEE 1394c Funktionsweise Daisy-Chain
Automatische Konfiguration Configuration ROM
Übertragungsmodi Runden mit Firewire Sicherheit?
Übertragungsrate Durch Rundung ergeben sich
erhöhte Werte, da man auf die Mischung von
Präfixsystemen verzichtet hat. S100 98.304
kBit/s oder 96.000 KiBit/s 12.288.000
B/s S3200 3.145 MBit/s oder 3.000
MiBit/s 393,125 MB/s
Binärpräfixe Binärpräfixe Binärpräfixe Binärpräfixe
kibi Ki 210 1024
mebi Mi 220 1.048.576
gibi Gi 230 1.073.741.824
tebi Ti 240 1.099.511.627.776
15Spezifikationen IEEE 1394-1995 IEEE
1394a-2000 IEEE 1394b-2001 IEEE 1394.1-2004
IEEE 1394c Funktionsweise Daisy-Chain
Automatische Konfiguration Configuration ROM
Übertragungsmodi Runden mit Firewire Sicherheit?
Sicherheitsprobleme Die OHCI-Spezifikation (Open
Host Controller Interface) beinhaltet eine
Betriebsart für FireWire-Controller, in welcher
FireWire-Geräte den Hauptspeicher eines Rechners
auslesen oder überschreiben können, ohne dass es
durch die Software auf diesem Rechner unterstützt
werden muss. Dies ermöglicht theoretisch
weitgehende Kontrolle des Rechners durch andere
am FireWire-Bus angeschlossene Teilnehmer.
Zumindest in der voreingestellten Konfiguration
sind unter anderem Linux, FreeBSD, MacOS und
Windows anfällig.
Its not a bug, its a feature Dies bietet die
Möglichkeit der Fehleranalyse durch separates
System (z.B. Live-Memory-Dumps, Drucker-Scanner)
16Spezifikationen IEEE 1394-1995 IEEE
1394a-2000 IEEE 1394b-2001 IEEE 1394.1-2004
IEEE 1394c Funktionsweise Daisy-Chain
Automatische Konfiguration Configuration ROM
Übertragungsmodi Runden mit Firewire Sicherheit?
- Möglichkeit Lesen
- Bildschirmspeicher auslesen
- Informationen über Prozesse sammeln
- Speicher nach Zeichenketten durchsuchen
- Möglichkeit Schreiben
- Bildschirminhalt verändern
- Einen zusätzlichen Prozess erzeugen
- Einen Prozess beenden
- Einen Prozess verändern (z.B. Root-Rechte,
Prozessprioritäten)
- Lösung
- OHCI-Filter
- Kein physischer Zugriff auf Firewire-Ports
17(No Transcript)