Du befindest dich hier: FSI Informatik » Prüfungsfragen und Altklausuren » Hauptstudiumsprüfungen » Lehrstuhl 4 » Verteilte Systeme (VS) 7.5 ECTS Prüfung 07.2024
Inhaltsverzeichnis
Verteilte Systeme (VS) 7.5 ECTS Prüfung 07.2024
Meta Information
- Vorlesung: Verteilte Systeme (VS) 7.5 ECTS, SS 24
- Datum: 24.07.2024
- Prüfungsform: mündlich
- Prüfer: Tobias Distler / Laura Lawniczak
- Zeit ist gefühlt wie im Flug vergangen
- Mehr Verständnisfragen als wirklich montones Abfragen von Wissen
- Teilweise wurde nach einer sehr spezifischen Antwort gesucht
Prüfung
* Was sind verteilte Systeme und welche Besonderheiten gibt es?
Verteilte Systeme: * Mehrere Rechner * Verbunden mit Netzwerk * Realisieren eine Aufgabe zusammen Besonderheiten: * Komplexere Fehler durch Netzwerkfehler * Heterogenität
* Wie funktioniert ein Fernaufruf?
Stub und Skeleton erklärt. Aufrufprozedur erklärt* Woher weiß der Client wohin er Nachricht schicken muss?
Server-Adresse ist in Stub enthalten* Wann komm die Adresse in den Stub?
Wenn der Server den Stub dynamisch erzeugt* Welche Tranzparenzen soll ein Fernaufruf sicherstellen?
Signalisierung von Fehlern Ortstransparenz* Lassen sich Fernaufrufe vollständig tranzparent darstellen? Warum?
Nein. Da die Funktionssignatur bei Java zum Beispiel Remote exceptions haben muss.* Was sind die unterscheide zwischen dereferenzieren und parameter als remote object?
Argumentieren nach: - Übertragungsmenge - Anteil der Genutzen daten des Objects - Häufigkeit wie oft das object beim Server gebraucht wird
* Können in allen fällen immer beide arten genutzt werden?
Nein. Wie in der einen Übungsaufgabe wenn die Call-back function dereferenziert wird wird der callback auf dem Server aufgerufen und nicht auf dem client. Da geht nur Remote reference.* Gibt es Probleme die beim derefernzieren auftreten können.
Ja bei manchen sprachen ist nicht eindeutig wie groß der übergabe parameter ist (C char* char[])* Kann man in C keine Fernaufrufe realisieren?
Doch mittels IDL. Generieren der Stubs / Skeletons aus IDL-Spezifikation für verschiedene Programmiersprachen* Was bekommt man von IDL
Programm code* Welche Wege gibt es Netzwerkfehler zu tolerieren?
* Maybe (Eigentlich nicht wirklich tolerierbar) * At-Most-Once * At-Least-Once * Last-of-Many
* Erkläre At-Most-Once
Auf das Speichern der Antworten eingehen usw.
* Wie läuft die Garbage-Collection bei At-Most-Once?
* Nach Zeit: Client Versuche * Timout + Puffer * Wenn andere Anfrage von selben Aufrufer
* Gibt es noch eine weitere Art der Garbage-Collection?
Ja wenn der Client ein Acknoledgement der Antwort schickt.* Wie groß muss der Timeout für die Guarbage-Collection bestimmt werden, wenn 5 Anfrage, 10 Sekunden Wartezeit, 1ms Nachrichten Latzen ist
Meine Schätzung war 55s* Wie kann es dazu kommen das bei At-Most-Once die Antwort „Gültige anfrage aber kann nicht beantwortet werden“ kommt?
* Server hat das bekommen der Anfrage Protokolliert aber die Antwort nicht * Server hat keinen Speicher um die Anfrage auszuführen und zu speichern
* Welche Arten haben wir besprochen?
Aktiv und Passive Replikation + kurze Erklärung* Ist Raft aktive oder passive Replikation?
Prinzipiell beides je nachdem ob die Ausführanforderung oder der neue Zustand vom Leader weitergegeben wird.
* Was braucht man, um Auktionsservice aus der Übung aktiv zu replizieren?
Raft + deterministischer Auktionsservice
* Wie machen wir den Service deterministisch?
Anführer bestimmt Zeitstempel und verteilt diesen mit Anfragen. Überprüfungen von Geboten mittels diesem Zeitstempel und nicht mit lokaler Replikat-Zeit Nachricht das die Auktion beendet ist* Was ist der Unterschied zwischen Uniform zuverlässiger Multicast und zuverlässiger Multicast?
Das bei zuverlässigem Multicast es immer noch möglich ist das eine Fehlerhafter Knoten dem Client einen ungültigen Zustand schickt.