US9866456B2 - System and method for network health and management - Google Patents
System and method for network health and management Download PDFInfo
- Publication number
- US9866456B2 US9866456B2 US14/590,122 US201514590122A US9866456B2 US 9866456 B2 US9866456 B2 US 9866456B2 US 201514590122 A US201514590122 A US 201514590122A US 9866456 B2 US9866456 B2 US 9866456B2
- Authority
- US
- United States
- Prior art keywords
- network
- health
- configuration
- switches
- messages
- 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, expires
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/04—Processing captured monitoring data, e.g. for logfile generation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0823—Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0866—Checking the configuration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0895—Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0817—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/20—Arrangements for monitoring or testing data switching networks the monitoring system or the monitored elements being virtualised, abstracted or software-defined entities, e.g. SDN or NFV
Definitions
- the present disclosure relates generally to networking and, more particularly, to a system and method for network health and management.
- GbE Gigabit Ethernet
- FIG. 1 illustrates an example embodiment of a network having a plurality of network switches.
- FIG. 2 illustrates an example embodiment of a network switch.
- FIG. 3 illustrates an example embodiment of a network management station.
- FIG. 4 illustrates a flowchart of an example process.
- Server virtualization is a key element in enabling cloud computing applications and infrastructure.
- server virtualization abstracts the number and identity of individual physical servers, processors, and operating systems, from actual server users. By this abstraction, a single physical server machine can be partitioned into multiple independent virtual servers. These independent virtual servers can be migrated from one physical machine to another physical machine as needed. For example, migration of a virtual server to a particular machine can be driven due to load balancing or in response to a hardware failure.
- VLANs Virtual LANs
- Traffic flows will differ substantially whenever virtual servers are migrated.
- Flexible controls in managing the various network resources used by these virtual servers is therefore a key element of overall network administration.
- network management personnel are increasingly responsible for administrating greater numbers of physical machines, the effectiveness of network management tools grows in importance in today's data center environment.
- the network management method includes receiving, via a communications network from a plurality of network switches in a network, a plurality of health messages from the respective plurality of network switches.
- a health messages received from one of the plurality of network switches includes one or more parameters that are indicative of the utilization of one or more forwarding tables in the one of the plurality of network switches.
- a network management station can then be configured to determine a measure of a health of the network.
- the network management station can then be configured to determine whether a configuration request for the network (e.g., deployment of X virtual machines) can be satisfied. If it is determined that the configuration request can be accommodated by the network, then the network management station can transmit, via a communications network, a plurality of configuration messages to the plurality of network switches to implement the new network configuration in whole or in part.
- a configuration request for the network e.g., deployment of X virtual machines
- FIG. 1 illustrates an example embodiment of a network having a plurality of network switches.
- the plurality of network switches can include Ethernet switches (Layer 2), Internet routers (Layer 3), transport switches (Layer 4), or application layer switching and routing.
- Layer 2 Ethernet switches
- Layer 3 Internet routers
- Layer 4 transport switches
- application layer switching and routing As would be appreciated, the particular type, configuration and interconnectivity of the plurality of switches in the network would be implementation dependent.
- a plurality of switches are each coupled to network management station 100 .
- Network management station 100 can be configured to monitor a health of the network, which includes the plurality of network switches. The monitoring of the health of the network can be based on the receipt of health messages (HMs) from the plurality of network switches.
- network switch 110 can be configured to transmit a health message to network management station 100 .
- the health messages that are received by network management station 100 from the plurality of network switches would enable network management station 100 to assess the health of the network such that the impact of a roll out of a potential new network configuration can be examined prior to the actual reconfiguration of the network.
- the current health of the network can lead to an assessment of whether the potential new network configuration would be a bad “fit” for the network.
- the potential new network configuration can be adjusted when such a bad “fit” is identified.
- FIG. 2 illustrates an example embodiment of a network switch.
- network switch 210 can be enabled via software-defined networking (SDN).
- SDN software-defined networking
- network switch 210 is enabled via the OpenFlow architecture, which is described in greater detail in the Open Network Foundation's OpenFlow Switch Specification, Version 1.3.0.
- OpenFlow is an architecture for network switches that separates control and data forwarding planes.
- the OpenFlow architecture is based on an abstract switch that embodies a forwarding plane, a logically centralized network management controller that is external from the network switch, and a control protocol between the network switch and the centralized network management controller that enables the centralized network management controller to program the network switch.
- This separation of the control plane from the forwarding plane allows for more sophisticated traffic management than is feasible using access control lists (ACLs) and routing protocols of existing switches.
- ACLs access control lists
- switch 210 includes a forwarding plane 212 that includes a plurality of forward routing tables ( 1 -N).
- Forwarding plane 212 is configured to receive ingress packets along with metadata on a logical port of switch 210 .
- the logical port may or may not correspond directly to a hardware physical interface of network switch 210 .
- Forwarding plane 210 includes a pipeline having one or more processing stages, wherein each of the one or more processing stages perform packet processing in accordance with a respective forwarding table that includes a plurality of forwarding table entries. Each of the plurality of forwarding table entries are configured to match and process packets and the metadata in accordance with a set of match fields. The metadata can be matched and written at each table and enables the pipeline to carry state between tables.
- a packet is associated with an action set, which is resolved at the end of the packet-processing pipeline and applied to the packet.
- the end result of processing by the packet-processing pipeline is a delivery of a packet with associated meta data to a logical port for ultimate delivery to an egress side of network switch 210 . Again the logical port may or may not correspond to a hardware physical interface of network switch 210 .
- network switch 210 includes a controller 214 that is operative to configure the plurality of forward routing tables ( 1 -N). Configuration of the plurality of forward routing tables ( 1 -N) is based on communication with a centralized network management controller 220 .
- network management controller 220 can configure and write entries into tables 1 -N in forwarding plane 212 using the OpenFlow protocol.
- the OpenFlow protocol effectively moves the network control out of proprietary network switches and into control software that is open source and locally managed.
- FIG. 3 illustrates an example embodiment of a network management station.
- Network management station 300 receives health messages that are routed to network management station 300 via a communication network. As illustrated, the received health messages can be collected by network switch status module 310 . The information contained within the health messages can be stored in raw form and/or can be extracted and prepared for storage by network switch status module 310 .
- the health messages can include other information in addition to the table utilization information as part of the health messages.
- network switches can include available queue information (for new applications), available buffer information (e.g., device, per port, per queue, per queue group, or other buffer-related information), path availability information (e.g., link utilization, route utilization, next-hop loading, or other connection information), and physical metrics information (e.g., power consumption, temperature, average voltage, or other measured metrics).
- network switch status module 310 can also derive historical metrics that convey rate of change between two measuring points. For example, network switch status module 310 can determine a change in table utilization, a number of unique table hits, a number of entries not hit (i.e., stale entries), duration of link utilization >X, average power consumption when device throughput >Y, and any other historical metric. As would be appreciated, the particular types of historical or other derived metrics would be implementation dependent.
- the collection of switch-specific data by network switch status module 310 can be leveraged by network managed station 300 in determining a health of the network.
- controller 320 in network management station 300 can be configured to access the switch-specific status information of network switch status module 310 and derive one or more measures of the health of the network. The derived one or more measures of the health of the network can then be stored in network health module 330 .
- controller 320 can be configured to examine the table utilization information reported by the plurality of network switches to determine a health of all or part of the network.
- an analysis of the table utilization information across a plurality of network switches can indicate that the network switches are nearing their forwarding capacity.
- the particular set of status information used to determine a health of the network would be implementation dependent.
- Table utilization information for example, can be analyzed along with path availability information. In another example, table utilization information can be analyzed along with power consumption information, where energy savings concerns are paramount.
- the information stored by network health module 330 can form the basis of reports that are transmitted to one or more users. These network health reports can provide relevant personnel with real-time and/or historical assessments of the functioning of the network. These health reports can highlight particular network switches, sub-networks and the network as a whole.
- the assessment of the health of the network using table utilization information can be used by the network management station to evaluate an impact of requested new configurations (e.g., deploy X virtual machines) on the network.
- configuration information from a user can be received by a configuration requests module 340 .
- a configuration request based on the configuration information provided by the user can be evaluated by controller 320 .
- This configuration request evaluation can be based on information stored by network health module 330 .
- controller 320 can be configured to determine whether or not the requested configuration is viable when deployed.
- controller 320 can also estimate a network response to the deployment of the requested configuration.
- controller 320 can leverage past network health information stored by network health module 330 to identify expected performance when the network was in a similar configuration and/or underwent similar changes in deploying a similar configuration.
- the request for adding 100 virtual machines can therefore be evaluated by controller 320 using information stored by network health module 330 .
- Such an evaluation can be based on a resource best-fit evaluation where the configuration that adds 100 virtual machines is optimized for best use of resources (e.g., fewest table entries). For example, idle resources can be enabled when the health of the network indicates that there is 70% loading across 10% of links.
- an evaluation can be based on a minimal impact fit evaluation where the configuration that adds 100 virtual machines is optimized such that the fewest number of flows, customers, software operations, or other network factors are impacted upon deployment.
- the particular evaluation mechanism and the particular network health factors considered by the evaluation mechanism would be implementation dependent.
- controller 320 In general, the role of the evaluation mechanism by controller 320 is to examine the potential impact of a requested configuration prior to deployment of the requested configuration. Without such a mechanism, the deployment of a requested configuration can have immediate adverse consequences to flows, customers, software operations, or other network factors.
- controller 320 can determine a particular configuration that is to be deployed. This determined configuration 350 can represent the entire requested configuration. Alternatively, determined configuration 350 can represent a scaled back version of the entire requested configuration. For example, instead of deploying all 100 of the requested virtual machines, controller 320 can chose to deploy only 75 of the requested virtual machines. The determined configuration 350 can then be deployed to the network using a plurality of configuration messages.
- the process begins at step 402 where health messages are received from a plurality of network switches.
- the health messages can be transmitted by one or more network switches in response to a request from a network management station.
- the network management station can transmit the request under the direction from an end user, thereby enabling the end user to probe the one or more network switches.
- the health messages can be sent periodically by one or more network switches to give a sampled state of the network switch.
- the particular reporting schedule for each network switch can be independently defined by a user.
- the health messages can be sent by a network switch only when a particular set of conditions (event) are met.
- a network switch can transmit a health message when it is determined that a table fill level reaches 80%, buffer fill level reaches 70%, link utilization is 100% for 100 ms, etc.
- a health of the network can be determined based on the received health messages.
- the health of the network can be determined as a current or an historical measure. In general, any measure that is based on the network switch status as reported in the health messages can be used in the determination of a health of the network.
- a viability of a potential network configuration as defined in a configuration request can be determined based on the health of the network. This viability analysis can be used to determine whether the potential network configuration as requested can be deployed. As an alternative, the process of step 406 , can be used to determine whether an alternative to the potential network configuration as requested can be deployed. For example, the alternative configuration can represent a scaled-down version of the potential network configuration as requested. In yet another example, the process of step 406 can be used in an online fashion to determine whether a current network configuration has entered into a hazardous state, as detected via health messages.
- step 406 is designed to ensure that an analysis of the potential or current network configuration based on the network health is performed using the health messages. In this manner, potentially adverse impacts to the network can be avoided through the filtering of configuration requests prior to deployment or the adjustment of current network configurations.
- configuration messages can be transmitted to a plurality of network switches to deploy a new network configuration at step 408 .
- these configuration messages can be designed to deploy the fully-requested network configuration, can be designed to deploy a scaled-down or otherwise modified network configuration, or can be designed to adjust a current network configuration.
- Another embodiment of the disclosure may provide a machine and/or computer readable storage and/or medium, having stored thereon, a machine code and/or a computer program having at least one code section executable by a machine and/or a computer, thereby causing the machine and/or computer to perform the steps as described herein.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Data Mining & Analysis (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
Claims (20)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US14/590,122 US9866456B2 (en) | 2014-09-17 | 2015-01-06 | System and method for network health and management |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US201462051549P | 2014-09-17 | 2014-09-17 | |
| US14/590,122 US9866456B2 (en) | 2014-09-17 | 2015-01-06 | System and method for network health and management |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| US20160080218A1 US20160080218A1 (en) | 2016-03-17 |
| US9866456B2 true US9866456B2 (en) | 2018-01-09 |
Family
ID=55455916
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US14/590,122 Active 2035-06-25 US9866456B2 (en) | 2014-09-17 | 2015-01-06 | System and method for network health and management |
Country Status (1)
| Country | Link |
|---|---|
| US (1) | US9866456B2 (en) |
Families Citing this family (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US10484257B1 (en) * | 2015-07-15 | 2019-11-19 | Amazon Technologies, Inc. | Network event automatic remediation service |
| US10498588B2 (en) * | 2015-08-13 | 2019-12-03 | Level 3 Communications, Llc | Systems and methods for managing network health |
| US10432451B2 (en) | 2015-08-13 | 2019-10-01 | Level 3 Communications, Llc | Systems and methods for managing network health |
| US10917324B2 (en) | 2016-09-28 | 2021-02-09 | Amazon Technologies, Inc. | Network health data aggregation service |
| US10911263B2 (en) * | 2016-09-28 | 2021-02-02 | Amazon Technologies, Inc. | Programmatic interfaces for network health information |
| US10862777B2 (en) | 2016-09-28 | 2020-12-08 | Amazon Technologies, Inc. | Visualization of network health information |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20080154804A1 (en) * | 2006-10-31 | 2008-06-26 | Dawson Devon L | Network device fuzzy logic |
| US20130031240A1 (en) * | 2011-07-29 | 2013-01-31 | Cisco Technology, Inc. | Capacity Evaluation of Computer Network Capabilities |
| US20130290512A1 (en) * | 2012-04-27 | 2013-10-31 | International Business Machines Corporation | Network configuration predictive analytics engine |
-
2015
- 2015-01-06 US US14/590,122 patent/US9866456B2/en active Active
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20080154804A1 (en) * | 2006-10-31 | 2008-06-26 | Dawson Devon L | Network device fuzzy logic |
| US20130031240A1 (en) * | 2011-07-29 | 2013-01-31 | Cisco Technology, Inc. | Capacity Evaluation of Computer Network Capabilities |
| US20130290512A1 (en) * | 2012-04-27 | 2013-10-31 | International Business Machines Corporation | Network configuration predictive analytics engine |
Also Published As
| Publication number | Publication date |
|---|---|
| US20160080218A1 (en) | 2016-03-17 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11539576B2 (en) | Dynamic path selection and data flow forwarding | |
| Lee et al. | Network monitoring: Present and future | |
| US9288162B2 (en) | Adaptive infrastructure for distributed virtual switch | |
| US9866456B2 (en) | System and method for network health and management | |
| EP3235177B1 (en) | Measurement coordination in communications | |
| JP7313480B2 (en) | Congestion Avoidance in Slice-Based Networks | |
| CN112468338B (en) | Communication method, device and system | |
| US11102273B2 (en) | Uplink performance management | |
| CN103416022B (en) | In-Service Throughput Testing Method and System in Distributed Router/Switch Architecture | |
| CN118118441A (en) | A power communication network system and dispatching method supporting deterministic control | |
| Alssaheli et al. | Software defined network based load balancing for network performance evaluation | |
| CN107666441A (en) | Network service method and system based on software defined network | |
| Dong et al. | Meet: Rack-level pooling based load balancing in datacenter networks | |
| Chirivella-Perez et al. | Nfvmon: enabling multioperator flow monitoring in 5G mobile edge computing | |
| JP2013074494A (en) | Network state estimation device and network state estimation program | |
| CN121334034A (en) | A method, apparatus, electronic device and storage medium for forwarding network traffic. | |
| Bashir | Handling elephant flows in a multi-tenant data center network |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| AS | Assignment |
Owner name: BROADCOM CORPORATION, CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:MATTHEWS, WILLIAM BRAD;KALKUNTE, MOHAN VENKATACHAR;REEL/FRAME:034641/0771 Effective date: 20150105 |
|
| AS | Assignment |
Owner name: BANK OF AMERICA, N.A., AS COLLATERAL AGENT, NORTH CAROLINA Free format text: PATENT SECURITY AGREEMENT;ASSIGNOR:BROADCOM CORPORATION;REEL/FRAME:037806/0001 Effective date: 20160201 Owner name: BANK OF AMERICA, N.A., AS COLLATERAL AGENT, NORTH Free format text: PATENT SECURITY AGREEMENT;ASSIGNOR:BROADCOM CORPORATION;REEL/FRAME:037806/0001 Effective date: 20160201 |
|
| AS | Assignment |
Owner name: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD., SINGAPORE Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:BROADCOM CORPORATION;REEL/FRAME:041706/0001 Effective date: 20170120 Owner name: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:BROADCOM CORPORATION;REEL/FRAME:041706/0001 Effective date: 20170120 |
|
| AS | Assignment |
Owner name: BROADCOM CORPORATION, CALIFORNIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS COLLATERAL AGENT;REEL/FRAME:041712/0001 Effective date: 20170119 |
|
| STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
| AS | Assignment |
Owner name: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITE Free format text: MERGER;ASSIGNOR:AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.;REEL/FRAME:047422/0464 Effective date: 20180509 |
|
| AS | Assignment |
Owner name: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITE Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE EXECUTION DATE PREVIOUSLY RECORDED AT REEL: 047422 FRAME: 0464. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER;ASSIGNOR:AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.;REEL/FRAME:048883/0702 Effective date: 20180905 |
|
| MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 4 |
|
| MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 8TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1552); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 8 |