Anwendungsschicht Flashcards
Erkläre die Client-Server-Architektur
Server:
Wann eingeschaltet?
IP-Adresse …
Server:
- Ist immer eingeschaltet
- Besitzt eine feste IP-Adresse
- Benutzt meistens Serverfarmen
Clients:
- Kommunizieren mit Servern
- Gelegentlich angeschlossen
- Können dynamische IP-Adressen haben
- Kommunizieren untereinander nicht direkt miteinander
Erkläre den Sinn einer Serverfarm
Eine Serverfarm ist eine Gruppe von gleichartigen, vernetzten Server-Hosts, die zu einem logischen System verbunden sind. Sie optimiert die internen Prozesse durch Verteilung der Auslastung zwischen den einzelnen Servern und beschleunigt die Computerprozesse durch Ausnutzung der Rechenleistung mehrerer Server
Erkläre die P2P-Architektur?
Was bedeutet dies?
Kommunikation
Peers
Peer 2 Peer Verbindung
-Endsysteme kommunizieren direkt auf gleicher Höhe miteinander:
Rechner zu Rechner Verbindung
–> Keine Server
- Peers sind nur gelegentlich verbunden und wechseln ihre IP
Der Peer, der die Anfrage schickt ist dann der Client und der andere Peer der Host. Dieses Verhältnis kann sich jedoch ändern
Was ist der Unterschied zwischen Peer-to-Peer und Client Server?
Im Unterschied zum Peer-to-Peer-Modell (dt.: “Gleiche zu Gleichen”), bei dem ein beteiligtes Programm innerhalb des Netzwerkes gleichzeitig Client und Server darstellt, sind beim Client-Server-Modell die Komponenten Client und Server getrennt und auf verschiedene Programme verteilt.
Was ist der Client-Prozess?
Was ist der Server-Prozess?
Client-Prozess: Prozess, der
die Kommunikation beginnt
Server-Prozess: Prozess, der
darauf wartet, kontaktiert
zu werden
Beschreibe Sockets und seine Funktionen
Der Socket sitzt vor jedem Server oder Client.
Prozesse senden/empfangen Nachrichten über einen Socket.
Ein Socket lässt sich mit einer Tür vergleichen.
Erkläre die Funktion von API
Eine API (Application Programming Interface) ist ein Satz von Befehlen, Funktionen, Protokollen und Objekten, die Programmierer verwenden können, um eine Software zu erstellen oder mit einem externen System zu interagieren. Bspw. kann man mithilfe von API das Protokoll festlegen, mit dem die Pakete verschickt werden. (UDP, TCP)
Reicht die IP-Adresse, um einen
Prozess auf diesem Host
zu identifizieren?
Nein, denn Prozesse werden durch
eine IP-Adresse UND eine
Portnummer identifiziert
Was können Objekte auf Websites sein?
HTML-Dateien, JPEG-Bilder,
Java-Applets, Audiodateien, …
Auf welcher Architektur basiert HTTP?
Auf dem Client/Server-Modell
Client: Browser, der Objekte anfragt, erhält und anzeigt
Server: Webserver verschickt Objekte auf Anfrage
Welchen Port benutzt HTTP?
Der Socket erwartet immer den Port 80
Welches Protokoll benutzt HTTP und warum?
TCP, weil man Voraussetzt, dass eine Website die gesamte HTML-Datei anzeigt und nicht einzelne Objekte “verschwinden”.
Manchmal kann es vorkommen, dass einige Objekte fehlen, das liegt wiederum an der Überflusskontrolle von TCP. Dort sind die Objekte nicht verschwunden, sondern werden noch übermittelt
Warum ist HTTP “zustandslos”?
Der Server merkt sich keine
Informationen über
frühere Anfragen von
Clients.
Was ist der Unterschied zwischen
Nichtpersistentem HTTP und
Persistentem HTTP?
Was ist pipelining?
Nichtpersistentes HTTP
Maximal ein Objekt
wird über eine TCP-Verbindung übertragen
HTTP/1.0 verwendet
Nichtpersistentes
HTTP
Persistentes HTTP
Mehrere Objekte
können über eine TCP-Verbindung übertragen
werden
HTTP/1.1 verwendet
standardmäßig
persistentes HTTP
Pipelining ist ab HTTP/1.1 Standard und der Client schickt Requests, sobald er die Referenz zu einem Objekt findet, wodurch idealerweise nur ein wenig mehr als eine RTT benötigt wird für das Laden aller Objekte. Ohne pipelining kommt für jedes Objekt eine eigene Request und die Zeit um ein Objekt zu laden ist mindestens eine RTT.
Was ist ein RTT?
Die Paketumlaufzeit bzw. Round Trip Time, gibt die Zeit an, die ein Datenpaket (Datagramm) in einem Rechnernetz benötigt
Die Zeit zwischen absenden der Request und Ankunft des Response