Voici une définition un peu simpliste :
Vous le saurez quand vous le verrez.
C'est l'un des cas où il est très difficile de trouver une définition concise qui couvre tous les cas de figure. Mais c'est aussi l'un de ces cas où les cas de figure ne sont absolument pas pertinents, car ils ne se produisent tout simplement pas dans la vie réelle.
La plupart des protocoles que vous rencontrerez dans la vie réelle ressembleront à ceci :
> fg,m4wr76389b zhjsfg gsidf7t5e89wriuotu nbsdfgizs89567sfghlkf
> b9er t8ß03q+459tw4t3490ß´5´3w459t srt üßodfasdfäasefsadfaüdfzjhzuk78987342
< mvclkdsfu93q45324äö53q4lötüpq34tasä#etr0 awe+s byf eart
[Imaginez une tonne d'autres conneries non imprimables. L'une des difficultés pour faire comprendre la différence entre le texte et le binaire est qu'il faut le faire en texte :-)].
Ou comme ceci :
< HELLO server.example.com
> HELLO client.example.com
< GO
> GETFILE /foo.jpg
< Length: 3726
< Type: image/jpeg
< READY?
> GO
< ... server sends 3726 bytes of binary data ...
> ACK
> BYE
(Je l'ai inventé sur le champ.)
Il n'y a tout simplement pas beaucoup d'ambiguïté.
Une autre définition que j'ai parfois entendue est la suivante
un protocole texte est un protocole que vous pouvez déboguer à l'aide de telnet
Je fais peut-être preuve d'une certaine ringardise, mais j'ai avoir a écrit et lu des courriers électroniques via SMTP et POP3, lu des articles usenet via NNTP et consulté des pages web via HTTP en utilisant telnet
Il n'y a pas d'autre raison que de voir si cela fonctionnerait réellement.
En fait, en écrivant ces lignes, j'ai repris la fièvre :
bash-4.0$ telnet smtp.googlemail.com 25
Trying 74.125.77.16...
Connected to googlemail-smtp.l.google.com.
Escape character is '^]'.
< 220 googlemail-smtp.l.google.com ESMTP Thu, 15 Apr 2010 19:19:39 +0200
> HELO
< 501 Syntactically invalid HELO argument(s)
> HELO client.example.com
< 250 googlemail-smtp.l.google.com Hello client.example.com [666.666.666.666]
> RCPT TO:Me <Me@Example.Com>
< 503 sender not yet given
> SENDER:Me <Me@Example.Com>
< 500 unrecognized command
> RCPT FROM:Me <Me@Example.Com>
< 500 unrecognized command
> FROM:Me <Me@Example.Com>
< 500-unrecognized command
> HELP
< 214-Commands supported:
< 214 AUTH HELO EHLO MAIL RCPT DATA NOOP QUIT RSET HELP ETRN
> MAIL FROM:Me <Me@Example.Com>
< 250 OK
> RCPT TO:You <You@SomewhereElse.Example.Com>
< 250 Accepted
> DATA
< 354 Enter message, ending with "." on a line by itself
> From: Me <Me@Example.Com>
> To: You <You@SomewhereElse.Example.Com>
> Subject: Testmail
>
> This is a test.
> .
< 250 OK id=1O2Sjq-0000c4-Qv
> QUIT
< 221 googlemail-smtp.l.google.com closing connection
Connection closed by foreign host.
Bon sang, ça fait un moment que je n'ai pas fait ça. Il y a pas mal d'erreurs là-dedans :-)