以太网串行设备驱动程序

使用 "请求注释" (RFC) 2217 协议支持的以太网设备服务器 (EDS) 在 AIX® 操作系统中创建虚拟串行设备和远程类型 (tty) 设备。

通过以太网串行 (SoE) 设备驱动程序,您可以使用 "请求注释" (RFC) 2217 协议支持的以太网设备服务器 (EDS) 在 AIX 操作系统中创建虚拟串行设备和远程类型 (tty) 设备。 EDS 的示例包括 DigiPerle 设备。 SoE 设备驱动程序的功能类似于实际 COM (通信) 端口,例如 2 端口, 8 端口和 128 端口适配器。

EDS 也称为以太网串行服务器或以太网终端服务器。 EDS 是与以太网连接的外部非IBM® 设备,该设备包含一个或多个可与外部调制解调器连接的串口 (RS/232)。 如果 EDS 支持 RFC 2217 (Telnet Com 端口控制协议) (这是 Telnet 协议的扩展) ,那么 EDS 兼容。 通过使用此协议, EDS 充当 RFC 2217 服务器。 EDS 可以接受来自 RFC 2217 客户机系统的 Telnet 会话,并将接收到的 Telnet 数据发送到 COM 端口。 在 COM 端口接收到的数据将发送到 RFC 2217 客户机系统。

EDS 还可以将有关串行设备状态更改的信息发送到 RFC 2217 客户机系统。 RFC 2217 客户机系统使用 EDS 管理流量控制,并使用此协议向 EDS 发送配置信息。

AIX LPAR 充当 RFC 2217 客户机系统。 AIX LPAR 与作为 RFC 2217 服务器的 EDS 建立 Telnet 会话。 下图显示了 AIX LPAR 如何与 EDS 通信以提供虚拟串口:

图 1。 配置以太网驱动程序服务器
配置以太网驱动程序服务器

配置以太网设备服务器

以太网设备服务器 (EDS) 通常提供基于 Web 的接口用于配置和管理。 例如,如果某台 Digi PortServer 设备的IP地址 9.5.80.73为,您可以在网页浏览器中 http://9.5.80.73URL 输入来访问其配置和管理界面。 EDS 上的每个串口都有一个分配的 TCP 端口号。 您可以通过建立与 EDS IP 地址的 Telnet 会话以及分配给串口的 TCP 端口号 (例如 9.5.80.73:2001) 来访问特定串口。 此Telnet会话由驱动程序 SoE 在内部创建。

配置 AIX LPAR 以创建虚拟串口

SoE 设备驱动程序以类似为物理串行设备创建设备的方式维护用于创建 SoE 适配器 (sa) 和电话类型 (tty) 设备的语义。

要在 AIX LPAR 上创建虚拟串口,请通过输入以下命令或使用 smit soe 菜单选项来完成以下步骤。

  1. 通过运行以下命令来创建 sa 设备。 指定 EDS 的 IP 地址。
    # mkdev -c adapter -s pseudo -t soe -a netaddr=EDS_IP_address
    例如:
    # mkdev -c adapter -s pseudo -t soe -a netaddr=9.126.88.123
    sa2 Available
  2. 通过运行以下命令创建 tty 设备。 指定在步骤 1 的命令输出中显示的 SoE adapter (sa) 设备和 TCP 端口。
    # mkdev -t tty -s rs232 -p sa_device -w tty_port_number -a -a port_num=TCP_port
    例如:
    # mkdev -t tty -s rs232 -p sa2 -w 0 -a port_num=2002
    tty1 Available
    此命令在 /dev 目录中创建 tty 设备。 任何应用程序都可以使用新创建的 tty 设备与连接到 EDS 上的串口的目标设备进行通信。
注: 必须使用唯一 TCP 端口配置 EDS 上的每个串口,并且必须将使用 SoE 设备驱动程序配置的每个 tty 设备映射到此唯一端口。 EDS 上的 tty 端口不能由 AIX LPAR 上的多个 tty 设备共享。

跨异步串行设备移动 tty 终端设备

远程类型 (tty) 终端设备可以从一个异步 SoE 适配器 (sa) 串行设备 (支持设备) 移动到另一个异步设备。 它还可以从同一异步设备上的一个物理端口移动到另一个物理端口。 AIX 操作系统支持使用 smitty 和命令行选项来移动 tty 终端设备。
注意:
  • 在移动到异步设备之后,特定于 tty 终端设备的配置设置 (例如波特率和运行方式) 不会改变。
  • 应用程序无法打开 tty 终端设备,或者在移动操作正在进行时无法使用 tty 终端设备。

异步设备可以是实际通信端口,例如 PCI 2 端口, 8 端口和 128 端口适配器,也可以是符合 RFC2217 的通信端口驱动程序。 SoE 设备驱动程序是 EDS 的枚举。

可以将来自基于 PCI 的物理异步适配器的 tty 设备移动到另一个基于 PCI 的物理设备或从基于 PCI 的物理异步设备移动到 SoE 设备,反之亦然,也可以将其从一个 SoE 设备类型移动到另一个 SoE 设备类型。

请考虑以下场景: SoE 设备驱动程序的 tty 终端设备具有 IP 地址 192.168.1.1 ,并且您希望将 SoE 设备驱动程序的 IP 地址更改为 IP 地址 10.1.1.1。 无法运行 chdev 命令来更改 SoE 设备驱动程序的 IP 地址,直到通过运行 rmdev 命令完全除去所有关联的 tty 终端设备,或者直到通过运行 rmdev 命令将所有关联的 tty 终端设备移至已定义的状态为止。 要更改由 EDS 支持的 SoE 设备驱动程序的 IP 地址,可以将 tty 终端设备移动到异步串行设备。

要更改 SoE 设备驱动程序的 IP 地址,请完成以下步骤:
  1. 使用 IP 地址 10.1.1.1创建 SoE 设备驱动程序。
  2. 使用 smittychdev 命令将 IP 地址为 192.1681.1 的 SoE 设备中的所有 tty 终端设备驱动程序移至 IP 地址为 10.1.1.1 的新 SoE 设备。
  3. 确保没有任何 tty 终端设备正在使用或处于打开状态。 要将 tty 终端设备从一个端口移动到同一 SA 设备上的另一个端口,请运行 chdev 命令,并在 -w 标志中将新端口号作为选项。 chdev 命令的命令语法如下:
    chdev -1 <tty device> -w <destionation port number>

例如,要将 tty 终端设备从端口 0 移动到端口 1 ,请输入以下命令:

chdev -1 ttyX -w 1

要将 tty 终端设备从一个支持设备移动到另一个支持设备,必须将目标设备名的名称指定为 -p 标志的选项。 chdev 命令的命令语法如下:

chdev -1 <tty device> -p <destination parent>

例如,要将 tty 终端设备 tty0 从 SA1 串行设备移动到 SA3 串行设备,请输入以下命令:

chdev -1 tty0 -p sa2

要将 tty 终端设备从一个物理适配器设备 (例如 PCI 2-, 8-或 128 端口适配器) 移动到 SoE 设备驱动程序 (符合RFC2217 ) ,必须通过 -a 标志指定 TCP 端口号作为 port_num 属性。

例如,要将 tty 终端设备 tty0 从 SA2 串行设备移动到 SA3 串行设备,请输入以下命令:

chdev -1 tty0 -p sa3 -a 2001

用于将 tty 终端设备从由 EDS 支持的 SoE 设备驱动程序移动到由另一个 EDS 支持的另一个 SoE 设备的命令语法如下:

chdev -1 <tty device> -p <destination parent>

例如,要将 tty 终端设备从 SA1 串行设备 (由 EDS1支持) 移动到 SA2 串行设备 (由 EDS2支持) ,请输入以下命令:

chdev -1 tty0 -p sa2

可调参数

以下可调参数可用于调整 SoE 设备驱动程序使用的某些属性:
  • idle_timeout: 指定在将 TCP 保持活动探测器发送到设备之前, SoE 设备驱动程序与 EDS 之间的 TCP 连接处于空闲状态的时间量 (以半秒为单位)。 此值与此 TCP 连接的 SoE 驱动程序设置的 TCP 网络选项 tcp_keepidle 相对应。 缺省值为 360。
  • probe_interval: 指定为验证与 EDS 建立的 TCP 连接而发送的 TCP 保持活动包之间的时间间隔 (以半秒为单位)。 此值与此 TCP 连接的 SoE 驱动程序设置的 TCP 网络选项 tcp_keepintvl 相对应。 缺省值为 10。
  • probe_count: 指定在终止与 EDS 建立的 TCP 连接之前可以发送到设备的 TCP 保持活动探测器数。 此值对应于此 TCP 连接的 SoE 驱动程序设置的 TCP 网络选项 tcp_keepcnt 。 缺省值为 24。

对常见错误进行故障诊断

如果未正确配置 EDS 或 SoE 设备驱动程序,那么在 AIX LPAR 上创建 tty 设备时, tty 设备状态可能会变为 DOWNERROR 状态。 如果正确配置了设备驱动程序,那么 tty 设备的状态必须为 UPsoestat 命令显示可用于对问题进行故障诊断的 tty 设备状态。

由于以下原因, tty 设备的状态可以是 DOWN :
  • 在 SoE 设备驱动程序或 EDS 上, IP 地址或端口号可能错误。
  • 由于网络配置不正确或网络拓扑不正确,可能无法从配置了 SoE 设备驱动程序的 AIX LPAR 访问 EDS。
  • 通过在 EDS 上使用相同的 TCP 端口号来创建多个 tty 设备。
由于以下原因, tty 设备的状态可以是 ERROR :
  • 在 EDS 中未选择 RFC 2217 方式。 请参阅 EDS 制造商的文档,以确定如何配置 RFC 2217 方式。
  • 提供的 IP 地址不是 EDS 的 IP 地址,而是可从配置了 SoE 设备驱动程序的 AIX LPAR 访问的其他机器的 IP 地址。
注: 无法从 ERROR 状态恢复 tty 设备,因此无法进一步使用 tty 设备。 修正该问题后,必须手动除去处于 ERROR 状态的 tty 设备,然后重新创建 tty 设备,或者将 tty 移至 defined 状态,然后将其再次移至 available 状态。