CN110247798B - Transmitting specific traffic along a blocked link - Google Patents

Transmitting specific traffic along a blocked link Download PDF

Info

Publication number
CN110247798B
CN110247798B CN201910501188.0A CN201910501188A CN110247798B CN 110247798 B CN110247798 B CN 110247798B CN 201910501188 A CN201910501188 A CN 201910501188A CN 110247798 B CN110247798 B CN 110247798B
Authority
CN
China
Prior art keywords
traffic
blocked
link
network
controller
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910501188.0A
Other languages
Chinese (zh)
Other versions
CN110247798A (en
Inventor
C.F.克拉克
S.瓦库莫托
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hewlett Packard Enterprise Development LP
Original Assignee
Hewlett Packard Enterprise Development LP
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hewlett Packard Enterprise Development LP filed Critical Hewlett Packard Enterprise Development LP
Priority to CN201910501188.0A priority Critical patent/CN110247798B/en
Publication of CN110247798A publication Critical patent/CN110247798A/en
Application granted granted Critical
Publication of CN110247798B publication Critical patent/CN110247798B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/02Standardisation; Integration
    • H04L41/0213Standardised network management protocols, e.g. simple network management protocol [SNMP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/44Star or tree networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • H04L41/122Discovery or management of network topologies of virtualised topologies, e.g. software-defined networks [SDN] or network function virtualisation [NFV]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/40Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/48Routing tree calculation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/66Layer 2 routing, e.g. in Ethernet based MAN's
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/35Switches specially adapted for specific applications
    • H04L49/354Switches specially adapted for specific applications for supporting virtual local area networks [VLAN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0659Management of faults, events, alarms or notifications using network fault recovery by isolating or reconfiguring faulty entities

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The present disclosure relates to transmitting specific traffic along a blocked link, and embodiments herein relate to transmitting specific traffic along a blocked link. The state of links between switches of the network is monitored. The link state is one of blocking and unblocking. The blocked link is not used by the Spanning Tree Protocol (STP). At least one of the network switches is configured to transmit a particular traffic along the blocked link.

Description

Transmitting specific traffic along a blocked link
This application is the divisional application, and the international application number of its parent application is: PCT/US2012/057569, national application number is: 201280076093.5, international application date is: 2012-09-27, the invention names are: "transport specific traffic along blocked link".
Background
Networks typically employ the Spanning Tree Protocol (STP) to prevent traffic (traffic) loops from forming between switches (switches) of the network. STP blocks redundant links between switches to prevent loops. Challenges are presented to network administrators to find ways to improve throughput (throughput), reliability, and/or security of traffic traversing (transit) networks.
Drawings
The following detailed description refers to the accompanying drawings, in which:
FIG. 1 is an example block diagram of a controller for transmitting specific traffic along a blocked link;
FIG. 2 is another example block diagram of a switch interfacing with the controller of FIG. 1;
fig. 3A is an example block diagram of a network link configured by the controller of fig. 1, while fig. 3B is an example block diagram of traffic flow along the configured network link of fig. 3A;
FIG. 4 is an example block diagram of a computing device including instructions for transmitting particular traffic along a blocked link; and is also provided with
Fig. 5 is an example flow chart of a method for transmitting specific traffic along a blocked link.
Detailed Description
Layer 2 switching (switching) in a network typically relies on features such as Spanning Tree Protocol (STP) (802.1 d) in order to prevent the formation of traffic loops in the network. To prevent loops, redundant links may be blocked and thus not used by STP. In addition, STP is a switch-to-switch protocol in which all devices are peer-to-peer and the global view of the entire network is unknown.
This "blocking" of redundant links can be wasteful of networking devices because ports and cables cost money and are idle. While STP does provide the benefit of being able to activate links in the event that a link failure occurs somewhere, these links tend to be unused. Multiple instance spanning tree protocol (MSTP) (IEEE 802.1 s) provides a method of overlaying spanning trees on each other by using Virtual Local Area Networks (VLANs). For example, a customer may configure two VLANs, each with its own MSTP instance, and each blocking a different port. MSTP allows more links to remain active, but on some VLANs (MTSP instances) many links will still be unused.
The manager may use features such as QoS or DiffServ to classify or prioritize certain traffic higher in order to increase the likelihood that the certain traffic will not be dropped or delayed. This may increase the network bandwidth allocation for certain types of traffic, such as that particular traffic, but the blocked link will still remain unused.
Embodiments may utilize blocked links to send specific traffic rather than through potentially congested normal links, where it is desirable that QoS/Diffserv classify this traffic as higher-level. For example, by using a global view of an STP network and a different type of protocol, such as OpenFlow, embodiments may forward specific traffic over a blocked link that is not being used. For example, the OpenFlow protocol may allow a client/controller to set the path that a service will take based on content within the traffic flow. The OpenFlow protocol also provides a flexible classification mechanism for identifying traffic, such as forwarding traffic via a command device based on rules.
In an embodiment, the state of the link is one of blocked and unblocked. The blocked link is not used by the Spanning Tree Protocol (STP). At least one of the network switches is configured to transmit a particular traffic along the blocked link. In some embodiments, parameters may also be modified to manipulate which links become blocked. The benefit of using a blocked link is that certain traffic does not have to compete (content) with other types of traffic, as other types of traffic will traverse the non-blocked STP link. In addition, instead of enabling an administrator to implement an entirely new type of network, embodiments may be used to supplement and coexist with existing STP or MSTP networks.
Referring now to the drawings, FIG. 1 is an exemplary block diagram of a controller 100 for transmitting specific traffic along a blocked link. The controller 100 may be a separate element or may be included in a switch, hub, router, gateway, storage device, computer, enclosure (enclosure), server, and/or any type of device capable of managing network elements and/or connecting to a network.
In the embodiment of fig. 1, controller 100 is connected to a network 110, network 110 comprising a plurality of network switches 112-1 through 112-4. Examples of types of networks 110 may include Personal Area Networks (PANs), local Area Networks (LANs), home networks, storage Area Networks (SANs), campus networks, backbones, metropolitan Area Networks (MANs), wide Area Networks (WANs), enterprise-specific networks, virtual-specific networks (VPNs), internetworks, and so forth.
Although network 110 shows four switches 112-1 through 112-4, embodiments may include more or less than four switches. Switches 112-1 through 112-4 may be any type of device that connects links and/or network devices. In addition, switches 112-1 through 112-4 may receive and forward data via physical ports interfacing with links. Links may be any type of electrical connection between switches for transmitting data, such as cables.
The controller 100 and switches 112-1 to 112-4 may comprise, for example, hardware devices including electronic circuitry, such as control logic and/or memory, for implementing the functions described above. Additionally or alternatively, the controller 100 and switches 112-1 through 112-4 may be implemented as a series of instructions encoded on a machine-readable storage medium and executable by a processor.
In fig. 1, switches 112-1 through 112-4 are each shown with three ports, each interfacing with a link. For example, A-switch 112-1 is shown with a first port 1 connected to twelfth port 12 of B-switch 112-2 via a link, a second port 2 connected to eighth port 8 of D-switch 112-4 via a link, and a third port 3 connected to fourth port 4 of C-switch 112-3 via a link. In addition, bswitch 112-2 is shown having tenth port 10 connected to ninth port 9 of Dswitch 112-4 via a link and eleventh port 11 connected to fifth port 5 of Cswitch 112-3 via a link. The C-switch 112-3 is also shown as having a sixth port 6 connected to the seventh port 7 of the D-switch 112-4 via a link. However, embodiments of each of switches 112-1 through 112-4 may include more or less than three ports and ports that do not interface with links.
Also, some of the links between switches 112-1 to 112-4 are shown as solid lines, while other links are shown as dashed lines. For example, dashed lines are shown for links between C and B switches 112-3 and 112-2, links between C and D switches 112-3 and 112-4, and links between B and D switches 112-2 and 112-4. In another aspect, solid lines are shown for links between A and B switches 112-1 and 112-2, links between A and C switches 112-1 and 112-3, and links between A and D switches 112-1 and 112-4.
The dashed line represents a blocked link and the solid line represents a non-blocked link. The network protocol may configure one or more ports of switches 112-1 to 112-4 to block both incoming (incoming) and outgoing (outgoing) traffic to form a blocked link. For example, STP may form such blocked links to ensure a loop-free topology for network 110. In fig. 1, STP may have blocked some links to form a spanning tree with a switch 112-1 as the root of the spanning tree. Variations of STP may include Rapid Spanning Tree Protocol (RSTP), VLAN Spanning Tree Protocol (VSTP), multiple Spanning Tree Protocol (MSTP), and so forth.
Controller 100 is configured to monitor 102 a logical topology of network 110, such as a global view of a network having STPs. The logical topology may include at least one of a physical and active topology of the network 110. The physical topology of the network 110 may be defined by physical design, such as the layout of links and the locations of switches. The active topology may refer to how data is transferred from one device to the next in network 110 and may be determined by a network protocol such as STP.
Thus, the physical topology may be related to the distance between switches 112-1 to 112-4, the physical interconnections, the transmission rates, and/or the signal types, while the active topology may be related to the paths or links of the physical topology that allow packets of traffic to propagate (traffic) thereon. Thus, controller 100 may identify any links such as blocked by STP by monitoring logical topology 102. For example, controller 100 may actively monitor all devices within network 110 (such as switches 112-1 through 112-4) and record STP states such as which ports of switches 112-1 through 112-4 are blocked.
Next, the controller 100 may configure at least one of the network switches 112-1 to 112-4 to transmit the particular traffic along the blocked link. The specific traffic may be different from the general traffic, which cannot traverse the blocked link.
The particular service may involve data having, for example, different latency, packet loss, and/or security requirements than the general service. The particular service may be identified or based on, for example, the user, priority, type of data source and/or content included in the particular service. Examples of specific services that may have latency requirements include multicast streams, video services, voIP data, and the like. Such types of specific traffic may be identified based on content type, such as by checking (aspect) a header (header) of the specific traffic. Examples of specific businesses that may have security requirements may include financial, business, or personal data. In one embodiment, such types of specific traffic may be identified based on the user type. For example, an electronic mailbox of a corporate executive director may be more secure than an electronic mailbox of an employee of the corporation.
Examples of specific businesses that may have priority requirements may include backup data and financial service transactions. For example, the backup data may have a lower priority than the general traffic and be transmitted during off-peak hours or over a blocked link so that it does not consume bandwidth available for the general traffic. In another aspect, financial services transactions such as transactions of stocks or traders may have a high priority. Such types of particular traffic may be identified based on, for example, the data source.
The controller 100 configures a blocking port (not shown) of at least one network switch 112-1 to 112-4 associated with the blocked link to allow particular traffic to pass through the blocked link. In addition, the controller 100 will define paths along the link to forward particular traffic. The path may include at least one blocked link. However, the controller 100 may also define a path as including one or more non-blocking links, such as when the links connected to one of the network switches 112-1 through 112-4 along the path are all non-blocking links. Unblocked links may also be used by general traffic.
For example, in FIG. 1, specific traffic is shown entering via A, B and C-switches 112-1 through 112-3 and directed toward D-switch 112-4. Normally, any traffic including specific traffic that enters via the B and C switches will be transmitted to the A switch 112-1 via the non-blocking link. The particular traffic will then be directed from the a-switch 112-1 to the intended (destinned) D-switch 112-4 via another non-blocking link. However, as shown in fig. 1, the controller 100 may configure particular traffic entering the a switch to be transmitted to the C switch 112-3. Here, the particular traffic from the a-switch 112-1 may join any other particular traffic that enters the C-switch 112-3 and be transmitted directly to the D-switch 112-4 via the blocked link between the sixth and seventh ports 6 and 7 of the C-and D-switches 112-3 and 112-4.
Similarly, the controller 100 may direct any particular traffic entering the B-switch 112-2 for direct transmission to the D-switch 112-4 via the blocked links between the tenth and ninth ports 10 and 9 of the B-and D-switches 112-2 and 112-4. Thus, not only is congestion relieved in non-blocking links by using blocking links to transmit certain traffic, certain traffic may also be transmitted more quickly by hopping (hop) through fewer switches 112.
The controller 100 may configure any of the switches 112-1 to 112-4 to direct a particular type of traffic along the blocked link via the OpenFlow protocol. OpenFlow is a layer 2 communication protocol that gives access to a forwarding plane (not shown) of switch 112 through network 110. Additionally, the OpenFlow protocol may allow for the routing of specific traffic through switches 112-1 to 112-4 (such as multiple switches 112) that are dynamically determined by software or firmware running in a centralized location and/or in a distributed manner.
In one embodiment, the controller 100 may define primary and secondary paths along the link to forward particular traffic. In this case, if one of the links of the first path fails, the controller 100 may configure one or more network switches 112-1 through 112-4 to forward particular traffic along the secondary path in order to navigate around the one or more failed links.
Example protocols that the controller 100 may use to communicate with the switches 112-1 to 112-3 may include Link Layer Discovery Protocol (LLDP), simple Network Management Protocol (SNMP), dynamic Host Configuration Protocol (DHCP), simple Service Discovery Protocol (SSDP), universal plug and play (UPnP), and so forth. The controller 100 may configure the switch 112 automatically or according to manual inputs. In addition, switches 112-1 through 112-4 may operate according to both the Openflow and STP protocols. For example, switches 112-1 through 112-4 may operate according to the Openflow protocol for particular traffic and according to the STP protocol for general traffic and/or if a link fails.
Fig. 2 is another example block diagram of a switch 200 interfacing with the controller 100 of fig. 1. The controller 100 may be a separate element or may be included in a switch, hub, router, gateway, storage device, computer, housing, server, and/or any type of device capable of managing network elements and/or connecting to a network.
The controller 100 and switch 200 of fig. 2 may include at least the functionality and/or hardware of the controller 100 and switches 112-1 through 112-4 of fig. 1, respectively. For example, while switch 200 is shown as representing C-switch 112-3 of FIG. 1, other switches 112-1, 112-2, and 112-4 may be similar.
In the embodiment of fig. 2, switch 200 is shown to include a control panel 210 and a forwarding plane 220. Forwarding plane 220 is shown to also include rules 222 and port parameters 224 and interface with switch ports 228-1 through 228-4. The first switch port 228-1 may correspond to a port (not shown) of the C-switch 112-3 that receives particular traffic. The second through fourth switch ports 228-2 through 228-4 may correspond to the fourth through sixth ports 4 through 6 of the C-switch 112-3. The control plane 210 may be part of a switch architecture that is related to the drawing of network maps and/or routing tables that define how incoming traffic packets are handled. Forwarding plane 220 may be part of a switch fabric that is related to deciding how to handle incoming packets arriving on an inbound interface, such as a lookup table indicating a destination address and/or an outgoing interface of the incoming packet.
As explained above in fig. 1 and shown by the diagonal pattern in fig. 2, the third and fourth switch ports 228-3 and 228-4 are blocked. The first and second switch ports 228-1 and 228-2 are unblocked. In this case, both the first and second switch ports 228-1 and 228-2 are shown as receiving specific traffic and the second switch port 228-2 is also shown as outputting generic traffic. As shown in fig. 1, an example path for a particular traffic may be defined by the controller 100 to flow from the third port 3 of the a-switch 112-1 to the fourth port 4 of the C-switch 112-3 (the second switch port 228-2 of the switch 200). In addition, the particular traffic received from the first switch port 228-1 and the second switch port 228-2 may be output to the blocked fourth switch port 228-4 to transmit the particular traffic to the dswitch 112-4 via the blocked link.
The switch 200 can direct specific traffic to one or more of the blocked links based on a Software Defined Network (SDN) architecture (such as the OpenFlow protocol) that separates the control plane 210 from the forwarding plane 220 of the switch 200. For example, via OpenFlow, the controller 100 may access the forwarding plane 220 to set one or more rules 222 that direct particular traffic along a blocked port (such as a blocked fourth switch port 228-4). Rules 222 may be defined as any type of instruction delivered by controller 100 that indicates from which port(s) a particular traffic is to be output.
In fig. 2, the controller 100 is shown separate from the switch 200. However, embodiments may include the controller 100 being included in one of the switches 112 or 200 and/or as a higher layer device separate from the switches 112-1 through 112-4 or 200. For example, if the controller 100 is a higher layer device, the controller 100 may be capable of configuring one or more port parameters 224 of one of the network devices along the path (such as switch 200) in addition to or instead of setting rules 222. Each of the ports, such as the second through fourth switch ports 228-2 through 228-4, may have one or more corresponding port parameters 224. One or more configured port parameters 224 may make the corresponding ports and links appear less desirable for STP. Thus, one or more configured parameters 224 may cause the STP to change the corresponding link state from unblocked to blocked. For example, STP may look at certain port parameters 224 of the port (such as port priority and path cost) to determine the desirability of the corresponding link. The controller 100 may directly or indirectly affect the port parameters 224, such as by altering the values of the switch 200, such as port position, port speed, and hop count.
The term port priority may refer to a preference given by STP to a port over other ports for forwarding traffic. For example, the parameter may be used to assign a higher (or lower) priority to the port, where a higher value means a lower priority is higher. In the case of traffic being rerouted, the ports are rerouted based on their priority such that within a VLAN or on switch 200, preference is given to higher priority ports than to lower priority ports. The term path cost may refer to the cost of using a port to reach a root bridge or switch. When selecting among multiple links to the root bridge, STP selects the link with the lowest path cost and blocks other paths/links. For example, the parameter may be used to assign a higher or lower path cost to a port. Assigning a larger value to a certain port may bias away (bias away) traffic during the rerouting period and vice versa.
In fig. 1, the controller 100 may automatically or manually configure at least one of the port parameters 224. For manual configuration, the controller 100 may be associated with a keyboard, mouse, display, graphical User Interface (GUI), touch screen, etc. to allow the administrator to enter different values for the port parameters. After one or more port parameters are changed, the STP may recalculate the path. In some cases, a previously blocked link may become blocked and vice versa. In addition, manual configuration may also be used by the administrator to create new rules when seeing the STP topology.
If network 110 includes VLANs, MSTP may be used to manage multiple VLANs, where MSTP blocks different links for different VLANs. Thus, the use of MSTP results in only partial blocking of the link. For example, with MSTP, links may be blocked on some MSTP instances, but not all links are blocked. From a usage point of view, this allows all links to be active, but only on some instances. An MSTP instance is defined by a set of VLANs.
In this case, the controller 100 may create rules 222 to direct particular traffic along one or more of the ports of the network switches 112-1 through 112-4 based on which of the VLANs is active at a given time and thus which of the links is blocked at a given time. Alternatively or additionally, the controller 100 may configure an instance of the port parameter 224 to affect which of the links becomes blocked.
Fig. 3A is an example block diagram of a network link configured by the controller 100 of fig. 1, and fig. 3B is an example block diagram of traffic flow along the configured network link of fig. 3A. Switches 312-1 through 312-4 shown in fig. 3A and 3B may be similar to switches 112-1 through 112-4 of fig. 1. For example, switches 312-1 through 312-4 and their ports in fig. 3A and 3B may be labeled similarly to the switches and their ports of fig. 1. Initially, switches 312-1 to 312-4 of fig. 3A are shown as having a similar configuration to the switches 112-1 to 112-4 of fig. 1, with blocking links between C and B switches 312-3 and 312-2, C and D switches 312-3 and 312-4, and B and D switches 312-2 and 312-4.
However, as explained above with respect to fig. 2, controller 100 may be capable of configuring the port parameters such that STP will then reconfigure the non-blocking link to a blocking link or the blocking link to a non-blocking link. This may be desirable in order to create a path for a particular service, where the general service is reduced or removed. For example, if the controller 100 cannot find any blocked links to the desired end point for a particular service, the controller 100 converts at least one of the unblocked links to a blocked link. In fig. 3A, the controller 100 is shown configuring the port parameters such that non-blocking links between the a and C switches 312-1 'and 312-3' are converted to blocking links and blocking links between the C and B switches 312-3 'and 312-2' are converted to non-blocking links.
Fig. 3B shows the controller 100 and network 310 including switches 312-1 'to 312-4' having the port parameters of the configuration of fig. 3A. The controller 100 and the network 310 of fig. 3B may include at least the functions and/or hardware of the controller 100 and the network 310 of fig. 1, respectively. In this case, the particular traffic is shown as voice over internet protocol (VoIP) traffic that is transmitted toward the dswitch 312-4 for delivery to the VoIP server 314. Similar to fig. 1, voIP traffic is received via A, B and C-switches 312-1 'to 312-3'. However, unlike fig. 1, all VoIP traffic can now flow only through the blocked link due to the controller 100 configuring the port parameters, such that the previously unblocked link between the a and C switches 312-1 'and 312-3' is now a blocked link. Thus, when the controller 100 has provided a dedicated path for a blocked link of VoIP traffic, timing delays due to congestion for VoIP traffic may be reduced or minimized. However, the path for the general traffic to C-switch 312-3' may be longer, as C-switch 312-3' is now two hops away from A-switch 312-1 '.
Fig. 4 is an example block diagram of a computing device 400 including instructions for transmitting particular traffic along a blocked link. In the fig. 4 embodiment, computing device 400 includes a processor 410 and a machine-readable storage medium 420. The machine-readable storage medium 420 also includes instructions 422, 424, and 426 for transmitting specific traffic along the blocked link.
The computing device 400 may be the following or part of the following: such as a server, network switch, hub, router, gateway, network element, or any other type of device capable of executing instructions 422, 424, and 426. In some examples, computing device 400 may include or be connected to additional components, such as memory, sensors, displays, and the like.
The processor 410 may be at least one Central Processing Unit (CPU), at least one semiconductor-based microprocessor, at least one Graphics Processing Unit (GPU), other hardware devices suitable for retrieving and executing instructions stored in the machine-readable storage medium 420, or a combination thereof. The processor 410 may fetch, decode, and execute instructions 422, 424, and 426 for transmitting specific traffic along the blocked link. Alternatively, or in addition to retrieving and executing instructions, the processor 410 may include at least one Integrated Circuit (IC), other control logic, other electronic circuitry, or a combination thereof that includes a plurality of electronic components for performing the functions of instructions 422, 424, and 426.
The machine-readable storage medium 420 may be any electronic, magnetic, optical, or other physical storage medium that contains or stores executable instructions. Thus, the machine-readable storage medium 420 may be, for example, random Access Memory (RAM), electrically Erasable Programmable Read Only Memory (EEPROM), a storage drive, compact disk read only memory (CD-ROM), or the like. As such, the machine-readable storage medium 420 may be non-transitory. As described in detail below, the machine-readable storage medium 420 may be encoded with a series of executable instructions for transmitting a particular service along a blocked link.
Moreover, the instructions 422, 424, and 426, when executed by a processor (e.g., via a processing element or elements of the processor), may cause the processor to perform a process such as the process of fig. 5. For example, the collection instructions 422 may be executed by the processor 410 to collect topology information about links between switches (not shown) of a network (not shown). Determination instructions 424 may be executed by processor 410 to determine which of the links is blocked by an STP. The configuration instructions 426 may be executable by the processor 410 to configure at least one of the switches via the OpenFlow protocol to allow particular traffic to be transmitted along at least one of the blocked links. However, the switch will operate according to commands from both STP and OpenFlow protocols.
Fig. 5 is an example flow chart of a method 500 for transmitting specific traffic along a blocked link. Although the execution of method 500 is described below with reference to controller 100, other suitable components for execution of method 500 may also be utilized. Additionally, components for performing the method 500 may be distributed among multiple systems and/or devices (e.g., processing devices in communication with input and output devices). In some scenarios, multiple devices acting in concert may be considered a single device performing method 500. Method 500 may be implemented in the form of executable instructions stored on a machine-readable storage medium, such as storage medium 420, and/or in the form of electronic circuitry.
At block 510, the controller 100 monitors the state of links between switches 112 of the network 110. The state of the link is one of blocked and unblocked. The blocked link of link 112 is not used by STP. Next, at block 520, the controller 100 configures at least one port of at least one of the switches 112 to transmit the particular traffic along the blocked link. STP will continue to not use the blocked link to transmit general traffic separate from specific traffic. The controller 100 configures the switch 112 at the second tier level. In addition, the controller 110 will monitor the status of the link 112 at block 510 before configuring at least one of the ports 228 at block 520. The controller 100 may communicate with the switch 112 via, for example, simple Network Management Protocol (SNMP) to configure one or more ports 228.
Specific details are given in the above description to provide an understanding of the embodiments. It will be understood, however, that embodiments may be practiced without these specific details. For example, the system may be shown in block diagram form in order not to unnecessarily obscure the embodiments in detail. In other instances, well-known processes, structures, and techniques may be shown without unnecessary detail in order to avoid obscuring the embodiments.

Claims (19)

1. An apparatus, comprising:
a controller for monitoring a logical topology of a network, the network comprising a plurality of network switches connected via links, and the logical topology comprising links blocked by a spanning tree protocol, STP, wherein
While general traffic continues to be prevented from using the blocked link, the controller configures at least one of the network switches to transmit the particular traffic along the blocked link based on the type of the particular traffic identified within the particular traffic, wherein the particular traffic relates to data having at least one of latency, packet loss, and security requirements that are different from the general traffic, and wherein the at least one of the network switches examines a header of the particular traffic to identify the at least one of latency, packet loss, and security requirements of the particular traffic;
wherein the plurality of network switches are configured to operate in accordance with an Openflow protocol for the particular service and an STP protocol for the general service; the controller sets one or more rules that direct the particular traffic along a blocking port via the Openflow protocol.
2. The apparatus of claim 1, wherein
Since the normal traffic is prevented from using the blocked link, the blocked link is not used by normal traffic separate from the specific traffic,
the controller configures a blocking port of at least one network switch associated with the blocked link to allow the particular traffic to traverse the blocked link, and
the controller defines a path along the link for forwarding a particular traffic, the path including the blocked link.
3. The apparatus of claim 2, wherein,
if none of the links along the path to one of the network switches is blocked, the controller defines the path to include non-blocked links, and
the unblocked link is used by the generic service.
4. The apparatus of claim 2, wherein,
the at least one network switch directs the particular traffic to one or more of the blocked links based on a software defined network, SDN, architecture that separates a control plane of the at least one network switch from a forwarding plane, and
the controller will access the forwarding plane of the at least one network switch to set rules that direct the particular traffic along the blocking port based on the type.
5. The device of claim 2, wherein the controller is at least one of included in one of the network switches and a higher layer device separate from the network switch.
6. The apparatus of claim 5, wherein
The controller is a higher layer device, and
the controller configures a port parameter of one of the network switches along the path, and a link corresponding to the configured port parameter appears undesirable for STP.
7. The apparatus of claim 6, wherein,
the configured parameters cause the STP to change the state of the corresponding link from unblocked to blocked, and
the port parameter relates to at least one of: port priority, path cost, port location, port speed, and hop count.
8. The apparatus of claim 6, wherein,
the network includes Multiple STPs (MSTPs) to manage multiple virtual local area network VLANs, the MSTPs blocking different links for different VLANs,
the controller directs specific traffic along one or more of the ports of at least one of the network switches based on which of the VLANs is active at a given time, and
the controller configures an instance of the port parameter to direct a particular service.
9. The apparatus of claim 2, wherein,
the specific service relates to data having at least one of latency, packet loss, and/or security requirements different from the general service, and
the specific service is based on the type of at least one of the user, the priority, the source of the data, and the content.
10. The apparatus of claim 1, wherein the controller configures at least one network switch to direct a particular type of traffic along a blocked link via an OpenFlow protocol.
11. The apparatus of claim 1, wherein,
the controller defines a primary path and a secondary path for forwarding specific traffic along the link, and
the controller configures at least one of the network switches to forward particular traffic along the secondary path if at least one of the links of the primary path fails.
12. The apparatus of claim 1, wherein the network switch is to operate in accordance with commands from both the STP and an OpenFlow protocol associated with the controller, the OpenFlow protocol comprising a protocol for configuring the at least one network switch.
13. A method, comprising:
monitoring a state of links between switches of a network, the state of the links being one of blocked and unblocked based on a spanning tree protocol, STP, blocked ones of the links not being used based on the STP; and
configuring, using a controller, at least one port of at least one of the switches to transmit a particular service along the blocked link based on a type associated with the particular service, wherein the particular service relates to data having at least one of latency, packet loss, and security requirements different from a general service, and wherein the at least one of the switches examines a header of the particular service to identify the at least one of latency, packet loss, and security requirements of the particular service,
the STP continues to transmit the type of generic traffic not associated with the specific traffic without using the blocked link;
wherein the switch is configured to operate in accordance with an Openflow protocol for the particular service and an STP protocol for the general service; the controller sets one or more rules that direct the particular traffic along a blocking port via the Openflow protocol.
14. The method of claim 13, wherein
The configuration will configure the switch at the level of the second layer,
the monitoring is prior to the configuring, and
the configuration is performed by a controller communicating with the switch via a simple network management protocol SNMP.
15. The method of claim 13, further comprising:
defining a path for forwarding the specific traffic along the link, the path including the blocked link.
16. The method of claim 13 wherein the switch is to operate in accordance with commands from both the STP and a controller external to the switch for configuring the at least one port.
17. A non-transitory computer-readable storage medium storing instructions that, when executed by a processor of a device, cause the processor to:
collecting topology information about links between switches of a network;
wherein the link is to be configured to block general traffic along a subset of the link using a spanning tree protocol STP;
determining which of the links is blocked from use by the STP; and
while the generic traffic continues to be prevented from using blocked links, configuring at least one of the switches via an OpenFlow protocol to allow a specific traffic identified based on a type of the specific traffic to be transmitted along at least one of the blocked links, wherein the specific traffic relates to data having at least one of latency, packet loss, and security requirements different from the generic traffic, and wherein the at least one of the switches examines a header of the specific traffic to identify the at least one of latency, packet loss, and security requirements of the specific traffic;
wherein the switch is configured to operate in accordance with an Openflow protocol for the particular service and an STP protocol for the general service; one or more rules that direct the particular traffic along a blocked port are set via the Openflow protocol.
18. The non-transitory computer-readable storage medium of claim 17, wherein the switch operates according to commands from both STP and OpenFlow protocols.
19. The non-transitory computer readable storage medium of claim 17, wherein the processor is further caused to:
a path is defined along which the particular traffic is forwarded, wherein the path includes the blocked link.
CN201910501188.0A 2012-09-27 2012-09-27 Transmitting specific traffic along a blocked link Active CN110247798B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910501188.0A CN110247798B (en) 2012-09-27 2012-09-27 Transmitting specific traffic along a blocked link

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201910501188.0A CN110247798B (en) 2012-09-27 2012-09-27 Transmitting specific traffic along a blocked link
CN201280076093.5A CN104662838A (en) 2012-09-27 2012-09-27 Transmit specific traffic along blocked link
PCT/US2012/057569 WO2014051593A1 (en) 2012-09-27 2012-09-27 Transmit specific traffic along blocked link

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201280076093.5A Division CN104662838A (en) 2012-09-27 2012-09-27 Transmit specific traffic along blocked link

Publications (2)

Publication Number Publication Date
CN110247798A CN110247798A (en) 2019-09-17
CN110247798B true CN110247798B (en) 2023-05-23

Family

ID=50388784

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201280076093.5A Pending CN104662838A (en) 2012-09-27 2012-09-27 Transmit specific traffic along blocked link
CN201910501188.0A Active CN110247798B (en) 2012-09-27 2012-09-27 Transmitting specific traffic along a blocked link

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201280076093.5A Pending CN104662838A (en) 2012-09-27 2012-09-27 Transmit specific traffic along blocked link

Country Status (6)

Country Link
US (2) US11102077B2 (en)
EP (1) EP2901629B1 (en)
JP (1) JP2015529434A (en)
KR (1) KR20150093648A (en)
CN (2) CN104662838A (en)
WO (1) WO2014051593A1 (en)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9264400B1 (en) * 2013-12-02 2016-02-16 Trend Micro Incorporated Software defined networking pipe for network traffic inspection
GB2524749B (en) * 2014-03-31 2018-12-19 Metaswitch Networks Ltd Spanning tree protocol
WO2015163919A1 (en) * 2014-04-25 2015-10-29 Hewlett-Packard Development Company, L.P. Applying a multi-instance spanning tree protocol (mstp) configuration
US9762457B2 (en) * 2014-11-25 2017-09-12 At&T Intellectual Property I, L.P. Deep packet inspection virtual function
WO2016123040A1 (en) * 2015-01-30 2016-08-04 Hewlett-Packard Development Company, L.P. Adjusted spanning tree protocol path cost values in a software defined network
TWI561034B (en) * 2015-07-03 2016-12-01 Estinet Technologies Inc Method for constituting hybrid network spanning tree, method of redundancy, and control system thereof
CN106559338A (en) * 2015-09-29 2017-04-05 中国电信股份有限公司 Tenant's division methods, device and SDN system in SDN
US10218644B1 (en) * 2016-09-21 2019-02-26 Apple Inc. Redundant communication path transmission
TWI641251B (en) * 2016-11-18 2018-11-11 財團法人工業技術研究院 Method and system for monitoring network flow
US10868750B1 (en) 2019-08-09 2020-12-15 Verizon Patent And Licensing Inc. Method and device for facilitating delivery of content in a multi-access edge computing (MEC) environment
CN111901133B (en) * 2020-08-07 2023-07-11 北京东土军悦科技有限公司 Multicast switching method, device, network equipment and storage medium
TWI733560B (en) * 2020-08-13 2021-07-11 瑞昱半導體股份有限公司 Switch and switch network system thereof
CN112804101B (en) * 2021-01-11 2022-04-29 电子科技大学 Master-slave multi-chain cross-link method and system based on voting and credit mechanism
KR102594586B1 (en) * 2023-04-11 2023-10-26 주식회사 스마트비전 Method for determining l2 switch connection structure of traffic information center and apparatus therefor

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101448003A (en) * 2008-12-23 2009-06-03 杭州华三通信技术有限公司 Method and device for processing IGMP message
JP2012109864A (en) * 2010-11-18 2012-06-07 Hitachi Ltd Frame transfer device, program, frame transfer method, and network system

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6370121B1 (en) * 1998-06-29 2002-04-09 Cisco Technology, Inc. Method and system for shortcut trunking of LAN bridges
US7076594B2 (en) * 2000-12-22 2006-07-11 Cisco Technology, Inc. Apparatus and method for preventing one way connectivity loops in a computer network
US8111715B1 (en) * 2002-05-09 2012-02-07 Marvell International Ltd. Method and apparatus for transferring a frame of data from a first network to a second network
JP2005086460A (en) * 2003-09-09 2005-03-31 Nec Corp Device and method for designing path, and program
DE602005025221D1 (en) 2005-09-29 2011-01-20 Nokia Siemens Networks Gmbh Detection of inactive connections in a communication network
US7948922B2 (en) 2006-04-18 2011-05-24 Cisco Technology, Inc. Blocked redundant link-aware spanning tree protocol enhancement
JP2010514340A (en) * 2006-12-20 2010-04-30 テレフオンアクチーボラゲット エル エム エリクソン(パブル) How to discover the physical topology of a communication network
US8089882B2 (en) * 2007-03-23 2012-01-03 Hewlett-Packard Development Company, L.P. Load-aware network path configuration
US7996559B2 (en) * 2007-10-12 2011-08-09 Nortel Networks Limited Automatic MEP provisioning in a link state controlled Ethernet network
CN101252539B (en) * 2008-04-03 2011-08-10 杭州华三通信技术有限公司 General-purpose attribute logging method and node
CN101330422A (en) * 2008-07-18 2008-12-24 北京星网锐捷网络技术有限公司 Method for avoiding broadcast storm in an ether looped network and transmission switch for the ether looped network
CN101483570B (en) * 2009-02-17 2012-07-11 杭州华三通信技术有限公司 Method, system and device for preventing looped network temporary loop circuit of relaying link
US8711863B2 (en) 2009-04-27 2014-04-29 Ciena Corporation Virtual links in a routed ethernet mesh network
CN101588298B (en) * 2009-07-07 2011-05-11 杭州华三通信技术有限公司 Method for switching flow in stacking system and stacking system
JPWO2012081631A1 (en) 2010-12-16 2014-05-22 日本電気株式会社 Switching device, host device, network, and packet transfer method
US20130266017A1 (en) 2010-12-16 2013-10-10 Ippei Akiyoshi Communication system, control apparatus, communication method, and program
WO2012093429A1 (en) 2011-01-05 2012-07-12 Nec Corporation Communication control system, control server, forwarding node, communication control method, and communication control program
CN102291289B (en) * 2011-09-06 2017-11-07 中兴通讯股份有限公司 Loop network multicast service implementation method, system and device
US9178807B1 (en) * 2012-09-20 2015-11-03 Wiretap Ventures, LLC Controller for software defined networks

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101448003A (en) * 2008-12-23 2009-06-03 杭州华三通信技术有限公司 Method and device for processing IGMP message
JP2012109864A (en) * 2010-11-18 2012-06-07 Hitachi Ltd Frame transfer device, program, frame transfer method, and network system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Grg.Basic Spanning Tree.《OpenFlow Wiki》.2010, *

Also Published As

Publication number Publication date
JP2015529434A (en) 2015-10-05
KR20150093648A (en) 2015-08-18
US11102077B2 (en) 2021-08-24
WO2014051593A1 (en) 2014-04-03
US20150222491A1 (en) 2015-08-06
CN104662838A (en) 2015-05-27
EP2901629B1 (en) 2018-02-21
EP2901629A4 (en) 2016-05-25
EP2901629A1 (en) 2015-08-05
CN110247798A (en) 2019-09-17
US20210367853A1 (en) 2021-11-25

Similar Documents

Publication Publication Date Title
US20210367853A1 (en) Transmit specific traffic along blocked link
US11811605B2 (en) Packet data unit (PDU) structure for supporting distributed relay control protocol (DRCP)
US10148492B2 (en) Data center bridging network configuration and management
US20180019941A1 (en) Integrated heterogeneous software-defined network
US9749241B2 (en) Dynamic traffic management in a data center
US10673744B2 (en) Methods, systems, and computer readable media for advanced distribution in a link aggregation group
WO2020232185A1 (en) Slice-based routing
US20070140235A1 (en) Network visible inter-logical router links
EP2744159B1 (en) Openflow packet forwarding system, control apparatus, packet forwarding method and program
JP6466595B2 (en) Adaptive load balancing in packet processing
US8228823B2 (en) Avoiding high-speed network partitions in favor of low-speed links
Jmal et al. An overview of shortest path mechanisms for Metro-Ethernet networks

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant