Αξιόπιστη μεταφορά δεδομένων πάνω από αναξιόπιστο δίκτυο. Κατανεμημένα Συστήματα 1

Σχετικά έγγραφα
Αξιόπιστη μεταφορά δεδομένων πάνω από αναξιόπιστο δίκτυο. Κατανεμημένα Συστήματα 1

Επικοινωνία με μηνύματα. Κατανεμημένα Συστήματα 1

Επικοινωνία με μηνύματα. Κατανεμημένα Συστήματα 1

Βασικές έννοιες. Κατανεμημένα Συστήματα 1

Ομαδική Επικοινωνία (Group Communication) Κατανεμημένα Συστήματα 1

Βασικές έννοιες. Κατανεμημένα Συστήματα 1

Τρίτη Πρόοδος [110 μονάδες] Απαντήσεις

Improving the performance of TCP in the case of packet reordering. Στρατάκη Μαρία

Σχήμα 1: TCP αποστολέας με παράθυρο αποστολέα = 1

ΤΕΧΝΟΛΟΓΙΑ ΔΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ

Προχωρημένα Θέματα Προγραμματισμού Δικτύων

Εντοπισμός τερματισμού. Κατανεμημένα Συστήματα 1

ΗΥ335 - Δίκτυα Υπολογιστών Χειμερινό εξάμηνο Φροντιστήριο Ασκήσεις στο TCP

Δίκτυα Απευθείας Ζεύξης. Επικοινωνία µεταξύ δύο υπολογιστών οι οποίοι είναι απευθείας συνδεδεµένοι.

Εντοπισμός αδιεξόδου. Κατανεμημένα Συστήματα 1

Τρίτη Σειρά Ασκήσεων ΑΣΚΗΣΗ 1 ΑΣΚΗΣΗ 1 ΛΥΣΗ ΑΣΚΗΣΗ 2

Σχήμα 1: TCP αποστολέας με παράθυρο αποστολέα = 1

Κατανεμημένη συμφωνία (distributed consensus) Κατανεμημένα Συστήματα 1

Κατανεμημένα Συστήματα Ι

Κεφάλαιο 7.3. Πρωτόκολλο TCP

Δίκτυα Επικοινωνιών ΙΙ: Transmission Control Protocol

Επικοινωνία αίτησης-απάντησης. Κατανεμημένα Συστήματα 1

Τι είναι το πρωτόκολλο Διαδικτύου (Internet Protocol, IP);

CSMA/CA στο Κατανεμημένα Ενσωματωμένα Συστήματα Πραγματικού Χρόνου

Λουκάς Ελευθέριος

Αμοιβαίος αποκλεισμός με ασύγχρονη επικοινωνία (ανταλλαγή μηνυμάτων) Ταυτόχρονος Προγραμματισμός 1

4.1.1 Πρωτόκολλο TCP - Δομή πακέτου

7.4 Πρωτόκολλο UDP. 3. Στη περίπτωση που ένα μήνυμα χωράει σε ένα τμήμα, χρησιμοποιούμε το πρωτόκολλο TCP.

Διάλεξη 1: Εισαγωγή στον Κατανεμημένο Υπολογισμό. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι

Εγγυημένη ποιότητα υπηρεσίας

ΚΑΤΑΝΕΜΗΜΕΝΑ ΣΥΣΤΗΜΑΤΑ. Παράδοση Ασκήσεων Κεφάλαιο 2 Ασκήσεις 3,6,8,9,15,22,24,26. Γεωργόπουλος Άλκης Α.Μ.: 39 Κοντογιώργης Αναστάσιος A.M.

Δίκτυα Θεωρία

Μάθημα 4: Πρότυπα, Πρωτόκολλα & Υπηρεσίες

ιαδίκτυα & Ενδοδίκτυα Η/Υ

Άσκηση 2. Αν συμβούν 2 duplicate ACKs αντί για timeout τι γίνεται σε αυτή την περίπτωσή;

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΔΙΚΤΥΩΝ

Πρωτόκολλο ARP. Γεωργιλά Χιονία Καθηγήτρια Πληροφορικής ΠΕ1901

Τεχνολογία Πολυμέσων. Ενότητα # 17: Πρωτόκολλα μετάδοσης Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Εξοικείωση με τις εντολές ipconfig και ping

7.9.2 Άμεση δρομολόγηση 1

Επικοινωνία αίτησης-απάντησης. Κατανεμημένα Συστήματα 1

Περιεχόμενα. Κεφάλαιο 1 Εισαγωγή σε Έννοιες των Δικτύων Υπολογιστών Κεφάλαιο 2 Αξιοπιστία Κεφάλαιο 3 Αλγόριθμοι Πολλαπλής Πρόσβασης...

7.3 Πρωτόκολλο TCP. 1. Το TCP πρωτόκολλο παρέχει υπηρεσίες προσανατολισµένες σε σύνδεση. Σ Λ

Επίπεδο ύνδεσης Δεδομένων (Data Link Layer DLL)

Συνεπείς καθολικές καταστάσεις & επιβεβαίωση ιδιοτήτων. Κατανεμημένα Συστήματα 1

Κεφάλαιο 3 Πολυπλεξία

Συνεχής ροή πολυµέσων

Εισαγωγή στους Η/Υ. Ενότητα 8: Μετάδοση Δεδομένων. Δημήτρης Σαραβάνος, Καθηγητής Πολυτεχνική Σχολή Τμήμα Μηχανολόγων & Αεροναυπηγών Μηχανικών

7.9 ροµολόγηση. Ερωτήσεις

Πρωτόκολλο TCP Διάλεξη ΙΙI

Κατανεμημένα Συστήματα με Java. Ενότητα # 4: Αμοιβαίος αποκλεισμός Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

ΜΗΧΑΝΙΣΜΟΙ ΠΟΙΟΤΗΤΑΣ ΥΠΗΡΕΣΙΑΣ ΣΕ ΔΙΚΤΥΑ

Ιόνιο Πανεπιστήµιο Τµήµα Πληροφορικής Συστήµατα Επικοινωνίας. Μοντέλο TCP/IP. Ενότητα E. Πόσοι εµπλέκονται σε ένα Σύστηµα Επικοινωνίας

Τη φυσική (MAC) διεύθυνση που δίνει ο κατασκευαστής του δικτυακού υλικού στις συσκευές του (π.χ. στις κάρτες δικτύου). Η περιοχή διευθύνσεων που

Βασικά Θέματα Επικοινωνίας. Κατανεμημένα Συστήματα 1

Αρχές Δικτύων Επικοινωνιών. Επικοινωνίες Δεδομένων Μάθημα 4 ο

ΚΕΦΑΛΑΙΟ 1.7. Πρωτόκολλα και Αρχιτεκτονική Δικτύου

ΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ. Έλεγχος και Αποφυγή Συμφόρησης στο TCP. Δίκτυα Υπολογιστών

Πρωτόκολλο TCP Διάλεξη Ι

Κεφάλαιο 1 Ε Π Α Ν Α Λ Η Ψ Η. Αρχές Δικτύων Επικοινωνιών

Παράλληλη Επεξεργασία Κεφάλαιο 7 ο Αρχιτεκτονική Συστημάτων Κατανεμημένης Μνήμης

Προχωρημένα Θέματα Προγραμματισμού Δικτύων

ΤΕΧΝΟΛΟΓΙΑ ΔΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ

7.5 Πρωτόκολλο IP. Τεχνολογία ικτύων Επικοινωνιών ΙΙ

Λύση: Λύση: Λύση: Λύση:

Υπόστρωμα Ελέγχου Πρόσβασης Μέσου. Medium Access Control Sub-layer.

ΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΩΝ Ασκήσεις για το φυσικό στρώμα. λ από τον ρυθμό μετάδοσής της. Υποθέτοντας ότι ο κόμβος A

3.2 Το αυτοδύναμο πακέτο IP (datagram) Δομή πακέτου

Ενδεικτικές Λύσεις 1ου Σετ Ασκήσεων

Πρωτόκολλα Διαδικτύου

Γενικές Αρχές. Τεχνολογία ικτύων Επικοινωνιών ΙΙ

Διάρθρωση. Δίκτυα Υπολογιστών Επικοινωνία από άκρο σε άκρο. Επικοινωνία από άκρο σε άκρο. Διάρθρωση

Δίκτυα Υπολογιστών I Εργαστήρια

Αµοιβαίοςαποκλεισµός. Κατανεµηµένα Συστήµατα 03-1

Συνεπής παρατήρηση εκτέλεσης & συνεπείς καθολικές καταστάσεις. Κατανεμημένα Συστήματα 1

Δίκτυα Επικοινωνίας και Υπολογιστών

ΚΕΦΑΛΑΙΟ 11: Διαδικασία Μετάδοσης Δεδομένων Εισαγωγή

ΔΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΩΝ Ασκήσεις για το φυσικό στρώμα

ΣΥΣΤΗΜΑΤΑ ΑΝΑΜΟΝΗΣ Queuing Systems

Άσκηση 1. (σημειώστε πως 1KB = 2 10 bytes, 1Mbps = 10 6 bits/sec).

Υπολογιστές και ίκτυα Η/Υ.

Μάθημα 6: Αρχιτεκτονική TCP/IP

Μετακινούμενος Κώδικας (Mobile Code) Κατανεμημένα Συστήματα 1

Πρωτόκολλα Επικοινωνίας Πρωτόκολλο IP

Κατανεμημένα συστήματα και Επικοινωνία Πραγματικού Χρόνου

Πρωτόκολλα επανεκποµπής

Ορθότητα λειτουργίας τμημάτων λογισμικού & δομών δεδομένων υπό ταυτόχρονη εκτέλεση

Τεχνολογία Πολυμέσων. Ενότητα # 21: Εγγυημένη ποιότητα υπηρεσίας Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

SNMP ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ

HY-335a Project: microtcp *, μία lightweight TCP βιβλιοθήκη

Συνοπτική Μεθοδολογία Ασκήσεων Κεφαλαίου 7. Ασκήσεις στο IP Fragmentation

Υλοποίηση τεχνικών για την αποφυγή συμφόρησης σε τοπικά ασύρματα δίκτυα αισθητήρων

ΙΚΤΥΑ ΥΠΟΛΟΓΙΣΤΩΝ. Έλεγχος και Αποφυγή Συμφόρησης στο TCP. Δίκτυα Υπολογιστών

Τεχνολογία Πολυμέσων. Ενότητα # 16: Πολυεκπομπή Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

ΚΕΦΑΛΑΙΟ 4. Τεχνική Ανίχνευσης του. Πτυχιακή Εργασία Σελίδα 95

Μηχανισμοί Λογικής σύνδεσης. Διάρθρωση. Δομή πλαισίου. Καθορισμός ορίων πλαισίου

Πρωτόκολλο ICMP (Internet Control Message Protocol)

Πρωτόκολλα Διαδικτύου

HTTP API v1.6 SMSBOX.GR HTTP API v

LAYER 3 ( NETWORΚ LEVEL ) - ΣΤΡΩΜΑ 3 ( ΕΠΙΠΕ Ο ΙΚΤΥΟΥ)

Transcript:

Αξιόπιστη μεταφορά δεδομένων πάνω από αναξιόπιστο δίκτυο Κατανεμημένα Συστήματα lalis@inf.uth.gr

Μοντέλο δικτύου Το δίκτυο δέχεται και επιστρέφει πακέτα κάθε πακέτο μεταφέρει έναν περιορισμένο αριθμό bytes Το δίκτυο μπορεί να είναι (απεριόριστα;) αργό Το δίκτυο μπορεί να χάσει πακέτα Το δίκτυο μπορεί να αλλάξει την σειρά των πακέτων Το δίκτυο μπορεί να δημιουργήσει διπλότυπα πακέτα Σημείωση: το δίκτυο μπορεί να είναι οποιαδήποτε υπηρεσία μεταφοράς μηνυμάτων, σε ψηλό επίπεδο Κατανεμημένα Συστήματα lalis@inf.uth.gr

Μετάδοση δεδομένων FIFO Ο Α στέλνει στον Β δεδομένα που μεταφέρονται ως μια ακολουθία από μικρότερα πακέτα snd: αποστολή επόμενου πακέτου rcv: παραλαβή του επόμενου πακέτου Ζητούμενο: ένα πρωτόκολλο το οποίο να εγγυάται πως όλα τα πακέτα που στέλνει ο Α τελικά θα παραδοθούν στον Β, και με τη σωστή σειρά Κατανεμημένα Συστήματα lalis@inf.uth.gr

Α Β app-snd app-rcv protocol P net-snd network 0000 network net-deliver Κατανεμημένα Συστήματα lalis@inf.uth.gr

# Σειριακή παράδοση πακέτων επισυνάπτει αύξοντα σειριακό αριθμό σε κάθε (καινούργιο) πακέτο που στέλνει παραδίδει τα πακέτα που λαμβάνει με βάση τους σειριακούς αριθμούς τους Καλή εκμετάλλευση της χωρητικότητας του δικτύου Όμως, αν χαθεί ένα πακέτο, αυτό δεν ξαναστέλνεται, οπότε και μπλοκάρεται η παράδοση πακέτων Κατανεμημένα Συστήματα 5 lalis@inf.uth.gr

init: n=0; app-snd(<data>): n++; net-snd(<dat,n,data>); init: n=0; buf[]={}; app-rcv(<data>): while (!fnd(buf,n+)) {} data=rmv(buf,n+); n++; net-deliver(<dat,k,data>): if (full(buf)) return; if ((k>n) &&!fnd(buf,k)) { add(buf,k,data); } Κατανεμημένα Συστήματα 6 lalis@inf.uth.gr

A p 5 p p p p5 5 5 5 Κατανεμημένα Συστήματα 7 lalis@inf.uth.gr

A p p p p 5 p5 5 5 5 5 Κατανεμημένα Συστήματα 8 lalis@inf.uth.gr

A p p p p Κατανεμημένα Συστήματα 9 lalis@inf.uth.gr

A p p p p 5 p5 Κατανεμημένα Συστήματα 0 lalis@inf.uth.gr

A p p p p 5 p5 6 p6 5 6 5 Κατανεμημένα Συστήματα lalis@inf.uth.gr

# Αναμονή για ρητή επιβεβαίωση στέλνει επιβεβαίωση για κάθε πακέτο που τοποθετεί ή έχει ήδη τοποθετήσει στην αποθήκη του περιμένει να λάβει επιβεβαίωση, προτού συνεχίσει με την αποστολή του επόμενου πακέτου αν δεν λάβει επιβεβαίωση μέσα σε χρονικό διάστημα Τ, ξαναστέλνει το προηγούμενο (ανεπιβεβαίωτο) πακέτο Κακή εκμετάλλευση της χωρητικότητας του δικτύου Όσο παραμένει γεμάτη η αποθήκη του παραλήπτη, η αποστολή του επόμενου πακέτου γίνεται άσκοπα (το πακέτο απλά θα πεταχτεί στην άλλη πλευρά) Κατανεμημένα Συστήματα lalis@inf.uth.gr

init: n=0; ack=0; buf[]={}; app-snd(<data>): while (full(buf)) {} n++; add(buf,n,data); if (n==ack+) do-snd; net-deliver(<ack,k>): if (k<ack+) return; ack++; // ack=k; rmv(buf,ack); if (ack<n) do-snd; init: n=0; buf[]={}; app-recv(<data>): while (!fnd(buf,n+)) {} data=rmv(buf,n+); n++; net-deliver(<dat,k,data>): if (full(buf)) return; net-snd(ack,k); if ((k>n) &&!fnd(buf,k)) { add(buf,k,data); } do-snd: data=get(buf,ack+); net-snd(dat,ack+,data); settimer(t,do-snd); Κατανεμημένα Συστήματα lalis@inf.uth.gr

A p p a p a a Κατανεμημένα Συστήματα lalis@inf.uth.gr

A p p a Τ p a p a Κατανεμημένα Συστήματα 5 lalis@inf.uth.gr

A p p a Τ a p a p a Κατανεμημένα Συστήματα 6 lalis@inf.uth.gr

A p p a a p a p t p Κατανεμημένα Συστήματα 7 lalis@inf.uth.gr

Παραλλαγή: Alternating it Protocol Έστω ότι υπάρχει γνωστό άνω όριο μετάδοσης Τ ενός πακέτου πάνω από το δίκτυο επικοινωνίας Έστω ότι το δίκτυο δεν αναπαράγει πακέτα Το πρωτόκολλο # δεν χρειάζεται σειριακούς αριθμούς Αρκεί ένα μοναδικό bit για να γίνει ο διαχωρισμός ανάμεσα στο «επόμενο» και το «προηγούμενο» πακέτο Δεν τίθεται θέμα «υπερχείλισης» σειριακών αριθμών Κατανεμημένα Συστήματα 8 lalis@inf.uth.gr

# Χωρίς αναμονή για επιβεβαίωση στέλνει το επόμενο πακέτο χωρίς να περιμένει επιβεβαίωση για το προηγούμενο τα ανεπιβεβαίωτα πακέτα ξαναστέλνονται, μετά από πάροδο χρονικού διαστήματος Τ Εκμετάλλευση της χωρητικότητας του δικτύου Οι επιβεβαιώσεις είναι πλέον «ανταγωνιστικές» με τα πακέτα δεδομένων, αν το δίκτυο είναι half-duplex Αν γεμίσει η αποθήκη του παραλήπτη, γίνονται ακόμα περισσότερες άσκοπες αποστολές πακέτων Κατανεμημένα Συστήματα 9 lalis@inf.uth.gr

A p p a p a p a a Κατανεμημένα Συστήματα 0 lalis@inf.uth.gr

A p p a p a p p a a Κατανεμημένα Συστήματα lalis@inf.uth.gr

A p p a p a p a p a a Κατανεμημένα Συστήματα lalis@inf.uth.gr

A p p p a+ p a+ Κατανεμημένα Συστήματα lalis@inf.uth.gr

# Αρνητικές επιβεβαιώσεις στέλνει αρνητική επιβεβαίωση όταν εντοπίσει κενό στην ακολουθία των πακέτων που λαμβάνει υποθέτοντας ότι τα ενδιάμεσα πακέτα χάθηκαν ξαναστέλνει ένα πακέτο μόνο αν ζητηθεί ρητά μέσω αρνητικής επιβεβαίωσης Ακόμα καλύτερη εκμετάλλευση του δικτύου Όμως, αν δεν χαθεί κανένα πακέτο, η αποθήκη του αποστολέα θα γεμίσει χρειάζεται κατάλληλη επέκταση του πρωτοκόλλου Εξακολουθεί να υφίσταται το πρόβλημα της υπερχείλισης της αποθήκης του παραλήπτη Κατανεμημένα Συστήματα lalis@inf.uth.gr

A p p p p Κατανεμημένα Συστήματα 5 lalis@inf.uth.gr

A p p p p p n Κατανεμημένα Συστήματα 6 lalis@inf.uth.gr

A p p p p p n Κατανεμημένα Συστήματα 7 lalis@inf.uth.gr

Έλεγχος ροής Α πιο αργός από τον Β: δεν είναι πρόβλημα Β πιο αργός από τον Α: υπερχείλιση αποθήκης, άσκοπη αποστολή πακέτων (σπατάλη πόρων) Μηχανισμός ελέγχου ροής (flow control): καλή εκμετάλλευση χωρητικότητας δικτύου, αλλά χωρίς να (ξανα)στέλνονται πακέτα που με μεγάλη πιθανότητα θα αναγκαστεί να πετάξει ο παραλήπτης λόγω έλλειψης αποθηκευτικού χώρου Παρόμοιο πρόβλημα υφίσταται και για τους ενδιάμεσους δρομολογητές (αν υπάρχουν) Κατανεμημένα Συστήματα 8 lalis@inf.uth.gr

Sliding window παράθυρο 0 5 6 7 8 9 0 πακέτα που έχουν σταλεί και έχουν επιβεβαιωθεί πακέτα που έχουν σταλεί αλλά δεν έχουν επιβεβαιωθεί ακόμα πακέτα που δεν έχουν σταλεί ακόμα λήψη επιβεβαίωσης για το πακέτο αποστολή του πακέτου 8 0 5 6 7 8 9 0 Κατανεμημένα Συστήματα 9 lalis@inf.uth.gr

Επιλογή window Το μέγεθος του παραθύρου μπορεί να οριστεί μετά από κατάλληλη «συνεννόηση» των δύο πλευρών πολύ μικρό μέγεθος => κακή εκμετάλλευση του δικτύου πολύ μεγάλο μέγεθος => πολλές άσκοπες επανεκπομπές Η στατική επιλογή είναι μη βέλτιστη η κατάσταση του δικτύου μεταβάλλεται δυναμικά Μπορεί να γίνεται δυναμική προσαρμογή με βάση την τρέχουσα κατάσταση του δικτύου Πως «βλέπουμε» την κατάσταση του δικτύου; παρασκηνιακές μετρήσεις για την απώλεια πακέτων ως συνάρτηση του ρυθμού αποστολής, με αντίστοιχη αυξομείωση του παραθύρου Κατανεμημένα Συστήματα 0 lalis@inf.uth.gr

Επιλογή timeouts Τα timeouts για την αποστολή ανεπιβεβαίωτων πακέτων είναι ιδιαίτερα κρίσιμη παράμετρος απόδοσης πολύ μικρά timeouts => άσκοπη αποστολή πακέτων πολύ μεγάλα timeouts => άσκοπη καθυστέρηση Η στατική επιλογή είναι μη βέλτιστη η κατάσταση του δικτύου μεταβάλλεται δυναμικά Μπορεί να γίνεται δυναμική προσαρμογή με βάση την τρέχουσα κατάσταση του δικτύου Πως «βλέπουμε» την κατάσταση του δικτύου; παρασκηνιακές μετρήσεις για το round-trip-time, και αντίστοιχη αυξομείωση των timeouts Κατανεμημένα Συστήματα lalis@inf.uth.gr

A άσκοπες αποστολές πακέτων δεδομένων και επιβεβαιώσεων k k pk Τ k k k Τ Τ pk pk pk ak ak k k k ak ak Κατανεμημένα Συστήματα lalis@inf.uth.gr

άσκοπη αναμονή A k k pk Τ pk ak k k k Κατανεμημένα Συστήματα lalis@inf.uth.gr

Άλλες βελτιστοποιήσεις Μαζικές επιβεβαιώσεις (mass-acks) ο παραλήπτης στέλνει μια μοναδική επιβεβαίωση για περισσότερα πακέτα που έχει λάβει Προσάρτηση επιβεβαιώσεων (ack piggy-backing) οι επιβεβαιώσεις προσαρτώνται στα πακέτα δεδομένων που (τυχόν) στέλνονται προς την άλλη κατεύθυνση Και στις δύο περιπτώσεις, μειώνεται ο αριθμός των μεμονωμένων πακέτων που στέλνονται στο δίκτυο από την πλευρά του προορισμού προς την πηγή Κατανεμημένα Συστήματα lalis@inf.uth.gr

Αργοπορημένα πακέτα Σε ασύγχρονο σύστημα, δεν υπάρχει άνω χρονικό όριο για την καθυστέρηση μετάδοση πακέτων Αργοπορημένα πακέτα δεν πρέπει να ληφθούν υπόψη στο πλαίσιο μεταγενέστερων μεταδόσεων Απαγορεύεται η «ανακύκλωση» αναγνωριστικών και σειριακών αριθμών ακόμα και με επανεκκίνηση στην πράξη Σημείωση: διαφορετικά αναγνωριστικά χρειάζονται και για την πολυπλεξία ξεχωριστών μεταδόσεων Κατανεμημένα Συστήματα 5 lalis@inf.uth.gr

A k pk Τ pk ak k A k pk ak k ak Κατανεμημένα Συστήματα 6 lalis@inf.uth.gr

Το πρόβλημα της τελευταίας επιβεβαίωσης Το τελευταίο πακέτο πρέπει και αυτό να επιβεβαιωθεί Αυτή η τελευταία επιβεβαίωση μπορεί να χαθεί απαιτείται επιβεβαίωση της επιβεβαίωσης και επιβεβαίωση της επιβεβαίωσης της επιβεβαίωσης Πάντα, μια από τις δύο πλευρές (αυτή που έστειλε το τελευταίο μήνυμα) θα έχει αμφιβολίες για το κατά πόσο η άλλη πλευρά όντως έλαβε το μήνυμα της Πρόβλημα: η πλευρά που έχει την αμφιβολία πρέπει να είναι σε θέση να δεχτεί/αναγνωρίσει και να επιβεβαιώσει το πακέτο που ίσως στείλει (κάποια στιγμή) η άλλη πλευρά Κατανεμημένα Συστήματα 7 lalis@inf.uth.gr

A Ν Ν pν ΟΚ έφτασε το pν; Ν aan aν Ν έφτασε το aν; Ν έφτασε το aan; aaaan aaan έφτασε το aaan; έφτασε το aaaan; aaaaan έφτασε το aaaaan; Κατανεμημένα Συστήματα 8 lalis@inf.uth.gr

A Ν Ν pν ΟΚ έφτασε το pν; Ν aν Ν Ν να θυμάμαι ότι μπορεί κάποτε να λάβω πακέτο pn που πρέπει να επιβεβαιώσω Κατανεμημένα Συστήματα 9 lalis@inf.uth.gr

A Ν Ν pν έφτασε το pν; Ν pν aν Ν Ν έφτασε το pν; ΟΚ έφτασε το pν; Ν Ν pν aν να θυμάμαι ότι μπορεί κάποτε να λάβω πακέτο pn που πρέπει να επιβεβαιώσω Κατανεμημένα Συστήματα 0 lalis@inf.uth.gr

Το πρόβλημα της συντονισμένης επίθεσης για στρατηγούς/στρατούς Attack? Attack? Δύο στρατηγοί έχουν στήσει ενέδρα, αλλά πρέπει να συμφωνήσουν για την ώρα της επίθεσης Επικοινωνούν μέσω αγγελιοφόρων, που μπορεί να «χαθούν» (να πιαστούν αιχμάλωτοι από τον εχθρό) Πως μπορεί να επιτευχθεί συμφωνία; ΑΔΥΝΑΤΟ! Κατανεμημένα Συστήματα lalis@inf.uth.gr

Γιατί; Α: στέλνει μήνυμα «επίθεση στις 0:00» στον Β Α: δεν ξέρει αν ο Β έλαβε το μήνυμα, παρά μόνο αν λάβει ρητή επιβεβαίωση από τον Β Β: στέλνει επιβεβαίωση «ΟΚ για τις 0:00» στον Α Β: δεν ξέρει αν ο Α έλαβε το μήνυμα, παρά μόνο αν λάβει επιβεβαίωση από τον Α Μπορεί να αποδειχθεί, και τυπικά, πως δεν υπάρχει πρωτόκολλο το οποίο να λύνει αυτό το πρόβλημα Γενίκευση του προβλήματος της συμφωνίας: θα συζητηθεί προς το τέλος του μαθήματος Κατανεμημένα Συστήματα lalis@inf.uth.gr