【问题标题】:RS-232C and Email in 7bit char setRS-232C 和 7 位字符集的电子邮件
【发布时间】:2009-12-30 22:39:19
【问题描述】:

“设计嵌入式硬件”一书在“9.3. Old Faithful: RS-232C”一章中提到,由于 RS-232C,电子邮件仍然以 7 位字符集发送:

这也不是闻所未闻 RS-232C 系统仍使用 7 位数据 帧(另一个从 60 年代),而不是更常见的 8 位。事实上,这也是为什么你会 仍然看到正在发送的电子邮件 互联网仅限于 7 位字符 设置,以防数据包发生 通过串行连接路由 仅支持 7 位 传输。

如何确认观察结果?

【问题讨论】:

    标签: email history protocols


    【解决方案1】:

    查看规范。用于 ARPA Internet 短信的原始 rfc822 明确指出:

    消息由标头字段组成 并且,可选地,一个身体。身体是 只是一系列包含 ASCII 字符。

    因为 ASCII 是 7 位的,瞧。

    但请注意,原始规范有一大堆补充内容,所有 MIME 扩展,允许 message header extensions 用于非 ascii 文本。

    【讨论】:

      【解决方案2】:

      Quoted-printable MIME 编码专门用于将 8 位数据编码为 7 位字符。这种编码被广泛用于对电子邮件进行编码。

      还请注意,您引用的文字说“以防数据包碰巧通过串行连接路由”,这是一种误导,特别是如果他们在 IP 数据包的上下文中交谈。 IP 数据包采用 8 位数据路径,并且不能在没有额外编码的情况下直接通过 7 位 RS-232 链路发送(然后它不再是 7 位数据路径,而是 8 位)。

      【讨论】:

      • 其实上下文不一定是IP包。电子邮件被充分封装,它们可以作为数据传输协议自行传输(尽管没有纠错)。当前使用的一个示例是 mbox 文件格式,它只是原始电子邮件信封的串联。这是 Thunderbird 使用的邮箱格式。我亲眼见过使用 RS232 的电子邮件中继,用于向未联网的 PC 发送电子邮件。
      【解决方案3】:

      当电子邮件刚开始流行时,限制为 7 位的系统已经很老了。你今天找到一个的机会接近于零。

      由于某些字符对电子邮件程序具有特殊意义(尤其是行尾字符),因此限制字符集仍然有意义。

      【讨论】:

      • 遵循标准肯定有意义吗?这将是一个比适应旧系统更有力的理由。
      • 归根结底,句号 (.) 仍然是电子邮件传输中最重要的字符。无论如何,10 年前仍然有 7 位 RS-232 链路普遍使用——想想仓库中的串行端口集中器和 WYSE 终端。
      • @John Saunders:制定这些标准是为了适应旧系统,而不是相反。当然必须保持标准,但我认为这不是问题所在。
      • @D.Shawley:当然还有串行端口在使用,但它们真的被限制为 7 位吗?那不是我的经验。即使他们是,他们是否在路由电子邮件流量?
      • @Mark:当我在 97 年在 Uni 时,我的一个朋友在他的大楼里运行了一个电子邮件中继服务,使用 rs232 和 rs422(用于 Mac)为那些没有联网机器的人提供服务能力。但链接是 1200,8N1 而不是 7 位。
      猜你喜欢
      • 1970-01-01
      • 2012-02-22
      • 2016-02-26
      • 2013-09-26
      • 1970-01-01
      • 1970-01-01
      • 2017-07-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多