A network monitoring system that monitors a communication network including plural communication apparatuses and includes an obtaining part for obtaining a transmission traffic amount and a reception traffic amount of each port of the plural communication apparatuses, a determining part for determining whether the transmission traffic amount is no less than a first threshold and whether the reception traffic amount is less than a second threshold for each port of the plural communication apparatuses, a storage part for storing connecting path data of the communication network therein, an extracting part for extracting a loop affected path, and an outputting part for outputting data of the loop affected path.
|
3. A path extracting method executed by a network monitoring system for monitoring a communication network including a plurality of communication apparatuses, the method comprising:
obtaining a transmission traffic amount and a reception traffic amount of each port of the plural communication apparatuses;
determining whether the transmission traffic amount is no less than a first threshold and whether the reception traffic amount is less than a second threshold for each port of the plural communication apparatuses;
extracting a loop affected path; and
outputting data of the loop affected path extracted by the extracting of the loop affected path;
wherein the loop affected path is a connecting path that includes a loop affected candidate port and is connected to the connecting path extracted by the extracting of the loop path,
wherein the loop affected candidate port is a port determined as having the transmission traffic amount that is no less than the first threshold and having the reception traffic amount that is less than the second threshold,
wherein the extracting of the loop affected path includes determining whether a communication apparatus including a port constituting the path extracted by the extracting of the loop affected path includes the loop affected candidate port, and
wherein the loop affected path extracted by the extracting of the loop affected path is a connecting path including the loop affected candidate port in a case where the loop affected candidate port is included in the communication apparatus.
1. A network monitoring system for monitoring a communication network including a plurality of communication apparatuses, the network monitoring system comprising:
an obtaining part configured to obtain a transmission traffic amount and a reception traffic amount of each port of the plural communication apparatuses;
a determining part configured to determine whether the transmission traffic amount is no less than a first threshold and whether the reception traffic amount is less than a second threshold for each port of the plural communication apparatuses;
a storage part configured to store connecting path data of the communication network therein;
an extracting part configured to extract a loop affected path; and
an outputting part configured to output data of the loop affected path extracted by the extracting part;
wherein the loop affected path is a connecting path that includes a loop affected candidate port and is connected to a loop path,
wherein the loop affected candidate port is a port determined as having the transmission traffic amount that is no less than the first threshold and having the reception traffic amount that is less than the second threshold,
wherein the extracting part is configured to determine whether a communication apparatus including a port constituting the path extracted by the loop affected path extracting part includes the loop affected candidate port, and
wherein the loop affected path extracted by the loop affected path extracting part is a connecting path including the loop affected candidate port in a case where the loop affected candidate port is included in the communication apparatus.
2. The network monitoring system as claimed in
a VLAN path extracting part configured to extract the entire path of the VLAN from the storage part in a case where the loop affected path extracted by the loop affected path extracting part is used in the VLAN; and
a VLAN path data outputting part configured to output data of the VLAN path extracted by the VLAN path extracting part.
4. The method as claimed in
extracting an entire path of a VLAN from the storage part in a case where the loop affected path extracted by the extracting of the loop affected path is used in the VLAN; and
outputting data of the VLAN path extracted by the extracting of the VLAN path.
|
This application is based upon and claims the benefit of priority of International Patent Application No. 2007-068694 filed on Sep. 26, 2007, the entire contents of which are incorporated herein by reference.
The embodiments discussed herein are related to technology for detecting generation of a packet loop of, for example, a broadcast storm, in a layer 2 network. For example, a technology for extracting and displaying a path at which a packet loop is occurring and other paths affected by the packet loop.
A layer 2 network is formed of communication apparatuses including a layer 2 switch that performs switching of layer 2 frames (frames are also referred to as packets) such as Ethernet frames. Owing to the decrease in the cost of the communication apparatuses that form the layer 2 network and the increase in the communication rate of the layer 2 network, the use of the layer 2 network is rapidly becoming popular.
The layer 2 network is basically formed having a tree structure and designed to prevent generation of loop areas. As for documents related to the present application, there are Japanese Laid-Open Patent Application No. 2006-352763 and Japanese Laid-Open Patent Application No. 2006-33275.
Although paths in a layer 2 network are usually designed to avoid generation of loop areas, a loop path may be generated due to an error in the settings of a communications apparatus or an error in the connecting of cables. When packets flow into such loop path, a packet loop (packets infinitely circle inside a loop path) occurs.
In a case where the packet loop occurs, unicast packets are caused to continue circling inside a loop path and are prevented from reaching a target destination. Moreover, broadcast packets increase whenever the broadcast packets pass through communication apparatuses that constitute a loop path and continue circling in both directions of the loop path. The bandwidth of a network is filled to its upper limit by the increase of packets and results in a so-called congestion state. This causes a significant delay of communications and leads to disconnection of communications.
Further, because a server connected to the layer 2 network receives a huge amount of packets, the packet loop could adversely affect the maintaining of a network service provided by the server.
In a case of recovering a network when a packet loop occurs, first, the flow of packets is physically stopped by removing the cables of a loop route or a packet flow path inside a communication apparatus is logically disconnected by changing the settings of the communication apparatus. By physically stopping the flow of packets or logically disconnecting the packet flow path, the packet loop is stopped. Then, the content of a FDB (Forwarding Database), which is the switching route storage data of the communications apparatus constituting the loop route, is reset. Finally, the settings and route connections that caused the loop are investigated.
Next, a process where a packet loop is generated in a layer 2 network is described with reference to
As illustrated in
Path 1 in
Path 5 indicates a connecting path between the port b2 of the switching apparatus B and the port c4 of the switching apparatus C. Path 6 indicates a connecting path between the port c1 of the switching apparatus C and a point C. Path 7 indicates a connecting path between the port b3 of the switching apparatus B and a point D. Path 8 indicates the port c3 of the switching apparatus C and a point E. Path 9 indicates the port c2 of the switching apparatus C and a point F.
In the example illustrated in
Then, the packet reaching the port b1 of the switching apparatus B is copied and sent to the port b2 and the port b3. The copied packets that are passed through the ports b2 and b3 are sent to corresponding opposite ends at wire speed. That is, the packet from the port b2 is sent to the port c4 of the switching apparatus C; and the packet from the port b3 is sent to the point D.
Then, the packet reaching the port c1 of the switching apparatus C is copied and sent to the port c1, the port c2, the port c3, and the port c5. The packet from the port c1 is sent to the point C. The packet from the port c2 is sent to the point F. The packet from the port c3 is sent to the point E. The packet from the port c5 is sent to the port a3 of the switching apparatus A. The packet reaching the port a3 of the switching apparatus A is copied and sent to the ports a2, a4, and a1.
As described above, the packet flowing into the port a4 of the loop path continues circling in a direction from path 3→path 5→path 4→path 3 . . . . Further, the packet flowing into the port a3 of the loop path continues circling in a direction from path 4→path 5→path 3→path 4 . . . . Because a packet is copied at each port of a switching apparatus whenever the packet reaches the switching apparatus, packets are also sent to the path 1, the path 2, the path 6, the path 7, the path 8, and the path 9 which do not include a port that constitutes the loop path.
Next, a process where a packet loop is generated in a layer 2 network that forms a VLAN is described with reference to
Similar to
For example, in a case where the path 3, the path 4, and the path 5 are connected as a VLAN, the packets of the VLAN-B will continue circling (loop) inside the VLAN of path 3, path 4, and path 5.
This affects the packets of the VLAN-A. That is, because the packets of VLAN-A and the packets of VLAN-B pass through the path 3, the large increase in the amount of packets flowing in the VLAN-B obstructs the flow of the packets of the VLAN-A. In this case, the packets of the VLAN-C are not affected by the packet loop because the VLAN-C is not connected to a loop path.
As for related art examples for detecting generation of a packet loop, there is a method of periodically sending Pings to the end points of a path. Because the bandwidth of a network path becomes congested in a case where a packet loop occurs, the generation of a packet loop can be detected by detecting abnormality in the traffic of packets.
However, even if generation of a packet loop can be detected, the path at which the packet loop is generated or the range affected by the packet loop cannot be perceived.
An embodiment of the present invention provides a network monitoring system for monitoring a communication network including plural communication apparatuses, the network monitoring system including: an obtaining part configured to obtain a transmission traffic amount and a reception traffic amount of each port of the plural communication apparatuses; a determining part configured to determine whether the transmission traffic amount is no less than a first threshold and whether the reception traffic amount is less than a second threshold for each port of the plural communication apparatuses; a storage part configured to store connecting path data of the communication network therein; an extracting part configured to extract a loop affected path; and an outputting part configured to output data of the loop affected path extracted by the extracting part; wherein the loop affected path is a connecting path that includes a loop affected candidate port and is connected to a loop path, and wherein the loop affected candidate port is a port determined as having the transmission traffic amount that is no less than the first threshold and having the reception traffic amount that is less than the second threshold.
The object and advantages of the invention will be realized and attained by means of the elements and combinations particularly pointed out in the claims.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are not restrictive of the invention, as claimed.
Next, embodiments of the present invention are described with reference to the drawings.
As illustrated in
The network monitoring system 20 is connected to each of the switching apparatuses A, B, C of the layer 2 network 10 via in-band connection or via a maintenance network. The network monitoring system 20 can perform, for example, obtaining of monitor data or control with respect to each of the switching apparatuses A, B, C via in-band connection or a maintenance network.
Next, a configuration and functions of the network monitoring system 20 according to an embodiment of the present invention are illustrated in
As illustrated in
The network monitoring system 20 may have a configuration of a single computer having one or more of the above-described function parts 21-29. Alternatively, the network monitoring system 20 may have a configuration including plural computers having one or more of the above-described function parts 21-29. Each of the function parts 21-29 may be realized by causing a computer to execute a corresponding program(s).
(Basic Operation)
First, a basic operation of the network monitoring system 20 according to an embodiment of the present invention is described with reference to the flowchart of
The traffic obtaining part 21 obtains communication (transmission/reception) traffic data of each port from each of the switching apparatuses (in this embodiment, switching apparatuses A, B, C) constituting the layer 2 network 10 at predetermined cycles (traffic obtaining cycles T) (Step S1). As a method for obtaining transmission/reception traffic data, there is a method of obtaining MIB (Management Information Base) of transmission/reception traffic by using a standard management protocol of an IP (Internet Protocol) network such as SNMP (Simple Network Management Protocol). Alternatively, the network management system 20 may remotely send commands unique to each of the switching apparatuses A, B, C and obtain transmission/reception traffic included in the responses returned from the switching apparatuses A, B, C.
Further, apparatus data and port data of the switching apparatuses from which transmission/reception traffic data are to be obtained may be stored in the traffic obtaining part 21 beforehand. Alternatively, the traffic obtaining part 21 may obtain the apparatus data and the port data from a storage device inside the network monitoring system 20 or outside the network monitoring system 20. The traffic obtaining part 21 uses the apparatus data and the port data for uniquely identifying a target switching apparatus from which transmission/reception traffic data are to be obtained and obtaining the transmission/reception traffic data from the identified switching apparatus. The apparatus data of the switching apparatus may be, for example, an IP address of the switching apparatus, a host name of the switching apparatus, or both. The port data may be, for example, a port number.
In a case where the transmission/reception traffic data obtained from a switching apparatus by the traffic obtaining part 21 is a value accumulated after the switching apparatus is activated, the traffic obtaining part 21 obtains the amount of transmission/reception traffic data in time units by dividing the difference between the previously obtained transmission/reception traffic data and the currently obtained transmission/reception traffic data with the traffic obtaining cycles T.
For example, the traffic obtaining part 21 calculates the amount of transmission traffic (transmission traffic amount) per time and the amount of reception traffic (reception traffic amount) per time by using the formula below.
Δts(n)=(ts(n)−ts(n−1))/T
Δtr(n)=(tr(n)−tr(n−1))/T
In this example, “Δts(n)” represents transmission traffic amount per time, and “Δtr(n)” represents reception traffic amount per time. “ts(n)” represents transmission traffic amount obtained this time (currently obtained transmission traffic amount), and “tr(n)” represents reception traffic amount obtained this time (currently obtained reception traffic amount”. Further, “ts(n−1)” represents transmission traffic amount obtained the previous time (previously obtained transmission traffic amount), and “tr(n−1)” represents reception traffic amount obtained the previous time. “T” represents a predetermined traffic obtaining cycle.
In Step S2, the traffic obtaining part 21 associates the obtained transmission/reception traffic data (i.e. amount of transmission traffic data (transmission traffic amount) and amount of reception traffic data (reception traffic amount)) for all ports subject to the traffic obtaining step with corresponding apparatus data and port data and transmits the transmission/reception traffic data associated to the apparatus data and the port data to the port traffic determining part 22. In the same manner as the traffic obtaining step, the traffic obtaining part 21 transmits the transmission/reception traffic data to the port traffic determining part 22 in predetermined traffic obtaining cycles T.
The port traffic determining part 22 receives the transmission traffic data and the reception traffic data associated to the apparatus data and the port data for all ports subjected to the traffic obtaining step from the traffic obtaining part 21.
In Step S3, the port traffic determining part 22 determines whether both the transmission traffic amount and the reception traffic amount are no less than a predetermined threshold(s). The threshold may be a value equal to an upper limit of the bandwidth of the port corresponding to the transmission traffic amount, the reception traffic amount, or both. Further, the value of the threshold may be discretionally designated by a user. The threshold for the transmission traffic and the threshold for the reception traffic may be different values.
In Step S3, in a case where the port traffic determining part 22 determines that both the transmission traffic amount and the reception traffic amount for a given port are no less than (i.e. equal to or greater than) the threshold, the traffic determining part 22 determines that the given port constitutes a loop path (loop path port). As a result of the determination, the traffic determining part 22 assigns a loop port identifier to the given port. That is, the loop port identifier is assigned to the apparatus data and the port data associated to the transmission traffic amount and the reception traffic amount.
In Step S4, the port traffic determining part 22 determines whether only the transmission traffic amount is no less than the threshold for each port. That is, the port traffic determining part 22 determines whether the transmission traffic amount is no less than the threshold and whether the reception traffic amount is less than the threshold. In a case where the port traffic determining part 22 determines that only the transmission traffic amount for a given port is no less than the threshold, the port traffic determining part 22 determines that the given port is a candidate having increasing output traffic due to a packet loop affecting the given port. As a result of the determination, the traffic determining part 22 assigns a loop affected port identifier to the given port (also referred to as “candidate affected path port”). That is, the loop affected port identifier is assigned to the apparatus data and the port data associated to the transmission traffic amount.
In Step S5, the port traffic determining part 22 determines whether there are any ports to which the loop port identifier is assigned based on the transmission/reception traffic data currently obtained from the traffic obtaining part 21. It is to be noted that this step S5 may be performed before Step S4. In a case where there are no ports to which the loop port identifier is assigned (No in Step S5), a next traffic obtaining process is performed according to a predetermined timing.
In a case where there is a port to which a loop port identifier is assigned (Yes in Step S5), the port traffic determining part 22 transmits the apparatus data and the port data being assigned with a determination result (a loop port identifier or a loop affected port identifier) to a loop path extracting part 23 (Step S6). It is to be noted that the apparatus data and the port data for a port having neither the loop port identifier nor the loop affected port identifier) assigned may also be transmitted to the loop path extracting part 23.
In a case where there is no port constituting a loop path, the port in which only transmission traffic amount is no less than the threshold cannot be determined as a port affected by a loop. Accordingly, in a case where there is no port for attaching a loop port identifier, apparatus data and port data are not transmitted to the loop path extracting part 23 even when there is a port in which only the transmission traffic amount is no less than the threshold. Further, in a case of not performing a step of extracting an affected path (described below), the process of Step S4 may be omitted.
The loop path extracting part 23 receives apparatus data and port data assigned with a determination result (loop port identifier) from the port traffic determining part 22.
Then, in Step S7, the loop path extracting part 23 searches a network topology database 24 by using the apparatus data and the port data assigned with the loop port identifier and extracts a loop path. That is, the loop path extracting part 23 extracts a connecting path that connects plural ports assigned with the loop port identifier. Since there may be a case where both the transmission traffic amount and the reception traffic amount of a port are no less than the threshold(s) due to a factor besides a loop, the loop path extracting part 23 may extract a connecting path only when the connecting path of the plural ports assigned with the loop port identifier constitute a loop.
The loop path extracting part 23 transmits data of the extracted loop path (loop path data) to a loop path displaying part 25. The loop path displaying part 25 receives the loop path data from the loop path extracting part 23 and outputs the loop path data to, for example, a display apparatus (not illustrated) so that a list of loop paths can be displayed by the display apparatus (Step S8). Alternatively, the loop path displaying part 25 may generate a topology image of a loop path based on the loop path data and output the generated topology image to the display apparatus.
Next, the network topology database 24 is described. The network topology database 24 is a database that maintains a path data table therein. The network topology database 24 may be provided by a storage apparatus in the network monitoring system 20 or a server outside the network monitoring system 20.
The network topology database 24 searches the path data table in response to queries from the loop path extracting part 23, the affected path extracting part 26, and the VLAN path extracting part 28 by using the apparatus data and the port data as keys and outputs (responds) a corresponding path.
Next, an exemplary configuration of a path data table is illustrated in
In the configuration illustrated in
For example, in a case where the loop path extracting part 23 receives data assigned with a loop port identifier (in this example, apparatus data corresponding to apparatus N and port data corresponding to port n, and apparatus data corresponding to apparatus M and port data corresponding to port m) from the port traffic determining part 22, the loop path extracting part 23 extract path n as one of the paths that constitute a loop. The loop path displaying part 25 starts a process for displaying the loop path including the extracted path.
As described above, because the network monitoring system 20 according to an embodiment of the present invention detects a port having a bandwidth clogged by traffic in both directions (transmitting direction and receiving direction) as the loop packets pass through the port, extracts a connecting path(s) of the plural detected ports, and displays the extracted connecting path(s), the user can easily understand that a packet loop is generated and identify (distinguish) the path at which the packet loop is generated.
(Affected Path Extracting Process)
Next, an operation of performing an affected path extracting process is described.
In Step S7 of the flowchart illustrated in
The affected path extracting operation is described with reference to
In this example, a path 100 connecting the switching apparatus 51 and the switching apparatus 52 is a path constituting a loop. Further, the ports 512, 513 of the switching apparatus 51 and the ports 522, 523 of the switching apparatus 52 are affected by the loop. Loop affected port identifiers are assigned to the apparatus data and the port data of the ports 512, 513, 522, and 523. Further, loop affected port identifiers are also assigned to the apparatus data and the port data of the ports of the outer side of the switching apparatuses 53-57.
Next, an operation performed by the affected path extracting part 26 is described with reference to
The affected path extracting part 26 receives the apparatus data and the port data assigned with determination results (loop identifiers, loop affected port identifiers) from the loop path extracting part 23. In this example, the affected path extracting part 26 receives data containing data indicating the status of
Then, the affected path extracting part 26 extracts one port to be subjected for processing from the ports determined to be affected by the loop (i.e. assigned with loop affected port identifier) (Steps S14, S15). In this example of
In Step S16, the affected path extracting part 26 searches the network topology database 24 by using the port data and the apparatus data assigned with loop affected port identifiers as keys and extracts a path including the port corresponding to the port data and the apparatus data assigned with loop affected port identifiers (current process target). In a case where the port 512 is the current process target in the example of
Then, the affected path extracting part 26 searches the network topology database 24 for data of a port assigned with a loop affected port identifier among the ports of the switching apparatus located opposite from the current process target (opposite side apparatus) and extracts the corresponding port which is to be processed (Steps S17 and S18). It is, however, to be noted that the port located opposite from the port corresponding to the current process target in Step S16 is excluded from the port to be extracted. In the example of
In Step S19, the affected path extracting part 26 searches the network topology database 24 by using the extracted port data and the apparatus data as keys and extracts a path including the port corresponding to the extracted port data and the apparatus data. In a case where the port 532 is the current process target in the example of
Then, the affected path extracting part 26 returns to Step S17 and searches for a port corresponding to the port data assigned with a loop affected port identifier among the ports of the switching apparatus (in the example of
The affected path extracting part 26 continues this operation until processing of all of the switching apparatuses and ports to be processed is completed. By performing the affected path extracting process, loop affected paths connected to the loop path can be extracted. In the example of
In the flowchart of
By performing the operation of the above-described loop affected path extracting process, the network monitoring system 20 can extract a path including a port having a bandwidth congested by transmission traffic and contacting a connecting path at which a packet loop exists. Further, the network monitoring system 20 can display the extracted path. Accordingly, a path(s) affected by the packet loop can be detected. Thereby, the user can grasp the generation of a packet loop, the path at which the packet loop is generated, and the path affected by the generation of the loop by referring to the loop path displaying part 25.
(VLAN Path Extracting Process)
Next, a VLAN path extracting process is described. After Step 7 of
Further, after the operation illustrated in
The VLAN path extracting part 28 receiving the data from the affected path extracting part 26 searches the network topology database 24 using the VLANID as a key, extracts all of the paths that include the VLANID, and transmits the extracted data to the VLAN path displaying part 29. Then, the VLAN path displaying part 29 outputs the data from the VLAN path extracting part 28 and outputs the loop path data to, for example, a display apparatus (not illustrated) so that a list of loop paths including VLAN can be displayed by the display apparatus. Alternatively, the VLAN path displaying part 29 may generate a topology image of a loop path including VLAN based on the data from the VLAN extracting part 28.
For example, in a case where a VLAN of VLAN3 is set to a path connecting the sub-network 30, the port a1, the port a4, the port b1, the port b3, and the sub-network 33 according to the configuration illustrated in
The paths extracted from the VLAN path extracting part 28 include a VLAN path which uses all of or a part of the paths at which a loop is generated and the paths affected by the loop.
With the VLAN path extracting process, the network monitoring system 20 can extract and display a VLAN path overlapping a connecting path at which a packet loop exists. Thus, the loop path displaying part 25 enables the user to grasp the generation of a packet loop, the paths at which the packet loop is generated, and the paths affected by the packet loop. In addition, the VLAN path displaying part 29 enables the user to grasp the paths of each VLAN affected by the generation of the packet loop.
(Hardware Configuration of Network Monitoring System)
As described above, the network monitoring system 20 according to an embodiment of the present invention may have a configuration of a computer having one or more of the above-described function parts 21-29.
The program(s) used for performing the above-described processes according to an embodiment of the present invention may be read out from a computer-readable recording medium (e.g., CD-ROM) 67 by the recording medium reading apparatus 66 and installed into the computer 60. Further, the program(s) may be downloaded from a server via a network connected to the computer 60.
With the network monitoring system 20 according to the above-described embodiments of the present invention, the user can easily grasp the path at which a packet loop is generated, a path(s) affected by the generation of the packet loop, and the VLAN path in a case where a packet loop is generated. Accordingly, the length of time for searching the cause of the packet loop can be shortened.
All examples and conditional language recited herein are intended for pedagogical purposes to aid the reader in understanding the invention and the concepts contributed by the inventor to furthering the art, and are to be construed as being without limitation to such specifically recited examples and conditions, nor does the organization of such examples in the specification relate to a showing of the superiority and inferiority of the invention. Although the embodiments of the present invention have been described in detail, it should be understood that the various changes, substitutions, and alterations could be made hereto without departing from the spirit and scope of the invention.
Sugita, Kiyoshi, Arai, Toshimasa
Patent | Priority | Assignee | Title |
8352594, | Jun 12 2008 | Panasonic Corporation | Network monitoring device, bus system monitoring device, method and program |
Patent | Priority | Assignee | Title |
6501754, | Aug 08 1997 | Kabushiki Kaisha Toshiba | Scheme for label switched path loop detection at node device |
6785226, | Sep 01 1999 | CARRIERCOMM, INC | System and method for data routing over a network |
7606177, | Dec 09 1998 | Cisco Technology, Inc. | Value-added features for the spanning tree protocol |
20020176370, | |||
20050076140, | |||
20060013141, | |||
20060026471, | |||
20060072460, | |||
20060285487, | |||
20060285499, | |||
20070177600, | |||
20080062874, | |||
JP2006101094, | |||
JP200633275, | |||
JP2006352763, | |||
JP200648162, | |||
JP2007201966, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Mar 17 2010 | ARAI, TOSHIMASA | Fujitsu Limited | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 024133 | /0948 | |
Mar 17 2010 | SUGITA, KIYOSHI | Fujitsu Limited | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 024133 | /0948 | |
Mar 24 2010 | Fujitsu Limited | (assignment on the face of the patent) | / |
Date | Maintenance Fee Events |
Jun 10 2013 | ASPN: Payor Number Assigned. |
Mar 09 2016 | M1551: Payment of Maintenance Fee, 4th Year, Large Entity. |
May 18 2020 | REM: Maintenance Fee Reminder Mailed. |
Nov 02 2020 | EXP: Patent Expired for Failure to Pay Maintenance Fees. |
Date | Maintenance Schedule |
Sep 25 2015 | 4 years fee payment window open |
Mar 25 2016 | 6 months grace period start (w surcharge) |
Sep 25 2016 | patent expiry (for year 4) |
Sep 25 2018 | 2 years to revive unintentionally abandoned end. (for year 4) |
Sep 25 2019 | 8 years fee payment window open |
Mar 25 2020 | 6 months grace period start (w surcharge) |
Sep 25 2020 | patent expiry (for year 8) |
Sep 25 2022 | 2 years to revive unintentionally abandoned end. (for year 8) |
Sep 25 2023 | 12 years fee payment window open |
Mar 25 2024 | 6 months grace period start (w surcharge) |
Sep 25 2024 | patent expiry (for year 12) |
Sep 25 2026 | 2 years to revive unintentionally abandoned end. (for year 12) |