Linux STP的妙用:实现网络快速部署(linuxstp)
Linux Spaning Tree Protocol(STP),又被称为“树式结构”,是一种网络正常运作所必需的一种协议。STP是一种确保计算机网络中没有环路,也就是说,可以确保数据包不会在网络中无限循环的协议。STP在网络快速部署时有着非常重要的作用。
作为一种实时网络传输,STP的妙用就在于它能够有效的确保网络稳定性和安全性,并且可以简化部署过程。每一台计算机都可以运行STP服务,当从一台新计算机部署路由程序时,STP自动将新计算机添加到网络中,并且在部署无误后,将会自动开始运行,使得网络的部署过程变的非常顺利。
另外,Linux同样也支持冗余子网(Redundant Subnet Fabric),这样就能允许在网络中设置多个同类型的多播信息,当出现故障连接的时候,STP可以自动的将数据流重定向到正常的连接,这将有效的避免网络中出现拥堵现象,从而确保网络的稳定性。
此外,STP支持安全性机制,例如通过一种叫“安全网络层级”(Secure Network Layer)的特性,它允许网络系统自动的发现和阻止私人计算机的非安全行为,从而有效的保护网络的安全性。
总之,Linux STP的妙用通过有效的网络流量管理,以及网络安全机制,使得数据包在网络中可以快速安全地传输,同时又能够有效的简化网络快速部署的过程,使得STP在网络中发挥着重要的作用。
例子:
#!/usr/bin/python
# -*- coding:utf-8 -*-
from mininet.net import Mininet
from mininet.node import Controller, RemoteController
from mininet.cli import CLI
from mininet.log import setLogLevel, info
def StpDemo():
“Create an STP network”
net = Mininet( controller=RemoteController, build=False )
info( ‘*** Adding controller\n’ )
net.addController( ‘c0′,controller=RemoteController, ip=’127.0.0.1’, port=6633 )
info( ‘*** Adding hosts\n’ )
h1 = net.addHost( ‘h1′, mac=’00:00:00:00:00:01′, ip=’10.0.0.1/24’ )
h2 = net.addHost( ‘h2′, mac=’00:00:00:00:00:02′, ip=’10.0.0.2/24’ )
info( ‘*** Adding switch\n’ )
s1 = net.addSwitch( ‘s1’, stp=True )
info( ‘*** Creating links\n’ )
net.addLink( h1, s1 )
net.addLink( h2, s1 )
info( ‘*** Starting network\n’)
net.start()
info( ‘*** Run STP\n’ )
s1.cmd( ‘ovs-vsctl set-fail-mode’, s1, ‘secure’ )
s1.cmd( ‘ovs-vsctl set-controller’, s1, ‘tcp:127.0.0.1:6633’ )
s1.cmd( ‘ovs-vsctl set Bridge’, s1, ‘stp_enable=true’ )
s1.cmd(‘ovs-vsctl set Bridge’, s1, ‘stp_enable=true’)
info( ‘*** Running CLI\n’ )
CLI( net )
info( ‘*** Stopping network’ )
net.stop()
if __name__ == ‘__main__’:
setLogLevel( ‘info’ )
StpDemo()