Application Layer Flashcards

1
Q

Was machen Anwendungen (Applications)

A

Anwendungsprogramme laufen auf Endsystemen (Hosts) und Kommunizieren mit Nachrichten über das Netzwerk. Application layer protocols defnieren den Aufbau dieser Nachrichten und Prozeduren. Die Nachrichten werden mithilfe von transport layer servicen implementiert.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Was ist ein Server im Client-Server-Paradigma?

A

Der Server bietet den Clients Dienste (services) an.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Was sind typische Eigenschaften von einem Server im Client-Server-Paradigma?

A
  • Immer an
  • Leistungsstark
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Was sind typsiche Eigenschaften von einem Client im Client-Server-Paradigma?

A
  • Nicht immer an
  • Kommunikation mit Servern aber nicht direkt mit anderen Clients
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Varianten des Client-Server-Paradigmas

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Beispiele für Anwendungen (Applications) und die benutzten transport protocols

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Was macht DNS (Domain Name Service)?

A

DNS übersetzt Host und Domain Namen in IP-Adressen und umgekehrt.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Wie ist das DNS aufgebaut?

A
  • besteht aus mehreren DNS-Servern
  • DNS implementiert einen hierarchischen Namensraum für Internetobjekte
  • Namen werden von rechts nach links aufgelöst
  • Jede Zone wird von einem “name server” (+ backup Server) gemananged
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

In welchen Arten können die Daten im Name-Server gespeichert werden?

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Wie löst DNS den namen auf mit “iterative query”

A
  • Wenn ein Host eine DNS Anfrage stellt, sendert er sie zum localen DNS server.
  • Wenn der die Antwort nicht weiß, geht dieser die Hierarchie hoch bis jemand den “authorative server” für die Domain angeben kann.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Wie löst DNS den Namen auf mit “recursive query”

A
  • Wenn ein Host eine DNS Anfrage stellt, sendert er sie zum localen DNS server.
  • Wenn der die Antwort nicht weiß, geht dieser die Hierarchie hoch bis jemand den “authorative server” für die Domain angeben kann.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Wie funktioniert DNS Caching

A
  • Top-Level server ändern sich nur sehr selten.
  • Bei einer DNS Anfrage wird das Ergebnis gecached.
  • Ergebnis hat eine Zeit zu Leben (TTL)
  • Wenn TTL abgelaufen ist wird das Ergebnis wider gelöscht
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Was sind Virtuelle IP-Addressen und was ist ihr sinn?

A
  • Mehrere Namen können auf die gleiche Addresse zeigen
  • DNS Aufzeichnungen müssen nicht auf reale IP-Adressen zeigen
  • Kann als Gatekeeper fungieren
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Wie Funktioniert was World Wide Web?

A
  • Das WWW ist eine verteilte Datenbasis an URLs (Uniform Resource Locators)
  • Server speichern Webseiten und führen Remote-Befehle aus
  • Browsers rufen Seiten ab und stellen ihren Inhalt dar, die über hypertext verlinket sind (jeder Link ist eine URL)
  • Es wird eine Sprache benötigt, um objekte und Layouts zu definieren: HTML, XML
  • Es wird eine Protokoll benötigt um infomation zwischen Clienten und Servern auszutauschen: HTTP
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Uniform Resource Locator (URL)

A
  • protocol://host-name:port/directory-path/resource
  • Bsp.: http://www.example.com/index.html
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Wie ist das Format von einer HTTP Request?

A
  • Methoden: GET, HEAD, POST, Put, Delete, Trace, Options
  • Header: Es werden Typ-Wert Paare angegeben - Type: Value
  • Body: Ist leer oder es werden Daten angegeben, die übermittelt werden sollen
17
Q

Bsp für eine HTTP Request

A
18
Q

Wie sieht das Format von einer HTTP Response aus?

A
19
Q

Beispeile für status codes von einer HTTP Response

A
  • 200 OK
  • 301 Moved Permanently (redirection to new location of object)
  • 400 Bad Request (request not understood)
  • 404 Not Fount (object not found)
  • 505 HTTP Version Not Supported
20
Q

Wie funktioniert HTTP im allgemeinen?

A

Client sendet eine HTTP Request und Server antwortet mit einer HTTP Response

21
Q

Welche HTTP standarts gibt es?

A
  • 1.0 : RFC 1945 (1996)
  • 1.1: RFC 2068 (1999)
  • 2.0: RFC 7540 (2015)
22
Q

Welche Schritte werden bei einer HTTP anfrage durchgegangen?

A
23
Q

Beständigkeit der Verbingung bei HTTP

A

Eine Webseite enthält viele Objekte und jedes Objekt muss durch eine separate HTTP GET methode angefordert werden.
* Non-Persistent Connection:
- Andere TCP Verbindung für jedes angeforderte Objekt
- HTTP 1.0
* Persistent Connection:
- Verwendet die selbe TCP Verbindung für jedes angeforderte Objekt
- HTTP 1.1
* Pipelining:
- Mehrere request können direkt hinter einenander gestellt werden
- HTTP 2.0

24
Q

Was bedeutet es, das HTTP Stateless ist?

A

Der Server speichert sich keine Daten über Anfragen und des wird jeder request-respone Austausch einzeln behandelt.

25
Q

Welche Vorteile hat es, das HTTP Stateless ist?

A

Es erhöht die Skalierbarkeit auf der Serverseite, da man keine Informationen über requests speichern muss, mehr requests behandelt werden können und die Reihnfolge der requests nicht wichtig ist.

26
Q

Sind requests in HTTP idempotent?

A

Nein

27
Q

Wie kann man trotzdem Daten speichern bei HTTP.

A

Cookies. Der Client speichert einen kleinen Status anstelle des Servers und sendet diesen in jeder nachfolgenden request an den Server

28
Q

Was will man mit Caching bei HTTP

A

Man will häufig referenzierte Objekte näher am client speichern um Zeit zu sparen, Bandbreite zu sparen und den Server zu entlasten.

29
Q

Reverse Chaches

A
  • Cache Dokumente nahe am Server um den Server zu entlasten
  • Normaler weise von Content-Providern gemacht
30
Q

Forward Proxies

A
  • Cache Dokumente nahe am Client um Netzwerk zu entlasten und Latenz zu vermindern
  • Normalerweise von ISPs gemacht
31
Q

Welche Caching Support hilfen bietet HTTP/1.0?

A
  • A modifier to the GET request: “If-modified-since” gibt “not modified” in der response zurück wenn es nicht verändert wurde
  • A response header: “Expires” gibt dem Client an bis wann es sicher ist die Resource zu Cachen
  • A request directive: “No-cache” gibt an dass alle Caches ignoriert werden sollen und das Ergebnis direkt vom Server geholt werden soll.
32
Q

Was machen Content Delivery Networks?

A

Da DNS Aufzeichnungen keine reale IP-Adresse speichern müssen werden Namen auf verschiedene Adresse abgebildet, die nähr an einem dran sind um kürzere Verzögerungen zu erreichen oder um die Last zu verteilen.

33
Q

Wie kann die Umleitung bei CDNs realisiert werden?

A
34
Q

WebSockets

A

Für manche Anwendungen ist HTTP zu langsam da man nur eine half-duplex Kommunikation hat. WebSockets benutzt das WebSocket Protokoll anstelle von HTTP: (ws:// und wss://). Sie benutzten aber noch die gleichen Ports: port 80 (http) und port 443 (https). Die Verbindung wird durch ein Upgrade von HTTP auf Websocket protocoll etabliert.

35
Q

Wie werden Emails versendet?

A

Email benutzt das “Simple Mail Transfer Protocol (SMTP)” Dieses benutzt TCP und port 25. Das Sender bekommt der Client und der Empfänger der Server. Es gibt drei Phasen: Handshaking, Message exchange, Final commit. Die Nachricht muss in 7-bit ASCII codiert sein.

36
Q

Wie unterscheidet der Server zwischen zwei Browsern (Anwendungen) die Gleichzeit vom gleichen Client über HTTP das selbe Dokument abrufen?

A

Anhand des Ports auf dem Client-System.

37
Q

Was sind Vorteile der Client-Server-Architektur, auch im Vergleich zu Peer-to-Peer Systemen?

A
  • Lastverteilung auf mehrere Geräte mgl.
  • Clients können auf die Dienste des Servers aus entfernung zugreifen
  • Client und Server können separat entworden werden
  • Einfaches, wohlbekanntes Programmierparadigma: Funktionsaufruf
  • auf den Server kann gleichzeitig von mehreren Clients zugegriffen werden
  • Einfaceh Ermöglichung der Modifikation des Servers
38
Q

Was sind Nachteile der Client-Server-Architektur, auch im Vergleich zu Peer-to-Peer Systemen?

A
  • Server kann Engpass werden
  • Signifikante Latenz der Kommunikation möglich
  • Ressourcen der clients werden evtl. verschwendet
  • Finden des Servers für einen bestimmten Service nicht trivial
  • Der Service kann deaktiviert sein wenn ein Server ausfällt
39
Q

Welche Protokolle benutzen Protnummern? Welchem Zweck dienen Ports dabei?

A

TCP und UDP. Mit Portnummer können verschieden Anwendung unterschieden werden.