Skip to main content

2. GENERAL ISSUES (一般问题)

本节讨论与所有应用层和支持协议相关的几个主题。

2.1 主机名和编号 (Host Names and Numbers)

互联网系统具有分层的主机名系统,即域名系统 (DNS)。每个互联网主机都有一个或多个IP地址,并且可以有一个或多个名称。

主机名由用句点分隔的一系列"标签"组成。例如: venera.isi.edu。最右边的标签称为"顶级域" (TLD)。

要求 (Requirements)

  • 主机名不得 (MUST NOT) 全部由数字标签组成。
  • 主机软件必须 (MUST) 处理至少255个字符长度的主机名。
  • 主机软件不得 (MUST NOT) 对主机名的格式或内容做出任何假设,超出DNS规范中的那些假设。

2.2 使用域名服务 (Using Domain Name Service)

应用软件必须 (MUST) 能够处理给定主机名解析为多个IP地址的情况。这种情况在以下几种情况下出现:

  • 负载共享 (Load Sharing): 多个主机可能以相同的名称提供相同的服务以进行负载平衡。
  • 多宿主 (Multihoming): 单个主机可能具有多个具有不同IP地址的网络接口。

名称解析 (Name Resolution)

当应用程序需要将主机名解析为IP地址时,它通常使用域名系统 (DNS)。应用程序应该 (SHOULD):

  • 如果第一次连接尝试失败,则尝试多个地址
  • 记住哪个地址成功以供将来连接使用
  • 实现适当的超时

缓存 (Caching)

应用程序可以 (MAY) 缓存已解析的地址,但它们必须 (MUST) 遵守DNS返回的生存时间 (TTL) 值。

2.3 多宿主主机上的应用 (Applications on Multihomed Hosts)

当多宿主主机上的应用程序创建连接时,IP源地址必须 (MUST) 是主机的IP地址之一。

对于具有多个IP地址的多宿主主机:

  • 应用程序可以 (MAY) 允许用户选择使用哪个本地IP地址
  • 如果未选择特定地址,则IP层根据路由选择源地址

2.4 服务类型 (Type-of-Service)

应用协议应该 (SHOULD) 为应用程序提供一种机制来指定TCP连接或UDP传输的IP服务类型 (TOS)。

TOS字段允许应用程序请求特定的处理特性:

  • 低延迟 (Low delay) (最小化延迟)
  • 高吞吐量 (High throughput) (最大化吞吐量)
  • 高可靠性 (High reliability) (最大化可靠性)
  • 低成本 (Low cost) (最小化货币成本)

2.5 一般应用要求摘要 (GENERAL APPLICATION REQUIREMENTS SUMMARY)

功能章节必须应该可以不得
处理 >= 255字符的主机名2.1x
主机名不全为数字2.1x
支持每个名称多个地址2.2x
失败时尝试多个地址2.2x
遵守DNS TTL值2.2x
允许TOS规范2.4x