Gathering network statistics in a distributed network service environment
First Claim
Patent Images
1. A method for gathering statistics about packets, comprising:
- determining one or more statistics that are to be gathered for a flow;
communicating instructions to a forwarding agent that are associated with the statistics for the flow, the forwarding agent being implemented on a network device and operable to receive the instructions; and
receiving a report of the statistics gathered by the forwarding agent according to the instructions.
1 Assignment
0 Petitions
Accused Products
Abstract
A system and method are described for gathering statistics about packets. The method includes determining at a service manager statistics that are to be gathered for a flow and sending instructions to a forwarding agent from the service manager detailing how to gather statistics for the flow. The forwarding agent is implemented on a network device and the forwarding agent is operative to receive statistics gathering instructions for a flow from the service manager. A report is received at the service manager of statistics gathered at the forwarding agent according to the instructions sent by the service manager.
73 Citations
25 Claims
-
1. A method for gathering statistics about packets, comprising:
-
determining one or more statistics that are to be gathered for a flow;
communicating instructions to a forwarding agent that are associated with the statistics for the flow, the forwarding agent being implemented on a network device and operable to receive the instructions; and
receiving a report of the statistics gathered by the forwarding agent according to the instructions. - View Dependent Claims (2, 3, 4, 5, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21)
a router;
a switch; and
a load balancer.
-
-
9. The method of claim 4, wherein the instructions include a selected one of the dispatch flag, the information flag, and a network address translation (NAT) address field that contains a NAT address.
-
11. The method of claim 1, wherein the forwarding agent is operable to receive a plurality of statistics gathering instructions for a plurality of flows from a plurality of service managers.
-
12. The method of claim 1, wherein the statistics are selected from the group consisting of:
-
a number of bytes associated with the flow;
a number of packets communicated for the flow; and
a number of packets associated with the flow that are received by the forwarding agent.
-
-
13. The method of claim 1, wherein the network device is operable to process selected packets within the flow based on the instructions.
-
14. The method of claim 1, wherein communicating the instructions to the forwarding agent designating the statistics for the flow includes communicating a fixed affinity that identifies the flow.
-
15. The method of claim 14, wherein the fixed affinity includes a selected one of the group consisting of:
-
a source IP address;
a destination IP address;
a source port number; and
a destination port number.
-
-
16. The method of claim 14, wherein the fixed affinity further includes an affinity key that designates how the forwarding agent is to process one or more packets within the flow that match the affinity key.
-
17. The method of claim 15, wherein the packet destination IP address is translated by the forwarding agent.
-
18. The method of claim 1, wherein one or more packets included in the flow are forwarded to a next destination.
-
19. The method of claim 1, wherein one or more packets included in the flow are dropped in response to receiving the instructions.
-
20. The method of claim 1, wherein one or more packets included in the flow are counted in response to receiving the instructions.
-
21. The method of claim 1, wherein the instructions include a time to live parameter that indicates a time interval to be used by the forwarding agent in processing one or more packets included in the flow.
-
6. A method for gathering statistics about packets, comprising:
-
determining one or more statistics that are to be gathered for a flow;
communicating instructions to a forwarding agent that are associated with the statistics for the flow, the forwarding agent being implemented on a network device and operable to receive the instructions; and
receiving a report of the statistics gathered by the forwarding agent according to the instructions;
wherein the instructions include a dispatch flag operable to signal whether or not one or more packets included in the flow are to be forwarded;
wherein the dispatch flag indicates whether a packet included in the flow and having a packet header is to be sent to a specified forwarding internet protocol (IP) address that is different than a destination IP address specified in the packet header; and
wherein one or more of the packets are counted as inbound packets when the dispatch flag and the information flag are set, and wherein one or more of the packets are counted as outbound packets when the information flag is set and the dispatch flag is not set.
-
-
7. A method for gathering statistics about packets, comprising:
-
determining one or more statistics that are to be gathered for a flow;
communicating instructions to a forwarding agent that are associated with the statistics for the flow, the forwarding agent being implemented on a network device and operable to receive the instructions; and
receiving a report of the statistics gathered by the forwarding agent according to the instructions;
wherein the instructions include a dispatch flag operable to signal whether or not one or more packets included in the flow are to be forwarded;
wherein the dispatch flag indicates whether a packet included in the flow and having a packet header is to be sent to a specified forwarding internet protocol (IP) address that is different than a destination IP address specified in the packet header; and
wherein the instructions further include a forwarding IP address field, and wherein one or more of the packets are dropped when the dispatch flag is set and the forwarding IP address field is null.
-
-
8. A method for gathering statistics about packets, comprising:
-
determining one or more statistics that are to be gathered for a flow;
communicating instructions to a forwarding agent that are associated with the statistics for the flow, the forwarding agent being implemented on a network device and operable to receive the instructions; and
receiving a report of the statistics gathered by the forwarding agent according to the instructions;
wherein the instructions include a dispatch flag operable to signal whether or not one or more packets included in the flow are to be forwarded;
wherein the dispatch flag indicates whether a packet included in the flow and having a packet header is to be sent to a specified forwarding internet protocol (IP) address that is different than a destination IP address specified in the packet header; and
wherein the instructions further include a forwarding IP address field, and wherein one or more of the packets are counted and dropped when the information flag is set and the forwarding IP address field is null.
-
-
10. A method for gathering statistics about packets, comprising:
-
determining one or more statistics that are to be gathered for a flow;
communicating instructions to a forwarding agent that are associated with the statistics for the flow, the forwarding agent being implemented on a network device and operable to receive the instructions; and
receiving a report of the statistics gathered by the forwarding agent according to the instructions;
wherein the instructions include a dispatch flag operable to signal whether or not one or more packets included in the flow are to be forwarded;
wherein the dispatch flag indicates whether a packet included in the flow and having a packet header is to be sent to a specified forwarding internet protocol (IP) address that is different than a destination IP address specified in the packet header;
wherein the instructions include a selected one of the dispatch flag, the information flag, and a network address translation (NAT) address field that contains a NAT address; and
wherein one or more of the packets are counted as inbound packets when the dispatch flag and the information flag are set, and wherein one or more of the packets are counted as outbound packets when the information flag is set and the dispatch flag is not set.
-
-
22. A forwarding agent, comprising:
-
a network packet receiving interface for receiving packets from a network;
a service manager receiving interface for receiving instructions from a service manager specifying statistics to be gathered for one or more of the packets;
a processor for gathering the statistics for one or more of the packets;
a memory for storing the statistics; and
a communication interface for communicating the statistics to a statistics collector.
-
-
23. A service manager, comprising:
-
a processor operable to determine statistics that are to be gathered for a flow;
a forwarding agent sending interface operable to communicate instructions to a forwarding agent designating statistics associated with the flow, the forwarding agent being operable to receive the instructions for the flow; and
a forwarding agent receiving interface operable to receive a report of the statistics gathered at the forwarding agent.
-
-
24. A computer readable medium for gathering statistics about packets comprising code operable to:
-
determine statistics that are to be gathered for a flow;
communicate instructions to a forwarding agent designating statistics associated with the flow, the forwarding agent being operable to receive the instructions for the flow; and
communicate a report reflecting the statistics gathered at the forwarding agent according to the instructions.
-
-
25. A method for gathering statistics associated with one or more packets, comprising:
-
means for determining one or more statistics that are to be gathered for a flow that includes one or more of the packets;
means for communicating instructions to a forwarding agent that are associated with the statistics for the flow, the forwarding agent being operable to receive the instructions; and
means for receiving a report of the statistics gathered by the forwarding agent according to the instructions.
-
Specification