# US 9,519,563 B2 · Method and apparatus for providing network applications monitoring

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 9,519,563 B2
- Document ID: US9519563B2
- Status: Granted
- Kind: B2
- Application number: 13/890,982
- Filed: 2013-05-09
- Published: 2014-11-13
- Granted: 2016-12-13
- Earliest claimed: 2013-05-09
- Assignees: Telefonaktiebolaget LM Ericsson (publ)
- Applicants: Telefonaktiebolaget L M Ericsson (Publ)
- Inventors: Ravi Manghirmalani; Ramesh Mishra; Ramesh Subrahmaniam
- Web page: https://patentgrep.com/patent/US9519563B2

## CPC

- G06F 11/3452: {Performance evaluation by statistical analysis}
- G06F 11/3006: {where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems (multiprogramming arrangements G06F9/46; allocation of resources G06F9/50)}
- G06F 11/3433: {for load management (allocation of a server based on load conditions G06F9/505; load rebalancing G06F9/5083; redistributing the load in a network by a load balancer H04L67/1029)}
- G06F 2201/815: Virtual
- G06F 2201/88: Monitoring involving counting
- H04L 43/028: by filtering
- H04L 43/0817: by checking functioning
- H04L 43/20: the monitoring system or the monitored elements being virtualised, abstracted or software-defined entities, e.g. SDN or NFV
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A method for providing network performance monitoring using a performance database manager (PDM) is disclosed. A PDM has a PDM state manager, a communications server (COM server), a communications client (COM client), and an application database (AppDB). The PDM is configured to communicate with a network controller and a switch running a service monitoring (SERMON) client. A list of one or more switches, one or more hosted services, and one or more applications is determined. A request for service monitoring (SERMON) data is received from one or more applications running on a network controller. The request is sent to a SERMON client. A response is received from the SERMON client.

## Claims

### Claim 1

A method for providing network performance monitoring using a performance database manager (PDM), the method comprises:
determining, by the PDM, a list of one or more switches, one or more hosted services of each switch, and one or more applications of each switch;
receiving, by the PDM, a request for service monitoring (SERMON) data from an application running on a network controller, wherein the request comprises an application identifier, a datapath identifier (DPID), a host identifier (HostID), and actual data items;
sending, by the PDM, the request to a SERMON client running on one of the one or more switches;
receiving, by the PDM, a response from the SERMON client; and,
sending, by the PDM, the response to the application running on the network controller upon receipt of the response from the SERMON client.

### Claim 2 (depends on 1)

The method of claim 1, wherein the one or more switches comprise layer2 switches.

### Claim 3 (depends on 2)

The method of claim 2, wherein the PDM receives the list on boot up.

### Claim 4 (depends on 2)

The method of claim 2, wherein the PDM periodically queries the network controller to update the list.

### Claim 5 (depends on 1)

The method of claim 1, wherein a communications server of the PDM parses the request and sends the list to a PDM state manager.

### Claim 6 (depends on 1)

The method of claim 1, wherein the request is a snapshot request.

### Claim 7 (depends on 6)

The method of claim 6, wherein when the snapshot request comprises a first time request, and the application identifier is flagged for retrieval of SERMON information.

### Claim 8 (depends on 1)

The method of claim 1, wherein a PDM state manager stores in a database SERMON data related to the application identifier from the response.

### Claim 9

An apparatus for providing network performance monitoring, comprising:
a performance database manager (PDM), comprising:
a PDM state manager;
a communications server (COM server) coupled to the PDM state manager;
a communications client (COM client) coupled to the PDM state manager; and,
an application database (AppDB) coupled to the PDM state manager;
the PDM configured to communicate with a network controller and a switch running a service monitoring (SERMON) client;
the PDM further configured to:
determine a list of one or more switches, one or more hosted services of each switch, and one or more applications of each switch;
receive a request for SERMON data from an application running on the network controller, wherein the request comprises an application identifier, a datapath identifier (DPID), a host identifier (HostID), and actual data items;
send the request to the SERMON client running on one of the one or more switches;
receive a response from the SERMON client; and,
send the response to the application running on the network controller upon receipt of the response from the SERMON client.

### Claim 10 (depends on 9)

The apparatus of claim 9, wherein the one or more switches comprise layer2 switches.

### Claim 11 (depends on 9)

The apparatus of claim 9, wherein the COM server parses the request and sends the list to the PDM state manager.

### Claim 12 (depends on 9)

The apparatus of claim 9, wherein the request comprises a snapshot request.

### Claim 13 (depends on 12)

The apparatus of claim 12, wherein when the snapshot request comprises a first time request, and the application identifier is flagged for retrieval of SERMON information.

### Claim 14 (depends on 9)

The apparatus of claim 9, wherein a PDM state manager stores in the AppDB SERMON data related to the application identifier from the response.

### Claim 15

A performance database manager (PDM) for providing network performance monitoring, wherein the PDM is configured to communicate with a network controller and a switch running a service monitoring (SERMON) client, the PDM comprising:
a PDM state manager;
a communications server (COM server) coupled to the PDM state manager;
a communications client (COM client) coupled to the PDM state manager;
an application database (AppDB) coupled to the PDM state manager;
the PDM configured to:
query the centralized controller for a list of SERMON client identifier (CliID), SERMON server identifiers (ServIDs) and application identifiers (App IDs);
periodically query the network controller for latest snapshot of the SERMON CliIDs, the SERMON ServIDs and the App IDs;
the PDM state manager configured to:
manage all states for metrics that are periodically collected from the SERMON client identified by the CliID, the ServID, and the AppID;
store the states in the AppDB;
formulate a message received from the network controller through the COM server and funnel the formulated message to the COM client, wherein the message received from the network controller comprise an application identifier, a datapath identifier (DPID), a host identifier (HostID), and actual data items;
the COM server configured to:
parse the message received from the network controller and send the parsed message to the PDM state manager;
prepare a message to be sent to the network controller after the PDM receives a performance specific response from the SERMON client; and,
the COM client configured to:
enable communications between the PDM and the SERMON client;
send a performance specific request to the SERMON client; and
receive the performance specific response from the SERMON client.
