Protocoles TCP vs UDP
TCP et UDP s'inscrivent tous deux dans la quatrième couche du modèle OSI qui est la couche de transport juste au-dessus de la couche IP. TCP et UDP prennent tous deux en charge la transmission de données de deux manières différentes, TCP est orienté connexion et UDP est sans connexion.
Dans le transport des paquets, il existe deux contraintes majeures, l'une est la fiabilité et l'autre la latence. La fiabilité est la livraison garantie du paquet et la latence est la livraison rapide du paquet. Les deux ne peuvent pas être atteints pour atteindre leur maximum en même temps mais pourraient être optimisés.
Afin d'initier une communication de données entre deux nœuds, l'expéditeur doit connaître l'adresse IP du destinataire ainsi que le numéro de port. L'adresse IP sert à acheminer le paquet et le numéro de port doit remettre le paquet à la bonne personne. En expliquant davantage ce scénario dans un exemple du monde réel, pensez à un environnement multi-complexe commercial et quelqu'un vous a dirigé vers le magasin 30 (qui est un salon de coiffure), Golden Plaza, No 21 Park Ave, pour atteindre cet endroit, vous devez savoir seulement Non 21 park avenue, mais pour obtenir le service du saloon, vous devez connaître le numéro de magasin qui est 30. Vous pouvez prendre le numéro 21 comme adresse IP et le magasin no 30 comme port no.
Comme dans le modèle de communication de données et de services d'application, les applications TCP écoutent les numéros de port pour accepter les connexions TCP. De même que les applications UDP écoutent également les numéros de port pour fournir des services UDP.
TCP:
Défini dans la RFC 793
TCP est un protocole fiable de bout en bout orienté connexion pour prendre en charge la transmission de données garantie. Depuis l'établissement de la connexion, TCP assure la fiabilité. Certaines des principales caractéristiques de TCP sont la prise de contact à 3 voies (SYN, SYN-ACK, ACK), la détection d'erreur, le démarrage lent, le contrôle de flux et le contrôle de la congestion.
TCP est un mécanisme de transport fiable, il sera donc utilisé là où la livraison de paquets est un must même en cas de congestion. Les exemples typiques pour les applications TCP et les numéros de port sont les données FTP (20), FTP Control (21), SSH (222), Telnet (23), Mail (25), DNS (53), HTTP (80), POP3 (110), SNMP (161) et HTTPS (443). Ce sont des applications TCP bien connues.
UDP:
Défini dans la RFC 768
UDP (User Datagram Protocol) est un protocole de transmission simple qui fournit un service peu fiable. Cela ne signifie pas qu'UDP ne fournira pas les données, mais il n'y a aucun mécanisme pour surveiller le contrôle de l'encombrement ou la perte de paquets, etc. Comme il est simple, il évite le traitement de surcharge à l'interface réseau. Les applications en temps réel utilisent principalement UDP car la suppression de paquets est préférable aux paquets retardés. Un exemple typique est celui des flux multimédias voix sur IP.
Résumé:
(1) TCP est orienté connexion et fiable alors que UDP est moins connecté et peu fiable.
(2) TCP a besoin de plus de traitement au niveau de l'interface réseau alors que ce n'est pas le cas dans UDP.
(3) TCP utilise, prise de contact à 3 voies, contrôle de la congestion, contrôle de flux et autre mécanisme pour assurer une transmission fiable.
(4) UDP est principalement utilisé dans les cas où le délai de paquet est plus grave que la perte de paquet. (Applications en temps réel)