Web Engineering - Hosting & Publishing
jcksdfnjf dsfjdnfj
jcksdfnjf dsfjdnfj
Set of flashcards Details
Flashcards | 108 |
---|---|
Language | Deutsch |
Category | Computer Science |
Level | Other |
Created / Updated | 28.09.2015 / 24.03.2020 |
Weblink |
https://card2brain.ch/box/web_engineering_hosting_publishing
|
Embed |
<iframe src="https://card2brain.ch/box/web_engineering_hosting_publishing/embed" width="780" height="150" scrolling="no" frameborder="0"></iframe>
|
Aus was besteht der Header ?
Der Header besteht ebenfalls aus 3 Teile: einen General Header, einen Request
Header, einen Entity-Header.
Antwort vom Server
unterscheidet sich vom Request durch eine Status-Linie am
Anfang der Nachricht, bestehend aus 3 Teile: die Version des Protokolls, eine
Statuscode und eine lesbare Statusinformation.
1.0 HTTP/1.1 / Vorteile
Persistente Verbindung
- Unterstützung von nicht IP-basierten virtuellen Hosts
- Neue Request-Methoden: DELETE, OPTIONS, PUT und TRACE
- Content Negotioation
- Chuncked Encoding
- Weiterentwicklung des Caching
- Verbesserung der Sicherheit des Authentifizierungsschemas
Message-Body
wird das eigentliche Entity (Daten) übertragen
Es gibt 4 verschiedene Message-Header (auch Header-Felder genannt), die
Informationen enthalten, welche für die Kommunikation wichtig sind. Sie werden
immer in folgendem Format angegeben: [Header Name]: [Wert]
- General Header: Einsatz bei Request- und Response-Nachrichten, enthält
grundsätzliche Informationen
- Entity Header: Einsatz bei Request- und Response-Nachrichten; enthält
Informationen über das zu versendende Entity
- Request Header: Einsatz in Request Nachrichten, enthält Informationen über
den Request und den Client
- Response Header: Einsatz in Response Nachrichten, enthält Informationen
über den Server (z.B. Versionsnummer)
General Header
Cache–control: Die Caching Information dient dazu, allen Caching-Systemen
mitzuteilen, wie sie mit einer bestimmten Nachricht verfahren sollen. Da dieses
Thema sehr wichtig ist, wird dies später detaillierter behandelt.
Connection: Bei HTTP/1.0 wurde connection:keep-alive verwendet um eine
persistente zu erstellen. Bei HTTP/1.1 ist dies nicht mehr nötig, da alle Verbindungen
persistent sind. Falls ein Client jedoch die Art von Verbindung nicht mehr wünscht,
muss connection:close gesendet werden.
Date: Dieser Header dient der Übertragung von Zeitstempeln, die beispielsweise für
Caching-Funktionen benötigt werden. Der Zeitpunkt sollte in diesem Format
angegeben werden:
DDDD, DD, MMMM JJJJ HH:MM:SS ZONE
DDDD: Englische Abkürzung des Wochentages
MMMM: Englischer Name des Monats
ZONE: Internationale Abkürzung der Zeitzone
Bsp.: Date: Sun, 25 March 2001 20:05:17 GMT
Entity Header
Content-lenght: Gibt die Größe (in Byte) der Daten im Body an. So ist es möglich
festzustellen, wann die Übertragung abgeschlossen ist.
Bsp.: Content-lenght: 91
Content-language: Wenn Entities übertragen werden sollen, die eine bestimmte
Sprache enthalten, kann dieser Header angegeben werden. Nach RFC 1766 werden
Sprachen mit Hilfe von Sprach-Tags abgekürzt, die aus einem primären Tag
(Sprachenabkürzung nach ISO 693) und einem optionalen Subtag (Ländercode nach
ISO 3166) bestehen.
Beispiele:
Content-Language: de/DE (Deutsch/Deutschland)
Content-Language: el/GR (Griechisch/Griechenland)
Last-Modified: Dieses Header-Feld gibt das Datum und die Uhrzeit an, an dem das
Entity zum letzten mal geändert wurde.
Request
GET /homepage.html HTTP/1.1
Accept: text/html, image/jpeg, image/gif, */*
Accept-Charset: ISO-8859-1
User-Agent: Mozilla/5.0 (Windows; Win 9x 4.9; de-DE;
rv:1.7.12) Gecko/20050919 Firefox/1.0.7
Host: www.beispiel.de
Jeder Request beginnt mit einer Request-Line. Diese Zeile beinhaltet zum ersten die
Methode, also das was der Client vom Server möchte. In diesem Beispiel wird die
GET Methode, die am häufigsten eingesetzte Methode, verwendet. Sie wird
eingesetzt um Daten von einem Server anzufordern.
Request Methoden
Options
Get
bedingte GET: If-Modified-Since-Headerfelder: od If-Unmodified-Since-Headerfelder:
HEad
Post
PUT
Delete
Trace
Was ist ein NEtzwerk ?
Bei Computernetzwerken handelt es sich um Rechnern die über unterschiedliche Arten miteinander verbunden sein können. Dieser zusammenschluss ermöglicht die Kommunikation zwischen verschiedenen Systemen miteinander / untereinander.
Über was erfolgt die Netzwerkkommunikation ?
über verschiedene protokolle
Was gibts für Netzwerk Arten ?
Lan
Wan
Man
Wlan
LAN
Local Area Network): Ein ortlich begrenztes, in sich geschlossenes Netzwerk, das sich innerhalb
eines oder mehrerer Gebaude be ndet.
WAN
Ein Wide Area Network (WAN, dt. Weitverkehrsnetz) ist ein Rechnernetz, das sich im Unterschied zu einem LAN oder MAN über einen sehr großen geografischen Bereich erstreckt.
Die Anzahl der angeschlossenen Rechner ist unbegrenzt. WANs erstrecken sich über Länder oder sogar Kontinente. WANs werden benutzt, um verschiedene LANs, aber auch einzelne Rechner miteinander zu vernetzen. Einige WANs gehören bestimmten Organisationen und werden ausschließlich von diesen genutzt. Andere WANs werden durch Internetdienstanbieter errichtet oder erweitert, um einen Zugang zumInternet anbieten zu können.
MAN
MAN (Metropolitan Area Network): Ein \Stadtnetz", in Europa kaum von Bedeutung, in den USA
jedoch weit verbreitet.
GAN
GAN (Global Area Network): Eine zutre ende aber wenig gebrauchliche Bezeichnung fur das
weltum-fassende Internet.
WLAN
WLAN (Wireless LAN, manchmal auch als Wi-Fi bezeichnet): Ein drahtloses lokales Funknetz,
welches meist den IEEE 802.11 Standard zur Ubertragung nutzt.
Netzwerktopologien
Als Topologie wird die Struktur der Verbindungen der zu einem Netzwerk zugehorigen Gerate bezeichnet,
also die Art der Anordnung, wie Computer miteinander verbunden sind. Bekannte Topologien
sind z.B. die Bus-, Baum-, Stern-, Mesh oder Zelltopologie. In groen Netzen wie dem Internet
werden die einzelnen Topologien oft vermischt.
IP-Adressen
Eine IP-Adresse (Internet Protocol-Adresse) dient zur eindeutigen Adressierung von Rechnern und
anderen Geraten (z.B. Host, Router, . . . ) in einem TCP/IP-Netzwerk. Eine IP-Adresse (Internet Protocol-Adresse) dient zur eindeutigen Adressierung von Rechnern und
anderen Geraten (z.B. Host, Router, . . . ) in einem TCP/IP-Netzwerk.
Binar: 10000110.01100110.11100100.00000010
Dezimal: 134.102.228.2
IPv4 vs. IPv6
Aufgrund des steigenden Bedarfs an IP-Adressen wurde mit IPv6 eine neue Version des Internet Protocol
eingefuhrt. Eine IPv6-Adresse besteht aus 128 Bit (=16 Byte), es sind also 2128 unterschiedliche
IP-Adressen vorhanden (gegenuber 232 bei IPv4). Im Rahmen dieses Praktikums werden uns aber
fast ausschlielich nur IPv4-Adressen begegnen.
Zuweisung von IP-Adressen
Von einer dynamischen Adressierung (automatische Zuweisung von IP-Adressen) spricht man,
wenn ein Rechner bei jeder neuen Verbindung mit einem Netzwerk eine neue IP-Adresse zugewiesen
bekommt. Durch die Verwendung von DHCP (Dynamic Host Con guration Protocol) konnen
jedem Rechner in einem TCP/IP-Netzwerk die IP-Adresse sowie die TCP/IP-Kon gurationsparameter
(Gateway, Nameserver, Timeserver, ...) automatisch zugewiesen werden.
Die statische Adressierung (statische Zuteilung der IP-Adressen) wird verwendet, wenn die dynamische
Adressierung technisch nicht moglich oder nicht sinnvoll ist (z.B. bei Servern). Eine statische
oder feste IP-Adresse wird nicht bei jedem Verbindungsaufbau neu vergeben, sondern wird dauerhaft
in der Netzwerkkon guration eingetragen. Abbildung 1 zeigt die statische Zuteilung von IP-Adressen
in Windows XP.
Media Access Control (MAC)-Adresse
Die IP-Adresse darf nicht mit der MAC-Adresse verwechselt werden. Die MAC-Adresse ist die
Hardware-Adresse jedes einzelnen Netzwerkadapters, die zur eindeutigen Identi kation des Gerats
im lokalen Netzwerk dient. Im Falle von Ethernet-Netzen besteht die MAC-Adresse aus 48 Bit (sechs
Byte), die meist hexadezimal geschrieben werden (z.B: 08-00-20-ae-fd-7e). Die ersten drei Byte
identi zieren den Hersteller1 des Netzwerkadapters, die letzten drei Byte werden vom Hersteller vergeben
und entsprechen einer Art Seriennummer.
Subnetzmaske
Die Groe eines Rechnernetzes (also die Anzahl an IP-Adressen innerhalb eines Netzes) wird uber
die Subnetzmaske (oder Netzmaske) angegeben. Die Subnetzmaske trennt dabei jede IP-Adresse
in einen Netzwerk-Teil (linker Teil der Subnetzmaske) und Host-Teil (Gerate-Teil, rechter Teil der
Subnetzmaske) auf. Wahrend der Netzwerk-Teil der IP-Adressen bei allen Geraten innerhalb eines
Netzes gleich ist, ist der Gerate-Teil bei jedem Gerat des Netzes unterschiedlich. Je nach verwendeter
Netzwerk-Adresse und Subnetzmaske wird eine bestimmte Anzahl an Netzwerkstationen (Hosts) in
einem Subnetz adressierbar.
Genauso wie IPv4-Adressen haben Subnetzmasken eine Lange von 32 Bit, wobei alle Bits des
Netzwerk-Teils auf 1 gesetzt sind, alle Bits des Gerate-Teils auf 0. Wie schon erwahnt, gibt der
linke Teil der Subnetzmaske den Netzwerk-Teil an. In Binarschreibweise enthalt die Subnetzmaske
also auf der linken Seite lauter 1er, auf der rechten Seite lauter 0er. Die Stelle, an der die 1er in 0er
ubergehen, gibt die Trennung zwischen Netzwerk- und Gerate-Teil an.
Beispiel: 255.255.255.192 Dezimalsystem = 11111111.11111111.11111111.11000000 Binarsystem
Die Anzahl der gesetzten Bits (in unserem Bsp. 26) und der ungesetzten Bits (in unserem Bsp.
6) gibt an, wie viele unterschiedliche Adressen fur den Netz-Teil bzw. Gerate-Teil zur Verfugung
stehen. Subnetzmasken werden auch oft in CIDR-Notation (Classless Inter-Domain Routing) dargestellt,
wobei einfach die Anzahl der gesetzten Bits angezeigt wird (z.B: /26). In unserem Beispiel
verbleiben 6 Bits fur den Gerate-Teil, also 26 = 64 Adressen.
Wichtig: Nicht alle 64 Adressen stehen als nutzbare Adressen innerhalb des Netzes zur Verfugung.
Die kleinste Adresse beschreibt das Netz selbst, die grote Adresse ist fur den Broadcast
Broadcast (Rundruf)
Broadcast steht fur den Versand von Nachrichten innerhalb eines Netzwerkes, die nicht nur an einen
einzelnen Rechner gerichtet sind, sondern an alle angeschlossenen Gerate innerhalb des Netzwerks.
Eine Broadcast-Nachricht muss von allen Empfangern (Computern, Routern, etc.) entgegengenommen
werden. Ist der Empfanger nicht zustandig, kann die Nachricht verworfen werden, falls der
Empfanger zustandig ist, wird die Nachricht dementsprechend verarbeitet. Der Sender braucht beim
Broadcasting (und auch beim Multicasting) nur so viel Bandbreite wie ein einzelner Empfanger { es
konnen also gleichzeitig Nachrichten an mehrere Teilnehmer ubertragen werden, ohne dass sich beim
Sender die Bandbreite mit der Zahl der Empfanger multipliziert. Broadcasts werden oft verwendet,
wenn die Adresse eines Empfangers der Nachricht noch unbekannt ist (z.B. um eine IP-Adresse in
1Sie konnen unter http://standards.ieee.org/regauth/oui/index.shtml selbst heraus nden, welcher Hersteller
sich hinter der Kennung 08-00-20 verbirgt.
1.1 Netzwerk-Grundlagen 8
eine eindeutige MAC-Adresse umzuwandeln (siehe ARP, Kapitel 2.7), oder auch, falls ein DHCPServer
gesucht wird.).
Im Gegensatz zu einem Broadcast sendet ein Multicast eine Nachricht nicht an alle Gerate innerhalb
eines Netzwerks, sondern nur an eine bestimmte Gruppe. IPv6 unterstutzt keine Broadcasts
mehr sondern verwendet stattdessen nur noch Multicasts
Namensauflösung { Das Domain Name System
Das Domain Name System (DNS) ist ein verteiltes, hierarchisches System zur Au
osung von Computernamen
in IP-Adressen. DNS ermoglicht es also, IP-Adressen uber die zugehorigen Domainnamen
zu erreichen, welche fur Menschen viel einfacher zu merken und zu lesen sind. So kann die Internetseite
der Uni Wien sowohl uber ihren Domainnamen (http://www.univie.ac.at, auch FQDN { Fully
Quali ed Domain Name genannt) als auch uber ihre numerische IP-Adresse (http://131.130.1.78/)
erreicht werden.
Top Level Domains
Es gibt zwei Arten von Top-Level-Domains: Allgemeine und landerspezi sche. Beispiele fur allgemeine
Top-Level-Domains sind:
com: Domain, in der kommerzielle Unternehmen Platz nden.
edu: Bildungseinrichtungen, von Grundschule bis Universitat (Groteils in Nord-Amerika).
net: Domain fur Netzwerk-Provider.
org: Domain fur nicht-kommerzielle Organisationen.
Die Lander-Top-Level-Domains beinhalten genau einen Eintrag fur jedes Land (z.B: .at fur Osterreich,
.de fur Deutschland).
Ein Beispiel, wie man eine (sehr glucklich zugewiesene) Lander-Domain zu viel Geld machen kann,
zeigt die Inselgruppe Tuvalu im Sud-Pazi k. Tuvalu hatte das Gluck, die Lander-Domain Endung
.tv zugewiesen zu bekommen. Der Internet-Dienstleister DotTV hatte um die Jahrtausendwende
herum die Rechte an der Domain erworben und zahlte innerhalb von 10 Jahren 50 Millionen USDollar
an den Zwergstaat (was insgesamt einer Zahlung des zweieinhalbfachen BIPs (pro Jahr) von
Tuvalu entspricht 2). Weitere interessante Beispiele fur zweckendfremdete Landerdomains sind die
Federated States of Micronesia (Domain .fm, Bsp.: last.fm), oder ab 30.09.2009 auch die neue Top
Level Domain von Montenegro (.me, eignet sich z.B. fur ask.me, love.me, etc. )
DNS-Server bzw. Nameserver
Als Nameserver werden einerseits Programme bezeichnet, die DNS-Anfragen bearbeiten, andererseits
auch Computer, auf denen diese Programme laufen. Z.B. wird in Abbildung 1 der Rechner, auf dem
Programme zur Namensau
osung laufen, als DNS-Server bezeichnet.
Ubertragungsstandards
Ethernet
Wlan
UMTS-HSDPA
Ethernet
Ethernet
Ethernet ist ein Protokoll, welches die kabelgebundene Datenubertragung fur lokale Datennetze
(LANs) regelt. Ethernet ermoglicht den Datenaustausch in Form von Datenframes (Paketen) zwischen
allen in einem lokalen Netz angeschlossenen Geraten. Um den Austausch der Daten zu ermoglichen,
werden diese in elektrische Signale umgewandelt, welche uber ein Tragermedium (z.B. Kupferdrahte)
ubertragen werden.
WLAN
Nicht nur eine bestimmte Art von Netzwerken sondern auch die Familie der IEEE-802.11 Standards
wird meist mit dem Begri WLAN bezeichnet. In diesem kabellosen Telekommunikationssystem werden
Informationen (wiederum in Form von Datenframes bzw. Paketen) mittels elektromagnetischer
Wellen ubertragen, die sich auch in Luft (und sogar im Vakuum) ausbreiten konnen.
UMTS-HSDPA
In den letzten Jahren wurden mit HSDPA 3 { einem Ubertragungsverfahren des Mobilfunkstandards
UMTS 4 { Ubertragungsgeschwindigkeiten in Mobilfunknetzwerken ermoglicht, die den Verkehr
groer Datenmengen ohne Kabel- oder WLAN-Verbindung ermoglichen.
Vermittlungsgerate
Router
switch
hub
gateway
standartgateway
Router
Bei einem Router handelt es sich um eine Schnittstelle (Kopplungs- bzw. Entkopplungseinheit)
zwischen zwei Netzwerken, die eine Verbindung zwischen diesen Netzwerken herstellt (auch wenn
diese Netzwerke unterschiedliche Topologien verwenden). Router lassen sich zum Aufteilen eines
lokalen Netzwerks in mehrere kleinere Netze oder aber als Bindeglied zwischen mehreren lokalen
Netzwerken innerhalb groerer Netze (z.B. Internet) einsetzen. Router arbeiten auf Schicht 3 des
OSI-Schichtenmodells (Kapitel 2.3).
Switch
Ein Switch dient zur Verbindung mehrerer Computer bzw. Netz-Segmente in einem lokalen Netzwerk
(LAN). Switches werden oft auch als intelligente Hubs bezeichnet und funktionieren ahnlich
wie Bridges. Switches arbeiten ublicherweise auf Schicht 2 des OSI-Schichtenmodells (Kapitel 2.3).
HUb
Ein Hub verbindet mehrere Computer bzw. Netz-Segmente oder Peripheriegerate sternformig miteinander.
Hubs arbeiten auf Schicht 1 des OSI-Schichtenmodells (Kapitel 2.3).
Gateway
Unter einem Gateway (der Ausdruck wird oft { nicht ganz korrekt { mit Routern gleichgesetzt) versteht
man ein Vermittlungsgerat, an welches ein Computer in einem Netzwerk seine Pakete schickt,
wenn die Zieladresse auerhalb des eigenen Netzwerkes liegt, das heit, wenn der Computer den
\Weg" zu seiner Zieladresse nicht kennt. Unter \Weg" werden dabei alle Knoten verstanden die ein
Paket durchgehen muss um an die Zieladresse zu kommen. Die einzelnen Netzwerke konnen dabei
auf unterschiedlichen Protokollen basieren. Gateways arbeiten auf den OSI-Schichten 4 bis 7.
Standardgateways
Standardgateways stellen eine Standardroute bereit, die bei der Kommunikation mit anderen Netzwerken
verwendet wird { es ist aber auch moglich, alternative Gateways einzurichten.
VPN - Virtual Private Network
VPNs sind ubergelagerte (virtuelle) Netzwerke, die auf bestehenden physischen (realen) Netzen aufbauen.
(Vgl, [9, p.779]: VPNs are overlay networks on top of public networks but with most of the
properties of public networks.) Zum Beispiel kann ein Computer eines Mitarbeiters uber VPN von
zu Hause aus einen gesicherten Zugri auf das Firmennetz erlangen. Um die Daten vertraulich zu
halten, wird der Verkehr und damit die Information verschlusselt uber das o entliche Netz geschickt.
Wesentliche Eigenschaften von VPN sind
Vertraulichkeit: Die Information wird vom Sender verschlusselt bevor sie uber das Netzwerk
gesendet wird.
Datenintegritat: Der Empfanger kann veri zieren, dass die Daten bei der Ubertragung durch
das Internet nicht verandert wurden.
Authentizitat der Datenquelle: Der Empfanger kann die Datenquelle und damit die Herkunft
der Information eindeutig identi zieren und veri zieren.
Der Befehl ping
Mit dem Netzwerk Tool ping (benannt nach dem ublichen Ton, den ein Sonar von sich gibt6) kann
getestet werden, ob und wie schnell eine Verbindung zu einem Remote-Rechner aufgebaut werden
kann. Dabei werden Pakete an den Remote-Rechner geschickt und uberpruft, ob diese retour geschickt
werden.
Ping verwendet das ICMP (Internet Control-Message Protocol, siehe Kapitel 2.4), welches
in Netzwerken zum Austausch von Fehler- und Informationsmeldungen dient. Mittels ping wird
ein ICMP-\Echo-Request" (ping) an die Zieladresse des zu uberprufenden Hosts geschickt. Der
Empfanger muss laut Protokollspezi kation eine Antwort zurucksenden: ICMP-\Echo-Reply" (pong).
Ausfuhren von ping
Sowohl in Linux als auch in Windows konnen Sie ping uber die Eingabezeile ausfuhren, unter Linux
o nen Sie dazu ein Terminal, unter Windows die Kommandozeile. Um ping benutzen zu konnen,
geben Sie ping gefolgt von einem Ziel-Host (Servername, wie z.B. www.yahoo.com oder numerische
IP-Adresse ) ein. Das Ergebnis eines erfolgreichen ping-Befehls ist in Abbildung 5 zu sehen.
Der Output zeigt an, wie lange ein Datenpaket braucht, um von dem Rechner von dem es losgeschickt
wird zu einem spezi zierten Host und wieder zuruck zu gelangen.
In diesem Beispiel ist www.yahoo-ht3.akadns.net der volle Name des Hosts, wie er von ping
gefunden wurde, 87.248.113.14 ist die dazugehorige IP-Adresse.
\Bytes" gibt die Groe des gesendeten Datenpaketes an (meist 32 in Windows, 128 in Linux)
\Zeit" gibt die Round Trip Time in Millisekunden an (also die Zeit, in der ein Paket von der
Quelle zum Ziel und zuruck reist)
6http://ftp.arl.mil/~mike/ping.html
1.2 TCP/IP-Einstellungen unter Windows/Linux 13
\TTL" (Time To Live) gibt die Lebensdauer eines Datenpaketes an (als Anzahl der Router,
von denen ein Paket weitergeleitet wird, bevor die Suche nach dem Host aufgegeben wird).
Werden alle verschickten Pakete empfangen, so gibt es eine funktionierende Verbindung zum Host,
wobei einzelne verlorene Paket auf eine fehlerhafte oder zu langsame Verbindung hinweisen. Wenn
gar keine Pakete empfangen wurden, dann wird die Meldung \Zeituberschreitung der Anforderung"
ausgegeben.
Tracerouting
Datenpakete werden im Internet nicht direkt von einem Rechner zu einem anderen geschickt, sondern
meist von mehreren IP-Routern (beziehungsweise Computern mit Routing-Funktion) weitergeleitet
(\geroutet"). Traceroute ist ein Diagnose-Werkzeug, mit dem ermittelt werden kann, uber welche
IP-Router Datenpakete bis zum Ziel-Host vermittelt werden. Traceroute zeigt an, welchen Weg die
Datenpakete durch das Internet nehmen, und welche Knoten sie dabei durchqueren mussen, um
das Ziel zu erreichen. Um diese Information herauszu nden, werden ICMP-Pakete mit steigenden
TTL-Werten an den Ziel-Host gesendet. Bei einem Time To Live-Wert von 0 wird das Paket sofort
verworfen, bei einemWert von 1 passiert dies beim ersten Router, bei einemWert von 2 beim zweiten,
und so weiter. Wird ein Paket verworfen, wird der Absender des Pakets verstandigt { so kann der
vollstandige Weg zum Ziel-Host rekonstruiert werden. Erreichen die Datenpakete ihr Ziel nicht, so
kann daher mittels Traceroute herausgefunden werden, welcher Knoten ausgefallen ist.
Vorsicht: Manchmal kann der von Traceroute angezeigte Weg durch verschiedene Faktoren (Firewall,
fehlerhafte Implementierungen, . . . ) vom tatsachlichen Weg, uber den ein Paket gesendet wurde,
abweichen.