METHOD AND APPARATUS FOR DETERMINING BANDWIDTH-CONSUMING FRAME FLOWS IN A NETWORK
First Claim
1. A method for determining activity in a network, the method comprising:
- counting every frame of a first set of a plurality of flows and a portion of a second set of said plurality of flows over a time period;
selecting flows for said first set and said second set; and
changing said portion of said second set counted every frame so that each flow in said second set is periodically counted every frame over a time period.
2 Assignments
0 Petitions
Accused Products
Abstract
A port monitor monitors network traffic that passes through a port of a switch. Frame flows routed through the switch are counted by hardware frame counting logic, which includes a content-addressable memory (CAM) and counters corresponding to various frame flows. Port monitor software includes logical containers (“buckets”), which are used to record and sort counts of the frame flows from hardware based on activity of the frame flows. Frame flow sorting is based on confidence building algorithms such that the thrashing of frame flows between buckets is reduced. Storage and sorting of the frame flows in software allows the activity level of any number of frame flows associated with the switch to be counted, regardless of hardware limitations on how many frame flows can be counted. This allows a real-time analysis of frame flows and a determination of frame flows that are major users of Fibre Channel bandwidth.
11 Citations
30 Claims
-
1. A method for determining activity in a network, the method comprising:
-
counting every frame of a first set of a plurality of flows and a portion of a second set of said plurality of flows over a time period; selecting flows for said first set and said second set; and changing said portion of said second set counted every frame so that each flow in said second set is periodically counted every frame over a time period. - View Dependent Claims (2, 3)
-
-
4. A computer readable medium storing instructions, the instructions when executed causing a processor to:
-
count every frame of a first set of a plurality of flows and a portion of a second set of said plurality of flows over a time period; select flows for said first set and said second set; and change said portion of said second set counted every frame so that each flow in said second set is periodically counted every frame over a time period. - View Dependent Claims (5, 6)
-
-
7. A network device comprising:
-
a processor; memory operatively connected to said processor to store software programs and data; detection logic configured to detect selected values in portions of each frame in each of a plurality of frame flows; a plurality of hardware counters operatively coupled to said processor and operatively connected to said detection logic and configured to count every frame of selected frame flows; and a software program stored in said memory to cause said processor to; configure said plurality of hardware counters to count every frame of a first set of said plurality of flows and a portion of a second set of said plurality of flows over a time period; select flows for said first set and said second set; and configure said plurality of hardware counters with said portion of said second set counted every frame so that each flow in said second set is periodically counted every frame over a time period. - View Dependent Claims (8, 9)
-
-
10. A network device comprising:
-
a processor; memory operatively connected to said processor to store software programs and data; detection logic configured to detect selected values in portions of each frame in each of a plurality of frame flows; a plurality of hardware counters operatively coupled to said processor and operatively connected to said detection logic and configured to count frame flow activity; and a software program stored in said memory to cause said processor to; logically partition said plurality of frame flows into a first set and a second set based on frame flow activity, each frame flow having an associated count value, wherein said first set has associated an equivalent number of hardware counters for counting frame flow activity as there are frame flows in said first set, and wherein said second set has associated a smaller number of hardware counters for counting frame flow activity than there are frame flows in said second set; periodically determine frame flow activity for frame flows having associated hardware counters and update the associated count values for said frame flows; assign frame flows with the highest count values to the first set and configure the hardware counters as required; and assign the remaining frame flows to said second set, change which frame flows of said second set have associated hardware counters and configure the hardware counters as required so that all frame flows in said second set are periodically associated with hardware counters to determine count values. - View Dependent Claims (11, 12, 13, 14, 15, 16)
-
-
17. A method of determining activity in a network, comprising:
-
determining a plurality of frame flows to be monitored; partitioning said plurality of frame flows into a first set and a second set, each frame flow having an associated count value, wherein said first set has associated an equivalent number of hardware counters for counting frame flow activity as there are frame flows in said first set, and wherein said second set has associated a smaller number of hardware counters for counting frame flow activity than there are frame flows in said second set; periodically determining frame flow activity for the frame flows having associated hardware counters and updating the associated count values for said frame flows; assigning frame flows with the highest count values to said first set and configuring the hardware counters as required; and assigning the remaining frame flows to said second set, changing which frame flows of said second set have associated hardware counters, and configuring the hardware counters as required so that all frame flows in said second set are periodically associated with hardware counters to determine count values. - View Dependent Claims (18, 19, 20, 21, 22, 23)
-
-
24. A computer readable medium storing instructions, the instructions when executed causing a processor to:
-
determine a plurality of frame flows to be monitored; logically partition said plurality of frame flows into a first set and a second set, each frame flow having an associated count value, wherein said first set has associated an equivalent number of hardware counters for counting frame flow activity as there are frame flows in said first set, and wherein said second set has associated a smaller number of hardware counters for counting frame flow activity than there are frame flows in said second set; periodically determine frame flow activity for the frame flows having associated hardware counters and updating the associated count values for said frame flows; assign frame flows with the highest count values to said first set and configure the hardware counters as required; and assign the remaining frame flows to said second set and change which frame flows of said second set have associated hardware counters so that all frame flows in said second set are periodically associated with hardware counters to update count values. - View Dependent Claims (25, 26, 27, 28, 29, 30)
-
Specification