contents
下一主题: 通用安全注意事项 向上: 点对点协议 前一主题: 通过 PPP 路由

链路控制选项

如上所述,我们已经遇到了链路控制协议 LCP,它用于协商链路特性并测试链路。

LCP 可以协商的两个最重要的选项是最大接收单元和异步控制字符映射。还有许多其他的 LCP 配置选项,但它们过于专门化,不适合在此处讨论。有关这些选项的描述,请参阅 RFC-1548。

异步控制字符映射,俗称 async map,用于异步链路(如电话线),以识别必须转义(替换为特定的双字符序列)的控制字符。例如,您可能希望避免使用用于软件握手的 XON 和 XOFF 字符,因为某些配置错误的调制解调器可能会在收到 XOFF 时卡住。其他候选字符包括 Ctrl-](telnet 转义字符)。PPP 允许您通过在 async map 中指定 ASCII 代码为 0 到 31 的任何字符来转义它们。

async map 是一个 32 位宽的位图,最低有效位对应于 ASCII NUL 字符,最高有效位对应于 ASCII 31。如果设置了某个位,则表示必须在通过链路发送相应的字符之前对其进行转义。最初,async map 设置为 0xffffffff,即所有控制字符都将被转义。

要告知您的对等方不必转义所有控制字符,而只需转义其中的几个,您可以使用 asyncmap 选项为 pppd 指定一个新的 asyncmap。例如,如果只需要转义 ^S^Q(ASCII 17 和 19,通常用于 XON 和 XOFF),请使用以下选项

           asyncmap 0x000A0000

 
最大接收单元 (MRU) 向对等方发出信号,表明我们希望接收的 HDLC 帧的最大大小。虽然这可能使您想起 MTU 值(最大传输单元),但两者几乎没有共同之处。MTU 是内核网络设备的参数,描述了接口能够处理的最大帧大小。MRU 更像是给远程端的建议,不要生成任何大于 MRU 的帧;但接口仍然必须能够接收高达 1500 字节的帧。

因此,选择 MRU 更多地不是关于链路能够传输什么,而是关于什么能给您带来最佳吞吐量的问题。如果您打算通过链路运行交互式应用程序,将 MRU 设置为低至 296 的值是一个好主意,这样偶尔较大的数据包(例如,来自 FTP 会话的数据包)不会使您的光标“跳动”。要告知 pppd 请求 296 的 MRU,您需要为其提供选项 mru 296。然而,较小的 MRU 只有在您未禁用 VJ 报头压缩的情况下才有意义(默认情况下已启用)。

pppd 还理解一些 LCP 选项,这些选项配置协商过程的总体行为,例如在链路终止之前可以交换的最大配置请求数。除非您确切知道自己在做什么,否则您应该不要管这些选项。

最后,有两个选项适用于 LCP 回显消息。PPP 定义了两个消息:回显请求和回显响应。pppd 使用此功能来检查链路是否仍在运行。您可以使用 lcp-echo-interval 选项以及以秒为单位的时间来启用此功能。如果在该时间间隔内未从远程主机收到任何帧,则 pppd 会生成一个回显请求,并期望对等方返回一个回显响应。如果对等方未产生响应,则在发送一定数量的请求后链路将终止。可以使用 lcp-echo-failure 选项设置此数字。默认情况下,此功能完全禁用。


contents
下一主题: 通用安全注意事项 向上: 点对点协议 前一主题: 通过 PPP 路由

Andrew Anderson
1996 年 3 月 7 日星期四 23:22:06 EST