alinnert Geschrieben 4. März 2012 Teilen Geschrieben 4. März 2012 Hallo Forum, in den letzten Stunden ist mir eine Idee in den Kopf geflogen und hab mich diesbezüglich auch via Google und Wikipedia weiter informiert. Nur sind noch ein paar Fragen offen, weswegen ich mich hier registriert habe, um die Fragen mal loszuwerden. Und zwar geht es um die Funktionsweise der Protokolle in der Anwendungsschicht des OSI-Modells. Also HTTP, FTP, IMAP etc. Ich habe auch bereits den Quellcode eines Mail-Servers überflogen, um zu sehen, wie die überhaupt aufgebaut sind. Dieser spezielle war bspw. in C geschrieben. Ich frage jetzt mal direkt: Gehe ich richtig der Annahme, dass ein Protokoll der Schicht 7 quasi "nur" eine Sammlung von Befehlen ist, die ein Server interpretieren kann und dementsprechend Daten zurückliefert? Also am Beispiel IMAP: besteht dieses Protokoll lediglich aus Befehlen wie "select inbox" und verspricht dann quasi die entsprechende Antwort? Wenn ja, ist es dann möglich, durch das Entwickeln eines eigenen Servers für einen speziellen Anwendungsfall mit eigenem Befehls- und Antwortsatz ein eigenes Protokoll zu definieren? Wenn ich also eine Software in C o. ä. schreibe, die auf einem bestimmten Port auf Nachrichten lauscht, handelt es sich dann bereits um ein eigenes Protokoll, neben HTTP etc., dem ich einen eigenen Namen geben und es veröffentlichen könnte? Oder befindet sich noch irgendwo ein Fehler in meinen Gedanken? Außerdem gehe ich von der Annahme aus, dass ich dann auch selbst für einen Aufsatz zur Verschlüsselung (vgl. HTTPS usw.) verantwortlich bin. (richtig?) Vielen Dank für jede Antwort und viele Grüße Andreas Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
lordy Geschrieben 4. März 2012 Teilen Geschrieben 4. März 2012 Ich frage jetzt mal direkt: Gehe ich richtig der Annahme, dass ein Protokoll der Schicht 7 quasi "nur" eine Sammlung von Befehlen ist, die ein Server interpretieren kann und dementsprechend Daten zurückliefert? Also am Beispiel IMAP: besteht dieses Protokoll lediglich aus Befehlen wie "select inbox" und verspricht dann quasi die entsprechende Antwort? Für die von dir genannten Beispiele trifft das zu. Es gibt aber z.B. auch (properitäre) Binärprotokolle, die nicht so transparent sind. Wenn ja, ist es dann möglich, durch das Entwickeln eines eigenen Servers für einen speziellen Anwendungsfall mit eigenem Befehls- und Antwortsatz ein eigenes Protokoll zu definieren? Wenn ich also eine Software in C o. ä. schreibe, die auf einem bestimmten Port auf Nachrichten lauscht, handelt es sich dann bereits um ein eigenes Protokoll, neben HTTP etc., dem ich einen eigenen Namen geben und es veröffentlichen könnte? Ja. Jeder der möchte kann sein eigenes Protokoll entwerfen, eine Spezifikation schreiben, und diese veröffentlichen. Aber warum das Rad neu erfinden? Oder befindet sich noch irgendwo ein Fehler in meinen Gedanken? Was sind denn die Gedanken hinter deiner Frage? Außerdem gehe ich von der Annahme aus, dass ich dann auch selbst für einen Aufsatz zur Verschlüsselung (vgl. HTTPS usw.) verantwortlich bin. (richtig?) Das steht dir frei. Du kannst entweder Teile des Datenstroms verschlüsseln, die gesamte Verbindung über SSL/TLS absichern oder zu ganz anderen Mitteln greifen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
lilith2k3 Geschrieben 4. März 2012 Teilen Geschrieben 4. März 2012 Wenn ja, ist es dann möglich, durch das Entwickeln eines eigenen Servers für einen speziellen Anwendungsfall mit eigenem Befehls- und Antwortsatz ein eigenes Protokoll zu definieren? Ja. Wenn ich also eine Software in C o. ä. schreibe, die auf einem bestimmten Port auf Nachrichten lauscht, handelt es sich dann bereits um ein eigenes Protokoll, neben HTTP etc., dem ich einen eigenen Namen geben und es veröffentlichen könnte? Nein. Dass Deine Anwendung einen Socket beim Betriebssystem angemeldet hat, macht noch kein Protokoll aus. Aber klar: Du kannst quasi alles mögliche als "Protokoll" der Anwendungsschicht definieren. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
alinnert Geschrieben 4. März 2012 Autor Teilen Geschrieben 4. März 2012 Vielen Dank, dann ist das ganze tatsächlich einfacher als ich dachte. @lordy: Warum? Meine Idee ist schon seit Längerem ein alternatives System zur Nachrichtenübertragung. Ähnlich der E-Mails. Mich stören an dem E-Mail-Prinzip leider ein paar Dinge, weswegen ich mich mal an eine Alternative wagen wollte. Ich hatte auch schon mit dem Gedanken gespielt, das ganze über ein Web-Portal zu lösen. Aber ich vermute, die Entwicklung von Software dafür ist dann nicht so schön, wenn das über PHP-Schnittstellen oder Ähnliches laufen muss. @lilith2k3: was würde denn zu einem Protokoll fehlen? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
lordy Geschrieben 4. März 2012 Teilen Geschrieben 4. März 2012 Viel Erfolg dabei Wenn du dir konkrete Ideen zum Protokoll gemacht hast kannst du diese in einen Request for Comments gießen und entsprechend kommentieren lassen. Als Beispiel könntest du dir mal die bestehenden RFCs zu eMail, 821, 822 und deren Nachfolger ansehen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
afo Geschrieben 5. März 2012 Teilen Geschrieben 5. März 2012 Meine Idee ist schon seit Längerem ein alternatives System zur Nachrichtenübertragung. BTDT. Schau dir mal XMPP an. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
lilith2k3 Geschrieben 5. März 2012 Teilen Geschrieben 5. März 2012 (bearbeitet) @lilith2k3: was würde denn zu einem Protokoll fehlen? Äh, das Protokoll sozusagen *g* Die Verbindung zwischen zwei Endpunkten allein ist zwar conditio sine qua non, dass überhaupt Daten übertragen werden, aber eben noch kein Protokoll. Ein Protokoll wäre es, wenn Du bsp. definierst, dass eine Anfrage mit "<start>Hallo, ich bins!</start>" beginnen muss. Daraufhin muss sich der Server entweder mit "<ready>Was gibt's?</ready>" oder mit "<deny>Nö, jetzt nicht</deny>" zurückmelden. Dann kannst Du wahlweise mit "<ask>$Question</ask>" bei erfolgter Verbindung anfragen, oder eben mit "<ack>Dann eben nicht!<\ack>" bei nicht erfolgter Verbindung enden. Wichtig bei einem Protokoll ist, dass es für jede Situation eine festgelegte Konversationsregel gibt, so dass immer klar ist, wie es weitergeht. Beispiel: <start>Hallo, ich bins!</start> <ready>Was gibt's?</ready> <ask>Un?</ask> <answer>Muss ja</answer> <end>Na dann</end> <end>Jo, ne</end> Vereinfacht ausgedrückt ... Bearbeitet 5. März 2012 von lilith2k3 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
alinnert Geschrieben 5. März 2012 Autor Teilen Geschrieben 5. März 2012 (bearbeitet) @afo: nein, XMPP geht in eine völlig andere Richtung. Ich hab kein Chat-Protokoll im Kopf. Wie bereits gesagt, ähnelt es eher der E-Mail. @lilith2k3: das hatte ich aber in der Frage vorausgesetzt. Genau einen Satz vorher Wenn ja, ist es dann möglich, durch das Entwickeln eines eigenen Servers für einen speziellen Anwendungsfall mit eigenem Befehls- und Antwortsatz ein eigenes Protokoll zu definieren? @lordy: vielen Dank für die Infos mit den RFCs. Das klärt zudem noch eine weitere Frage, die ich im Hinterkopf hatte. Bearbeitet 5. März 2012 von alinnert Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.