2017-10-02 1 views
1

Je suis un peu confus lorsque je lis que les informations sont envoyées en texte brut sur Internet. Je pensais que toutes les données étaient envoyées sous forme de données binaires - par ex. un serveur web comme Django renvoie des octets, pas des chaînes. Qu'est-ce que je rate?Texte brut vs binaire

+0

Je suppose que vous parliez du codage de données qui a lieu entre la couche d'application et la couche de présentation? – TNU

Répondre

2

Ce qui vous manque, c'est que "texte brut" est juste une série d'octets. En général, les octets sont des "données binaires", mais un sous-ensemble de données binaires est un "texte lisible par un humain codé ASCII", ce que nous appelons le texte brut. L'IP lui-même a quelques cadres, en-têtes, drapeaux et autres, ce n'est pas du texte, mais la charge utile d'un paquet TCP/IP pour un protocole en texte brut comme SMTP ou HTTP est facile à lire.

Vous pouvez toujours utiliser un outil comme tcpdump ou Wireshark pour vider les paquets et voir ce qu'il y a à l'intérieur. Il y a beaucoup examples of how this plays out où les données binaires ressemble à ceci:

0x0000: 4520 0054 882b 0000 3001 7cf5 45fe d52b E..T.+..0.|.E..+ 
0x0010: 4815 222a 0800 3530 272a 0000 25ff d744 H."..50'..%..D 
0x0020: ae5e 0500 0809 0a0b 0c0d 0e0f 1011 1213 .^.............. 
0x0030: 1415 1617 1819 1a1b 1c1d 1e1f 2021 2223 .............!"# 
0x0040: 2425 2627 2829 2a2b 2c2d 2e2f 3031 3233 $%&'()*+,-./
0x0050: 3435 3637        4567 

Au milieu est la représentation hexadécimale des données. Sur la droite est l'expression en texte brut de même. Vous pouvez voir à la fin que c'est juste des données ASCII même si les bits précédents ressemblent à des ordures.

+0

Bonne explication. – TNU

+0

Ah, juste ce dont j'avais besoin. Merci! – ukejoe