Πρωτόκολλο Εναλλασσόμενου Β it
DESCRIPTION
Παρασκευή 6 / 7 /2007. Πρωτόκολλο Εναλλασσόμενου Β it. Μόκα Ευαγγελία 152 Μπελόγια Αικατερίνη 154. Τυπικές Μέθοδοι Ανάλυσης Συστημάτων Υπεύθυνος : Κατσαρός Παναγιώτης. ΠΡΩΤΟΚΟΛΛΟ ΕΝΑΛΛΑΣΣΟΜΕΝΟΥ ΒΙΤ. Πρωτόκολλο μετάδοσης μηνυμάτων σε γραμμή με πιθανές «απώλειες». ΣΤΟΧΟΣ. - PowerPoint PPT PresentationTRANSCRIPT
Computers: Information Technology in PerspectiveBy Long and Long
Copyright 2002 Prentice Hall, Inc.
Πρωτόκολλο Πρωτόκολλο Εναλλασσόμενου ΒΕναλλασσόμενου Βitit
Μόκα Ευαγγελία 152Μόκα Ευαγγελία 152Μπελόγια Μπελόγια
Αικατερίνη 154Αικατερίνη 154
Τυπικές Μέθοδοι Τυπικές Μέθοδοι Ανάλυσης ΣυστημάτωνΑνάλυσης Συστημάτων
Υπεύθυνος :Υπεύθυνος :Κατσαρός ΠαναγιώτηςΚατσαρός Παναγιώτης
Τυπικές Μέθοδοι Τυπικές Μέθοδοι Ανάλυσης ΣυστημάτωνΑνάλυσης Συστημάτων
Υπεύθυνος :Υπεύθυνος :Κατσαρός ΠαναγιώτηςΚατσαρός Παναγιώτης
Παρασκευή Παρασκευή 66//77/2007/2007
QuitQuit
ΠΡΩΤΟΚΟΛΛΟ ΕΝΑΛΛΑΣΣΟΜΕΝΟΥ ΠΡΩΤΟΚΟΛΛΟ ΕΝΑΛΛΑΣΣΟΜΕΝΟΥ ΒΙΤΒΙΤ
Πρωτόκολλο μετάδοσης μηνυμάτων Πρωτόκολλο μετάδοσης μηνυμάτων σε γραμμή με πιθανές «απώλειες»σε γραμμή με πιθανές «απώλειες»
Εγγύηση επιτυχούς επικοινωνίαςΕγγύηση επιτυχούς επικοινωνίας
ΣΤΟΧΟΣΣΤΟΧΟΣΣΤΟΧΟΣΣΤΟΧΟΣ
Επιτρέπεται η απώλεια μηνυμάτων Επιτρέπεται η απώλεια μηνυμάτων από τη γραμμή & η αποστολή από τη γραμμή & η αποστολή πλεονασματικώνπλεονασματικών
QuitQuit
ΠΡΩΤΟΚΟΛΛΟ ΕΝΑΛΛΑΣΣΟΜΕΝΟΥ ΠΡΩΤΟΚΟΛΛΟ ΕΝΑΛΛΑΣΣΟΜΕΝΟΥ ΒΙΤΒΙΤΛΕΙΤΟΥΡΓΙΑΛΕΙΤΟΥΡΓΙΑ
SenderSender ReceiverReceiver
Message Channel Message Channel
ΟΝΤΟΤΗΤΕΣΟΝΤΟΤΗΤΕΣ ΟΝΤΟΤΗΤΕΣΟΝΤΟΤΗΤΕΣ
Acknowledgment Channel Acknowledgment Channel
Αποστολή πακέτων με 1 Αποστολή πακέτων με 1 bit bit ελέγχουελέγχου
00 11
CONTROL BITCONTROL BITCONTROL BITCONTROL BIT
QuitQuit
ΠΡΩΤΟΚΟΛΛΟ ΕΝΑΛΛΑΣΣΟΜΕΝΟΥ ΠΡΩΤΟΚΟΛΛΟ ΕΝΑΛΛΑΣΣΟΜΕΝΟΥ ΒΙΤΒΙΤΛΕΙΤΟΥΡΓΙΑΛΕΙΤΟΥΡΓΙΑ
ΜετάδοσηΜετάδοση: : 11ουου πακέτου πακέτου ++ bit bit ελέγχου 0ελέγχου 0
RECEIVER RECEIVER RECEIVER RECEIVER
SENDER SENDER SENDER SENDER
ΕπιβεβαίωσηΕπιβεβαίωση: : bit bit ελέγχου 0ελέγχου 0
ΜετάδοσηΜετάδοση: 2: 2ουου πακέτου πακέτου ++ bit bit ελέγχου 1ελέγχου 1
ΕπιβεβαίωσηΕπιβεβαίωση: : bit bit ελέγχου 1ελέγχου 1
RECEIVER RECEIVER RECEIVER RECEIVER
SENDER SENDER SENDER SENDER
Με λήψη 1Με λήψη 1ουου πακέτου πακέτου
Με παραλαβή επιβεβαίωσηςΜε παραλαβή επιβεβαίωσης
Με λήψη 2Με λήψη 2ουου πακέτου πακέτου
QuitQuit
ΠΡΩΤΟΚΟΛΛΟ ΕΝΑΛΛΑΣΣΟΜΕΝΟΥ ΠΡΩΤΟΚΟΛΛΟ ΕΝΑΛΛΑΣΣΟΜΕΝΟΥ ΒΙΤΒΙΤΛΕΙΤΟΥΡΓΙΑΛΕΙΤΟΥΡΓΙΑ
Αγνόηση πακέτων με μη αναμενόμενο Αγνόηση πακέτων με μη αναμενόμενο bit bit ελέγχουελέγχου
Εναλλαγή Εναλλαγή bitbit ελέγχου ελέγχου
Διασφάλιση από απώλεια Διασφάλιση από απώλεια πακέτων & μετάδοση πακέτων & μετάδοση πλεονασματικώνπλεονασματικών
Μετάδοση πακέτων Μετάδοση πακέτων & & bit bit ελέγχουελέγχου
Μετάδοση Μετάδοση bit bit ελέγχου ελέγχου επιβεβαίωσηςεπιβεβαίωσης
MessageMessage ChannelChannel MessageMessage
ChannelChannel
AcknowledgmentAcknowledgment ChannelChannel
AcknowledgmentAcknowledgment ChannelChannel
QuitQuit
ΠΡΩΤΟΚΟΛΛΟ ΕΝΑΛΛΑΣΣΟΜΕΝΟΥ ΠΡΩΤΟΚΟΛΛΟ ΕΝΑΛΛΑΣΣΟΜΕΝΟΥ ΒΙΤΒΙΤΛΕΙΤΟΥΡΓΙΑΛΕΙΤΟΥΡΓΙΑ
Διαρκής αποστολή ίδιου πακέτου με Διαρκής αποστολή ίδιου πακέτου με ίδιο ίδιο bit bit ελέγχουελέγχου
Διαρκής αποστολή προηγούμενης Διαρκής αποστολή προηγούμενης επιβεβαίωσηςεπιβεβαίωσης
SENDER SENDER SENDER SENDER
RECEIVER RECEIVER RECEIVER RECEIVER
Λήψη μη αναμενόμενου Λήψη μη αναμενόμενου bit bit ελέγχουελέγχου
QuitQuit
ΠΡΩΤΟΚΟΛΛΟ ΕΝΑΛΛΑΣΣΟΜΕΝΟΥ ΠΡΩΤΟΚΟΛΛΟ ΕΝΑΛΛΑΣΣΟΜΕΝΟΥ ΒΙΤΒΙΤΛΕΙΤΟΥΡΓΙΑΛΕΙΤΟΥΡΓΙΑ
Sender Receiver
msg0
ack0
msg1
ack1
msg0
ack0
msg1
QuitQuit
ΠΡΩΤΟΚΟΛΛΟ ΕΝΑΛΛΑΣΣΟΜΕΝΟΥ ΠΡΩΤΟΚΟΛΛΟ ΕΝΑΛΛΑΣΣΟΜΕΝΟΥ ΒΙΤΒΙΤΛΕΙΤΟΥΡΓΙΑΛΕΙΤΟΥΡΓΙΑ
Sender Receiver
msg0
ack1
msg0
ack0
msg1
QuitQuit
colset BIT = int with 0..1;colset BIT = int with 0..1; colset DATA = string;colset DATA = string; colset INTxDATAxBIT= product INT * colset INTxDATAxBIT= product INT *
DATA * BIT;DATA * BIT; colset INTxDATA = product INT * colset INTxDATA = product INT *
DATA;DATA; colset INTxBIT = product INT * BIT;colset INTxBIT = product INT * BIT; var n : INT;var n : INT; var p,str : DATA;var p,str : DATA; var b, k : BIT;var b, k : BIT; val stop = "########";val stop = "########";
ΤΥΠΟΙ (ΤΥΠΟΙ (COLOR SETS)COLOR SETS)
QuitQuit
colset msglist = list INTxDATAxBIT;colset msglist = list INTxDATAxBIT;
colset bitlist = list BIT;colset bitlist = list BIT;
var seq, seq2 : msglist;var seq, seq2 : msglist;
var ackseq, ackseq2 : bitlist;var ackseq, ackseq2 : bitlist;
ΤΥΠΟΙ (ΤΥΠΟΙ (COLOR SETS)COLOR SETS)ΛΙΣΤΕΣΛΙΣΤΕΣ
QuitQuit
TOPTOP
Ο αποστολέας στέλνει το
μήνυμα μαζί με το bit ελέγχου
Το μήνυμα + bit προωθείται μέσω του
καναλιού στον παραλήπτη
Ο παραλήπτης λαμβάνει το μήνυμα και στέλνει την
επιβεβαίωση (bit)
Η επιβεβαίωση προωθείται μέσω του
καναλιού στον αποστολέα
QuitQuit
SENDERSENDER
Αρχικό μήνυμα
Προώθηση μηνύματος & bit ελέγχου
Προώθηση πακέτου & bit ελέγχου
Λήψη bit επιβεβαίωσης
Προώθηση bit επιβεβαίωσης Φρουρός
Διατήρηση control bit &
θέσης επομένου πακέτου
QuitQuit
SENDERSENDER
Ένα πακέτο προστίθεται στη λίστα Ένα πακέτο προστίθεται στη λίστα seqseq μόνο αν δεν υπάρχει ήδη, για αποφυγή μόνο αν δεν υπάρχει ήδη, για αποφυγή έκρηξης χώρου καταστάσεωνέκρηξης χώρου καταστάσεων
QuitQuit
SENDERSENDER
Αν το Αν το bit bit της κεφαλής της λίστας της κεφαλής της λίστας ackseqackseq είναι το αναμενόμενο:είναι το αναμενόμενο: Αν ισούται με Αν ισούται με 00 n=n+1 n=n+1 & & k=1,k=1, Αν ισούται με ένα Αν ισούται με ένα n=n+1n=n+1 & k=0& k=0
Αλλιώς το Αλλιώς το kk & το & το n n παραμένουν ίδιαπαραμένουν ίδια
QuitQuit
SENDERSENDERΠΑΡΑΔΕΙΓΜΑΠΑΡΑΔΕΙΓΜΑ
QuitQuit
SENDERSENDERΠΑΡΑΔΕΙΓΜΑΠΑΡΑΔΕΙΓΜΑ
QuitQuit
SENDERSENDERΠΑΡΑΔΕΙΓΜΑΠΑΡΑΔΕΙΓΜΑ
QuitQuit
MESSAGE CHANNELMESSAGE CHANNEL
Προώθηση Πακέτου & Bit
Ελέγχου
ΦρουρόςΠροώθηση
Πακέτου & Bit Ελέγχου στον
Παραλήπτη
QuitQuit
colset Ten0 = int with 0..10;colset Ten0 = int with 0..10;
colset Tencolset Ten11 = int with = int with 11..10; ..10;
var s: Ten0;var s: Ten0;
var r: Ten1; var r: Ten1;
fun Ok(s:Ten0,r:Ten1) = (r<=s);fun Ok(s:Ten0,r:Ten1) = (r<=s);
MESSAGE CHANNELMESSAGE CHANNEL
QuitQuit
MESSAGE CHANNELMESSAGE CHANNEL
Αν το πακέτο δε βρίσκεται ήδη στη λίστα Αν το πακέτο δε βρίσκεται ήδη στη λίστα seqseq2 των πακέτων που προωθούνται στον 2 των πακέτων που προωθούνται στον παραλήπτη & η συνάρτηση ΟΚ είναι παραλήπτη & η συνάρτηση ΟΚ είναι αληθής, τότε προστίθεται στη λίστααληθής, τότε προστίθεται στη λίστα
Διαφορετικά η Διαφορετικά η seq2seq2 παραμένει ως έχει παραμένει ως έχει
QuitQuit
MESSAGE CHANNELMESSAGE CHANNELΠΑΡΑΔΕΙΓΜΑΠΑΡΑΔΕΙΓΜΑ
QuitQuit
MESSAGE CHANNELMESSAGE CHANNELΠΑΡΑΔΕΙΓΜΑΠΑΡΑΔΕΙΓΜΑ
QuitQuit
MESSAGE CHANNELMESSAGE CHANNELΠΑΡΑΔΕΙΓΜΑΠΑΡΑΔΕΙΓΜΑ
QuitQuit
MESSAGE CHANNELMESSAGE CHANNELΠΑΡΑΔΕΙΓΜΑΠΑΡΑΔΕΙΓΜΑ
QuitQuit
RECEIVER
Λήψη μηνύματος & bit ελέγχου
μέσω του place B
Φρουρός
Συγκέντρωση του
μηνύματος
Διατήρηση του
αναμενόμενου control bitΠροώθηση
επιβεβαίωσης
Είσοδος της λίστας seq
QuitQuit
RECEIVER
Αν το bit που περιέχει το πρώτο στοιχείο της λίστας (κεφαλή) είναι το αναμενόμενο και το μήνυμα δεν περιέχει τη μεταβλητή τέλους, τότε το μήνυμα προστίθεται στη μέχρι τώρα ληφθείσα ακολουθία
QuitQuit
RECEIVER
Αν το bit της κεφαλής της λίστας είναι το αναμενόμενο: Αν ισούται με μηδέν k=1 Αν ισούται με ένα k=0
Αλλιώς το k παραμένει ίδιο
QuitQuit
RECEIVER
Αν το bit της κεφαλής της λίστας είναι το αναμενόμενο και (δεν είναι το ίδιο με το τελευταίο στοιχείο της λίστας ackseq ή η λίστα ackseq είναι κενή) προστίθεται στη λίστα επιβεβαίωσης ackseq
QuitQuit
RECEIVER
Αν το bit της κεφαλής της λίστας δεν είναι το αναμενόμενο προστίθεται στη λίστα ackseq η προηγούμενη επιβεβαίωση αν δεν είναι ίδια με το τελευταίο στοιχείο της ackseq ή η ackseq είναι κενή
QuitQuit
RECEIVER
Διαφορετικά η λίστα επιβεβαιώσεων παραμένει ως έχει
QuitQuit
RECEIVERΠΑΡΑΔΕΙΓΜΑΠΑΡΑΔΕΙΓΜΑ
QuitQuit
RECEIVERΠΑΡΑΔΕΙΓΜΑΠΑΡΑΔΕΙΓΜΑ
QuitQuit
ACKNOWLEDGMENT CHANNEL
Προώθηση Επιβεβαίωσης
Φρουρός
Συνάρτηση OK
Προώθηση Επιβεβαίωσης
στον αποστολέα
Αν η συνάρτηση ΟΚ είναι αληθής και (η λίστα ackseq2 είναι κενή ή η επιβεβαίωση δεν είναι ίδια με το τελευταίο στοιχείο της ackseq2), τότε η ack προστίθεται σε αυτή
Διαφορετικά η ackseq2 παραμένει ως έχει
Λήψη της λίστας Επιβεβαίωσης
QuitQuit
ACKNOWLEDGMENT CHANNEL
ΠΑΡΑΔΕΙΓΜΑΠΑΡΑΔΕΙΓΜΑ
QuitQuit
ACKNOWLEDGMENT CHANNEL
ΠΑΡΑΔΕΙΓΜΑΠΑΡΑΔΕΙΓΜΑ
QuitQuit
STATISTICSSTATISTICS STATISTICSSTATISTICS
State Space State Space
Nodes: Nodes: 637637
Arcs:Arcs: 83948394
Secs:Secs: 1 1
Status:Status: FullFull Ο γράφος του χώρου καταστάσεων
αποτελείται από 637 κόμβους & 8394 τόξα
REPORTREPORT
Η κατασκευή του συνολικού γράφου γίνεται σε 1 sec
QuitQuit
STATISTICSSTATISTICS STATISTICSSTATISTICS
Scc GraphScc Graph
Nodes: Nodes: 271271
Arcs:Arcs: 47894789
Secs:Secs: 00
Ο γράφος των ισχυρά συνδεδεμένων
τμημάτων αποτελείται από 271 τμήματα & 4789 τόξα
REPORTREPORT
Η κατασκευή του γίνεται σε 0 sec
QuitQuit
STATISTICSSTATISTICS STATISTICSSTATISTICS
Τα ισχυρά συνδεδεμένα τμήματα είναι λιγότερα από τους κόμβους
REPORTREPORT
Το σύστημα έχει τουλάχιστον ένα ισχυρά συνδεδεμένο τμήμα που περιέχει περισσότερους από έναν κόμβους
Υπάρχουν μη-πεπερασμένες ακολουθίες εκτέλεσης
Δεν μπορούμε να είμαστε σίγουροι ότι το πρωτόκολλο τερματίζει
QuitQuit
BOUNDEDNESS PROPERTIESBOUNDEDNESS PROPERTIES BOUNDEDNESS PROPERTIESBOUNDEDNESS PROPERTIES
REPORTREPORT
Οι ιδιότητες περατότητας δείχνουν πόσα tokens μπορεί να έχει ένα place
O μέγιστος & ο ελάχιστος αριθμός μαρκών που μπορεί να έχει κάθε place
QuitQuit
BOUNDEDNESS PROPERTIESBOUNDEDNESS PROPERTIES BOUNDEDNESS PROPERTIESBOUNDEDNESS PROPERTIES
Best Integer BoundsBest Integer Bounds
Upper LowerUpper Lower
AcknowledgementChannel'SAAcknowledgementChannel'SA 1 1 1 11 1
MessageChannel'SP 1 MessageChannel'SP 1 1 11 1
Receiver'NextBitRec 1 Receiver'NextBitRec 1 1 11 1
Sender'NextBitSend 1 Sender'NextBitSend 1 1 11 1
Sender'Send 1 Sender'Send 1 8 88 8
REPORTREPORT
QuitQuit
BOUNDEDNESS PROPERTIESBOUNDEDNESS PROPERTIES BOUNDEDNESS PROPERTIESBOUNDEDNESS PROPERTIES
Best Integer BoundsBest Integer Bounds
Upper LowerUpper Lower
Top'A Top'A 11 1 11 1
Top‘Top‘ΒΒ 11 1 11 1
Top'C 1 Top'C 1 1 11 1
Top‘D 1 Top‘D 1 1 11 1
Top'Received 1 Top'Received 1 11 11
REPORTREPORT
QuitQuit
REPORT
HOME PROPERTIESHOME PROPERTIES HOME PROPERTIESHOME PROPERTIES
Home Markings [554]
To Marking 554 είναι το επιθυμητό final marking, όπου όλα τα πακέτα έχουν ληφθεί στη σωστή σειρά.
QuitQuit
REPORT
HOME PROPERTIESHOME PROPERTIES HOME PROPERTIESHOME PROPERTIES
QuitQuit
REPORT
LIVENESS PROPERTIESLIVENESS PROPERTIES LIVENESS PROPERTIESLIVENESS PROPERTIES
To Marking 554 είναι το μοναδικό dead marking To πρωτόκολλο είναι μερικώς ορθό. Αν η
εκτέλεση σταματήσει, σταματά στο επιθυμητό final marking
Dead Markings [554]
QuitQuit
REPORT
LIVENESS PROPERTIESLIVENESS PROPERTIES LIVENESS PROPERTIESLIVENESS PROPERTIES
To Marking 554 είναι home marking Πάντα υπάρχει η δυνατότητα για σωστό
τερματισμό. Είναι αδύνατο να φτάσουμε σε μία κατάσταση, από την οποία δεν μπορούμε να φτάσουμε στο final marking
Dead Markings [554]
QuitQuit
REPORT
LIVENESS PROPERTIESLIVENESS PROPERTIES LIVENESS PROPERTIESLIVENESS PROPERTIES
Kάθε μετάβαση είναι ενεργοποιημένη σε τουλάχιστον ένα προσιτό μαρκάρισμα
Dead Transition Instances: None
QuitQuit
REPORT
LIVENESS PROPERTIESLIVENESS PROPERTIES LIVENESS PROPERTIESLIVENESS PROPERTIES
Μια διαρκής μετάβαση είναι μια μετάβαση η οποία πάντα μπορεί να ενεργοποιηθεί άλλη μια φορά
Live Transition Instances: None
Όταν υπάρχουν νεκρά μαρκαρίσματα, δεν μπορούν να υπάρχουν διαρκείς μεταβάσεις.
QuitQuit
REPORT
FAIRNESS PROPERTIESFAIRNESS PROPERTIES FAIRNESS PROPERTIESFAIRNESS PROPERTIES
AcknowledgementChannel'Transmit_Acknow 1 No Fairness
MessageChannel'Transmit_Packet 1 No Fairness
Receiver'Receive_Packet 1: No Fairness
Sender'Receive_Acknow 1: No Fairness
Sender'Send_Packet 1: Impartial
QuitQuit
REPORT
FAIRNESS PROPERTIESFAIRNESS PROPERTIES FAIRNESS PROPERTIESFAIRNESS PROPERTIES
Για το ABP είναι σημαντική η διασφάλιση της αμεροληψίας
Θέλουμε να διασφαλίσουμε την υπόθεση ότι αν το κάθε μήνυμα στέλνεται αρκούντως πολλές φορές, τελικά αυτό θα φθάνει στον προορισμό του
QuitQuit
REPORT
FAIRNESS PROPERTIESFAIRNESS PROPERTIES FAIRNESS PROPERTIESFAIRNESS PROPERTIES
Η μετάβαση Send_Packet είναι αμερόληπτη
Αν πάψει να εκτελείται, τότε το πρωτόκολλο, μετά από κάποια επιπρόσθετα βήματα, πρέπει να τερματίσει
Computers: Information Technology in PerspectiveBy Long and Long
Copyright 2002 Prentice Hall, Inc.
ΕΥΧΑΡΙΣΤΟΥΜΕ ΓΙΑ ΕΥΧΑΡΙΣΤΟΥΜΕ ΓΙΑ ΤΗΝ ΠΡΟΣΟΧΗ ΣΑΣΤΗΝ ΠΡΟΣΟΧΗ ΣΑΣ
Παρασκευή Παρασκευή 66//77/2007/2007
Μόκα Ευαγγελία 152Μόκα Ευαγγελία 152Μπελόγια Μπελόγια
Αικατερίνη 154Αικατερίνη 154
Τυπικές Μέθοδοι Τυπικές Μέθοδοι Ανάλυσης ΣυστημάτωνΑνάλυσης Συστημάτων
Υπεύθυνος :Υπεύθυνος :Κατσαρός ΠαναγιώτηςΚατσαρός Παναγιώτης
Τυπικές Μέθοδοι Τυπικές Μέθοδοι Ανάλυσης ΣυστημάτωνΑνάλυσης Συστημάτων
Υπεύθυνος :Υπεύθυνος :Κατσαρός ΠαναγιώτηςΚατσαρός Παναγιώτης