User Datagram Protocol (UDP)

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Slide 1 Δίκτυα Τηλεπικοινωνιών. Slide 2 Δίκτυα Τηλεπικοινωνιών Μία κυψέλη ΑΤΜ αποτελείται από 53 οκτάδες και χωρίζεται σε δύο μέρη:  Την επικεφαλίδα.
Advertisements

Από Άκρο σε Άκρο Αποφυγή Συμφόρησης
HY-335 : Δίκτυα Υπολογιστών Μαρία Παπαδοπούλη Τμήμα Επιστήμης Υπολογιστών Πανεπιστήμιο Κρήτης Χειμερινό εξάμηνο O R E K W N T net works Επίπεδο.
Δίκτυα Υπολογιστών (Γ’ έτος, ΣΤ’ εξ)
HY-335 : Δίκτυα Υπολογιστών
Σύνοψη 1 Αρχές διαδικτύου 1.1 Αναδρομή – εισαγωγή
Επίπεδο μεταφοράς 1 Μαρία Παπαδοπούλη Τμήμα Επιστήμης Υπολογιστών, Πανεπιστήμιο Κρήτης Χειμερινό εξάμηνο Κεφάλαιa 3.1, 3.2, 3.3, 3.5 των Kurose/Ross.
HY-335 : Δίκτυα Υπολογιστών
Πρωτόκολλο στάσης και αναμονής
Διαχείριση Δικτύων Ευφυή Δίκτυα Άσκηση 1: Χρήση βασικών εργαλείων για συλλογή πληροφοριών για τη διαμόρφωση και την κατάσταση λειτουργίας του δικτύου.
HY-335 : Δίκτυα Υπολογιστών Μαρία Παπαδοπούλη Τμήμα Επιστήμης Υπολογιστών Πανεπιστήμιο Κρήτης Χειμερινό εξάμηνο O R E K W N T net works Επίπεδο.
ΙΩΑΝΝΗΣ ΚΩΝΣΤΑΝΤΙΝΟΥ 3ο ΦΡΟΝΤΙΣΤΗΡΙΟ ΠΑΡΑΣΚΕΥΗ 19 ΟΚΤΩΒΡΙΟΥ 2012 ΑΙΘΟΥΣΑ Β4 1.
ΜΟΝΤΕΛΟ ΕΞΥΠΗΡΕΤΟΥΜΕΝΟΥ – ΕΞΥΠΗΡΕΤΗΤΗ ( CLIENT – SERVER )
ΤCP/IP Τι είναι; Σύντομο Ιστορικό
Κεφάλαιο 11.2 Sockets.
Υπηρεσίες δικτύων επικοινωνίας
Τεχνικές Μεταγωγής Παράγραφος 1.5.
ΠΑΡΑΔΟΣΕΙΣ ΜΑΘΗΜΑΤΟΣ «ΔΙΚΤΥΑ ΕΛΕΓΧΟΥ» ΟΚΤΩΒΡΙΟΣ 2004.
Δίκτυα Ι Βπ - 2ο ΕΠΑΛ ΝΕΑΣ ΣΜΥΡΝΗΣ 2011.
Αξιόπιστη Επικοινωνία και Έλεγχος Ροής
TCP for wireless networks. Περίληψη προβλήματος Η απώλεια πακέτων στα ασύρματα δίκτυα μπορεί να προκαλείται από: –Λάθη στα bit (bit errors) –Αλλαγές στο.
Επίπεδο Μεταφοράς (Transport Layer)
ΔΙΑΔΙΚΤΥΑ ΜΕ TCP / IP Βίτσας Βασίλειος Αλεξάνδρειο ΤΕΙ Θεσσαλονίκης
1 Έλεγχος ροής και συμφόρησης (flow and congestion control) flow control Ο όρος έλεγχος ροής (flow control) χρησιμοποιείται συχνά για να περιγράψει τους.
Δίκτυα Απευθείας Ζεύξης Επικοινωνία μεταξύ δύο υπολογιστών οι οποίοι είναι απευθείας συνδεδεμένοι.
National Technical University of AthensΤεχνολογίες Διαδικτύου Σύνοψη 1Αρχές διαδικτύου 1.1 Αναδρομή – εισαγωγή 1.2 Πρωτόκολλα TCP/IP Διαστρωμάτωση.
OSI Μοντέλο αναφοράς.
Επίπεδο Μεταφοράς (Transport Layer)
Διαχείριση Δικτύων Ευφυή Δίκτυα Άσκηση 2: Ανάλυση Δικτυακής Κίνησης – Πρωτοκόλλων - Υπηρεσιών Εργαστήριο Διαχείρισης και Βέλτιστου Σχεδιασμού Δικτύων (NETMODE)
Τεχνολογία TCP/IP TCP/IP internet είναι ένα οποιοδήποτε δίκτυο το οποίο χρησιμοποιεί τα πρωτόκολλα TCP/IP. Διαδίκτυο (Internet) είναι το μεγαλύτερο δίκτυο.
Πρωτόκολλο IP.
Διαχείριση Δικτύων Ευφυή Δίκτυα Άσκηση 1: Χρήση βασικών εργαλείων για συλλογή πληροφοριών για τη διαμόρφωση και την κατάσταση λειτουργίας του δικτύου.
Άσκηση 4 Μελέτη πρωτοκόλλων UDP/TCP με χρήση προσομοιωτή δικτύων ns-2.
HY-335 : Δίκτυα Υπολογιστών Μαρία Παπαδοπούλη Τμήμα Επιστήμης Υπολογιστών Πανεπιστήμιο Κρήτης Χειμερινό εξάμηνο O R E K W N T net works Επίπεδο.
Σύνοψη 1 Αρχές διαδικτύου 1.1 Αναδρομή – εισαγωγή
Διαχείριση Δικτύων Ευφυή Δίκτυα Άσκηση 1: Χρήση βασικών εργαλείων για συλλογή πληροφοριών για τη διαμόρφωση και την κατάσταση λειτουργίας του δικτύου.
Διαχείριση Δικτύων Ευφυή Δίκτυα Άσκηση 4: Ανάλυση Δικτυακής Κίνησης – Πρωτοκόλλων - Υπηρεσιών Εργαστήριο Διαχείρισης και Βέλτιστου Σχεδιασμού Δικτύων (NETMODE)
Κεφάλαιο 7 Διαδικτύωση-Internet 7.3 Πρωτόκολλο TCP.
Κεφάλαιο 7 Διαδικτύωση-Internet 7.5 Πρωτόκολλο ΙΡ (Internet Protocol)
Εισαγωγή Στις Τηλεπικοινωνίες Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Αθηνών Διδάσκων: Χρήστος Μιχαλακέλης Ενότητα.
CSMA/CA στο Κατανεμημένα Ενσωματωμένα Συστήματα
3.2 διάσπαση πακέτου σε κομμάτια
Πρωτόκολλα Ασφάλειας στο Διαδίκτυο (1)
Εισαγωγικά Θέματα Διαχείρισης Δικτύων
Arp και DHCP 3.3 Πρωτόκολλα ανεύρεσης και απόδοσης διευθύνσεων, Address Resolution Protocol (ARP) και Dynamic Host Configuration Protocol (DHCP)
Προχωρημένα Θέματα Δικτύων
Secure Sockets Layer (SSL)
Κεφάλαιο 4. Επίπεδο μεταφοράς
Ελεγχος συμφορησης δικτυου στο tcp
Internet Control Message Protocol (ICMP)
LAB HY335 Evripidis tzamousis
Κατανεμημένα Συστήματα
Δίκτυα Επικοινωνιών Ενότητα # 6: Επίπεδο Μεταφοράς TCP/UDP
TCP/IP.
Κεφάλαιο 7 Διαδικτύωση-Internet
Διαχείριση Κινητικότητας στο Internet
Κεφάλαιο 7 Διαδικτύωση- Internet
ΤΟΠΙΚΑ ΔΙΚΤΥΑ – ΕΠΙΠΕΔΟ ΠΡΟΣΒΑΣΗΣ ΔΙΚΤΥΟΥ (TCP/IP)
Network Address Translation (NAT)
Κεφάλαιο 7: Διαδικτύωση-Internet
Λύσεις Ασφάλειας στο Επίπεδο Διασύνδεσης
Κεφάλαιο 7: Διαδικτύωση-Internet Μάθημα 7.9: Δρομολόγηση
Κεφάλαιο 7: Διαδικτύωση-Internet
Το αυτοδύναμο πακέτο και η δομή του
Κεφάλαιο 7:Διαδικτύωση-Internet
Κεφάλαιο 7: Διαδικτύωση-Internet
Ενότητα 3: Επίπεδο Μεταφοράς
Κεφάλαιο 4. Επίπεδο μεταφοράς
ΤΟ ΠΡΩΤΟΚΟΛΛΟ TCP.
Δίκτυα Ι Βπ - 2ο ΕΠΑΛ ΝΕΑΣ ΣΜΥΡΝΗΣ 2011.
Μεταγράφημα παρουσίασης:

User Datagram Protocol (UDP) Υπηρεσίες Αποτελεί πρωτόκολλο επιπέδου μεταφοράς που υλοποιείται μόνο στα τερματικά συστήματα του ΙΡ δικτύου Περιέχεται σε κάθε υλοποίηση του TCP/IP Δεν υποστηρίζει αξιόπιστη μεταφορά δεδομένων Δεν υποστηρίζει έλεγχο ροής

UDP Υπηρεσίες Δεν υποστηρίζει ανάκτηση από σφάλματα Υποστηρίζει πολυπλεξία δεδομένων χρησιμοποιώντας το μηχανισμό των θυρών Δεν προαπαιτεί την εγκατάσταση σύνδεσης με τον προορισμό για να αρχίσει η μεταφορά των δεδομένων Προδιαγραφή RFC 768

UDP UDP Layer IP Layer Μηχανισμός Θυρών Εφαρμογή 1 (Port 1) Εφαρμογή N Εφαρμογή 2 (Port 2)

Παραδείγματα Δεσμευμένων Θυρών UDP Παραδείγματα Δεσμευμένων Θυρών Port Εφαρμογή Πρωτόκολλο Reserved 7 Echo TCP/UDP 15 Netstat 20 Ftp TCP 23 Telnet 161 SNMP UDP

UDP Επικεφαλίδα Source Port. Καθορίζει την θύρα αφετηρίας των δεδομένων και ουσιαστικά την εφαρμογή αφετηρίας των δεδομένων Destination Port. Καθορίζει την θύρα προορισμού των δεδομένων και κατά συνέπεια την εφαρμογή προορισμού Length. Καθορίζει το μήκος του UDP πακέτου, μαζί με τα bytes της επικεφαλίδας Checksum. Έχει μήκος 2 bytes και είτε είναι μηδέν είτε περιέχει το πεδίο ελέγχου του πακέτου, που εφαρμόζεται στο UDP πακέτο και μία ψευδοεπικεφαλίδα

Transmission Control Protocol (TCP) Υπηρεσίες Αποτελεί πρωτόκολλο επιπέδου μεταφοράς που υλοποιείται μόνο στα τερματικά συστήματα του ΙΡ δικτύου Απαιτεί την εγκατάσταση σύνδεσης μεταξύ του αποστολέα και του παραλήπτη πριν αρχίσει η μεταφορά των δεδομένων Υποστηρίζει ταυτόχρονη μετάδοση δεδομένων και προς τις δύο κατευθύνσεις Η παράδοση των δεδομένων στο επίπεδο εφαρμογής του παραλήπτη γίνεται με τη ίδια σειρά με την οποία αυτά μεταδόθηκαν από τον αποστολέα

TCP Υπηρεσίες Αξιόπιστη μεταφορά δεδομένων Έλεγχος ροής δεδομένων Πολυπλεξία δεδομένων Τμηματοποίηση και επανασυναρμολόγηση δεδομένων εφαρμογής Καθορισμός προτεραιότητας και ασφάλειας στη μεταφορά των δεδομένων χρησιμοποιώντας αντίστοιχα πεδία της ΙΡ επικεφαλίδας Προδιαγράφεται στην RFC 793

TCP/IP Μεταφορά Δεδομένων

TCP/ΙΡ Μεταφορά δεδομένων

TCP Μεταφορά Δεδομένων

TCP Μεταφορά Δεδομένων Αν και τα δεδομένα μεταφέρονται σε πακέτα η μεταφορά δεδομένων εξετάζεται λογικά ως αποτελούμενη από μία ροή οκτάδων. Για το λόγο αυτό, κάθε οκτάδα αριθμείται ξεχωριστά Το TCP αποδέχεται μία ροή από οκτάδες από το χρήστη και τις ομαδοποιεί σε πακέτα Κάθε TCP πακέτο περιέχει τον αριθμό ακολουθίας της πρώτης οκτάδας του πεδίου δεδομένων Το TCP εφαρμόζει συγκεκριμένη πολιτική ως προς το πότε να κατασκευάσει ένα πακέτο για μετάδοση και πότε να παραδώσει τα ληφθέντα δεδομένα στην εφαρμογή του παραλήπτη Ο χρήστης μπορεί να καθορίσει ένα τμήμα δεδομένων ως επείγον Το TCP θα αναμεταδώσει ένα πακέτο, εάν αποτύχει να λάβει μία επιβεβαίωση λήψης για αυτό εντός του αναμενόμενου χρονικού ορίου

TCP Επικεφαλίδα

TCP Επικεφαλίδα Source Port. Καθορίζει την θύρα αφετηρίας των δεδομένων και ουσιαστικά την εφαρμογή αφετηρίας των δεδομένων Destination Port. Καθορίζει την θύρα προορισμού των δεδομένων και κατά συνέπεια την εφαρμογή προορισμού Sequence Number. Είναι ο αριθμός ακολουθίας του πρώτου byte δεδομένων στο πεδίο data. Εάν έχει τεθεί το bit SYN, τότε αυτός ο αριθμός αποτελεί τον αρχικό αριθμό ακολουθίας Ack Number. Δηλώνει τον αριθμό ακολουθίας της επόμενης οκτάδας που περιμένει να λάβει ο παραλήπτης Data offset. Έχει μήκος 4 bits και καθορίζει τον αριθμό των λέξεων μήκους 32-bit που περιέχει η επικεφαλίδα. Αποτελεί ένα δείκτη στην αρχή των δεδομένων

TCP Επικεφαλίδα Reserved. Έχει μήκος 6 bits με μηδενικές τιμές URG. Το bit αυτό καθορίζει ότι υπάρχουν επείγοντα δεδομένα στο πεδίο data ACK. Το bit αυτό επιβεβαιώνει τη λήψη δεδομένων PSH. Το bit αυτό ενεργοποιεί τη λειτουργία προώθησης αποθηκευμένων δεδομένων RST. Το bit αυτό αρχικοποιεί τη σύνδεση SYN. Το bit αυτό συγχρονίζει τους αριθμούς ακολουθίας FIN. Το bit αυτό χρησιμοποιείται από τον αποστολέα για να υποδείξει τον τερματισμό της αποστολής δεδομένων

TCP Επικεφαλίδα Window. Καθορίζει τον αριθμό των bytes δεδομένων που ο παραλήπτης είναι σε θέση να δεχθεί. Ξεκινούν με το πρώτο byte που υποδεικνύεται στο πεδίο Ack Number Cheksum. Χρησιμοποιείται για τον έλεγχο της ορθότητας του TCP πακέτου. Αποτελεί ένα άθροισμα ελέγχου που εφαρμόζεται σε ολόκληρο το TCP πακέτο και μίας ψευδοεπικεφαλίδας που περιλαμβάνει κάποια πεδία από την ΙΡ επικεφαλίδα Urgent Pointer. Δείχνει στην τελευταία οκτάδα σε μία ακολουθία από επείγοντα δεδομένα Padding. Μηδενικά bytes που ενδέχεται να προστεθούν, ώστε το μήκος της επικεφαλίδας να είναι ακέραιο πολ/σιο των 32 bytes Options. Μεταβλητού μήκους πεδίο που περιέχει επιλογές σχετικά με τα χαρακτηριστικά της TCP σύνδεσης

<SYN> <seq=100> <SYN-ACK> <seq=330 ack=100> TCP Εγκατάσταση Σύνδεσης client server SYN_SENT <SYN> <seq=100> SYN_RCVD <SYN-ACK> <seq=330 ack=100> ESTABLISHED <ACK> ESTABLISHED

TCP Αποδέσμευση Σύνδεσης client FIN server ACK close closed timed wait

Διάγραμμα Καταστάσεων (TCP Client)

Διάγραμμα Καταστάσεων (TCP Server)

TCP Πολυπλεξία

TCP Αξιοπιστία X loss time premature timeout, lost ACK scenario Host A Seq=92, 8 bytes data ACK=100 loss timeout time lost ACK scenario Host B X Seq=100, 20 bytes data Seq=92 timeout premature timeout, cumulative ACKs ACK=120 Seq=100 timeout

TCP Έλεγχος Ροής Ο μηχανισμός επιβεβαίωσης λήψης των πακέτων είναι η καρδιά του TCP πρωτοκόλλου Όταν τα δεδομένα φθάσουν στον παραλήπτη, το TCP πρωτόκολλο απαιτεί να στείλει πίσω μία επιβεβαίωση για τη λήψη αυτών των δεδομένων Ο μηχανισμός παραθύρου είναι ένας μηχανισμός ελέγχου της ροής των δεδομένων Ο παραλήπτης των δεδομένων επιστρέφει στον αποστολέα στο πεδίο Window του ACK μηνύματος έναν αριθμό, ο οποίος καθορίζει το μέγιστο αριθμό οκτάδων που μπορεί να στείλει ο αποστολέας μέχρι να λάβει ένα νέο μέγεθος παραθύρου Το μέγεθος του παραθύρου έχει σημαντική επίδραση στην απόδοση της σύνδεσης και του δικτύου

TCP Έλεγχος Ροής

TCP Διαχείριση Παραθύρου Το μέγεθος του παραθύρου αποστολής επηρεάζει την πιθανότητα εμφάνισης συμφόρησης στο δίκτυο Οι δύο τεχνικές που υποστηρίζονται από τις σύγχρονες υλοποιήσεις του TCP για την βελτιστοποίηση της απόδοσης του TCP είναι οι: α. Αλγόριθμος αργής εκκίνησης β. Αλγόριθμος αποφυγής συμφόρησης

TCP Αργή Εκκίνηση Όταν εγκαθίσταται μία TCP σύνδεση για πρώτη φορά, ο αποστολέας μπορεί να στέλνει πακέτα μέσα στο δίκτυο μέχρι το μέγεθος παραθύρου που καθορίστηκε από τον παραλήπτη Αυτό είναι επικίνδυνο, γιατί ο αποστολέας μπορεί να πλημμυρίσει το διαδίκτυο με πολλά πακέτα πριν αντιληφθεί, από την έλλειψη επιβεβαιώσεων, ότι η ροή ήταν υπερβολική Ο Jacobson συστήνει μία διαδικασία γνωστή ως αργή εκκίνηση Ο μηχανισμός αργής εκκίνησης εξετάζει το διαδίκτυο για να βεβαιωθεί ότι δεν στέλνει πολλά πακέτα σε ένα ήδη συμφορημένο περιβάλλον

TCP Αργή Εκκίνηση Κάθε στιγμή, η TCP μετάδοση περιορίζεται από την ακόλουθη σχέση: awnd = MIN[credit,cwnd] όπου α. αwnd = ο αριθμός των πακέτων που το TCP επιτρέπεται να στείλει β. cwnd = παράθυρο συμφόρησης, σε πακέτα. Χρησιμοποιείται κατά τη διάρκεια της εκκίνησης και για να μειώνει τη ροή κατά τη διάρκεια περιόδων συμφόρησης γ. credit = το ποσό της αχρησιμοποίητης πίστωσης, σε πακέτα, που έχει παραχωρηθεί στην πιο πρόσφατη επιβεβαίωση λήψης

TCP Αργή Εκκίνηση Όταν εγκατασταθεί μία νέα σύνδεση, το TCP αρχικοποιεί cwnd = 1 Στην αρχή, το TCP επιτρέπεται να στείλει μόνο ένα πακέτο και μετά πρέπει να περιμένει για την επιβεβαίωση λήψης πριν μεταδώσει το δεύτερο πακέτο Κάθε φορά που λαμβάνεται μία επιβεβαίωση λήψης, η τιμή του cwnd αυξάνεται κατά ένα Επομένως, η αποστολή πακέτων ελέγχεται από τις εισερχόμενες επιβεβαιώσεις λήψης και από το παράθυρο που καθορίζει ο παραλήπτης

TCP Αργή Εκκίνηση cwnd = 1 cwnd = 2 cwnd = 4 cwnd = 8 Host Β Host A segment 1 ACK for segment 1 cwnd = 2 segment 2 segment 3 ACK for segments 2 ACK for segments 3 cwnd = 4 segment 4 segment 5 segment 6 segment 7 ACK for segments 4 ACK for segments 5 ACK for segments 6 ACK for segments 7 cwnd = 8

Αλγόριθμος αποφυγής συμφόρησης TCP Αλγόριθμος αποφυγής συμφόρησης Ο αλγόριθμος αποφυγής συμφόρησης βασίζεται στο γεγονός ότι η απώλεια πακέτων αποτελεί ένδειξη συμφόρησης στο δίκτυο Όταν ανιχνευθεί συμφόρηση: α. Τίθεται ένα κατώφλι αργής εκκίνησης ίσο με το μισό του τρέχοντος παραθύρου συμφόρησης, δηλαδή ssthresh = cwnd/2 β. Τίθεται cwnd = 1 και εκτελείται η διαδικασία αργής εκκίνησης μέχρι cwnd = ssthresh. Σε αυτή τη φάση το cwnd αυξάνεται κατά 1 για κάθε επιβεβαίωση λήψης που λαμβάνεται γ. Για cwnd > ssthresh, το cwnd αυξάνεται κατά 1/ cwnd για κάθε επιβεβαίωση λήψης που λαμβάνεται

TCP Αποφυγή Συμφόρησης Initially: cwnd = 1; ssthresh = advertised window size; (παράθυρο παραλήπτη) New Ack received: if (cwnd < ssthresh) /* Slow Start*/ cwnd = cwnd + 1; else /* Congestion Avoidance */ cwnd = cwnd + 1/cwnd; Timeout (Ανίχνευση Συμφόρησης): /* Multiplicative decrease */ ssthresh = cwnd/2;