Programmieren eines Nachrichtensystems - Protokoll
Wir programmieren ein einfaches Nachrichtensystem, mit dem Personen Nachrichten an andere Personen schicken können:
Eine Nachricht besteht aus drei Teilen:
- dem Absender
- dem Empfänger
- dem Text, der übermittelt werden soll
Eine neue Nachricht wird vom Computer (Client) des Absenders an den Server geschickt. Dort wird die Nachricht gespeichert. Jeder Client kann bei dem Server anfragen, ob es auf dem Server neue Nachrichten für den Benutzer des Clients gibt. Falls eine neue Nachricht vorliegt, wird diese an den Client übermittelt und dort angezeigt.
Ein Protokoll zum Übermitteln von Nachrichten
Aufgabe 1
Aufgabe 2
- Beschreibe und vergleiche die beiden Kommunikationsvorgänge.
- Wozu dienen die Doppelpunkte, die sich in den Anfragen und Antworten befinden?
In der vorherigen Aufgabe wurde ein Protkoll für ein Nachrichtensystem vorgestellt. (zur Erinnerung: Ein Protokoll ist die Gesamtheit aller Vereinbarungen, die Kommunikationsteilnehmer zur Abwicklung der Kommunikationsvorgänge treffen). Das Protokoll, das in der vorherigen Aufgabe vorgestellt wurde, ist im folgenden Kasten formell beschrieben. Unser Nachrichtensystem soll nach diesem Protokoll arbeiten:
- Der Client baut eine TCP-Verbindung zu dem Server auf.
- Der Client überträgt eine Anfrage. Dabei handelt es sich um eine ASCII-codierte Zeichenkette.
- Der Client sendet das Byte 0, um dem Server das Ende der Anfrage zu signalisieren.
- Der Server bearbeitet die Anfrage und schickt eine Antwort an den Client. Dabei handelt es sich um eine ASCII-codierte Zeichenkette.
- Der Server sendet das Byte 0, um dem Client das Ende der Antwort zu signalisieren.
- Server und Client schließen ihre Kommunikationssockets.
- Neue Nachricht versenden
- Anfrage: NEUE_NACHRICHT:{absender}:{empfänger}:{text der nachricht}
- Antwort: OK
- eine neue Nachricht vom Server holen
- Anfrage: HOLE_NACHRICHT:{empfänger}
- Antwort: {absender}:{empfänger}:{text der nachricht}
oder: KEINE_NEUE_NACHRICHT
Client und Server, die dieses Protokoll implementieren, befinden sich in der Anwendungsschicht des Schichtenmodells. Ein solches Protokoll wird auch als Protokoll der Anwendungsschicht bezeichnet.
Aufgabe 3
- Paul fragt bei dem Server an, ob neue Nachrichten vorliegen.
- Melanie schreibt an Paul: "Hallo Paul, wie geht es dir?"
- Paul fragt bei dem Server an, ob neue Nachrichten vorliegen.
Quellen
-
[1]: ueberblick-nachrichtensystem - Urheber: MIB - Lizenz: inf-schule.de
unter Verwendung von:
- Cliparts aus diagrams.net - Urheber: Unbekannt - Lizenz: Usage terms for diagrams created in diagrams.net