Ποια είναι η διαφορά μεταξύ TCP και UDP;

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

Το TCP / IP είναι μια σειρά πρωτοκόλλων που χρησιμοποιούνται από συσκευές για επικοινωνία μέσω του Διαδικτύου και των περισσότερων τοπικών δικτύων. Ονομάστηκε μετά από δύο από τα πρωτότυπα πρωτόκολλά του - το πρωτόκολλο ελέγχου μετάδοσης (TCP) και το πρωτόκολλο διαδικτύου (IP). Το TCP παρέχει στις εφαρμογές έναν τρόπο παράδοσης (και λήψης) μιας παραγγελίας και ελεγχόμενου σφάλματος ροής πακέτων πληροφοριών μέσω του δικτύου. Το User Datagram Protocol (UDP) χρησιμοποιείται από εφαρμογές για την παροχή μιας ταχύτερης ροής πληροφοριών καταργώντας τον έλεγχο σφαλμάτων. Κατά τη διαμόρφωση κάποιου υλικού ή λογισμικού δικτύου, ίσως χρειαστεί να γνωρίζετε τη διαφορά.

Τι έχουν κοινό

ΣΧΕΤΙΚΟΙ: Πώς να βρείτε τις ιδιωτικές και δημόσιες διευθύνσεις IP σας

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

TCP και UDP δεν είναι τα μόνα πρωτόκολλα που λειτουργούν πάνω από IP. Ωστόσο, είναι τα πιο ευρέως χρησιμοποιούμενα.

Πώς λειτουργεί το TCP

Το TCP είναι το πιο συχνά χρησιμοποιούμενο πρωτόκολλο στο Διαδίκτυο.

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

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

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

ΣΧΕΤΙΖΕΤΑΙ ΜΕ: Κατανόηση του Process Explorer

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

Πώς λειτουργεί το UDP

ΣΧΕΤΙΖΕΤΑΙ ΜΕ: Πώς η καθυστέρηση μπορεί να κάνει τις γρήγορες συνδέσεις στο Διαδίκτυο να αισθάνονται αργές

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

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

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

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

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

Και λοιπόν?

ΣΧΕΤΙΖΕΤΑΙ ΜΕ: Τρόπος χρήσης του Wireshark για λήψη, φιλτράρισμα και επιθεώρηση πακέτων

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

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