在 Oracle® Solaris 11.2 中管理网络数据链路

退出打印视图

更新时间: 2014 年 9 月
 
 

STP 守护进程

使用 dladm create-bridge 命令创建的各网桥被表示为 svc:/network/bridge 的同名服务管理工具 (Service Management Facility, SMF) 实例。每个实例运行实现 STP 的 /usr/lib/bridged 守护进程的一个副本。

例如,以下命令创建名为 pontevecchio 的网桥:

# dladm create-bridge pontevecchio

系统将创建名为 svc:/network/bridge:pontevecchio 的 SMF 服务实例和名为 /dev/net/pontevecchio0 的可观测节点。可观测节点可以与 snoop 命令和 wireshark 包分析器结合使用。您可以使用 dlstat 命令获得网桥的运行时统计信息。

出于安全目的,缺省情况下所有端口都运行标准 STP。不运行某种形式的桥接协议(如 STP)的网桥,可能会在网络中形成不终结的转发循环。因为以太网数据包上没有中继站计数或生存时间 (time-to-live, TTL),所以这样的任何循环对网络都是致命的。

    如果特定端口未连接到另一网桥(例如,由于该端口有到主机系统的直接点对点连接),您可以从管理角度禁用该端口的 STP。即使网桥上的所有端口都禁用了 STP,STP 守护进程仍然会在以下情况下运行:

  • 处理添加的任何新端口

  • 实现 BPDU 保护

  • 根据需要在端口上启用或禁用转发

当端口已禁用 STP 时,bridged 守护进程会继续侦听 BPDU(BPDU 保护)。此守护进程使用 syslog 标记所有错误并在端口上禁用转发来指示严重错误的网络配置。当链路从不可用重新变为可用,或者将链路手动删除再重新添加时,链路将重新启用。

如果禁用网桥的 SMF 服务实例,随着 STP 守护进程的停止,这些端口上的网桥也将停止。如果重新启动该实例,STP 将从初始状态启动。