2017-07-18 3 views
2

J'ai entendu dire que de nombreuses entreprises comme Facebook utilisent UDP pour extraire des données de memcached. J'ai un doute, Comment ils s'assurent qu'il n'y a AUCUNE perte de paquet et l'ordre du paquet reçu est par condition. Comme nous savons tcp fournissent une telle installation mais UDP ne fait pas.Perte de paquets lors de l'utilisation de UDP pour récupérer des données à partir de Memcached

+0

Vous pouvez superposer un protocole d'application par-dessus UDP qui assure la fiabilité de l'application. –

+0

@Ron Maupin Lorsque nous utilisons UDP, le protocole MEMCACHED fait-il le travail pour nous OU Nous devons écrire une couche d'application pour assurer la cohérence des données récupérées. – shubham12511

Répondre

0

modèle OSI a 7 couches qui sont:

  1. couche application
  2. Présentation couche
  3. couche session
  4. Transport Layer
  5. couche réseau
  6. Data Link couche
  7. physique Couche

Diviser les choses en couches est une très bonne approche pour résoudre les problèmes, mais cela ne signifie pas que vous devez faire toutes les opérations réseau dans la couche réseau.

Comme vous l'avez mentionné, TCP fournit des informations en retour aux systèmes d'extrémité lorsque UDP ne le fait pas, mais UDP a ses propres avantages. Le premier datagramme d'UDP est plus simple que celui de TCP. Et aussi la plupart des systèmes énormes comme Facebook utilise UDP parce que l'utilisation de TCP pour ces systèmes aimables ne serait pas très intelligent puisque tous les expéditeurs de données devraient garder une trace du taux d'envoi, taux de retransmissions pour beaucoup de nombreux récepteurs. Donc, s'ils ont utilisé TCP, leur couche réseau serait sous très grande pression. Ils font donc le contrôle de flux dans la couche application pour réduire le trafic réseau.

+0

Oui, UDP a beaucoup d'avantages sur TCP, mais mon souci était, Comment les gens gèrent la cohérence tout en utilisant UDP. – shubham12511