5
なぜ多くのインターネットプロトコルがテキストベースですか?
私が発見したことから、インターネット上を移動する非常に大量のプロトコルは、バイナリではなく「テキストベース」です。問題のプロトコルには、HTTP、SMTP、FTP(これはすべてテキストベースですか?)、WHOIS、IRCが含まれますが、これらに限定されません。 実際、これらのプロトコルの一部は、バイナリデータを送信する場合に、いくつかのフープを介してジャンプします。 これには理由がありますか?テキストベースのプロトコルは、同じ量の情報を送信するためにより多くのデータを送信する必要があるため、明らかに多少のオーバーヘッドがあります(以下の例を参照)。これを上回るメリットは何ですか? することで、テキストベースの、私はプロトコルで使用される文字のほとんどが間にある意味0x20(スペース)と0x7E(~)のために使用される臨時の「speical文字」と非常に特殊な目的な改行、ヌル、ETX、およびEOTとして、。これは、接続を介して生のバイナリデータを送信することとは対照的です。 たとえば、整数123456をテキストとして送信するには、文字列123456(16進で表現31 32 33 34 35 36)を送信する必要がありますが、32ビットのバイナリ値は(16進で表現)として送信さ0x0001E240れます(また、ご覧のとおり、特殊なヌル文字を「含む」 。