Technologie & Innovation

Wie funktioniert das Internet? Wie entstehen Verbindungen im World Wide Web?




Heute gibt es im Internet mehrere Millionen Webseiten - die Meisten davon werden täglich mehrere hundert oder tausende Male aufgerufen. Doch wie funktioniert das, dass nach dem eintippen der URL Adresse die richtige Information am richtigen Server angefragt werden kann? Wie verständigen sich die Millionen Webserver weltweit? Wie kommt das "Internet" zustande?

Jeder von Ihnen ist über einen Provider (z.b der Deutschen Telekom) mit dem Internet verbunden. Jede Ihrer Anfragen auf eine Website landet zunächst direkt bei Ihrem Provider - die nächst größere Instanz mit der Ihr Computernetzwerk zuhause verbunden ist. Dieser übernimmt nun die eigentliche Arbeit für Sie und begibt sich auf die Suche nach der von Ihnen angefragten Information - in diesem Fall zum Beispiel der Webseite www.software-design.de. Hierbei kommen so genannte DNS Server zum Einsatz (Domain Name System). Die Aufgabe eines DNS Servers besteht darin eine Zuordnung von IP Adressen zu verwalten. Eine IP Adresse spricht immer genau einen festgelegten Server an. Ein DNS Server weiß genau, welcher Name welcher IP und somit welchem Server zugeordnet ist.

Doch gehen wir das Ganze einmal langsam - Schritt für Schritt - durch:

Bei Ihrem Provider liegt nun die Information vor, dass sie den Server zu "software-design.de" am Port 80 (Web) erreichen möchten. Da es gänzlich unmöglich wäre einem Server die Verwaltung aller Domainnamen anzuvertrauen Unterteilt man nun in so genannte "Top Level Domains" (TlD). Jeder Top Level Domain ist ein spezieller Anbieter und somit ein eigener DNS Server zugeordnet. Die TLDs entsprechen jeweils der Endung der Domain - in diesem Fall ".de". Rufen wir die Domain "software-design.com" auf ist also wieder ein völlig anderer DNS Server für die Anfrage zuständig.

Damit Ihr Provider nun weiß welcher Anbieter für welche Endung (TLD) ".de" zuständig ist, gibt es weltweit 13 große Root-Server. Diese speichern exakt die Informationen, unter welcher IP die DNS Server der jeweiligen TLD erreichbar sind. Ihre Anfrage für "software-design.de" wird also vom Provider an einen Root-Server gesendet. Dieser gibt die Information weiter, dass für die Endung ".de" die Firma DENIC unter einer ganz bestimmten IP einen DNS Server anbietet.

Somit ist die Lage des ".de" DNS geklärt und Ihr Provider sendet die nächste Anfrage - diesmal an den DENIC DNS Server und "erkundigt" sich nach der Domain mit dem Namen "software-design". Die DNS Server von DENIC wissen nun welcher spezifische DNS Server die DNS Einträge für die Domain verwaltet. (Hinweis: Wenn Sie eine Website mit ".de" erstellen wollen, bezahlen Sie derzeit 11,90€ im Jahr für den Eintrag in die DENIC DNS Systeme - nur so ist Ihre Website hinterher über den Domainnamen erreichbar.)

Vereinfachte DNS Darstellung

Nun geht also die Anfrage ein einen weiteren DNS Server der zumeist bei Ihrem Hoster betrieben wird. Hier liegt nun die tatsächlich gefragte Information, welcher Server die Anfrage an den Web-Port 80 der Domain software-design.de verarbeiten kann. Ihre Anfrage kann nun zugestellt werden. Der Webserver speichert seinerseits Informationen wie er spezifische Anfrage auf spezielle, auf ihn registrierte, Domains zu verarbeiten hat (vHosts). Dies einzurichten fällt in den Aufgabenbereich eines Webentwicklers.

Die Kommunikation zwischen Webserver und Ihrem Browser findet nun über das HTTP Protokoll statt - einer standardisierten "Protololl-Sprache" die beide Partner verstehen können, jedoch nicht unbedingt für den Laien lesbar sind. (Hinweis: Es sind auch andere Protokolle wie FTP oder SSH denkbar. Für Websiteaufrufe wird jedoch meist nur HTTP verwendet)

Das HTTP Protokoll beinhaltet nun die Information an den Server was meine genaue Anfrage eigentlich war - in diesem Fall einen GET Befehl auf die Startseite der Domain. Der Server weiß mit dieser Anfrage etwas anzufangen und versucht sie gemäß der vom Programmierer gesetzten Routinen zu bearbeiten. Hierbei spielen teilweise Informationen eine Rolle, die ihr Browser bei der Anfrage mitgesendet hat (erlaube Verschlüsselung oder Komprimierung, Art Ihres Systems, Gewünschte Sprache,...).

In jedem Fall quittiert der Server die Anfrage ebenfalls mit einer HTTP Antwort. Es gibt verschiedene Antwort Codes die darüber Auskunft geben wie die Anfrage verlaufen ist. So gibt HTTP 200 eine erfolgreiche Anfrage aus. HTTP 404 heißt hingegen, dass die Datei nicht gefunden wurde. HTTP 500 spricht für Fehler bei der Verarbeitung am Server.

Um in diesem Rahmen noch einen weiteren Begriff zu klären: Die tatsächliche Website, die vom Webserver über das HTTP Protokoll ausgeliefert wird ist zumeist ebenfalls vom Webentwickler in einer nicht menschenlesbaren Sprache verfasst: der Hyper Text Markup Language (HTML). Reiner Text würde nämlich tatsächlich nur als solcher dargestellt. Die HTML Codes, die die "Gestaltung" und Aufteilung des Inhalts markieren, müssen erst von Ihrem Browser umgesetzt werden, damit die fertige Website auf Ihrem Monitor erscheint.



Über den Artikel

Beitrag veröffentlicht am von Daniel Kemen, in den Kategorien:


(734 Wörter, 5020 Buchstaben)



Über den Autor


Software-Design Autor

Mein Name ist Daniel Kemen und ich bin IT-Berater und Entwickler bei der SD Software-Design GmbH. Ich schreibe im IT-Blog über interessante Themen rund um Technologien, Entwicklungen und IT-News. Zudem bearbeite ich als zertifizierter Google Partner für AdWords und Analytics viele Themen zum Thema Onlinemarketing, AdWords und Suchmaschinenoptimierung.



Teilen & Verlinken

Verlinken Sie auf diesen Artikel:

Share on...
| |



Wir auf Facebook
Wir auf Twitter
  Wir auf Google+




SPONSORING:



  Sie wollen diesen Artikel in Ihrem eigenen Blog zitieren? Kein Problem!


Bitte verwenden Sie dazu <cite> oder <blockquote> Tags um den zitierten Text und setzen Sie einen Verweis auf diesen Artikel: