Linux - J'ai quelques questions sur l'ordre des octets des sockets.
我想大声告诉你
我想大声告诉你 2017-05-31 10:37:36
0
3
800

J'ai récemment découvert les sockets et j'ai découvert que si j'envoie une requête, l'adresse IP et le numéro de port demandés doivent être convertis dans l'ordre des octets du réseau. Sinon, des problèmes d'analyse se produiront à cause du petit-boutiste et du gros-boutiste

Mais pourquoi les données texte une fois le socket établi ne devraient-elles pas être traitées dans l'ordre des octets ?

Par exemple, ce que j'envoie est une chaîne. Comme nous le savons tous, le jeu de caractères Unicode actuel est supérieur à un octet, il y aura des problèmes de chaîne. Pourquoi les données reçues par le socket peuvent-elles être reconnues normalement. ?

我想大声告诉你
我想大声告诉你

répondre à tous (3)
为情所困

Socket ne reconnaît que l'unité d'octet, et les octets écrits seront lus par l'autre extrémité dans le même ordre.

L'encodage Unicode inclut déjà l'ordre des octets. Par exemple, si vous écrivez UTF16LE à une extrémité, vous devez décoder les octets selon UTF16LE à l'autre extrémité (Cas particulier : l'unité d'encodage de UTF8 est un octet, ici. il n'y a pas de problème d'ordre des octets).

Si vous utilisez socket pour envoyer des données générales, vous devez tenir compte de l'ordre des octets. Cette considération fait généralement partie du protocole de sérialisation.

.
    大家讲道理

    L’ordre des octets concerne les entiers. Le numéro de port est un entier de 16 bits, il y a donc un problème endian. Tout le reste n'a pas d'importance

      滿天的星座

      Parce que TCP/UDP et d'autres protocoles réseau de niveau inférieur sont stipulés de cette manière. Une fois le socket établi, les données transmises sont équivalentes au protocole que vous avez conçu, vous pouvez donc utiliser l'ordre des octets de votre choix, à condition que l'expéditeur et le destinataire utilisent le même ordre des octets.

        Derniers téléchargements
        Plus>
        effets Web
        Code source du site Web
        Matériel du site Web
        Modèle frontal
        À propos de nous Clause de non-responsabilité Sitemap
        Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!