Class: IControl::Networking::STPInstance

Inherits:
Base
  • Object
show all
Defined in:
lib/icontrol/networking/stp_instance.rb,
lib/icontrol/networking.rb

Overview

The STPInstance interface enables you to work with the definitions and attributes associated with an STP instance.

Defined Under Namespace

Classes: InterfacePathCost, InterfacePathCostSequence, InterfacePathCostSequenceSequence, InterfacePriority, InterfacePrioritySequence, InterfacePrioritySequenceSequence, InterfaceSTPRole, InterfaceSTPRoleSequence, InterfaceSTPRoleSequenceSequence, InterfaceSTPState, InterfaceSTPStateSequence, InterfaceSTPStateSequenceSequence, PathCost, PathCostSequence, PathCostType, PathCostTypeSequence, PathCostTypeSequenceSequence

Instance Method Summary (collapse)

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class IControl::Base

Instance Method Details

- (Object) add_vlan(opts)

Adds/associates VLANs to this spanning tree instances. This method may be used only in MSTP mode. In STP or RSTP mode, all VLANs automatically belong to spanning tree instance 0.

Parameters:

  • opts (Hash)

Options Hash (opts):

  • :vlan_names (String[])

    The VLAN names to add to the spanning tree instances.

Raises:

  • (IControl::IControl::Common::AccessDenied)

    raised if the client credentials are not valid.

  • (IControl::IControl::Common::InvalidArgument)

    raised if one of the arguments is invalid.

  • (IControl::IControl::Common::OperationFailed)

    raised if an operation error occurs.



36
37
38
39
# File 'lib/icontrol/networking/stp_instance.rb', line 36

def add_vlan(opts)
  check_params(opts,[:vlan_names])
  super
end

- (long) bridge_priority

Gets the bridge priorities of this spanning tree instances. Each bridge in a spanning tree instance has a priority value, which controls the topoloty of the spanning tree chosen by the protocol. The bridge with the lowest priority value will become the root of the spanning tree. Priority values range from 0-61440 in steps of 4096. Hence, the supported priorities are: 0 16384 32768 49152 4096 20480 36864 53248 8192 24576 40960 57344 12288 28672 45056 61440 The default bridge priority is 61440, which will prevent BIGIP from being chosen as the root bridge. If this bridge priority is not one of the allowed values listed above, it is rounded down to the next lower value in the list. In STP or RSTP mode, only STP intance 0 is valid.

Returns:

  • (long)

Raises:

  • (IControl::IControl::Common::AccessDenied)

    raised if the client credentials are not valid.

  • (IControl::IControl::Common::InvalidArgument)

    raised if one of the arguments is invalid.

  • (IControl::IControl::Common::OperationFailed)

    raised if an operation error occurs.



90
91
92
# File 'lib/icontrol/networking/stp_instance.rb', line 90

def bridge_priority
  super
end

- (Object) create(opts)

Creates this spanning tree instances.

Parameters:

  • opts (Hash)

Options Hash (opts):

  • :priorities (long)

    The per-instance bridge priorities.

  • :vlan_names (String[])

    The VLAN members that are under the control of the STP instances.

Raises:

  • (IControl::IControl::Common::AccessDenied)

    raised if the client credentials are not valid.

  • (IControl::IControl::Common::InvalidArgument)

    raised if one of the arguments is invalid.

  • (IControl::IControl::Common::OperationFailed)

    raised if an operation error occurs.



50
51
52
53
# File 'lib/icontrol/networking/stp_instance.rb', line 50

def create(opts)
  check_params(opts,[:priorities,:vlan_names])
  super
end

- (Object) delete_all_instances

Deletes all spanning tree instances.

Raises:

  • (IControl::IControl::Common::AccessDenied)

    raised if the client credentials are not valid.

  • (IControl::IControl::Common::InvalidArgument)

    raised if one of the arguments is invalid.

  • (IControl::IControl::Common::OperationFailed)

    raised if an operation error occurs.



61
62
63
# File 'lib/icontrol/networking/stp_instance.rb', line 61

def delete_all_instances
  super
end

- (Object) delete_instance

Deletes this spanning tree instances.

Raises:

  • (IControl::IControl::Common::AccessDenied)

    raised if the client credentials are not valid.

  • (IControl::IControl::Common::InvalidArgument)

    raised if one of the arguments is invalid.

  • (IControl::IControl::Common::OperationFailed)

    raised if an operation error occurs.



71
72
73
# File 'lib/icontrol/networking/stp_instance.rb', line 71

def delete_instance
  super
end

- (InterfaceSTPState[]) interface_active_state(opts)

Gets the STP active states for this STP port objects.

Parameters:

  • opts (Hash)

Options Hash (opts):

  • :interfaces (String[])

    The interfaces/trunks from which to get the active states.

Returns:

Raises:

  • (IControl::IControl::Common::AccessDenied)

    raised if the client credentials are not valid.

  • (IControl::IControl::Common::InvalidArgument)

    raised if one of the arguments is invalid.

  • (IControl::IControl::Common::OperationFailed)

    raised if an operation error occurs.



103
104
105
106
# File 'lib/icontrol/networking/stp_instance.rb', line 103

def interface_active_state(opts)
  check_params(opts,[:interfaces])
  super
end

- (InterfacePathCost[]) interface_path_cost(opts)

Gets the path costs for this network interfaces in this spanning tree instances. An interface path cost represents the relative cost of sending network traffic through that interface. In calculating the spanning tree, the algorithm tries to minimize the total path cost between each point and the root bridge. By manipulating the path costs of different interfaces, it's possible to steer traffic toward paths that are faster, more reliable, and/or more economical. Path costs have a range of 1-200,000,000, and the default path cost for an interface is based on the interface's maximum speed (not the actual speed). Max interface speed Default path cost 10 Gb/s 2,000 1 Gb/s 20,000 100 Mb/s 200,000 10 MB/s 2,000,000 The default path cost is a function of the interface's maximum speed, not its actual speed, so the default path cost of a 10/100/1000 Mb/s interface will be 20,000 even if the interface is running at 10 Mb/s. Changes in link speed don't cause path costs to change. Link aggregation doesn't affect the default path cost, i.e. a trunk of four 1 Gb/s interfaces will still have a default path cost of 20,000. In STP or RSTP mode, only STP intance 0 is valid.

Parameters:

  • opts (Hash)

Options Hash (opts):

Returns:

Raises:

  • (IControl::IControl::Common::AccessDenied)

    raised if the client credentials are not valid.

  • (IControl::IControl::Common::InvalidArgument)

    raised if one of the arguments is invalid.

  • (IControl::IControl::Common::OperationFailed)

    raised if an operation error occurs.



132
133
134
135
# File 'lib/icontrol/networking/stp_instance.rb', line 132

def interface_path_cost(opts)
  check_params(opts,[:interfaces,:path_cost_types])
  super
end

- (InterfacePriority[]) interface_priority(opts)

Gets the priorities for this network interfaces in this spanning tree instances. These priority values influence which interfaces are chosen to carry network traffic. Interfaces with numerically lower values are favored to carry traffic. Interface priorities have values in the range from 0-240 in steps of 166. Hence, the supported priorities are: 0 64 128 192 16 80 144 208 32 96 160 224 48 112 176 240 The default interface priority is 128. If this interface priority is not one of the allowed values listed above, it is rounded down to the next lower value in the list. In STP or RSTP mode, only STP intance 0 is valid.

Parameters:

  • opts (Hash)

Options Hash (opts):

  • :interfaces (String[])

    The interfaces from which to get the interface priorities.

Returns:

Raises:

  • (IControl::IControl::Common::AccessDenied)

    raised if the client credentials are not valid.

  • (IControl::IControl::Common::InvalidArgument)

    raised if one of the arguments is invalid.

  • (IControl::IControl::Common::OperationFailed)

    raised if an operation error occurs.



153
154
155
156
# File 'lib/icontrol/networking/stp_instance.rb', line 153

def interface_priority(opts)
  check_params(opts,[:interfaces])
  super
end

- (InterfaceSTPState[]) interface_requested_state(opts)

Gets the STP requested/configured states for this STP port objects.

Parameters:

  • opts (Hash)

Options Hash (opts):

  • :interfaces (String[])

    The interfaces/trunks from which to get the active states.

Returns:

Raises:

  • (IControl::IControl::Common::AccessDenied)

    raised if the client credentials are not valid.

  • (IControl::IControl::Common::InvalidArgument)

    raised if one of the arguments is invalid.

  • (IControl::IControl::Common::OperationFailed)

    raised if an operation error occurs.



167
168
169
170
# File 'lib/icontrol/networking/stp_instance.rb', line 167

def interface_requested_state(opts)
  check_params(opts,[:interfaces])
  super
end

- (InterfaceSTPRole[]) interface_role(opts)

Gets the STP roles for this STP port objects.

Parameters:

  • opts (Hash)

Options Hash (opts):

  • :interfaces (String[])

    The interfaces/trunks from which to get the active states.

Returns:

Raises:

  • (IControl::IControl::Common::AccessDenied)

    raised if the client credentials are not valid.

  • (IControl::IControl::Common::InvalidArgument)

    raised if one of the arguments is invalid.

  • (IControl::IControl::Common::OperationFailed)

    raised if an operation error occurs.



181
182
183
184
# File 'lib/icontrol/networking/stp_instance.rb', line 181

def interface_role(opts)
  check_params(opts,[:interfaces])
  super
end

- (long) list

Gets a list of all spanning tree instances.

Returns:

  • (long)

Raises:

  • (IControl::IControl::Common::AccessDenied)

    raised if the client credentials are not valid.

  • (IControl::IControl::Common::InvalidArgument)

    raised if one of the arguments is invalid.

  • (IControl::IControl::Common::OperationFailed)

    raised if an operation error occurs.



193
194
195
# File 'lib/icontrol/networking/stp_instance.rb', line 193

def list
  super
end

- (String) regional_root_bridge_mac_address

Gets the MAC addresses of the regional root bridges.

Returns:

  • (String)

Raises:

  • (IControl::IControl::Common::AccessDenied)

    raised if the client credentials are not valid.

  • (IControl::IControl::Common::InvalidArgument)

    raised if one of the arguments is invalid.

  • (IControl::IControl::Common::OperationFailed)

    raised if an operation error occurs.



204
205
206
# File 'lib/icontrol/networking/stp_instance.rb', line 204

def regional_root_bridge_mac_address
  super
end

- (Object) remove_all_vlans

Removes all VLANs from this spanning tree instances. This method may be used only in MSTP mode. In STP or RSTP mode, all VLANs automatically belong to spanning tree instance 0, and they can not be deleted from it.

Raises:

  • (IControl::IControl::Common::AccessDenied)

    raised if the client credentials are not valid.

  • (IControl::IControl::Common::InvalidArgument)

    raised if one of the arguments is invalid.

  • (IControl::IControl::Common::OperationFailed)

    raised if an operation error occurs.



248
249
250
# File 'lib/icontrol/networking/stp_instance.rb', line 248

def remove_all_vlans
  super
end

- (Object) remove_vlan(opts)

Removes VLANs from this spanning tree instances. This method may be used only in MSTP mode. In STP or RSTP mode, all VLANs automatically belong to spanning tree instance 0, and they can not be deleted from it.

Parameters:

  • opts (Hash)

Options Hash (opts):

  • :vlan_names (String[])

    The VLAN names to remove from the spanning tree instances.

Raises:

  • (IControl::IControl::Common::AccessDenied)

    raised if the client credentials are not valid.

  • (IControl::IControl::Common::InvalidArgument)

    raised if one of the arguments is invalid.

  • (IControl::IControl::Common::OperationFailed)

    raised if an operation error occurs.



262
263
264
265
# File 'lib/icontrol/networking/stp_instance.rb', line 262

def remove_vlan(opts)
  check_params(opts,[:vlan_names])
  super
end

- (String) root_bridge_mac_address

Gets the MAC addresses of the root bridges.

Returns:

  • (String)

Raises:

  • (IControl::IControl::Common::AccessDenied)

    raised if the client credentials are not valid.

  • (IControl::IControl::Common::InvalidArgument)

    raised if one of the arguments is invalid.

  • (IControl::IControl::Common::OperationFailed)

    raised if an operation error occurs.



215
216
217
# File 'lib/icontrol/networking/stp_instance.rb', line 215

def root_bridge_mac_address
  super
end

- (Object) set_bridge_priority(opts)

Sets the bridge priorities of this spanning tree instances. Each bridge in a spanning tree instance has a priority value, which controls the topoloty of the spanning tree chosen by the protocol. The bridge with the lowest priority value will become the root of the spanning tree. Priority values range from 0-61440 in steps of 4096. Hence, the supported priorities are: 0 16384 32768 49152 4096 20480 36864 53248 8192 24576 40960 57344 12288 28672 45056 61440 The default bridge priority is 61440, which will prevent BIGIP from being chosen as the root bridge. If this bridge priority is not one of the allowed values listed above, it is rounded down to the next lower value in the list. In STP or RSTP mode, only STP intance 0 is valid.

Parameters:

  • opts (Hash)

Options Hash (opts):

  • :priorities (long)

    The bridge priorities of the specified spanning tree instances.

Raises:

  • (IControl::IControl::Common::AccessDenied)

    raised if the client credentials are not valid.

  • (IControl::IControl::Common::InvalidArgument)

    raised if one of the arguments is invalid.

  • (IControl::IControl::Common::OperationFailed)

    raised if an operation error occurs.



283
284
285
286
# File 'lib/icontrol/networking/stp_instance.rb', line 283

def set_bridge_priority(opts)
  check_params(opts,[:priorities])
  super
end

- (Object) set_interface_path_cost(opts)

Sets the path costs for this network interfaces in this spanning tree instances. An interface path cost represents the relative cost of sending network traffic through that interface. In calculating the spanning tree, the algorithm tries to minimize the total path cost between each point and the root bridge. By manipulating the path costs of different interfaces, it's possible to steer traffic toward paths that are faster, more reliable, and/or more economical. Path costs have a range of 1-200,000,000, and the default path cost for an interface is based on the interface's maximum speed (not the actual speed). Max interface speed Default path cost 10 Gb/s 2,000 1 Gb/s 20,000 100 Mb/s 200,000 10 MB/s 2,000,000 The default path cost is a function of the interface's maximum speed, not its actual speed, so the default path cost of a 10/100/1000 Mb/s interface will be 20,000 even if the interface is running at 10 Mb/s. Changes in link speed don't cause path costs to change. Link aggregation doesn't affect the default path cost, i.e. a trunk of four 1 Gb/s interfaces will still have a default path cost of 20,000. In STP or RSTP mode, only STP intance 0 is valid.

Parameters:

  • opts (Hash)

Options Hash (opts):

Raises:

  • (IControl::IControl::Common::AccessDenied)

    raised if the client credentials are not valid.

  • (IControl::IControl::Common::InvalidArgument)

    raised if one of the arguments is invalid.

  • (IControl::IControl::Common::OperationFailed)

    raised if an operation error occurs.



310
311
312
313
# File 'lib/icontrol/networking/stp_instance.rb', line 310

def set_interface_path_cost(opts)
  check_params(opts,[:path_costs])
  super
end

- (Object) set_interface_priority(opts)

Sets the priorities for this network interfaces in this spanning tree instances. These priority values influence which interfaces are chosen to carry network traffic. Interfaces with numerically lower values are favored to carry traffic. Interface priorities have values in the range from 0-240 in steps of 166. Hence, the supported priorities are: 0 64 128 192 16 80 144 208 32 96 160 224 48 112 176 240 The default interface priority is 128. If this interface priority is not one of the allowed values listed above, it is rounded down to the next lower value in the list. In STP or RSTP mode, only STP intance 0 is valid.

Parameters:

  • opts (Hash)

Options Hash (opts):

Raises:

  • (IControl::IControl::Common::AccessDenied)

    raised if the client credentials are not valid.

  • (IControl::IControl::Common::InvalidArgument)

    raised if one of the arguments is invalid.

  • (IControl::IControl::Common::OperationFailed)

    raised if an operation error occurs.



330
331
332
333
# File 'lib/icontrol/networking/stp_instance.rb', line 330

def set_interface_priority(opts)
  check_params(opts,[:priorities])
  super
end

- (String) version

Gets the version information for this interface.

Returns:

  • (String)


223
224
225
# File 'lib/icontrol/networking/stp_instance.rb', line 223

def version
  super
end

- (String[]) vlan

Gets the lists of VLANs this spanning tree instances are associated with. This method may be used only in MSTP mode. In STP or RSTP mode, all VLANs automatically belong to spanning tree instance 0.

Returns:

  • (String[])

Raises:

  • (IControl::IControl::Common::AccessDenied)

    raised if the client credentials are not valid.

  • (IControl::IControl::Common::InvalidArgument)

    raised if one of the arguments is invalid.

  • (IControl::IControl::Common::OperationFailed)

    raised if an operation error occurs.



236
237
238
# File 'lib/icontrol/networking/stp_instance.rb', line 236

def vlan
  super
end