Lobster Experten Fragen

OFTP

Das ODETTE File Transfer Protocol OFTP hat technisch herzlich wenig mit dem allseits bekannten FTP zu tun. Es dient der Übertragung von Dateien, aber das war’s auch schon.
Sein Vorteil zu der Zeit, als es entwickelt wurde, war unter anderem, dass man unterbrochene Übertragungen wieder aufnehmen konnte. Das kann man beispielsweise bei X.400 nicht, und da über OFTP gerne sehr große Dateien (wie z.B. CAD-Daten) ausgetauscht werden, kostet es enorm Zeit (und evtl. auch Geld), wenn der Großteil einer Datei schon „drüben“ ist und man noch einmal von vorn anfangen muss. Außerdem kennt OFTP eine Empfangsbestätigung, ähnlich X.400 oder AS2.
Wikipedia hält hierzu nur ein paar spärliche Informationen bereit, also geben wir etwas „Butter bei die Fische“.

Das Grobe

OFTP stammt aus einer Zeit, als das Internet noch in den Kinderschuhen steckte. Damals war ISDN so ziemlich das Modernste, was allgemein zugänglich war. Dementsprechend wurde OFTP auch über ISDN-Leitungen betrieben und wird es heute noch großenteils. Wobei das Protokoll selbst eigentlich unabhängig von der reinen Transportschicht ist und auch das alte OFTP in Version 1 bereits via TCP/IP und somit via Internet genutzt werden kann. Üblich ist der Weg über ISDN, was sinnvoll ist, da sich eine direkte Verbindung schlechter abhören lässt als eine offene Internet-Übertragung. OFTP 1 hat noch keine eigenen Verschlüsselungsvorschriften. Da ist die vergleichsweise neue Version 2 schon weiter, denn hier gehört die Verwendung von TLS (bzw. SSL) zum Standard. Deshalb wird OFTP 2 auch über das Internet betrieben.

Wie schon erwähnt, kennt OFTP eine Empfangsbestätigung, die sogenannte End-to-end Response (kurz: EERP). Diese bestätigt dem Absender, dass die Datei tatsächlich beim Empfänger angekommen ist. Das ist also ähnlich wie bei AS2 oder X.400. Wie bei AS2 die MDN kann bei OFTP die EERP sofort in der laufenden Übertragung geliefert werden oder erst in einer späteren Verbindung. Anders als bei X.400 wird sie üblicherweise auch tatsächlich genutzt, da sie bei vernünftig aufgesetzter Kommunikation keine zusätzlichen Kosten verursacht.

Die Nutzung von direkten ISDN-Verbindungen zwischen den Gesprächspartnern bei OFTP 1 bzw. SSL-Verschlüsselung bei OFTP 2 bietet Sicherheit bei der Übertragung, die EERP darüber hinaus die Nachvollziehbarkeit, ob eine Datei tatsächlich ihren Empfänger erreicht hat.
Das große Manko von OFTP 1 ist, dass es beinahe ausschließlich via ISDN realisiert wird. Das bedeutet zum einen, dass jede Verbindung Geld kostet (und das können in manchen Unternehmen schnell viele tausend Euro pro Monat sein), zum anderen aber auch, dass man ausreichend freie ISDN-Kanäle braucht, um nicht andauernd ein „Besetztzeichen“ zu bekommen, wenn man Daten übertragen will. Dafür wiederum braucht es auch die entsprechende Hardware. Deshalb wird OFTP1 derzeit Schritt für Schritt abgewickelt. Gerade die großen Autobauer (OFTP stammt ja aus dem Automotive-Umfeld) lösen ihr altes, ISDN-basiertes OFTP 1 zur Zeit durch OFTP 2 ab. Im Prinzip könnten sie genau so gut gleich AS2 nehmen, das noch ein bisschen mehr Sicherheit bietet (siehe AS2-Artikel), aber man bleibt doch lieber bei dem, was man kennt. Außerdem muss dafür zwar evtl. eine neue Version der OFTP-Software (oder auch eine ganz neue Software) eingespielt werden, diese ist dann aber normalerweise immer noch für OFTP 1 nutzbar, da ja nicht alle Partner auch gleichzeitig auf OFTP 2 wechseln dürften. Nimmt man dagegen etwas ganz Neues für z.B. AS2, kann das womöglich kein OFTP mehr. Natürlich gibt es auch EDI-Systeme, die beides (und noch einiges mehr) beherrschen.
Wenn Sie also damit rechnen müssen, OFTP einzusetzen, achten Sie auf ein Produkt, das auf jeden Fall OFTP Version 1 und 2 beherrscht. Manche Hersteller verlangen dafür noch mal extra Geld, andere nicht.

Etwas feiner

Rein theoretisch ist OFTP ein reines Sende-Protokoll. Man öffnet eine Verbindung zum Partner, gibt sich mit Username – das ist in diesem Falle eine von ODETTE vergebene ODETTE-ID – und Passwort zu erkennen, prüft User und Passwort der Gegenseite und schickt Dateien zur anderen Seite. Dateien abrufen (wie bei einem FTP GET) kann man nicht. Was man aber sehr wohl kann, ist die Richtung des Datenaustausches zu wechseln. Man schickt, nachdem man seine Dateien abgesetzt hat, einfach das Kommando „Change Direction“, was in etwa die Botschaft übermittelt: „Ich bin fertig, wenn Du noch was für mich hast, her damit.“ Dieser Mechanismus erlaubt zum einen, die EERPs zu vorher übermittelten Dateien an deren Absender zu liefern, zum anderen aber auch eine Zwei-Wege-Kommunikation. Der Partner, der gerade noch Empfänger war, kann nun selbst Dateien senden. Dieser Seitenwechsel kann theoretisch beliebig oft wiederholt werden, bis eine Seite zwar das Senderecht erhält, aber einfach nichts mehr zum Senden hat. Dann macht diese Seite die Verbindung zu.
Im einleitenden Artikel zu den Kommunikationswegen wurde schon erwähnt, dass man per OFTP eigentlich nicht, wie bei FTP, Daten irgendwo abholen kann. Nun können Sie sich denken, wie man trotzdem eine solche Abfrage realisieren kann: Man baut die Verbindung auf und setzt einfach mal auf Verdacht ein „Change Direction“ ab. Hat der andere was zum Senden vorliegen, kann er es jetzt loswerden.

Interessant ist noch, dass an so einer Datenübertragung nicht nur zwei ODETTE-IDs beteiligt sein können, sondern auch mehr. Denn OFTP kennt nicht einfach nur Absender und Empfänger. OFTP unterscheidet vielmehr, wer gerade miteinander tatsächlich Daten austauscht (die Session IDs) und von wem die Daten an wen gehen sollen (die File IDs). Will heißen:
Teilnehmer ABC macht eine OFTP-Verbindung zu Teilnehmer XYZ auf. Die beiden tauschen ihre IDs und Passworte aus und wissen dann, wer hier mit wem redet. ABC sendet nun eine Datei, gibt aber an, dass er diese im Auftrag von DEF schickt, und zwar für den eigentlichen Adressaten UVW. Überträgt er dann die nächste Datei, geht die vielleicht von GHI an RST.
Verwirrend? Aber sinnvoll! Denn auf diese Weise können z.B. Konzernzentralen oder auch Dienstleister im Auftrag ihrer Standorte oder Kunden Daten via OFTP versenden, und jeder weiß, wer der eigentliche Absender bzw. Empfänger ist.

Ohne allzu tief auf die Protokollebene hinabzutauchen sollten wir noch über eine Besonderheit von OFTP sprechen:

Die virtuellen Dateien

Jede zu versendende Datei wird in eine sogenannte virtuelle Datei verpackt, die noch ein paar Zusatzinformationen beinhaltet. Deren Dateiname setzt sich zusammen aus:

  • dem ursprünglichen Dateinamen
  • dem Datum und Zeitpunkt (bis auf Sekunden-Ebene) der Übertragung
  • einem Zähler zur feineren Auflösung

Eine wichtige Information über den Inhalt der (Daten-)Datei steckt auch noch in der virtuellen Datei. Nämlich die Angabe, ob es sich um einen der folgenden Strukturtypen handelt:

  • F = Feste Länge: Jeder Datensatz hat eine exakt definierte, immer gleiche Länge (die ebenfalls angegeben wird). Das wäre reinstes Feste-Länge-Format wie in diesem Artikel beschrieben.
  • V = Variable Länge: Datensätze innerhalb der Datei haben unterschiedliche Längen. Auch das ist im oben erwähnten Artikel nachzulesen.
  • U = Unstrukturiert: Hier können beliebige Daten transportiert werden, also auch Binärdaten (wie bei ENGDAT).
  • T = Text: Die Daten bestehen ausschließlich aus ASCII-Zeichen. Es gibt keinerlei Steuerzeichen außer dem Zeilenumbruch (CR-LF), und jede Zeile ist maximal 2048 Zeichen lang.

OFTP in der Praxis

Wie schon erwähnt ist OFTP im Automotive-Bereich besonders verbreitet, aber auch darüber hinaus wird dieses Protokoll eingesetzt. Wenn Sie mit Geschäftspartnern Daten austauschen, die auf OFTP bestehen, werden Sie nicht umhin kommen, es auch einzusetzen.
Kann statt des alten OFTP 1 via ISDN schon das neuere OFTP 2 genutzt werden, ist es nicht mit nennenswerten laufenden Kosten verbunden. Sie brauchen eine Software, die OFTP 2 beherrscht, einen Internet-Anschluss, eine ODETTE-ID und ein Zertifikat. Letzteres muss von ODETTE selbst ausgestellt oder von ODETTE oder einer diesem Institut genehmen Trust Center signiert sein. Diese vier Punkte kosten Geld, und die Verlängerung des Zertifikates kostet ab und zu noch mal ein wenig, aber verglichen mit den ISDN-Kosten der alten Methode ist das kaum der Rede wert. Zumindest, wenn Sie eine nennenswerte Zahl von Übertragungen vornehmen.
Müssen Sie sich noch mit dem alten OFTP 1 herumschlagen, dann benötigen Sie eine dafür geeignete ISDN-Hardware. Das kann je nach Einsatzgebiet eine ISDN-Karte im Rechner sein oder eine eigene Kiste, die per TCP/IP über das Netz angesprochen wird (aber eben mit der Außenwelt ISDN spricht). Bevor Sie irgend etwas kaufen, fragen Sie am besten beim Hersteller Ihrer favorisierten OFTP- bzw. EDI-Software nach, was er Ihnen empfiehlt. Nehmen Sie aber bitte keine Software, die nur OFTP 1 kann, weil diese evtl. billiger ist! Wie gesagt, OFTP 1 wird gerade abgewickelt; Sie kaufen mit Sicherheit ein Auslaufmodell und müssen nochmals Geld in die Hand nehmen, wenn Ihre Kommunikationspartner auf Version 2 schwenken.
Sollte das ENGDAT-Verfahren im Raum stehen, dürfen Sie übrigens gleich mit OFTP rechnen. Zwar hat niemand die beiden offiziell miteinander verheiratet, doch OFTP hat sich als das Protokoll zur Datenübertragung im ENGDAT-Prozess durchgesetzt. Die OFTP-Version ist allerdings noch offen, beide werden für ENGDAT eingesetzt.