Rechnernetze
Home Nach oben Stichworte

Tiny TP

Der Tiny TP oder TTP wird vom IrDA-Standard nur optional gefordert, sollte aber aufgrund seiner Flow-Control-Realisierung möglichst vorhanden sein. Der Dienst TTP realisiert zwei wesentliche Funktionen:

Flusskontrolle pro LMP (per Kanal) und

Segmentierung und Reassembly (SAR).

Flusskontrolle

Eine wichtige Aufgabe von TTP ist die Flusskontrolle, die für jede LMP-Verbindung getrennt vorgenommen wird, wenn der Multiplexed Mode von IrLMP verwendet wird. Da mehrere IrLAP-Verbindungen aktiv sind, können u.U. Daten verloren gehen oder Deadlock-Situationen auftreten. Diese können durch eine auf Kredit basierende Flusskontrolle vermieden werden. Dazu wird jeder Seite vor dem Verbindungsaufbau vom jeweils anderen Teilnehmer ein Kredit in Form von verfügbaren Pufferspeicher der Empfängerseite zugeteilt. Ein Credit entspricht der Erlaubnis, ein LMP Paket zu senden, wobei die maximale Anzahl der zugeteilten Credits 127 beträgt. Für jeden Credit muss der Empfänger Daten mit maximaler Paketgröße annehmen können. Sobald Daten gesendet werden, dekrementiert der Sender seine Credits um eins.

Der Empfänger erteilt seinem Kommunikationspartner periodisch mehr Credits, wobei alleine der Empfänger die dafür erforderlichen Regeln kontrolliert. Dieses Credit-Verfahren bestimmt wesentlich die Performance der IrDA Verbindung. Stellt der Empfänger permanent häufig keinen ausreichenden Credit zur Verfügung, und muss der Sender daher oft auf die Zuteilung warten, so kann sich der Durchsatz dadurch stark vermindern.

Ein Paket, welches einen Credit sendet, unterliegt nicht der Flusskontrolle und kann daher immer, auch bei fehlendem Credit, gesendet werden. Da bei einer IrDA Verbindung beide Seiten als Sender und Empfänger arbeiten können, erteilen beide Seiten Credit. Die Credit-Pakete werden am Anfang des ersten IrLMP-Datenpakets geschickt. Danach werden die Credit-Pakete immer als Unterschied zum vorherigen Wert versendet.

Segmentierung und Reassembly (SAR)

Da TTP große Datenpakete in kleinere Segmente aufteilt, muss der Empfänger diese Fragmente wieder reassemblieren. Die Länge eines vollständigen (nicht segmentierten) Datenpakets wird Service Data Unit (SDU) genannt und wird bei der ersten TTP/IrLMP Verbindung ausgehandelt.

Die Dienste für die Flusskontrolle sind CONNECT (Aushandeln der maximalen SDU Größe), DISCONNECT, DATA, LOCAL FLOW CONTROL (stoppt das Senden von Daten) und UDATA (Datentransfer im nicht zuverlässigen Transparent Mode). Die nicht optionalen Funktionen von TTP sind CONNECT, DATA und DISCONNECT.

Der TTP-Dienst benutzt zwei verschiedene Frame Formate, zum einen CONNECT-Pakete zum Aufbau einer Verbindung mit Angabe des Credits und zusätzlich DATA-Pakete, welche das Inkrement des Credits enthalten. In beiden Pakten können Anwenderdaten enthalten sein. Für den Kredit wird jedem IrLMP-Paket ein Byte Kontrollinformation hinzugefügt.