Πρωτόκολλο User Datagram: Αρχιτεκτονική, Εργασία & Εφαρμογές της

Δοκιμάστε Το Όργανο Μας Για Την Εξάλειψη Των Προβλημάτων





Το πρωτόκολλο User Datagram Protocol (UDP) στη δικτύωση υπολογιστών αναπτύχθηκε το 1980 από τον David P. Reed. Είναι ένα τυπικό πρωτόκολλο και αποτελεί μέρος του Πρωτόκολλο TCP/IP μέσω διαδικτύου. Αυτό το πρωτόκολλο επιτρέπει απλώς στις εφαρμογές των υπολογιστών να μεταδίδουν τα μηνύματα σε μορφή datagrams από τον έναν υπολογιστή στον άλλο μέσω του δικτύου IP (Internet Protocol). Αυτό το UDP είναι ένα εναλλακτικό πρωτόκολλο επικοινωνίας στο πρωτόκολλο ελέγχου μετάδοσης. Αυτό το πρωτόκολλο παρέχει ένα σύνολο κανόνων όπως ένα TCP που καθορίζει τον τρόπο ανταλλαγής των πληροφοριών στο διαδίκτυο. Αυτό το άρθρο εξετάζει μια επισκόπηση του Πρωτόκολλο UDP ή datagram χρήστη – εργασία με εφαρμογές.


Τι είναι το Πρωτόκολλο Δεδομένων Χρήστη;

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



Το UDP χρησιμοποιεί υπηρεσίες IP για να παρέχει τον καλύτερο μηχανισμό παράδοσης. Σε αυτό το πρωτόκολλο, ο παραλήπτης δεν παράγει μια επιβεβαίωση πακέτου που έλαβε και διαδοχικά, ο αποστολέας δεν παραμένει για καμία επιβεβαίωση μεταδιδόμενου πακέτου. Επομένως, αυτό το σφάλμα θα καταστήσει αυτό το πρωτόκολλο αναξιόπιστο και ευκολότερο στην επεξεργασία.

Χαρακτηριστικά

ο χαρακτηριστικά του πρωτοκόλλου datagram χρήστη περιλαμβάνουν τα ακόλουθα.



  • Αυτό δεν είναι πρωτόκολλο προσανατολισμένο στη σύνδεση.
  • Η παράδοση των δεδομένων δεν είναι εγγυημένη.
  • Αυτό το πρωτόκολλο είναι πολύ απλό και κατάλληλο για επικοινωνίες που βασίζονται σε έρευνες.
  • Μεταδίδει τα πακέτα σε μαζική ποσότητα.
  • Ένα datagram UDP χρησιμοποιείται σε DNS, NFS, TFTP, SNMP κ.λπ.
  • Αυτό το πρωτόκολλο είναι καλό για τη ροή δεδομένων προς μία μόνο κατεύθυνση.
  • Δεν παρέχει μηχανισμό ελέγχου συμφόρησης.
  • Είναι κατάλληλο για εφαρμογές ροής όπως ροή πολυμέσων, VoIP κ.λπ.
  • Δεν υπάρχει συμφόρηση ή έλεγχος ροής, επομένως ο αποστολέας μπορεί να ξεπεράσει το buffer του δέκτη.
  • Προσθέτει διευθυνσιοδότηση διεργασίας σε διεργασία και άθροισμα ελέγχου στην IP.
  • Χρησιμοποιείται μόλις ανοίξει η πρίζα σε λειτουργία datagram.
  • Για τη μεταφορά δεδομένων, είναι απαραίτητο ένα πρωτόκολλο lock-step με το UDP.

Χαρακτηριστικά

ο χαρακτηριστικά του πρωτοκόλλου datagram χρήστη περιλαμβάνουν τα ακόλουθα.

  • Αυτό το πρωτόκολλο είναι μια μεταβλητή καθώς και ένα πρωτόκολλο τύπου χωρίς σύνδεση.
  • Είναι σχεδόν μηδενικό πρωτόκολλο.
  • Αυτό το πρωτόκολλο είναι καλό όταν η ροή δεδομένων είναι προς μία μόνο κατεύθυνση.
  • Με τη χρήση αυτού του πρωτοκόλλου, δεν παρέχεται μηχανισμός ελέγχου συμφόρησης.
  • Αυτό το πρωτόκολλο παρέχει ελάχιστες υπηρεσίες μεταφοράς.
  • Το UDP είναι ένα πρωτόκολλο χωρίς ιθαγένεια.
  • Τα datagrams UDP χρησιμοποιούν παρόμοια διαδρομή και φτάνουν με τη σωστή σειρά στον προορισμό.
  • Οι εφαρμογές UDP θεωρούνται πάντα αναξιόπιστες.
  • Το UDP παρέχει δεδομένα απλά στο δίκτυο μόλις ο προορισμός είναι έτοιμος να λάβει τα δεδομένα.

Αρχιτεκτονική πρωτοκόλλου Datagram User

Τα πακέτα πρωτοκόλλου datagram χρήστη ονομάζονται συνήθως User Datagram και το μέγεθος της κεφαλίδας είναι σταθερό, δηλαδή 8 byte. Ας συζητήσουμε τη μορφή του datagram χρήστη. Η κεφαλίδα του UDP περιλαμβάνει τέσσερα πεδία αριθμός θύρας πηγής, αριθμός θύρας προορισμού, συνολικό μήκος και άθροισμα ελέγχου όπου κάθε πεδίο συζητείται παρακάτω.

  Μορφή κεφαλίδας πρωτοκόλλου δεδομένων προγράμματος χρήστη
Μορφή κεφαλίδας πρωτοκόλλου δεδομένων προγράμματος χρήστη
  • Ο αριθμός θύρας προέλευσης είναι μια πληροφορία 16-bit που αναγνωρίζει ποια θύρα πρόκειται να μεταδώσει το πακέτο.
  • Ο αριθμός θύρας προορισμού απλώς αναγνωρίζει ποια θύρα πρόκειται να επιτρέψει τα δεδομένα, τα οποία είναι δεδομένα 16-bit που χρησιμοποιούνται για την αναγνώριση της υπηρεσίας σε επίπεδο εφαρμογής μέσω του μηχανήματος προορισμού.
  • Το Length είναι ένα πεδίο 16-bit που προσδιορίζει ολόκληρο το μήκος του πακέτου UDP που περιλαμβάνει την κεφαλίδα. Έτσι, η ελάχιστη τιμή θα είναι 8 byte επειδή το μέγεθος της κεφαλίδας είναι 8 byte.
  • Το άθροισμα ελέγχου είναι ένα πεδίο 16 bit, το οποίο επαληθεύει εάν τα δεδομένα είναι σωστά ή όχι επειδή υπάρχει πιθανότητα τα δεδομένα να καταστραφούν κατά τη μετάδοση. Άρα, το άθροισμα ελέγχου είναι ένα προαιρετικό πεδίο, επομένως εξαρτάται κυρίως από την εφαρμογή, αν χρειάζεται να γράψει το άθροισμα ελέγχου ή όχι.

Εάν δεν επιθυμεί να γράψει το άθροισμα ελέγχου, στη συνέχεια και τα 16 bit παραμένουν ως  «0». Σε αυτό το πρωτόκολλο, το πεδίο αθροίσματος ελέγχου δίνεται σε ολόκληρο το πακέτο, δηλαδή στο τμήμα κεφαλίδας & δεδομένων, αλλά το πεδίο αθροίσματος ελέγχου στην IP εφαρμόζεται μόνο στο πεδίο κεφαλίδας.

Πώς λειτουργεί το Πρωτόκολλο Δεδομένων Χρήστη;

Το πρωτόκολλο datagram χρήστη χρησιμοποιεί IP για να αποκτήσει ένα datagram από τον έναν υπολογιστή στον άλλο. Αυτό το πρωτόκολλο λειτουργεί συλλέγοντας δεδομένα μέσα σε ένα πακέτο UDP και συμπεριλαμβάνοντας τα δικά του δεδομένα κεφαλίδας στο πακέτο. Επομένως, αυτά τα δεδομένα περιλαμβάνουν τόσο τη θύρα προέλευσης όσο και τη θύρα προορισμού IP στην οποία θα συνομιλήσετε, το μήκος του πακέτου και ένα άθροισμα ελέγχου. Μόλις τα πακέτα UDP συνοψιστούν σε ένα πακέτο IP, τότε αποστέλλονται στους προορισμούς τους.

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

Οι περισσότερες εφαρμογές περιμένουν τυχόν απαντήσεις που υποτίθεται ότι θα λάβουν ως συνέπεια των πακέτων που αποστέλλονται μέσω UDP. Έτσι, εάν κάποια εφαρμογή δεν λάβει απάντηση σε μια συγκεκριμένη στιγμή, τότε πάλι η εφαρμογή μεταδίδει το πακέτο ή τερματίζει την προσπάθεια.

Αυτό το πρωτόκολλο χρησιμοποιεί ένα απλό μοντέλο μετάδοσης που δεν περιέχει διαλόγους χειραψίας για την παροχή παραγγελίας, αξιοπιστίας ή ακεραιότητας δεδομένων. Ως αποτέλεσμα, η υπηρεσία αυτού του πρωτοκόλλου είναι ανεύθυνη, επομένως τα πακέτα μπορεί να εμφανίζονται εκτός λειτουργίας, να έχουν διπλότυπα ή να εξαφανίζονται χωρίς προειδοποίηση.

Διαφορά B/w TCP έναντι UDP

ο διαφορά μεταξύ TCP και UDP περιλαμβάνει τα ακόλουθα.

TCP

UDP

Το TCP χρησιμοποιεί μια εγκατεστημένη σύνδεση για τη μετάδοση δεδομένων. Το UDP είναι πρωτόκολλο χωρίς σύνδεση.
Αυτό το πρωτόκολλο είναι αξιόπιστο. Αυτό το πρωτόκολλο δεν είναι αξιόπιστο.
Έχει τη δυνατότητα αλληλουχίας δεδομένων. Δεν έχει τη δυνατότητα αλληλουχίας δεδομένων.
Παρέχει τον μηχανισμό για ευρύ έλεγχο σφαλμάτων. Διαθέτει βασικό μηχανισμό ελέγχου σφαλμάτων με αθροίσματα ελέγχου.
Η ταχύτητά του είναι πιο αργή από το UDP. Η ταχύτητά του είναι γρήγορη από το TCP.
Δεν υποστηρίζει εκπομπή. Υποστηρίζει εκπομπή.
Σε αυτό το πρωτόκολλο, υπάρχει δυνατότητα αναμετάδοσης του χαμένου πακέτου. Δεν υπάρχει πιθανότητα αναμετάδοσης χαμένου πακέτου.
Διαθέτει σύνδεση ροής byte. Διαθέτει σύνδεση ροής μηνυμάτων.
Έχει 20 έως 60 μεταβλητά μήκη κεφαλίδας. Έχει σταθερό μήκος κεφαλίδας 8 byte.
Το βάρος του TCP είναι μεγάλο. Το βάρος του UCP δεν είναι βαρύ.
Αυτό το πρωτόκολλο χρησιμοποιεί τεχνικές χειραψίας όπως ACK, SYN και SYN-ACK. Δεν χρησιμοποιεί τεχνικές χειραψίας.
Αυτό το πρωτόκολλο χρησιμοποιείται από FTP , SMTP, HTTP και HTTP. Αυτό το πρωτόκολλο χρησιμοποιείται από DHCP, DNS, TFTP, RIP,  VoIP και SNMP.
Τα γενικά έξοδα είναι υψηλά σε σύγκριση με το UDP. Τα γενικά έξοδα είναι πολύ χαμηλά σε σύγκριση με το TCP.

Πλεονεκτήματα και μειονεκτήματα

ο πλεονεκτήματα του UDP περιλαμβάνουν τα ακόλουθα.

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

ο μειονεκτήματα του UDP περιλαμβάνουν τα ακόλουθα.

  • Το πρωτόκολλο UDP είναι ένα αναξιόπιστο και χωρίς σύνδεση πρωτόκολλο μεταφοράς.
  • Αυτό το πρωτόκολλο δεν χρησιμοποιεί κανέναν έλεγχο σφαλμάτων. Επομένως, εάν αυτό το πρωτόκολλο εντοπίσει οποιοδήποτε σφάλμα εντός του ληφθέντος πακέτου, τότε το απορρίπτει σιωπηλά.
  • Δεν υπάρχει μηχανισμός συμφόρησης και ελέγχου ροής.
  • Δεν υπάρχει εγγυημένη παράδοση.
  • Το πρωτόκολλο καταναλωτικού datagram υποφέρει κυρίως από απώλεια πακέτων.
  • Το UDP προκαλεί απώλεια δεδομένων.
  • Οι δρομολογητές είναι κάπως απρόσεκτοι από αυτό το πρωτόκολλο, επομένως δεν το αναμεταδίδουν ποτέ εάν διακοπεί.

Εφαρμογές/Χρήσεις Πρωτοκόλλου Datagram User

ο εφαρμογές ή χρήσεις του πρωτοκόλλου User Datagram περιλαμβάνουν τα ακόλουθα.

  • Το UDP χρησιμοποιείται σε εφαρμογές ευαίσθητες στο χρόνο και επίσης από διακομιστές που απαντούν σε μικρά ερωτήματα από μεγαλύτερη βάση πελατών.
  • Αυτό είναι κατάλληλο για εκπομπές πακέτων, ειδικά για μετάδοση σε όλο το δίκτυο.
  • Χρησιμοποιείται επίσης σε Voice over IP, διαδικτυακά παιχνίδια και συστήματα ονομάτων τομέα.
  • Αυτό το πρωτόκολλο χρησιμοποιείται σε εφαρμογές δικτύου όπως φωνητικές επικοινωνίες, παιχνίδια και βίντεο.
  • Αυτά χρησιμοποιούνται όπου απαιτείται μετάδοση δεδομένων χωρίς απώλειες.
  • Αυτό το πρωτόκολλο χρησιμοποιείται για multicasting καθώς υποστηρίζει απλώς μεταγωγή πακέτων.
  • Το UDP χρησιμοποιείται σε εφαρμογές που εξαρτώνται από αξιόπιστη ανταλλαγή δεδομένων, αλλά θα πρέπει να περιλαμβάνουν τις δικές τους τεχνικές για να ανταποκρίνονται σε πακέτα.
  • Το UDP χρησιμοποιείται όπου η ταχύτητα είναι κρίσιμη και όχι η αξιοπιστία.

Επομένως, πρόκειται για όλα μια επισκόπηση του πρωτοκόλλου datagram χρήστη – αρχιτεκτονική, εργασία με εφαρμογές. Οι διαφορετικές λειτουργίες του πρωτοκόλλου User Datagram περιλαμβάνουν κυρίως ανέπαφες υπηρεσίες, έλεγχο ροής & σφαλμάτων, ενθυλάκωση και αποκαψούλωση. Τα παραδείγματα πρωτοκόλλου datagram χρήστη είναι: διαδικτυακά παιχνίδια, τηλεδιάσκεψη, VoIP (φωνή μέσω IP) και DNA (σύστημα ονομάτων τομέα). Εδώ είναι μια ερώτηση για εσάς, τι είναι οι θύρες UDP;