Επαλήθευση Πρωτοκόλλων

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

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

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

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

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

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

Βασικές Δομές μοντέλων Petri Nets. C.A. Petri

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΣΧΕΔΙΑΣΗΣ ΠΡΟΪΟΝΤΩΝ ΚΑΙ ΣΥΣΤΗΜΑΤΩΝ» ΜΕΤΑΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΕΙΔΙΚΕΥΣΗΣ: «ΣΧΕΔΙΑΣΗ ΔΙΑΔΡΑΣΤΙΚΩΝ ΚΑΙ ΒΙΟΜΗΧΑΝΙΚΩΝ

Δίκτυα Απευθείας Ζεύξης

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

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

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

Δροµολόγηση (Routing)

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

ΜΟΝΤΕΛΟΠΟΙΗΣΗ ΚΑΙ ΕΛΕΓΧΟΣ ΕΦΟΔΙΑΣΤΙΚΩΝ ΑΛΥΣΙΔΩΝ ΜΕ ΤΗ ΧΡΗΣΗ ΔΙΚΤΥΩΝ PETRI

Ερώτηση 1 η μεταγωγής κυκλώματος? : Ποια είναι τα κύρια χαρακτηριστικά της. Ερώτηση 2 η : Ποια είναι τα κύρια χαρακτηριστικά της μεταγωγής μηνύματος?

Δρομολόγηση (Routing)

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

Ανάλυση Απαιτήσεων Χρήστη και Καθορισμός Προδιαγραφών

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

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

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

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

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

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

Ενότητα 1η. Μοντέέλο επικοινωνιώών δεδοµμέένων - συνέέχεια

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

Πακέτα, Πλαίσια και Ανίχνευση Σφαλμάτων

ΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΩΝ Εργαστηριακή Άσκηση 4

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

Δίκτυα Δακτυλίου. Token Ring - Polling

Αδιέξοδα Ανάθεση Πόρων (Deadlocks Resource Allocation)

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

Διάλεξη 12: Διάχυση Μηνυμάτων. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι

ΑΥΤΟΜΑΤΑ Ι ΤΥΠΙΚΕΣ ΜΕΘΟΔΟΙ ΑΝΑΛΥΣΗΣ ΣΥΣΤΗΜΑΤΩΝ ΤΜ. ΠΛΗΡΟΦΟΡΙΚΗΣ Α.Π.Θ. ΔΙΔΑΣΚΩΝ: Π. ΚΑΤΣΑΡΟΣ. 29 Ιουνίου 2007 ΔΙΑΦΑΝΕΙΑ 1

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ

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

Π Α Ν Ε Π Ι Σ Τ Η Μ Ι Ο Π ΑΤ Ρ Ω Ν

ΙΑΛΕΞΗ 6 Η. ίκτυα Υπολογιστών & Επικοινωνία. ιδάσκουσα: : ρ. Παντάνο Ρόκου Φράνκα. ίκτυα Υπολογιστών και Επικοινωνία. ιάλεξη 6: H Πολύπλεξη

Διάρθρωση. Δίκτυα Υπολογιστών Αξιόπιστη επικοινωνία μέσα από ένα σύνδεσμο. Αναγκαιότητα και ορισμός λογικής σύνδεσης. Διάρθρωση

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

«Συγχρονισμός ρολογιών υπό την παρουσία σφαλμάτων»

Τεχνολογία Δικτύων Επικοινωνιών (Ενότητα Πρωτόκολλα και Αρχιτεκτονική Δικτύου)

Δίκτυα Υπολογιστών. Αξιόπιστη επικοινωνία μέσα από ένα σύνδεσμο. Ευάγγελος Παπαπέτρου. Τμ. Μηχ. Η/Υ & Πληροφορικής, Παν. Ιωαννίνων

«Σχεδιασμός Ολοκληρωμένων Κυκλωμάτων» Χειμερινό εξάμηνο Μηχανές Πεπερασμένων Καταστάσεων

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

Δίκτυα Επικοινωνίας Υπολογιστών Ενότητα 11: Στρώμα μεταφοράς

ΠΡΩΤΟΚΟΛΛΟ TCP/IP ΜΑΚΡΟΠΟΥΛΟΣ ΝΙΚΟΛΑΟΣ

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

ΗY335: Δίκτυα Υπολογιστών Χειμερινό Εξάμηνο Τμήμα Επιστήμης Υπολογιστών Πανεπιστήμιο Κρήτης Διδάσκουσα: Μαρία Παπαδοπούλη 16 Νοεμβρίου 2013

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

Φροντιστήριο στο Mac Layer Καραγκούνης Δημήτρης

Διάλεξη 10: Αλγόριθμοι Αμοιβαίου Αποκλεισμού σε περιβάλλον ανταλλαγής μηνυμάτων. ΕΠΛ 432: Κατανεμημένοι Αλγόριθμοι

Επίπεδο ζεύξης δεδοµένων

Τοπικά Δίκτυα. Ethernet Δίκτυα Δακτυλίου, (Token Ring) Άλλα Δίκτυα Σύνδεση Τοπικών Δικτύων.

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

Βασικές λειτουργίες Ανίχνευση πλαισίων Τι κάνει το επίπεδο ζεύξης Χρησιμοποιεί τις υπηρεσίες του φυσικού επιπέδου, ήτοι την (ανασφαλή) μεταφορά δεδομέ

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ

ΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΩΝ Εργαστηριακή Άσκηση 5

Μέθοδοι Ελέγχου Σφαλμάτων

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

Περίληψη. Ethernet Δίκτυα Δακτυλίου, (Token Ring) Άλλα Δίκτυα Σύνδεση Τοπικών Δικτύων.

Υπολογιστικά μοντέλα (MoC) για SoC

ΔΙΚΤΥΑ ΔΗΜΟΣΙΑΣ ΧΡΗΣΗΣ ΚΑΙ ΔΙΑΣΥΝΔΕΣΗ ΔΙΚΤΥΩΝ Ενότητα #12: Σχεδίαση πρωτοκόλλων

Εργαστήριο Οργάνωσης Η/Υ. Δαδαλιάρης Αντώνιος

ΚΕΦΑΛΑΙΟ 3: Τοπολογίες Δικτύων Εισαγωγή

Πανεπιστήμιο Πειραιώς Τμήμα Πληροφορικής Πρόγραμμα Μεταπτυχιακών Σπουδών «Προηγμένα Συστήματα Πληροφορικής»

Μάθημα 5: To Μοντέλο Αναφοράς O.S.I.

Μεταγωγή Κυκλωμάτων και Πακέτων και Δίκτυα Απευθείας Ζεύξης

Αδιέξοδα Ανάθεση Πόρων (Deadlocks Resource Allocation)

Network Address Translation (NAT)

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

09 Η γλώσσα UML II. Τεχνολογία Λογισμικού. Σχολή Hλεκτρολόγων Mηχανικών & Mηχανικών Yπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο. Χειμερινό εξάμηνο

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

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

ΚΡΥΠΤΟΓΡΑΦΙΑ ΚΑΙ ΑΣΦΑΛΕΙΑ ΥΠΟΛΟΓΙΣΤΩΝ Δ Εξάμηνο

2 η Σειρά Ασκήσεων Data Link Layer

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

3/40. (acknowledged connectionless), (acknowledged connection oriented) 4/40

How do loss and delay occur?

Ειδικά Θέματα Προγραμματισμού

Βάσεις Δεδομένων ΙΙ Ενότητα 2

ΗΥ335: 7ο Φροντηστήριο. Fontas Fafoutis

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

Επίπεδο Μεταφοράς. (ανεβαίνουμε προς τα πάνω) Εργαστήριο Δικτύων Υπολογιστών Τμήμα Μηχανικών Η/Υ και Πληροφορικής

ΜΟΝΤΕΛΑ ΙΑΚΡΙΤΩΝΣΥΣΤΗΜΑΤΩΝ

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

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

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

Behavioral & Mixed VHDL Architectures Finite State Machines in VHDL

ΔΙΑΧΥΤΑ ΚΑΙ ΕΝΣΩΜΑΤΩΜΕΝΑ ΣΥΣΤΗΜΑΤΑ

Δίκτυα Υπολογιστών Το επίπεδο μεταφοράς (transport layer)

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

ΕΠΙΚΟΙΝΩΝΙΕΣ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΕΣ INTERNET

ΔΙΚΤΥΑ ΕΠΙΚΟΙΝΩΝΙΩΝ. Πρωτόκολλα πολλαπλής πρόσβασης. Δίκτυα Επικοινωνιών

Κινητές Επικοινωνίες & Τηλεπικοινωνιακά Δίκτυα

ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Ι. Κεφάλαιο 6ο: Αδιέξοδα

Παιχνίδι TCP-IP (περιγραφή πρωτοκόλλων)

Transcript:

Επαλήθευση Πρωτοκόλλων Περίληψη Προδιαγραφή και επαλήθευση Πρωτοκόλλων Μηχανές Πεπερασμένων Καταστάσεων (Finite State Machines) Petri-Nets 1

Μηχανές Πεπερασμένων Καταστάσεων (Finite State Machines) Περιγραφή πρωτοκόλλου χρησιμοποιώντας γράφους (graphs) όπου οι κόμβοι (nodes) αντιπροσωπεύσου την κατάσταση (state) του πρωτοκόλλου και τα προσανατολισμένα τόξα (directed arcs) τις μεταβάσεις (transitions) μεταξύ των καταστάσεων. Χρησιμοποιούνται για την ανάλυση και επαλήθευση πρωτοκόλλων. Ανάλυση προσεγγισιμότητας (reachability analysis) Προβλήματα μη πλήρους προδιαγραφών (το πρωτόκολλο δεν προσδιορίζει πλήρως τι θα γίνει αν κάποιο πλαίσιο παραληφθεί σε κάποια κατάσταση). Ανίχνευση αδιεξόδων (deadlocks) Τυπική Περιγραφή Μηχανών Πεπερασμένων Καταστάσεων Τετράδα (S,M,I,T), όπου S: Το σύνολο των καταστάσεων όπου μπορεί να βρίσκεται κάποια διαδικασία (state space) M: Το σύνολο των πλαισίων που ανταλλάσσονται μεταξύ των στρωμάτων (message set) I: Το σύνολο των αρχικών καταστάσεων διαδικασιών (initial states) T: Το σύνολο το μεταβάσεων μεταξύ των καταστάσεων (transition set) 2

Παράδειγμα: Πρωτόκολλο Παύσης και Αναμονής 0 Παραλήπτης Παράδειγμα: Πρωτόκολλο Παύσης και Αναμονής 0 Αποστολέας 3

Αδιέξοδο Το προηγούμενο πρωτόκολλο παρουσιάζει ένα σοβαρό πρόβλημα. Ο Αποστολέας στέλνει το. Ο δέκτης παραλαμβάνει και επαληθεύει το και αναμένει το. Η επαλήθευση χάνεται. Αφού το χρονόμετρο του αποστολέα λήξει, ξαναστέλνει το. Ο δέκτης, δεν αναμένει το και το αγνοεί! Αφού το χρονόμετρο του αποστολέα λήξει, ξαναστέλνει το. Ο δέκτης, δεν αναμένει το και το αγνοεί! Πρωτόκολλο Παύσης και Αναμονής 1 Αποστολέας Send Ack 1 Received transmitted Wait Ack 1 Wait Ack 0 transmitted Send Ack 0 Received 4

Πρωτόκολλο Παύσης και Αναμονής 1 Παραλήπτης received Pass frm to higher layer Send Ack 0 Received Send Ack 1 Wait received Wait Received Send Ack 0 Pass frm to higher layer Send Ack 1 Παράδειγμα: Πρωτόκολλο Παύσης και Αναμονής συμπεριλαμβανομένου Καναλιού Σύνολο Καταστάσεων: X=(S,R,C) S {0,1}. Ο αποστολέας προσπαθεί να μεταδώσει το πακέτο 0 ή 1 R {0,1}. Ο παραλήπτης περιμένει το πακέτο 0 ή 1 C {0,1, A, -}. Το κανάλι περιέχει,, ack, ή είναι άδειο. Κατοίκων εργασία: Σχεδιάστε τη Μηχανή Πεπερασμένων Καταστάσεων (FSM) που αντιστοιχεί στο πρωτόκολλο Παύσης και Αναμονής και συμπεριλαμβάνει την κατάσταση του καναλιού. 5

Petri Nets Τεχνική Περιγραφής Πρωτοκόλλων Χρησιμοποιούνται για την ανάλυση και επαλήθευση πρωτοκόλλων. Ανάλυση προσεγγισιμότητας (reachability analysis) Προβλήματα μη πλήρους προδιαγραφών (το πρωτόκολλο δεν προσδιορίζει πλήρως τι θα γίνει αν κάποιο πλαίσιο παραληφθεί σε κάποια κατάσταση). Ανίχνευση αδιεξόδων (deadlocks) Petri Nets Ένα Petri Net αποτελείται από Θέσεις (places) Μεταβάσεις (Transitions) Τόξα εισόδου και εξόδου (input/output arcs) Σκυτάλες (Tokens) Μια μετάβαση είναι ενεργοποιημένη (enabled transition) εάν υπάρχει τουλάχιστον μία σκυτάλη σε κάθε θέση από την οποία έρχονται τόξα εισόδου. Όταν μία μετάβαση αναφλεγεί (fire), τότε αφαιρείται μία σκυτάλη από όλες τις θέσεις που είναι συνδεδεμένες με τόξα εισόδου και προστίθεται στις θέσεις που είναι συνδεδεμένες με τόξα εξόδου. 6

Παράδειγμα Petri Nets Transition 0 Place 0 Place 1 Transition 1 Παράδειγμα Petri Nets Παραλήπτης σε πρωτόκολλο Παύσης και αναμονής receive Wait frm Wait Receive 7

Πρωτόκολλο Παύσης και Αναμονής: Αναμενόμενη Λειτουργία Κατάσταση Αποστολέα Κατάσταση καναλιού Κατάσταση Παραλήπτη Πρωτόκολλο Παύσης και Αναμονής: Αναμενόμενη Λειτουργία Send Get Ack 0 Wait Ack 0 Wait Send Get Wait Ack 1 Ack 1 Wait Κατάσταση Αποστολέα Κατάσταση καναλιού Κατάσταση Παραλήπτη 8

Πρωτόκολλο Παύσης και Αναμονής: Αδιέξοδο Send Get Ack 0 Wait Ack 0 Wait Send Get Wait Ack 1 Ack 1 Wait Κατάσταση Αποστολέα Κατάσταση καναλιού Κατάσταση Παραλήπτη Πρωτόκολλο Παύσης και Αναμονής: Χρονόμετρα για Αποφυγή Αδιεξόδων Send Get Ack 0 Wait Ack 0 Wait Send Get Wait Ack 1 Ack 1 Wait Κατάσταση Αποστολέα Κατάσταση καναλιού Κατάσταση Παραλήπτη 9

Πρωτόκολλο Παύσης και Αναμονής: Απώλεια Πλαισίου Επαλήθευσης Send Get Ack 0 Wait Ack 0 timer Wait Send timer Get Wait Ack 1 Ack 1 Wait Κατάσταση Αποστολέα Κατάσταση καναλιού Κατάσταση Παραλήπτη 10