A method is described that involves updating an understanding of an atm pnni network after the reception of PTSE information. The PTSE information has SIG information that describes bandwidth which has been allocated to specific priority levels of a bandwidth resource. The bandwidth resource is within the atm pnni network. Then, determining a path through the network for a requested connection. The path is determined in light of the updated understanding. The requested connection has a priority level, wherein the path may result in one or more connections being dropped in order to allow bandwidth for the requested connection. Each of the dropped connections has a lower priority level than the priority level of the requested connection.
|
20. A network node to operate as part of a network, comprising:
means for receiving PTSE information from a plurality of other nodes in the network, the PTSE information including a first field bundled with a system Capabilities Information Group (SIG) field, the first field describing a bit rate service category of a link in the network, the SIG field describing bandwidth allocations made to specific priority levels of the bit rate service category of the link; and
means for determining a path through the network for a requested connection, using the received PTSE information, the requested connection having a priority level, wherein determining the path results in one or more connections being dropped to allow bandwidth for the requested connection, each of the dropped connections having a lower priority level than that of the requested connection.
1. A method, comprising:
a) updating an understanding of an atm pnni network after reception of PTSE information, said PTSE information including a first field bundled with a system Capabilities Information Group (SIG) field, the first field describing a bit rate service category of a link in the network, the SIG field describing bandwidth allocations made to specific priority levels of the bit rate service category of the link;
b) determining a path through said network for a requested connection, said path determined in light of said updated understanding, said requested connection having a priority level, wherein said determined path results in one or more connections being dropped in order to allow bandwidth for said requested connection, each of said dropped connections having a lower priority level than said priority level of said requested connection.
28. A networking node to operate as part of a network, comprising:
a processing core to execute a software program to enable the networking node to (1) access PTSE information received by the networking node from another node in the network, the PTSE information including a first field bundled with a system Capabilities Information Group (SIG) field, the first field describing a bit rate service category of a link in the network, the SIG field describing bandwidth allocations made to specific priority levels of the bit rate service category of the link, and (2) determine a path through the network for a requested connection, using the received PTSE information, the requested connection having a priority level, wherein determining the path results in one or more connections being dropped to allow bandwidth for the requested connection, each of the dropped connections having a lower priority level than that of the requested connection.
11. A machine readable medium having stored thereon sequences of instructions, which, when executed by a digital processing system cause said digital processing system to:
a) update an understanding of an atm pnni network after reception of PTSE information, said PTSE information including a first field bundled with a system Capabilities Information Group (SIG) field, the first field describing a bit rate service category of a link in the network, the SIG field describing bandwidth allocations made to specific priority levels of the bit rate service category of the link;
b) determine a path through said network for a requested connection, said path determined in light of said updated understanding, said requested connection having a priority level, wherein said determined path results in one or more connections being dropped in order to allow bandwidth for said requested connection, each of said dropped connections having a lower priority level than said priority level of said requested connection.
3. The method of
5. The method of
6. The method of
7. The method of
8. The method of
9. The method of
10. The method of
12. The machine readable medium of
13. The machine readable medium of
14. The machine readable medium of
15. The machine readable medium of
16. The machine readable medium of
17. The machine readable medium of
18. The machine readable medium of
19. The machine readable medium of
21. The network node of
22. The network node of
23. The network node of
24. The network node of
25. The network node of
26. The network node of
27. The network node of
29. The networking node of
30. The networking node of
31. The networking node of
32. The networking node of
33. The networking node of
34. The networking node of
|
The field of invention relates to networking, generally; and, more specifically, to a method and apparatus for true priority based connection establishment within a PNNI ATM network.
An exemplary Private Network Node Interface (PNNI) Asynchronous Transfer Mode (ATM) network 101 is shown in
The term “connection” or “circuit” is often used to describe a pre-defined path through a network. Typically, when a body of information is to be transported over a network, a connection is setup beforehand that establishes (in some manner and to some extent) the path that the cells will take. Various types of connections may be used within an ATM network 101. These include: 1) permanent virtual circuits (PVCs); 2) switched virtual circuits (SVCs); and 3) soft permanent virtual circuits (SPVCs).
In the case of PVCs, a quasi-permanent connection is established (e.g., a connection that lasts for days, weeks, months, etc.). PVCs are often used in situations where a large corporate user desires to permanently clear a guaranteed pipe through the network 101 from one large office to another large office. For example, if node 1051 corresponds to the Customer Premise Equipment (CPE) of a first corporate office and node 1052 corresponds to the CPE of a second corporate office, a PVC may be established that couples nodes 1021, 1024, 1027 and network lines 1033, 10311 together (in order to form an end-to-end path through the network 100 between CPEs 1051 and 1052).
Generally, the amount of traffic (e.g., as between two large corporate offices) and the extent of the usage (e.g., every business day for the foreseeable future) justifies the costs associated with dedicating, in a quasi-permanent fashion, a fixed amount of the network's resources to one particular pathway. Typically, a PVC is manually configured by a network manager from a network management control station 104. As such, commands are issued from the network control station 104 to the various nodes in the network 101 that “make up” the PVC (so that the lookup tables, etc. within these nodes can be properly updated).
Another characteristic of a PVC is that a PVC user simply directs traffic into the network 101 (e.g., from node 1051) with little or no formal request for transportation services from the network 101. For example, typically, a PVC user at node 1051 will send ATM cells having the PVC's VPI/VCI across the ATM User Network Interface (UNI) at link 1031. Based upon the VPI/VCI information, node 1021 (e.g., as well as subsequent nodes along the PVC path) will be able to properly switch the cells onto a link that corresponds to the PVC path. Thus, because the connection is quasi-permanent and has already been established, there is little or no procedural overhead associated with connection setup (such as a SETUP request message and the like). The user is provided an appropriate VPI/VCI well beforehand (e.g., shortly after PVC setup) which is invoked each time thereafter by the user when the services of the PVC are desired.
SVCs, on the other hand, are established on a temporary basis rather than a quasi-permanent basis. SVCs efficiently utilize the resources of a network if the network has to support a large number of different connection paths over a fairly brief period of time (e.g., seconds, minutes, hours). In contrast to PVCs, SVCs are usually established on a “call-by-call” basis and therefore have: 1) some form of formal user request to the network 101 for transportation services; and, 2) a connection “setup” procedure that follows the request for transportation services and a connection “tear down” procedure that follows the successful performance of the requested transportation services.
The connection setup/tear down procedures may be viewed as the “automatic” configuration of a connection within the network rather than manual configuration from a network management control station 104. PNNI is a routing and signaling protocol that determines and establishes connection paths. The PNNI routing protocol is executed on the source endpoint (e.g., source endpoint 1021 for connections initiated from originating node 1051), and is often referred to as a “source” routing protocol. An example of PNNI's routing and signaling techniques are provided immediately below.
If node 1051 (the “originating” node) desires to send information to node 1052 (the “target” node), the originating node 1051 will effectively request the network 101 for a connection to be established between nodes 1051 and node 1052. Typically, this request takes the form of a SETUP message that is passed over the ATM UNI at link 1031. The access node 1021 (which may be referred to as the source endpoint node) receives the SETUP message and determines an appropriate path for the connection through the network via the PNNI routing protocol.
The SETUP message then traverses the network 101 to the destination endpoint node 1027. When the SETUP message is received at the destination endpoint node 1027, a CONNECT message is issued from the destination endpoint node 1027 to the source endpoint node 1021. The CONNECT message “bounces”, node-by-node, along the connection path to the source endpoint node 1021. Each node that receives the CONNECT message updates its lookup table (or other routing/switching platform) with an appropriate reference to the connection being established. When the source endpoint node 1021 receives the CONNECT message, the VPI/VCI for the connection is passed to the user at the ATM UNI (along link 1031), the connection is established, and transportation services may commence. After the transportation services are complete, the connection is torndown in a manner similar to that in which it was established.
An SPVC is often viewed as a blending of an SVC and a PVC. SPVCs are often used to provide guaranteed bandwidth to a particular user (such that the user enjoys service as if a permanent pipe has been established through the network 101) while, simultaneously, the network 101 is allowed to flexibly adapt to different connection paths over brief periods of time (by establishing each SPVC communication with connection setup and tear down procedures). In order to implement an SPVC service, the endpoint nodes of the ATM network 101 (e.g., source node 1021 and destination node 1027) are configured to behave like PVC nodes with respect to the user (e.g., along the ATM UNI at link 1031) while behaving like SVC nodes within the ATM network 101 itself.
With an SPVC, the source and destination endpoint nodes 1021 and 1027 are usually manually configured by the network management station 104 to provide a PVC interface to the users at node 1051 (and at node 1052). That is, for example, a quasi permanent VPI/VCI is provided to the user that is to be invoked each time the services of the SPVC are desired. Upon the receipt of ATM cells having this VPI/VCI information, however, the endpoint source node 1021 triggers the release of a SETUP message which traverses the network 101 to destination endpoint node 1027. A CONNECT message is returned to the endpoint source node 1021, and the SPVC is established.
The present invention is illustrated by way of example, and not limitation, in the Figures of the accompanying drawings in which.
A problem with both SVC and SPVC type connections is that the connection establishment process does not execute a “true” Quality of Service (QoS) priority bumping scheme with respect to the network 101 as a whole. QoS relates to the notion that the various connections supported by the network 101 are to be prioritized in some manner with respect to one another. For example, the network 101 may be configured to give cells associated with higher priority connections lower end-to-end delay across the network 101 than cells associated with lower priority connections.
Another QoS parameter concerns the connection establishment process. Specifically, under a process that may be referred to as “priority bumping”, higher priority connections are established at the expense of lower priority connections. For example, if the network 101 is supporting a large number of low priority connections at the same moment it happens to receive a request for a high priority connection, one or more of the low priority connections can be “dropped” so that the high priority connection can be established.
The PNNI routing and signaling scheme is often said to be a “source routing” scheme because the appropriate path for a network connection is determined at the node that acts as its source endpoint (e.g., node 1021 for connections initiated by node 1051). Currently, only a limited form of priority bumping is possible. Specifically, only those lower priority connections that actually pass through the source endpoint can be dropped.
Consequently, a remote node that supports many low priority connections cannot drop these connections in order to support a higher priority connection; unless, these connections also happen to flow through the same endpoint node that seeks to establish the high priority connection. Thus, in a sense, the power to drop one or more lower priority connections in favor of a higher priority connection is localized to the realm of the source endpoint node that seeks to establish the higher priority connection (rather than being distributed over the network 101 as a whole).
The power to drop connections is limited in the manner described above because the source endpoint node that is responsible for establishing a connection has little or no perspective as to the manner in which bandwidth resources elsewhere in the network have been allocated with respect to connection priority. As such, in order to expand the scope of those lower priority connections that may be dropped in order to support a higher priority connection, a source endpoint should be made aware of the connections being supported on other nodes in terms of their priority and they bandwidth the consume.
Thus, as seen in the methodology of
After the SIG information has been received 201, the prospective source endpoint node will update 202 its present understanding of the network. In various embodiments, the understanding of the network corresponds to the collection of the latest SIG information received from each node within the network. As such, a network wide status is crafted from which those bandwidth resources (e.g., a remote node; and/or, a link or portion of a link that is coupled to a remote node) that can be used to support a connection having a specific priority is identified.
When a new connection is requested 203 (e.g., formally in the case of an SVC or informally in the case of an SPVC), the prospective source node attempts to determine 204 a possible path through the network. For example, in various “path-recursive” approaches, the prospective source endpoint node is configured to determine a “first pass” path (e.g., according to a PNNI compliant source routing algorithm) through the network. Then, once the “first pass” path has been determined, the bandwidth resources that would be used along the path are looked into (as understood via the network understanding that has been developed 202) to see if the path can be entertained.
If the path can be entertained, the connection path is established (which may involve the dropping of lower priority connections) via the issuance 205 of a SETUP message from the source endpoint node. If not, an alternative “second pass” path is determined and analyzed in a similar fashion. The process continues in a recursive fashion until a workable path is identified (in which case the connection is ultimately established); or, alternatively, is not identified (in which case the connection is not ultimately established).
In other approaches, unlike the approach just described above where different paths are analyzed recursively, a routing algorithm may be used that automatically determines the appropriate path. For example, a weighted routing algorithm may be used that assigns weights to the bandwidth resources of the network that are available for the priority level of the requested connection. The mathematics of the algorithm then automatically finds the path having the heaviest (or lightest) weight as it progresses systematically from the source endpoint node to the destination endpoint node. Other routing approaches may be possible as well.
Specifically,
With regard to the discussion of
Referring to
That is, the SIG information unit for link 1033 indicates that 311 Mb/s of that link's bandwidth has been allocated for connections having a priority level of 1 or a priority level of 2 (i.e., 155.5 Mb/s of priority level 1 traffic+155.5 Mb/s of priority level 2 traffic=311 Mb/s of priority level 1 and 2 traffic). Because the requested connection has a priority level of 3 (and because higher priority connections have lower priority level numbers), the 311 Mb/s worth of allocated bandwidth will not be dropped from link 1033 (because this bandwidth has been dedicated to higher priority connections) and may be said to be “unavailable”.
Nevertheless, 155.5 Mb/s of the link's bandwidth is freely available (i.e., 466.5 Mb/s of total bandwidth−311 Mb/s of unavailable bandwidth=155.5 Mb/s of available bandwidth). As such, link 1033 can be used to support the requested connection. Link 10311, however, has no bandwidth available for links of priority level 3 or lower. To first order, all 466.5 Mb/s of the link's bandwidth has been consumed; and, none of the priority levels for which bandwidth has been allocated is lower than the priority level of the requested connection. As such, there are no lower priority connections that can be “bumped” in order to make room for the requested connection. Link 1033 is therefore deemed unavailable for the connection and the “first pass” path through the network 101 can not be established.
If the routing protocol identifies a 1032-1022-1035-1025-10312-1027 path through the network as the “second pass” path, this second pass path can be entertained. Specifically, each of links 1032, 1035, and 10312 are only carrying traffic having a lower priority (priority levels 4, 5 and 6) than the requested connection (priority). As such, in an embodiment, any or all of the connections on these links may be dropped to support connections having a priority level of 3 or higher.
In a further embodiment, connections are dropped according to reverse priority. That is, the lowest priority connection(s) beneath the priority level of the requested connection are dropped first, followed by the next lowest, etc.
That is, the 155.5 Mb/s worth of bandwidth that was originally allocated to the priority level 6 connection(s) has been re-allocated to the newly established priority level 3 connection. As a result, the priority level 4 and priority level 5 connection(s) have been unaffected by the establishment of the new, priority level 3 connection. Note that the newly established priority level 3 connection has also dropped all of the previous traffic that existed on access link 10314.
If the bandwidth available for the newly requested connection is greater than the bandwidth to be consumed by the newly requested connection, the requested connection may be entertained at the bandwidth resource being analyzed. Furthermore, if the freely available bandwidth is greater than or equal to the bandwidth to be consumed by the requested connection, then the connection may be established 506 without any priority bumping.
If, however, the freely available bandwidth is not greater than or equal to the bandwidth to be consumed by the requested connection, the connection is established 506 with priority bumping (e.g., at the expense of the lowest priority connection(s). When a connection is being established, the source endpoint node issues a SETUP message that traverses the network to the destination endpoint node. In an embodiment, the SETUP message is configured to include the priority level and the bandwidth of the connection being established so that the nodes that carry the new connection can determine which connections are to be dropped.
Referring back to
For example, referring to
Thus, in a sense, the occurrence of the event ripples through the network so that its constituent nodes can cohesively route information around the downed link 10310 in response. In other cases, typically, the network's nodes 1021 through 1027 are also configured to broadcast current status information as well as special events. Thus, on a broader scale, the nodes of the network may be said to communicate procedural (e.g., “control”) information with one another as well as the substantive information associated with user traffic.
This control information is often organized into one or more PNNI Topology State Elements (hereinafter, referred to as PTSEs) that are embedded into a PNNI Topology State Packet (hereinafter, referred to as a PTSP). A PTSP is a packet that acts as the broadcast mechanism while a PTSE acts as a component of the PTSP's payload. Thus, for example, if a node has information to broadcast it issues a PTSP that carries one or more PTSEs that each have the information to be communicated. An embodiment 600 of a PTSP is shown in
Referring to
The PTSE field 601 includes one or more PTSEs 6011 through 601x. An embodiment 701 of a PTSE is shown in
The PTSE header field 702 also includes a identifier field 710 that identifies the type of PSTE that PTSE 701 corresponds to. That is, PNNI employs a characterization scheme so that specific types of information can be binned together or recognized within a common PTSE format. The various PTSE types include (among possible others): 1) Horizontal Link; 2) Uplink; 3) External Address; 4) Internal Address; 5) Nodal Parameters (complex node); and 6) Nodal. Those of ordinary skill can identify the purpose and/or use of each PTSE type.
Referring to the PTSE embodiment 701 of
Through the use of the SIG field 705, two nodes from the same manufacturer can communicate information with one other that is not specifically provided for by the PNNI standard; while, at the same time, operate in compliance with the PNNI standard. That is, those nodes that can understand and use the contents of the SIG field 705 may do so while those that do not understand the SIG field 705 contents may simply ignore its information (as well as forward the PTSE having the SIG field to another node via a rebroadcast effort).
The Horizontal Link PTSE type is commonly used to transport information that pertains to a link, or a portion of a link. That is, finer granularities than the whole of a link's resources may be specified or described with a Horizontal Link PTSE. These finer granularities may be used to develop a deeper understanding of the network's bandwidth allocations. For example, the industry standard field 704 of a Horizontal Link PTSE can specify a particular type of service such as a Constant Bit Rate (CBR) service, a real time or non-real time Variable Bit Rate (VBR) service, an Available Bit Rate (ABR) service and an Unspecified Bit Rate (UBR) service.
As such, the priority levels of a particular link may be further specified so as to define specific priority levels for each of the service types that exist on the link. As such, the network can be configured to bump lower priority connections of a specific type in response to a request for a connection of the same service type. Further still, the industry standard field 704 of a Horizontal Link PTSE can specify particular QoS parameters (e.g., average cell rate, max cell rate, cell transfer delay, cell delay variation, and cell loss ratio).
As such, the priority levels of a particular link may be further specified so as to define specific priority levels not only for each service type, but also for each common combination of QoS parameters that exist on the link. Thus, in various embodiments, the industry standard field 704 of a Horizontal Link PTSE is used to specify the service type or the service type and specific QoS settings for which the bandwidth allocations are detailed according to different priority levels. In various embodiments, the bandwidth allocations for the various priority levels of each of these finer granularities of a link may be specified within the SIG field 705.
The header field component 801 includes various header information such as a type field 806 (that indicates the data structure 805 is a SIG field), a length field 807 that describes its length and an Organization Unique Identifier (OUI) field 808 that is typically used to recognize the manufacturer of the node that issued the SIG information (i.e., is a “vendor-specific” label). As a SIG field is typically used by the nodes of a common manufacturer to support functional improvements (beyond the PNNI standard) that are unique to the products of the manufacturer, the OUI field 808 is often used by a node to decide whether or not to ignore a received SIG field. That is, if the vendor specific label of the OUI field 808 “matches” the vendor of the node that receives the SIG information, the SIG information will be “looked into”; otherwise, the SIG information will be discarded.
Within the payload 802 of the SIG field 805, the ID # field 803 identifies the particular type of information being delivered by the SIG 805. This allows a node that supports vendor-specific functionality to understand the specific type of information enclosed in the payload 802. As such, in an embodiment, a specific binary number is used to identify that the SIG field 805 includes information related to the priority levels of the particular service type (and perhaps QoS parameter combination) that are specified in the industry standard portion of the PTSE that carries the SIG field 805. In the particular embodiment of
The rate at which PTSE information (having priority level bandwidth distributions embedded within its SIG field) is broadcast from a particular node may vary from embodiment to embodiment. For example, in one embodiment, PTSE information may be broadcast for each new connection that reflects a change in the distribution of bandwidth resources to the various priority levels. In various networking environments, however, issuing new PTSE information from each node that undergoes a mere change in distribution may congest the network with PTSP packets; or, may make an already congested network even further congested.
As a network gets congested, the delay experienced by its cells increases. Thus, the network understandings that are developed by the network's endpoint nodes may become in danger of being unacceptably inaccurate. That is, the SIG information embedded within the most recently received PTSP packets (which have experienced significant delay) is stale with respect to the actual state of the bandwidth resources they are describing.
As such, in alternate embodiments, the conditions that trigger the release of PTSE information having priority related SIG information may be scaled back. For example, rather than release PTSE information with each change in the distribution of bandwidth resources, in an alternate embodiment PTSE information is released with each “significant” change in the distribution of bandwidth resources. As just one approach, if any priority level experiences a looked-for percentage change (within a finite time period) of allocated bandwidth in either direction (e.g., a 50% increase in bandwidth resources or a 50% decrease in bandwidth resources), PTSE information reflecting the change is broadcast.
In this case, the degree of “significance” is defined by the looked for percentage. As such, other embodiments can configure other degrees of significance such as 25%, 33%, or 66% to name just a few. Note that the degree of significance can adapt to network conditions. For example, under light congestion conditions, the network can reliably handle more PTSP packets. As such, the degree of significance may be lowered (e.g., from X % to Y % where X>Y) so that more PTSE information is issued per unit time (which increases the accuracy of the network understandings made at the endpoint nodes). As network congestion increases, the degree of significance may be increased (e.g., from Y % to X %, where X>Y) so that the PTSE information does not significantly add to the network's congestion.
In other embodiments, rather than trigger the release of PTSE information having priority related SIG information only on an event (such as a change in bandwidth allocation or a significant change in bandwidth allocation), it may alternatively (or in combination) be released periodically. Again, the rate at which the PTSE information is released may vary with network congestion levels. For example, by issuing PTSE information less frequently as congestion rises; or, more frequently as congestion falls.
Note that, to the extent that the understandings of the network that are being maintained by the endpoint nodes become inaccurate, the “crankback” mechanism associated with PNNI signaling may be employed to recover from such an inaccuracy. Specifically, an inaccurate network understanding may result in the release of a SETUP message from a source endpoint node for a connection path that cannot be entertained because higher priority connections have already been established between the time the source endpoint node's latest PTSE information was issued and the time the connection request was received.
Upon the receipt of such a SETUP message by a node that is intended to carry the new connection yet cannot support it (because its bandwidth resources are already consumed by higher or equal priority level connections), the node may return a “crankback” message back to the source endpoint node that issued the SETUP message. The crankback message can be configured to contain information that effectively explains the problem to the source endpoint node. In response, the source endpoint node can update its network understanding and re-determine another path through the network.
As routing and signaling protocols are often implemented with software, it is to be understood that embodiments of this invention may be used as or to support a software program executed upon some form of processing core (such as the CPU of a computer) or otherwise implemented or realized upon or within a machine readable medium. A machine readable medium includes any mechanism for storing or transmitting information in a form readable by a machine (e.g., a computer). For example, a machine readable medium includes read only memory (ROM); random access memory (RAM); magnetic disk storage media; optical storage media; flash memory devices; electrical, optical, acoustical or other form of propagated signals (e.g., carrier waves, infrared signals, digital signals, etc.); etc.
Furthermore, it is noteworthy to point out that a network node (which may also be referred to as a networking node, a node, a networking system and the like) is a system designed to act as a switch or a router or other device that relays information from a first networking line to a second networking line. A depiction of a networking node 900 is observed in
The node 900 is mostly responsible for collecting a traffic unit (e.g., a packet, a cell or a Time Division Multiplexed (TDM) time slot) from a first networking line (e.g., networking line 9011) and re-transmitting at least a portion of it (e.g., its payload and various sections of its header) onto a second networking line (e.g., networking line 9016). As such, the node 900 effectively relays information so that it may be carried over various geographic distances. Some degree of intelligence is involved in the relaying process so that the traffic units being collected are forwarded onto an appropriate networking line (e.g., in light of their source address and destination address).
As such, the node 900 of
The switching/routing layer 903 is responsible for effectively deciding which networking line is an appropriate networking line upon which a particular traffic unit should be transmitted upon. The switching/routing layer 903 often performs this activity based upon header information or other control information (such as SS7 based TDM connection information) associated with each traffic unit. Connection establishment and tear-down procedures (as well as network topology broadcasts or other networking overhead information) can often be viewed as being integrated into (or coupled to so as to communicate with) the switching/routing layer 903.
Note that the architecture of a networking system having a routing/switching layer 903 and an ingress/egress layer 902 may vary from embodiment to embodiment. For example, in some cases the switching/routing layer 903 may be designed onto a single card; or, in other cases, the switching/routing layer 903 may be designed across a plurality of cards. Also, in some cases the switching/routing layer 903 (or a portion thereof) may be integrated onto a Line Interface Card (LIC) that also acts as part of the ingress/egress layer 902.
In the foregoing specification, the invention has been described with reference to specific exemplary embodiments thereof. It will, however, be evident that various modifications and changes may be made thereto without departing from the broader spirit and scope of the invention as set forth in the appended claims. The specification and drawings are, accordingly, to be regarded in an illustrative rather than a restrictive sense.
Sundaresan, Krishna, Chellappa, Mahesh, Krishnamurthy, Chandrasekar, Cauchy, Daniel
Patent | Priority | Assignee | Title |
7532574, | Oct 02 2003 | Cisco Technology, Inc. | Method and apparatus for improved priority based connection establishment within a PNNI ATM network |
7707297, | Apr 12 2003 | MEIZU TECHNOLOGY CO , LTD | System for creating a wireless IP network connection after pre-allocating wireless network bandwidth available to a computing device |
8045454, | Sep 12 2005 | Cisco Technology, Inc. | Multimedia data flow dropping |
8077606, | Sep 12 2005 | Cisco Technology, Inc.; Cisco Technology Inc | Multimedia data flow dropping with notification |
8265015, | Jun 07 2005 | TELEFONAKTIEBOLAGET LM ERICSSON PUBL | Communication path allocating entity and method |
8601118, | Jun 13 2011 | Juniper Networks, Inc. | Prioritizing lawful intercept sessions |
8780696, | Nov 17 2008 | TELEFONAKTIEBOLAGET LM ERICSSON PUBL | System and method of implementing lightweight not-via IP fast reroutes in a telecommunications network |
9680889, | Jan 15 2008 | DISH TECHNOLOGIES L L C | System and method of managing multiple video players |
9769729, | May 06 2014 | HUAWEI TECHNOLOGIES CO , LTD | Apparatus and method for implementing collaborative work of cells |
9832442, | Jan 15 2008 | DISH TECHNOLOGIES L L C | System and method of managing multiple video players executing on multiple devices |
Patent | Priority | Assignee | Title |
4703475, | Dec 04 1985 | American Telephone and Telegraph Company AT&T Bell Laboratories | Data communication method and apparatus using multiple physical data links |
4845710, | Dec 23 1986 | Oki Electric Industry Co., Ltd. | Dynamic buffer supervising system for a data link access protocol control |
4953157, | Apr 19 1989 | THE CHASE MANHATTAN BANK, AS COLLATERAL AGENT | Programmable data packet buffer prioritization arrangement |
5121383, | Nov 16 1990 | TTI Inventions A LLC | Duration limited statistical multiplexing in packet networks |
5128932, | Aug 27 1990 | TTI Inventions A LLC | Traffic flow control and call set-up in multi-hop broadband networks |
5140584, | Mar 01 1989 | Kabushiki Kaisha Toshiba | Packet communication system and method of controlling same |
5153877, | Apr 21 1989 | Kabushiki Kaisha Toshiba | Packet network with communication resource allocation and call set up control of higher quality of service |
5193090, | Jul 15 1988 | Access protection and priority control in distributed queueing | |
5197064, | Nov 26 1990 | TTI Inventions A LLC | Distributed modular packet switch employing recursive partitioning |
5208805, | Dec 27 1989 | KABUSHIKI KAISHA TOSHIBA, 72, HORIKAWA-CHO, SAIWAI-KU, KAWASAKI-SHI 210, JAPAN, A CORP OF JAPAN | Method for controlling the communication priority of communication packets and exchange employing the method |
5222085, | Oct 14 1988 | Network Equipment Technologies, Inc | Self-routing switching element and fast packet switch |
5224099, | May 17 1991 | Cisco Technology, Inc | Circuitry and method for fair queuing and servicing cell traffic using hopcounts and traffic classes |
5233606, | Aug 02 1991 | AT&T Bell Laboratories | Arrangement for controlling shared-buffer-memory overflow in a multi-priority environment |
5274643, | Dec 11 1992 | Cisco Technology, Inc | Method for optimizing a network having virtual circuit routing over virtual paths |
5276681, | Jun 25 1992 | CONGRESS FINANCIAL CORPORATION NEW ENGLAND , A MASSACHUSETTS CORPORATION | Process for fair and prioritized access to limited output buffers in a multi-port switch |
5313454, | Apr 01 1992 | Cisco Technology, Inc | Congestion control for cell networks |
5335224, | Jun 30 1992 | AT&T Bell Laboratories; AMERICAN TELEPHONE AND TELEGRAPH COMPANY, A NY CORP | Service guarantees/congestion control in high speed networks |
5341366, | Mar 18 1992 | Fujitsu Limited | Connection admission control system |
5359592, | Jun 25 1993 | Cisco Technology, Inc | Bandwidth and congestion control for queue channels in a cell switching communication controller |
5359593, | Aug 26 1993 | LENOVO SINGAPORE PTE LTD | Dynamic bandwidth estimation and adaptation for packet communications networks |
5361259, | Feb 19 1993 | IPR 3 PTY LTD | Wide area network (WAN)-arrangement |
5361372, | Dec 27 1991 | ENTERASYS NETWORKS, INC | Memory management for data transmission networks |
5367643, | Feb 06 1991 | International Business Machines Corporation; INTERNATIONAL BUSINESS MACHINES CORPORATION, ARMONK, NY 10504 A CORP OF NY | Generic high bandwidth adapter having data packet memory configured in three level hierarchy for temporary storage of variable length data packets |
5381404, | Jul 14 1992 | Mita Industrial Co., Ltd. | Packet-switching communication network and method of design |
5390299, | Dec 27 1991 | ENTERASYS NETWORKS, INC | System for using three different methods to report buffer memory occupancy information regarding fullness-related and/or packet discard-related information |
5420857, | Feb 12 1992 | Sprint International Communications Corp. | Connection establishment in a flat distributed packet switch architecture |
5422880, | Apr 05 1993 | Cisco Technology, Inc | Broadband switching fabric in a communication controller |
5425019, | Aug 20 1993 | Fujitsu Limited | Call accommodation system containing emergent calls and normal calls |
5483526, | Jul 20 1994 | ENTERASYS NETWORKS, INC | Resynchronization method and apparatus for local memory buffers management for an ATM adapter implementing credit based flow control |
5528763, | Sep 14 1993 | CISCO TECHNOLOGY, INC , A CORPORATION OF CALIFORNIA | System for admitting cells of packets from communication network into buffer of attachment of communication adapter |
5539729, | Dec 09 1994 | THE CHASE MANHATTAN BANK, AS COLLATERAL AGENT | Method for overload control in a packet switch that processes packet streams having different priority levels |
5546389, | Jul 13 1993 | ALCATEL N V | Method of controlling access to a buffer and a device for temporary storage of data packets and an exchange with such a device |
5561663, | Dec 30 1994 | Cisco Technology, Inc | Method and apparatus for performing communication rate control using geometric weighted groups |
5602988, | Nov 26 1993 | Telefonaktiebolaget LM Ericsson | Fault tolerant queue system |
5613073, | Jul 25 1994 | International Business Machines Corporation | Apparatus and method for a buffer reservation system |
5617417, | Sep 07 1994 | Cisco Technology, Inc | Asynchronous transfer mode communication in inverse multiplexing over multiple communication links |
5687167, | Nov 24 1994 | CISCO TECHNOLOGY, INC , A CORPORATION OF CALIFORNIA | Method for preempting connections in high speed packet switching networks |
5729546, | Jun 21 1995 | Cisco Technology, Inc | Expandable communication cell bus for multiplexing and concentrating communication cell traffic onto high speed lines |
5748629, | Jul 18 1996 | FUJITSU LIMITED, A JAPANESE CORPORATION | Allocated and dynamic bandwidth management |
5748905, | Aug 30 1996 | FUJITSU LIMITED, A JAPANESE CORPORATION | Frame classification using classification keys |
5754787, | Dec 23 1994 | Intel Corporation | System for electronically publishing objects with header specifying minimum and maximum required transport delivery rates and threshold being amount publisher is willing to pay |
5764626, | Nov 17 1995 | Viavi Solutions Inc | Rate-matched cell identification and modification, replacement, or insertion for test and measurement of ATM network virtual connections |
5781533, | Jul 19 1995 | Fujitsu Network Communications, Inc.; Fujitsu Limited | Link buffer sharing method and apparatus |
5790770, | Jul 18 1996 | FUJITSU LIMITED, A JAPANESE CORPORATION | Method and apparatus for reducing information loss in a communications network |
5793744, | Dec 18 1995 | Nokia Technologies Oy | Multichannel high-speed data transfer |
5815492, | Jun 20 1996 | CISCO TECHNOLOGY, INC , A CORPORATION OF CALIFORNIA | Dynamic bandwidth estimation and adaptation in high speed packet switching networks |
5822540, | Jul 18 1996 | FUJITSU LIMITED, A JAPANESE CORPORATION | Method and apparatus for discarding frames in a communications device |
5850395, | Jul 18 1996 | FUJITSU LIMITED, A JAPANESE CORPORATION | Asynchronous transfer mode based service consolidation switch |
5862137, | Jul 18 1996 | FUJITSU LIMITED, A JAPANESE CORPORATION | Point-to-multipoint arbitration |
5867663, | Jul 18 1996 | FUJITSU LIMITED, A JAPANESE CORPORATION | Method and system for controlling network service parameters in a cell based communications network |
5870538, | Jul 18 1996 | FUJITSU LIMITED, A JAPANESE CORPORATION | Switch fabric controller comparator system and method |
5872769, | Jul 18 1996 | FUJITSU LIMITED, A JAPANESE CORPORATION | Linked list structures for multiple levels of control in an ATM switch |
5872771, | Aug 17 1995 | Electronics and Telecommunications Research Institute; Korea Telecommunication Authority | Adaptive connection admission control method using traffic measurement and estimation |
5881049, | Oct 03 1996 | RPX CLEARINGHOUSE LLC | Admission control in an ATM switching node |
5889956, | Jul 18 1996 | FUJITSU LIMITED, A JAPANESE CORPORATION | Hierarchical resource management with maximum allowable allocation boundaries |
5896511, | Jul 19 1995 | FUJITSU LIMITED, A JAPANESE CORPORATION | Method and apparatus for providing buffer state flow control at the link level in addition to flow control on a per-connection basis |
5898671, | Sep 14 1995 | FUJITSU LIMITED, A JAPANESE CORPORATION | Transmitter controlled flow control for buffer allocation in wide area ATM networks |
5898691, | Sep 26 1996 | Cisco Technology, Inc | Method and apparatus for congestion distributed adaptive routing |
5905729, | Jul 19 1995 | FUJITSU LIMITED, A JAPANESE CORPORATION | Mapping a data cell in a communication switch |
5909427, | Jul 19 1995 | FUJITSU LIMITED, A JAPANESE CORPORATION | Redundant switch system and method of operation |
5917804, | Sep 05 1996 | Nortel Networks Limited | Connection admission control for ATM networks handling CBR and VBR services |
5917805, | Jul 19 1995 | FUJITSU LIMITED, A JAPANESE CORPORATION | Network switch utilizing centralized and partitioned memory for connection topology information storage |
5926475, | Sep 20 1996 | Cisco Technology, Inc | Method and apparatus for ensuring ATM cell order in multiple cell transmission lane switching system |
5933429, | Jul 19 1995 | Fujitsu Network Communications, Inc.; Fujitsu Limited | Multipoint-to-multipoint echo processing in a network switch |
5936940, | Aug 22 1996 | International Business Machines Corporation | Adaptive rate-based congestion control in packet networks |
5940372, | Jul 13 1995 | CISCO TECHNOLOGY, INC , A CORPORATION OF CALIFORNIA | Method and system for selecting path according to reserved and not reserved connections in a high speed packet switching network |
5948067, | Jul 19 1995 | FUJITSU LIMITED, A JAPANESE CORPORATION | Converting between an internal cell and multiple standard asynchronous transfer mode cells |
5956342, | Jul 19 1995 | FUJITSU LIMITED, A JAPANESE CORPORATION | Priority arbitration for point-to-point and multipoint transmission |
5970067, | Sep 07 1994 | Cisco Technology, Inc | Asynchronous transfer mode communication with inverse multiplexing over multiple communication links |
5978359, | Jul 19 1995 | FUJITSU LIMITED, A JAPANESE CORPORATION | Allocated and dynamic switch flow control |
5982771, | Jul 19 1995 | FUJITSU LIMITED, A JAPANESE CORPORATION | Controlling bandwidth allocation using a pace counter |
5982776, | Jul 19 1995 | Fujitsu Network Communications, Inc.; Fujitsu Limited | Multipoint-to-point arbitration in a network switch |
5983260, | Jul 19 1995 | FUJITSU LIMITED, A JAPANESE CORPORATION | Serial control and data interconnects for coupling an I/O module with a switch fabric in a switch |
5983278, | Apr 19 1996 | THE CHASE MANHATTAN BANK, AS COLLATERAL AGENT | Low-loss, fair bandwidth allocation flow control in a packet switch |
5991298, | Jan 12 1996 | FUJITSU LIMITED, A JAPANESE CORPORATION | Reliable and flexible multicast mechanism for ATM networks |
5996019, | Jul 19 1995 | FUJITSU LIMITED, A JAPANESE CORPORATION | Network link access scheduling using a plurality of prioritized lists containing queue identifiers |
6002667, | Jul 19 1995 | FUJITSU LIMITED, A JAPANESE CORPORATION | Minimum guaranteed cell rate method and apparatus |
6011778, | Mar 20 1997 | NOKIA SOLUTIONS AND NETWORKS OY | Timer-based traffic measurement system and method for nominal bit rate (NBR) service |
6028840, | Oct 04 1996 | HANGER SOLUTIONS, LLC | Method and apparatus for connection admission control of variable bit rate traffic in ATM switch |
6041039, | Mar 20 1997 | NOKIA SOLUTIONS AND NETWORKS OY | System and method for determining network bandwidth availability using priority level feedback |
6052385, | Dec 18 1995 | Nokia Technologies Oy | Multichannel high-speed data transfer |
6061348, | Dec 22 1995 | Cisco Technology, Inc | Method and apparatus for dynamically allocating bandwidth for a time division multiplexed data bus |
6076112, | Jul 19 1995 | Fujitsu Network Communications, Inc.; Fujitsu Limited | Prioritized access to shared buffers |
6084858, | Jan 29 1997 | CONCORD COMMUNICATIONS, INC ; Computer Associates Think, Inc | Distribution of communication load over multiple paths based upon link utilization |
6088736, | Jul 19 1995 | FUJITSU LIMITED, A JAPANESE CORPORATION | Joint flow control mechanism in a telecommunications network |
6088817, | Nov 26 1993 | Telefonaktiebolaget LM Ericsson | Fault tolerant queue system |
6115374, | Dec 22 1995 | Cisco Technology, Inc | Method and apparatus for dynamically assigning bandwidth for a time division multiplexing data bus |
6115748, | Jul 19 1995 | FUJITSU LIMITED, A JAPANESE CORPORATION | Prioritized access to shared buffers |
6141346, | Jul 19 1995 | FUJITSU LIMITED, A JAPANESE CORPORATION | Point-to-multipoint transmission using subqueues |
6154444, | Oct 25 1996 | NEC Corporation | Source routing method for fast connection re-establishment in response to early-arriving trouble report messages |
6160808, | Dec 18 1997 | Hewlett Packard Enterprise Development LP | Technique for transmitting incoming multi-link point-to-point (PPP) packet traffic over multiple outgoing links in a multi-link bundle |
6167030, | Mar 20 1997 | Nokia Telecommunications, Oy | Buffer-based traffic measurement system and method for nominal bit rate (NBR) service |
6167452, | Jul 19 1995 | Fujitsu Network Communications, Inc.; Fujitsu Limited | Joint flow control mechanism in a telecommunications network |
6181705, | Dec 21 1993 | International Business Machines Corporation | System and method for management a communications buffer |
6212582, | Apr 19 1996 | Lucent Technologies Inc | Method for multi-priority, multicast flow control in a packet switch |
6219728, | Apr 22 1996 | AVAYA Inc | Method and apparatus for allocating shared memory resources among a plurality of queues each having a threshold value therefor |
6222824, | Apr 24 1997 | Duke University | Statistical call admission control |
6236655, | Jul 19 1995 | FUJITSU LIMITED, A JAPANESE CORPORATION | Port and link identification |
6240102, | Mar 17 1997 | Fujitsu Limited | System for routing a UBR connection |
6256309, | Apr 28 1998 | Cisco Technology, Inc. | Quality of service sensitive routes precomputed in bandwidth brackets |
6256674, | Jul 19 1995 | Fujitsu Network Communications, Inc.; Fujitsu Limited | Method and apparatus for providing buffer state flow control at the link level in addition to flow control on a per-connection basis |
6327615, | Sep 30 1998 | STMicroelectronics, Inc. | Method and system of controlling transfer of data by updating descriptors in descriptor rings |
6356546, | Aug 11 1998 | CIENA LUXEMBOURG S A R L ; Ciena Corporation | Universal transfer method and network with distributed switch |
6356962, | Sep 30 1998 | STMicroelectronics, Inc. | Network device and method of controlling flow of data arranged in frames in a data-based network |
6407998, | Oct 02 1997 | THOMSON LICENSING S A | Multimedia decoder for prioritized bi-directional communication in a broadcast system |
6418169, | Oct 16 1997 | THOMSON LICENSING S A | System for prioritizing bi-directional broadcast data |
6426957, | Jul 19 1995 | Fujitsu Network Communications, Inc.; Fujitsu Limited | Asynchronous transfer mode based service consolidation switch |
6466582, | May 30 1997 | Adtran, Inc. | Arbitration mechanism for statistically multiplexed frame relay switching system |
6490249, | Dec 01 1998 | Spherix Incorporated | Adaptive connection admission control scheme for packet networks |
6493317, | Dec 18 1998 | Cisco Technology, Inc. | Traffic engineering technique for routing inter-class traffic in a computer network |
6496504, | Aug 06 1998 | Ricoh Company, Ltd. | Smart allocation of bandwidth for multiple independent calls on a digital network |
6512769, | Jun 03 1998 | Cisco Technology, Inc | Method and apparatus for rate-based cell traffic arbitration in a switch |
6516371, | May 27 1999 | Advanced Micro Devices, Inc. | Network interface device for accessing data stored in buffer memory locations defined by programmable read pointer information |
6526060, | Dec 05 1997 | Cisco Technology, Inc. | Dynamic rate-based, weighted fair scheduler with explicit rate feedback option |
6526063, | Dec 23 1998 | RPX CLEARINGHOUSE LLC | System and method for ATM-FR interworking of SVC signalling |
6526451, | Sep 30 1998 | STMicroelectronics, Inc. | Method and network device for creating circular queue structures in shared memory |
6529498, | Apr 28 1998 | Cisco Technology, Inc.; Cisco Technology, Inc | Routing support for point-to-multipoint connections |
6539024, | Mar 26 1999 | WSOU Investments, LLC | Method and apparatus for data buffer management in a communications switch |
6546249, | Feb 26 1999 | SUMITOMO ELECTRIC INDUSTRIES, LTD | Seamless two-way roadway communication system |
6603764, | Dec 23 1997 | Bell South Corporation | Communications systems and method using partically non-geographic addressing method for forming same |
6608813, | Nov 04 1998 | AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED | Method and apparatus for achieving fault tolerance in packet switching systems with inverse multiplexing |
6608815, | Aug 05 1999 | Spacebridge Networks Corporation | Method and apparatus for connection admission control in cell or packet-based networks |
6614757, | Nov 23 1998 | HEWLETT-PACKARD DEVELOPMENT COMPANY, L P | Method of local flow control in an asynchronous transfer mode network utilizing PNNI routing protocol |
6625155, | Sep 28 1999 | Lucent Technologies Inc. | Model-based admission control adjustment in data networks |
6658014, | Feb 19 1999 | Fujitsu Limited | Packet buffer device and packet assembling method |
6678264, | Jun 30 1999 | Genband US LLC; SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT | Establishing connections with a pre-specified quality of service across a communication network |
6687230, | Dec 02 1998 | Fujitsu Limited | Routing system and method |
6690671, | Aug 17 1998 | Ericsson AB | Load balanced UBR routing in ATM networks |
6724881, | May 27 1999 | RPX Corporation | Optimization of connection paths in a communications network |
6731599, | Jul 01 1999 | AVAYA MANAGEMENT L P | Automatic load sharing-trunking |
6747972, | Mar 07 2000 | CISCO SYSTEMS, INC , A CORPORATION OF CALIFORNIA; Cisco Technology, Inc; Cisco Systems, Inc | Method and apparatus for reducing the required size of sequence numbers used in resequencing packets |
6751214, | Mar 30 2000 | INPHI CORPORATION | Methods and apparatus for dynamically allocating bandwidth between ATM cells and packets |
6778495, | May 17 2000 | Cisco Technology, Inc | Combining multilink and IP per-destination load balancing over a multilink bundle |
6819658, | Jul 15 1997 | Viasat, Inc | Method and apparatus for segmentation, reassembly and inverse multiplexing of packets and ATM cells over satellite/wireless networks |
6826196, | Apr 21 1999 | Cisco Technology, Inc | Method and apparatus to allow connection establishment over diverse link types |
6862284, | Jun 17 1997 | Cisco Systems, Inc | Format for automatic generation of unique ATM addresses used for PNNI |
6876657, | Dec 14 2000 | AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED | System and method for router packet control and ordering |
6891836, | Jun 03 1999 | Fujitsu Limited | Switching complex architecture and operation |
6895441, | Jul 30 2001 | NOKIA SIEMENS NETWORKS ETHERNET SOLUTIONS LTD | Path rerouting mechanism utilizing multiple link bandwidth allocations |
6934249, | Apr 01 1997 | Cisco Technology, Inc. | Method and system for minimizing the connection set up time in high speed packet switching networks |
6956821, | Jan 30 2001 | Telefonaktiebolaget L M Ericsson (publ) | Path determination in a data network |
6977898, | Oct 15 1999 | Cisco Technology, Inc. | Method for supporting high priority calls on a congested WAN link |
7016975, | Jun 11 2001 | Alcatel-Lucent Canada Inc | System and method for call-blocking-triggered topology updates in source routed signaling protocol communication networks |
7039014, | Dec 26 2000 | Cisco Technology, Inc.; Cisco Technology, Inc | Network-wide connection-based debug mechanism |
7092356, | Oct 05 2001 | RPX CLEARINGHOUSE LLC | Resource management in heterogenous QoS-based packet Networks |
7233571, | Dec 18 2001 | Cisco Technology, Inc. | Connection-based bandwidth utilization |
20010043624, | |||
20020018269, | |||
20020023163, | |||
20020057649, | |||
20020124106, | |||
20030236854, | |||
20040213242, | |||
20050207371, | |||
WO9965194, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Nov 27 2001 | Cisco Technology, Inc. | (assignment on the face of the patent) | / | |||
Dec 17 2001 | SUNDARESAN, KRISHNA | Cisco Technology, Inc | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 012657 | /0773 | |
Dec 17 2001 | KRISHAMURTHY, CHANDRASEKAR | Cisco Technology, Inc | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 012657 | /0773 | |
Dec 18 2001 | CHELLAPPA, MAHESH | Cisco Technology, Inc | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 012657 | /0773 | |
Feb 24 2002 | CAUCHY, DANIEL | Cisco Technology, Inc | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 012657 | /0773 |
Date | Maintenance Fee Events |
Nov 21 2011 | ASPN: Payor Number Assigned. |
Jul 20 2012 | M1551: Payment of Maintenance Fee, 4th Year, Large Entity. |
Jul 20 2016 | M1552: Payment of Maintenance Fee, 8th Year, Large Entity. |
Jul 20 2020 | M1553: Payment of Maintenance Fee, 12th Year, Large Entity. |
Date | Maintenance Schedule |
Jan 20 2012 | 4 years fee payment window open |
Jul 20 2012 | 6 months grace period start (w surcharge) |
Jan 20 2013 | patent expiry (for year 4) |
Jan 20 2015 | 2 years to revive unintentionally abandoned end. (for year 4) |
Jan 20 2016 | 8 years fee payment window open |
Jul 20 2016 | 6 months grace period start (w surcharge) |
Jan 20 2017 | patent expiry (for year 8) |
Jan 20 2019 | 2 years to revive unintentionally abandoned end. (for year 8) |
Jan 20 2020 | 12 years fee payment window open |
Jul 20 2020 | 6 months grace period start (w surcharge) |
Jan 20 2021 | patent expiry (for year 12) |
Jan 20 2023 | 2 years to revive unintentionally abandoned end. (for year 12) |