• Online: 1.450

Thu Nov 20 14:32:53 CET 2008    |    rallediebuerste    |    Kommentare (23)    |   Stichworte: hintergrundwissen, internet

Ralle erklärt das Internet

Kapitel 1 - Datenaustausch auf Anwendungsebene

 

1.1 Beispiel HTTP - der Austausch von Webseiten

Das PostwesenDas PostwesenIm letzten Beitrag habe ich erklärt, dass man das Internet ganz gut mit unserem Postwesen vergleichen kann.

Wenn Tom Troll also in seine Adresszeile "www.motor-talk.de" eintippt, dann sendet der Browser quasi eine Anfrage an den Motor-Talk Webserver mit der Bitte, ihm den Inhalt der Seite www.motor-talk.de zukommen zu lassen.

 

Damit zwei Computer sich untereinander verständigen können, muss genau definiert sein, wie diese Anfragen und die Antworten darauf auszusehen haben. Einen solchen Regelkatalog nennt man - wie in der Diplomatie - Protokoll. Und genau wie in der Diplomatie gibt es für verschieden Anlässe verschiedene Regelkataloge. So wird für den Austausch von Webseiten ein bestimmtes Protokoll benutzt, für das Versenden von Emails ein anderes, für den Austausch von Dateien gibt's ein drittes etc.pp. 

 

Das Protokoll, das ein Browser standardmäßig benutzt, nennt sich "Hypertext Transfer Protocol", oder kurz "http". Wenn Tom Troll also "http://www.motor-talk.de" eingibt, weiß der Browser direkt, dass die Anfrage an MT nach den Regeln dieses Protokolls formuliert werden muss. Steht da statt des "http:" ein "https:", so ist klar, dass für diese Kommunikation ein anderes Regelwerk gilt. Nämlich das für https, den sichereren Bruder von http. Aber dazu später mehr.

 

Betrachten wir zunächst, wie der Brief von Toms Browser an Motor-Talk (der sogenannte http-request) aussieht:

ein http-requestein http-request

Das Interessanteste für uns sind erst mal die ersten beiden Zeilen. Mit denen fordert Toms Rechner MT dazu auf, ihm die Datei "/" (die Startseite) vom Server "www.motor-talk.de" zurückzuschicken und gibt zu verstehen, dass er http in der Version 1.1 benutzt.

Mit den restlichen Zeilen gibt er der anderen Seite noch ein paar Informationen über sich mit. Beispielsweise welcher Browser benutzt wird und Toms Cookie. Der Cookie enthält Informationen, die MT bei früheren Besuchen auf Toms Computer gespeichert hat. Zum Beispiel seine User-ID und sein (verschlüsseltes) Passwort. So erkennt Motor-Talk Tom wieder, und er muss sich nicht bei jedem Besuch neu anmelden.

 

Sobald der MT-Webserver diese Anfrage erhält, prüft er sie und führt sie entsprechend aus. Die Antwort (http-reply) sieht dann zum Beispiel so aus:

eine http-replyeine http-reply

In der ersten Zeile sehen wir, dass die Antwort den Regeln von http Version 1.1 folgt, und dass der Statuscode "200 OK" ist. Das bedeutet, dass mit unserem Request alles in Ordnung war. Hätte Tom Troll z.B. eine Seite angefordert die nicht existiert, dann wäre der request nicht ok, und die erste Zeile der Antwort würde lauten: "HTTP/1.1 404 Not Found". Neben OK und NOT FOUND gibt es noch zig weitere Codes für alle möglichen und unmöglichen Fälle. Alle http-Statuscodes kennt z.B. die Wikipedia.

 

Auf den Statuscode folgen ein paar allgemeine Informationen und dann - abgesetzt durch eine Leerzeile - die angeforderte Webseite.

Diese Webseite ist im Prinzip reiner Fließtext, in dem neben dem geschriebenen Inhalt der Seite auch Formatierungsinformationen (Fettschrift, bunter Text, Bilder, Tabellen etc.) gespeichert sind. Dieses grausame Gewirr aus eckigen Klammern, Buchstaben und englischen Wörtern nennt sich Hypertext Markup Language, oder kurz HTML. Hierauf werde ich aber nicht näher eingehen - für uns reicht die Feststellung: die http-Antwort enthält die Website, die Tom Troll angefordert hat.

 

Sobald die Antwort beim Browser angekommen ist, liest dieser sich das HTML-Gewurschtel durch, baut die Seite zusammen und zeigt sie auf Toms Bildschirm an.

Und jedes Mal, wenn Tom einen Link anklickt wiederholt sich dieses Spiel von http-request und -reply. Übrigens auch dann, wenn Tom Informationen an MT schickt - zum Beispiel einen neuen Drehmoment-Fanbeitrag. Dann unterscheiden sich die Befehle aus dem request ein wenig, aber vom Prinzip her bleibt's die gleiche Geschichte.

 

.

 

Ok, das war jetzt sehr viel Theorie.

Wer hat Lust, selbst mal Browser zu spielen und eine eigene http-Anfrage an Motor-Talk zu senden?

 

Dachte ich's mir doch :)

Wennn ihr Windows-User seid, probiert mal das hier (getestet auf Vista und XP)

 

Eingabeaufforderung öffnen (z.B. Start ->  Programme -> Zubehör -> Eingabeaufforderung), und dann die folgenden Zeilen exakt so eingeben, wie sie da stehen. 

 

telnet

set localecho

open motor-talk.de 80

 

Damit habt ihr eine Verbindung zum Webserver von MT hergestellt. Nun könnt ihr einen beliebigen http-request eintippen. Zum Beispiel den da unten:

Aber achtet auf Groß- und Kleinschreibung, und tippt sehr sorgfältig, da Tippfehler hier nicht korrigiert werden können.

Keine Angst: ihr könnt nix kaputtmachen, weder bei euch noch auf Seiten von MT! Im schlimmsten Fall müsst ihr halt noch mal von vorne anfangen.

(und ja, es ist normal, dass der Text, den ihr nun eingebt ganz links oben erscheint und die anderen Buchstaben überschreibt - das macht nix!)

 

GET /robots.txt HTTP/1.1{Enter}

Host: motor-talk.de{Enter}

{Enter}

 

Wenn ihr alles richtig gemacht habt, solltet ihr als Antwort den Inhalt der Datei http://www.motor-talk.de/robots.txt zurückbekommen.

Cool, was?

Somit seid ihr in der Lage, künftig komplett ohne Browser auszukommen - also: Firefox / Internet Explorer / Opera deinstallieren, und ab sofort die http-requests von Hand schreiben! ;)

 

Aber zurück zu Tom.

 

1.2 Andere Anwendungen

Nachdem Tom Troll auf MT seinem Namen genug Ehre gemacht und drei neue Dieseldiskussionen vom Zaun gebrochen hat, beschließt er, noch schnell seine Emails zu checken. Dazu öffnet er sein Mailprogramm und klickt auf "Mails abrufen"...

 

... na ratet mal, was da jetzt im Hintergrund passiert! - Richtig! Genau das gleiche:

Das Mailprogramm schickt eine Anfrage an den Mailserver (z.B. mail.gmx.de). Da es hier natürlich nicht um Webseiten sondern um Emails geht, wird als Protokoll statt "http" beispielsweise "pop3" verwendet. Die Anfragen und Antworten sehen anders aus, aber das Prinzip bleibt stets das gleiche:

Das Programm auf meinem Rechner schickt einen Request an den Server, der führt ihn aus und antwortet dann.

 

.

 

"Ok ok Ralle, ich hab's gerafft. Aber wie werden diese Nachrichten denn nun übermittelt, und was passiert alles auf dem Weg von Toms Computer zum Webserver?"

 

Tja, diese und weitere Fragen beantworte ich nach der nächsten Maus dann im nächsten Blogeintrag. Lasst mir doch in der Zwischenzeit mal ein kurzes Feedback da - wie fandet ihr's bis jetzt? War's zu kompliziert oder konnte man's (auch als Laie) verstehen? Womit hattet ihr Schwierigkeiten, und was hat euch gefallen?

 

Danke, und bis zum nächsten Mal

Ralle


Thu Nov 20 14:35:28 CET 2008    |    rallediebuerste

Inhalt (bis jetzt)

 

Kapitel 0 - Einführung

Kapitel 1 - Anwendungsebene

Thu Nov 20 14:43:48 CET 2008    |    Antriebswelle7223

die "http-briefe" haben mich irgendwie an das Vogelbasierte Internet-Protokoll (IPoAC) errinnert ;)

Thu Nov 20 15:18:03 CET 2008    |    Electican3

Coole Sache das so zu erklären! Mit den kleinen Briefchen könnte ich das sogar so mal im Unterricht einsetzen, so sollte es auch der letzte Schüler kapieren ;)

Leider klappt das bei mir (unter Vista) mit dem telnet nicht, ich bekomm das hier: Der Befehl telnet (habs auch ma probiert alles in eine Zeile zu tippen, gleiche fehlermeldung nur mit dem ganzen Befehl) ist entweder falsch geschrieben oder konnte nicht gefunden werden.

Evtl hab ich Telnet deaktiviert?

 

Grüße,

Stefan

Thu Nov 20 15:26:54 CET 2008    |    rallediebuerste

@Stefan:

Es sieht so aus als sei Telnet unter Vista standardmäßig deaktivert - schau mal hier nach:

http://www.netzwerktotal.de/vistatelnet.htm

Die Aktivierung scheint recht leicht zu sein.

Thu Nov 20 15:27:49 CET 2008    |    rallediebuerste

Zu den Briefchen - die werden sich als roter Faden durch die nächsten Einträge ziehen, daher die Idee mit den Zetteln und den Bildern.

Thu Nov 20 15:30:53 CET 2008    |    Electican3

Danke ralle, das werd ich mal checken!

Thu Nov 20 15:49:43 CET 2008    |    XC70D5

Nett beschrieben!

 

Leider bin ich nur Semi-Laie, deshalb habe ich es sofort verstanden und kann zu den Voll-Laien nix sagen ;)

 

 

Gruß

 

Martin

Thu Nov 20 15:57:55 CET 2008    |    Kurvenräuber137127

Ich als Voll-Laie bzw. Vollhonk-Fred-User fand's gut verständlich.

Thu Nov 20 16:20:18 CET 2008    |    Achsmanschette51801

Dem kann ich mich anschließen.

 

Sehr gut beschrieben, ralle. Selbst ich DAU habe es verstanden :)

Thu Nov 20 16:29:01 CET 2008    |    XC70D5

Dass das "D" auch direkt neben dem "S" sein muss! Wer hat sich eigentlich diese doofen QWERTZ-Tastaturen ausgedacht?

 

 

Gruß

 

Martin

Thu Nov 20 16:51:09 CET 2008    |    Kurvenräuber137127

Martin, du unhöflicher Dau-Dack...

Thu Nov 20 16:54:09 CET 2008    |    XC70D5

:confused:

 

Sollte es einen "DAU" geben, bitte ich um Aufklärung. Ich kenne nur Gau und Sau.

 

Und meehster ist wohl eher eine Sau als ein Gau, wenn ich das hier so alles richtig verfolgt habe ;)

 

 

Gruß

 

Martin

Thu Nov 20 16:56:22 CET 2008    |    Electican3

DAU war mein ich DümmstAnzunehmender User ;)

Thu Nov 20 17:13:05 CET 2008    |    XC70D5

Achso, im Gegensatz zu Sensibel Anmutende Userin.

 

 

Gruß

 

Martin

 

Kurvekrieger

Thu Nov 20 18:09:27 CET 2008    |    Achsmanschette51801

...und das "DAU" ist für mich genau so gemeint.

Thu Nov 20 19:05:22 CET 2008    |    Druckluftschrauber2011

Wie immer lustig, verständlich, kurzweilig, realitätsnah etc. pp.

Dazu noch die Bildchen... Klasse.

 

Ich finde keinen negativen Kritikpunkt.

Thu Nov 20 21:29:00 CET 2008    |    Olli the Driver

Ralle, wenn du damit fertig bist (aber das dürfte wohl noch etwas dauern :p) sollte der Blog noch mal zum Blog der Woche ernannt werden. Danke für deine Erklärungen

Thu Nov 20 22:37:14 CET 2008    |    troja_falls

ich find die idee mit den briefen nett.

bin als "semi-amateur" gespannt wie die in den nächsten teilen aussehen werden :)

Thu Nov 20 23:26:16 CET 2008    |    bruno violento

Dann kannst du mir sicherlich auch erklären, warum "HTTP-Fehler 500" nicht will, dass ich Bilder in meinem Blog hochlade ;)

Wed Nov 26 11:24:34 CET 2008    |    querys

immer wieder schön zu lesen :) auch für mich als PC Profi :)

Fri Jan 09 17:08:54 CET 2009    |    Spurverbreiterung9951

Hi,

 

 

ich habe da eine nette Erklärung des Internet gefunden:)

 

 

Grüße

 

globalwalker

Deine Antwort auf "Ralle erklärt das Internet II - Anwendungsebene"

Angeberecke

Mein Blog hat am 06.08.2008 die Auszeichnung "Blogempfehlung" erhalten.

Who's reading? (59)