7Aug
Έχετε δει πιθανώς αναφορές σε TCP και UDP κατά τη ρύθμιση της προώθησης θύρας σε ένα δρομολογητή ή κατά τη διαμόρφωση του λογισμικού τείχους προστασίας.Αυτά τα δύο πρωτόκολλα χρησιμοποιούνται για διαφορετικούς τύπους δεδομένων.
Το TCP / IP είναι μια σειρά πρωτοκόλλων που χρησιμοποιούνται από συσκευές για να επικοινωνούν μέσω του Διαδικτύου και των περισσότερων τοπικών δικτύων.Ονομάζεται μετά από δύο από τα αρχικά πρωτόκολλα - το πρωτόκολλο ελέγχου μετάδοσης( TCP) και το πρωτόκολλο Internet( IP).Το TCP παρέχει στις εφαρμογές έναν τρόπο να παραδίδουν( και να λαμβάνουν) μια ροή πακέτων πληροφοριών που έχει παραγγελθεί και ελέγξει με σφάλματα μέσω του δικτύου.Το πρωτόκολλο User Datagram Protocol( UDP) χρησιμοποιείται από τις εφαρμογές για την παροχή πιο γρήγορης ροής πληροφοριών, εξαλείφοντας τον έλεγχο σφαλμάτων.Όταν διαμορφώνετε κάποιο υλικό ή λογισμικό δικτύου, ίσως χρειαστεί να γνωρίζετε τη διαφορά.
Τι έχουν κοινά
Και τα TCP και UDP είναι πρωτόκολλα που χρησιμοποιούνται για την αποστολή δυφίων δεδομένων γνωστών ως πακέτα - μέσω του Διαδικτύου.Και τα δύο πρωτόκολλα βασίζονται στο πρωτόκολλο IP.Με άλλα λόγια, αν στέλνετε ένα πακέτο μέσω TCP ή UDP, αυτό το πακέτο αποστέλλεται σε μια διεύθυνση IP.Αυτά τα πακέτα αντιμετωπίζονται παρομοίως, καθώς προωθούνται από τον υπολογιστή σας στους ενδιάμεσους δρομολογητές και στον προορισμό.
Τα TCP και UDP δεν είναι τα μόνα πρωτόκολλα που λειτουργούν στην κορυφή του IP.Ωστόσο, είναι οι πιο ευρέως χρησιμοποιούμενες.
Πώς λειτουργεί το TCP
Το TCP είναι το πιο συχνά χρησιμοποιούμενο πρωτόκολλο στο Internet.
Όταν ζητάτε μια ιστοσελίδα στο πρόγραμμα περιήγησής σας, ο υπολογιστής σας στέλνει τα πακέτα TCP στη διεύθυνση του διακομιστή του web, ζητώντας του να στείλει την ιστοσελίδα πίσω σε εσάς.Ο διακομιστής ιστού αποκρίνεται αποστέλλοντας μια ροή πακέτων TCP, την οποία το πρόγραμμα περιήγησης του ιστού σας συσχετίζει για να σχηματίσει την ιστοσελίδα.Όταν κάνετε κλικ σε ένα σύνδεσμο, συνδεθείτε, δημοσιεύσετε ένα σχόλιο ή κάνετε οτιδήποτε άλλο, το πρόγραμμα περιήγησης ιστού σας στέλνει πακέτα TCP στο διακομιστή και ο διακομιστής στέλνει πίσω τα πακέτα TCP.
Το TCP αφορά μόνο την αξιοπιστία-πακέτα που αποστέλλονται με TCP παρακολουθούνται έτσι ώστε να μην χαθούν ή αλλοιωθούν δεδομένα στη διαμετακόμιση.Αυτός είναι ο λόγος για τον οποίο οι λήψεις αρχείων δεν καταστρέφονται ακόμη και αν υπάρχουν θόρυβοι δικτύου.Φυσικά, εάν ο παραλήπτης είναι εντελώς εκτός σύνδεσης, ο υπολογιστής σας θα εγκαταλείψει και θα δείτε ένα μήνυμα σφάλματος λέγοντας ότι δεν μπορεί να επικοινωνήσει με τον απομακρυσμένο κεντρικό υπολογιστή.Το
TCP επιτυγχάνει αυτό με δύο τρόπους.Πρώτα, παραγγέλνει πακέτα με αρίθμηση τους.Δεύτερον, ελέγχει το σφάλμα, έχοντας τον παραλήπτη να στείλει μια απάντηση στον αποστολέα λέγοντας ότι έλαβε το μήνυμα.Εάν ο αποστολέας δεν λάβει σωστή απάντηση, μπορεί να ξαναστείλει τα πακέτα για να διασφαλίσει ότι ο παραλήπτης θα τα λάβει σωστά.Το
Process Explorer και άλλα βοηθητικά προγράμματα συστήματος μπορούν να δείξουν τον τύπο των συνδέσεων που κάνει μια διαδικασία - εδώ μπορούμε να δούμε το πρόγραμμα περιήγησης Chrome με ανοιχτές συνδέσεις TCP σε διάφορους διακομιστές ιστού.
Πώς λειτουργεί το UDP
Το πρωτόκολλο UDP λειτουργεί παρόμοια με το TCP, αλλά εκπέμπει όλα τα πράγματα ελέγχου σφαλμάτων.Όλη η αμφίδρομη επικοινωνία εισάγει λανθάνουσα κατάσταση, επιβραδύνοντας τα πράγματα.
Όταν μια εφαρμογή χρησιμοποιεί UDP, τα πακέτα αποστέλλονται στον παραλήπτη.Ο αποστολέας δεν περιμένει να βεβαιωθεί ότι ο παραλήπτης έλαβε το πακέτο - απλώς συνεχίζει να στέλνει τα επόμενα πακέτα.Εάν ο παραλήπτης χάσει μερικά πακέτα UDP εδώ και εκεί, χάνεται - ο αποστολέας δεν θα τα αποστείλει ξανά.Η απώλεια όλων αυτών των δαπανών σημαίνει ότι οι συσκευές μπορούν να επικοινωνούν πιο γρήγορα.Το
UDP χρησιμοποιείται όταν η ταχύτητα είναι επιθυμητή και η διόρθωση λάθους δεν είναι απαραίτητη.Για παράδειγμα, το UDP χρησιμοποιείται συχνά για ζωντανές εκπομπές και online παιχνίδια.
Για παράδειγμα, ας πούμε ότι βλέπετε μια ζωντανή ροή βίντεο, η οποία συχνά μεταδίδεται χρησιμοποιώντας UDP αντί για TCP.Ο διακομιστής απλώς στέλνει μια σταθερή ροή πακέτων UDP σε υπολογιστές που παρακολουθούν.Αν χάσετε τη σύνδεσή σας για λίγα δευτερόλεπτα, το βίντεο μπορεί να παγώσει ή να αναπηδήσει για λίγο και στη συνέχεια να μεταβεί στο τρέχον κομμάτι της εκπομπής.Αν αντιμετωπίζετε μειωμένη απώλεια πακέτων, το βίντεο ή ο ήχος ενδέχεται να παραμορφωθεί για μια στιγμή καθώς το βίντεο συνεχίζει να αναπαράγεται χωρίς τα δεδομένα που λείπουν.Το
λειτουργεί με παρόμοιο τρόπο και στα online παιχνίδια.Αν χάσετε κάποια πακέτα UDP, οι χαρακτήρες αναπαραγωγής μπορεί να εμφανίζονται να τηλεμετατρέπονται σε όλο το χάρτη καθώς λαμβάνετε τα νεότερα πακέτα UDP.Δεν υπάρχει λόγος να ζητήσετε τα παλιά πακέτα εάν τα χάσατε, καθώς το παιχνίδι συνεχίζεται χωρίς εσάς.Το μόνο που έχει σημασία είναι τι συμβαίνει τώρα στο διακομιστή του παιχνιδιού - όχι αυτό που συνέβη πριν από μερικά δευτερόλεπτα.Διόρθωση Η διόρθωση σφαλμάτων του TCP συμβάλλει στην επιτάχυνση της σύνδεσης του παιχνιδιού και στη μείωση της καθυστέρησης.
Έτσι τι;
Το αν η εφαρμογή χρησιμοποιεί TCP ή UDP εξαρτάται από τον προγραμματιστή της και η επιλογή εξαρτάται από το τι χρειάζεται μια εφαρμογή.Οι περισσότερες εφαρμογές χρειάζονται τη διόρθωση σφαλμάτων και την ευρωστία του TCP, αλλά ορισμένες εφαρμογές χρειάζονται την ταχύτητα και τη μειωμένη επιβάρυνση του UDP.Εάν ενεργοποιήσετε ένα εργαλείο ανάλυσης δικτύου, όπως το Wireshark, μπορείτε να δείτε τους διαφορετικούς τύπους πακέτων που ταξιδεύουν μπροστά και πίσω.
Αν δεν είστε διαχειριστής δικτύου ή προγραμματιστής λογισμικού, αυτό δεν πρέπει να σας επηρεάζει πάρα πολύ.Αν διαμορφώνετε το λογισμικό του δρομολογητή ή του τείχους προστασίας και δεν είστε σίγουροι αν μια εφαρμογή χρησιμοποιεί TCP ή UDP, μπορείτε γενικά να επιλέξετε την επιλογή "Και τα δύο" ώστε ο δρομολογητής ή το τείχος προστασίας να εφαρμόζουν τον ίδιο κανόνα τόσο στην κίνηση TCP όσο και στο UDP.