Concevoir un protocole applicatif
Les parties d'un protocole : rôles, messages et codes de réponse, format texte ou binaire, délimitation des messages, automate de la session, erreurs, délais et version, avec HTTP/1.1 et SMTP en exemples.
- 32 cartes
- 5 thèmes
- Gratuit
Le programme, thème par thème
Le poids de chaque thème suit celui que lui donne l'examen.
- Notions
- Questions
- Ranger et relier
- Sur le schéma
- Mises en situation
Quelques cartes du deck
Protocole applicatif : de quoi s'agit-il ?
Voir la réponse
Ensemble de règles qui fixent les messages que deux programmes s'échangent, leur format et leur ordre permis, au-dessus d'un transport comme TCP.
TCP livre des octets, pas un sens. Le protocole dit qui parle en premier, ce que veut dire chaque message et ce qui arrive quand quelque chose tourne mal. HTTP et SMTP en sont des exemples.
Spécification : type sur 1 octet, longueur du texte sur 2 octets gros-boutistes, puis le texte en ASCII. Quels octets (en hexadécimal) forment le message de type 2 portant « OUI » ?
02 00 03 4F 55 4902 03 00 4F 55 4902 00 06 4F 55 4902 00 03 6F 75 69
Voir la réponse
02 00 03 4F 55 49Type 02, longueur 3 sur deux octets gros-boutistes (00 03), puis « O » = 4F, « U » = 55 et « I » = 49. Le deuxième choix écrit la longueur en petit-boutiste, le troisième compte tout le message (1 + 2 + 3 = 6 octets) au lieu du seul texte, et le dernier code « oui » en minuscules.
Sur TCP, un seul recv peut rendre … d'un message ou … collés : c'est au protocole de les délimiter.
Voir la réponse
Sur TCP, un seul recv peut rendre la moitié d'un message ou deux messages collés : c'est au protocole de les délimiter.
Le récepteur doit donc accumuler les octets dans un tampon et ne traiter un message que lorsqu'il est complet.
Délimitation des messages : de quoi s'agit-il ?
Voir la réponse
Méthode qui permet au récepteur de savoir où un message finit dans un flux d'octets : séparateur, longueur en préfixe ou taille fixe.
TCP ne garde aucune frontière : un
recvrend la moitié d'un message ou deux messages collés. SMTP sépare par\r\n, HTTP/1.1 donne la taille du corps parContent-Length.