Session-Schicht: Probleme, Lösungen und Synchronisation
Eingeordnet in Informatik
Geschrieben am in
Deutsch mit einer Größe von 29,47 KB
V
Probleme bei gleichzeitiger Kommunikation
- Das erste Problem ist, dass Ihre Nachrichten während eines Gesprächs gekreuzt werden können. Beide Teilnehmer können Nachrichten zur genau gleichen Zeit eingeben und sich gegenseitig unterbrechen.
- Das zweite Problem ist die Notwendigkeit zu stoppen (z. B. das aktuelle Gespräch zu speichern) oder die vorherigen Gespräche von jedem zu überprüfen (um Hinweise über den Grund der Diskussion zu bekommen) oder die Kommunikation nachträglich zu synchronisieren.
Lösungen für das erste Problem
Zur Lösung des ersten Problems sollten Sie ein Protokoll oder eine Reihe von Protokollen etablieren, die die Regeln der Kommunikation zwischen Ihnen diktieren. Das bedeutet, dass jeder Regeln akzeptiert, die beim Gespräch angewendet werden. Beispiele:
- Alternierende Zwei-Wege-Kommunikation: Ein Relay- oder Token-basiertes Verfahren, das verhindert, dass Nachrichten einander unterbrechen. Diese Form der Kommunikation wird als alternierende Zwei-Wege bezeichnet.
- Gleichzeitige bidirektionale Kommunikation: Jede Partei kann jederzeit Nachrichten senden, und es wird davon ausgegangen, dass zusätzliche Informationen folgen. Diese Form wird als gleichzeitige Zwei-Wege-Kommunikation bezeichnet.
Lösungen für das zweite Problem
Zur Lösung des zweiten Problems sollten die Teilnehmer Checkpoints senden. Das bedeutet, dass jede Person das Gespräch zu bestimmten Zeitpunkten speichern sollte. Anschließend sollte jeder den letzten Teil des Gesprächs noch einmal lesen und die Zeit auf der Uhr überprüfen. Dies wird als Synchronisation bezeichnet.
Zwei Checkpoints sind sehr wichtig: wie das Gespräch beginnt und wie es endet. Das entspricht dem geordneten Beginn und dem geordneten Ende eines Gesprächs. Beispielsweise kann bei Instant Messaging oder Internet Relay Chat häufig eine Person vor dem tatsächlichen Ende der Sitzung die Verbindung trennen; die andere Person merkt dann, dass die Sitzung beendet wurde.
Analogien: Session-Schicht
Session-Schicht
Die Session-Layer stellt Sitzungen zwischen Anwendungen her, verwaltet und beendet sie. Dazu gehören das Öffnen, Beenden und erneute Synchronisieren von Kommunikationssitzungen zwischen zwei Computern. Die Session-Schicht koordiniert, wie Anwendungen auf zwei kommunizierenden Hosts miteinander interagieren.
Die Datenkommunikation läuft über paketvermittelte Netze, im Gegensatz zur Telefonie, die in leitungsvermittelten Netzen stattfindet. Die Kommunikation zwischen zwei Computern umfasst viele kleine Verhandlungen, damit sichergestellt ist, dass die beiden Computer effektiv kommunizieren können. Eine solche Anforderung ist, dass jeder Host zur bestimmten Zeit die Rolle des Dienstanfragenden (Client) und des Dienstbereitstellers (Server) übernehmen kann. Die Bestimmung der jeweils aktiven Rolle führt zu einem Dialog, auch Kontrolle genannt.
Steuerung: Dialoge
Die Session-Layer entscheidet, ob eine bidirektionale Kommunikation gleichzeitig oder abwechselnd erfolgen soll. Diese Entscheidung wird als Dialog-Steuerung bezeichnet. Wenn die gleichzeitige Zwei-Wege-Kommunikation erlaubt ist, unternimmt die Session-Layer wenig, um die Konversation zu verwalten; in solchen Fällen übernehmen andere Schichten die Verwaltung des Gesprächs.
Es können jedoch Unebenheiten in der Session-Layer auftreten, z. B. Kollisionen, wenn zwei Nachrichten aufeinandertreffen und Chaos zwischen den Hosts verursachen.
Wenn die Störungen auf der Sitzungsschicht zu groß werden, hat die Dialogsteuerung eine weitere Option: die alternierende Zwei-Wege-Kommunikation. Dabei verwendet die Session-Layer ein Daten-Token, das jeweils nur einer Partei das Senden erlaubt. Das ist vergleichbar mit dem Token-Ring auf Schicht 2, das Kollisionen verhindert.
Trennung von Dialogen
Die Trennung von Dialog umfasst den Anfang, das Ende und das Management der Kommunikation. Ein wichtiger Aspekt ist die sekundäre Synchronisation, also Checkpoints. Im Zeitverlauf, z. B. bei t = Checkpoint, sendet die Session-Layer von Host A eine Synchronisationsnachricht an Host B. Zu diesem Zeitpunkt führen beide Hosts typischerweise die folgende Routine aus:
- Sicherung bestimmter Dateien
- Speichern von Netzwerkeinstellungen
- Speichern der Uhr- oder Systemeinstellungen
- Beachten der Endknoten im Gespräch
Eine primäre Synchronisation kann mehrere Schritte und einen Hin- und Her-Austausch beinhalten, wie in Diagrammen oft gezeigt. Der Checkpoint ist ähnlich wie die automatische Speicherung eines Textverarbeitungsdokuments auf einem Einzelplatz-Computer: ein Moment, in dem der aktuelle Stand gesichert wird. Allerdings werden diese Checkpoints in Netzwerksitzungen benutzt, um Teile einer Sitzung (früher als Dialoge bezeichnet) voneinander zu trennen.