Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Drawings
The drawings are objected to because figure 1 is faded. Corrected drawing sheets in compliance with 37 CFR 1.121(d) are required in reply to the Office action to avoid abandonment of the application. Any amended replacement drawing sheet should include all of the figures appearing on the immediate prior version of the sheet, even if only one figure is being amended. The figure or figure number of an amended drawing should not be labeled as “amended.” If a drawing figure is to be canceled, the appropriate figure must be removed from the replacement sheet, and where necessary, the remaining figures must be renumbered and appropriate changes made to the brief description of the several views of the drawings for consistency. Additional replacement sheets may be necessary to show the renumbering of the remaining figures. Each drawing sheet submitted after the filing date of an application must be labeled in the top margin as either “Replacement Sheet” or “New Sheet” pursuant to 37 CFR 1.121(d). If the changes are not accepted by the examiner, the applicant will be notified and informed of any required corrective action in the next Office action. The objection to the drawings will not be held in abeyance.
Claim Rejections - 35 USC § 112
The following is a quotation of 35 U.S.C. 112(b):
(b) CONCLUSION.—The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention.
The following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph:
The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention.
Claim 1 is rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor (or for applications subject to pre-AIA 35 U.S.C. 112, the applicant), regards as the invention.
Claim limitation “a packet processor,” “a control processor,” and “shaper object” “configured to…” invokes 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph. However, the written description fails to disclose the corresponding structure, material, or acts for performing the entire claimed function and to clearly link the structure, material, or acts to the function. Figure 2 illustrates the processor and object as claimed, but does not illustrate details regarding means to accomplish the functions recited in claim 1. Therefore, the claim is indefinite and is rejected under 35 U.S.C. 112(b) or pre-AIA 35 U.S.C. 112, second paragraph.
Applicant may:
(a) Amend the claim so that the claim limitation will no longer be interpreted as a limitation under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph;
(b) Amend the written description of the specification such that it expressly recites what structure, material, or acts perform the entire claimed function, without introducing any new matter (35 U.S.C. 132(a)); or
(c) Amend the written description of the specification such that it clearly links the structure, material, or acts disclosed therein to the function recited in the claim, without introducing any new matter (35 U.S.C. 132(a)).
If applicant is of the opinion that the written description of the specification already implicitly or inherently discloses the corresponding structure, material, or acts and clearly links them to the function so that one of ordinary skill in the art would recognize what structure, material, or acts perform the claimed function, applicant should clarify the record by either:
(a) Amending the written description of the specification such that it expressly recites the corresponding structure, material, or acts for performing the claimed function and clearly links or associates the structure, material, or acts to the claimed function, without introducing any new matter (35 U.S.C. 132(a)); or
(b) Stating on the record what the corresponding structure, material, or acts, which are implicitly or inherently set forth in the written description of the specification, perform the claimed function. For more information, see 37 CFR 1.75(d) and MPEP §§ 608.01(o) and 2181.
Claims 1, 5, 11 and 14 are rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor (or for applications subject to pre-AIA 35 U.S.C. 112, the applicant), regards as the invention.
Claims 1 and 11 recite the limitation "the network traffic" in the last line of the claims. There is insufficient antecedent basis for this limitation in the claim.
Claims 5 and 14 recite the limitation "the input" in the last line of the claims. There is insufficient antecedent basis for this limitation in the claim.
Double Patenting
The nonstatutory double patenting rejection is based on a judicially created doctrine grounded in public policy (a policy reflected in the statute) so as to prevent the unjustified or improper timewise extension of the “right to exclude” granted by a patent and to prevent possible harassment by multiple assignees. A nonstatutory double patenting rejection is appropriate where the conflicting claims are not identical, but at least one examined application claim is not patentably distinct from the reference claim(s) because the examined application claim is either anticipated by, or would have been obvious over, the reference claim(s). See, e.g., In re Berg, 140 F.3d 1428, 46 USPQ2d 1226 (Fed. Cir. 1998); In re Goodman, 11 F.3d 1046, 29 USPQ2d 2010 (Fed. Cir. 1993); In re Longi, 759 F.2d 887, 225 USPQ 645 (Fed. Cir. 1985); In re Van Ornum, 686 F.2d 937, 214 USPQ 761 (CCPA 1982); In re Vogel, 422 F.2d 438, 164 USPQ 619 (CCPA 1970); In re Thorington, 418 F.2d 528, 163 USPQ 644 (CCPA 1969).
A timely filed terminal disclaimer in compliance with 37 CFR 1.321(c) or 1.321(d) may be used to overcome an actual or provisional rejection based on nonstatutory double patenting provided the reference application or patent either is shown to be commonly owned with the examined application, or claims an invention made as a result of activities undertaken within the scope of a joint research agreement. See MPEP § 717.02 for applications subject to examination under the first inventor to file provisions of the AIA as explained in MPEP § 2159. See MPEP § 2146 et seq. for applications not subject to examination under the first inventor to file provisions of the AIA . A terminal disclaimer must be signed in compliance with 37 CFR 1.321(b).
The filing of a terminal disclaimer by itself is not a complete reply to a nonstatutory double patenting (NSDP) rejection. A complete reply requires that the terminal disclaimer be accompanied by a reply requesting reconsideration of the prior Office action. Even where the NSDP rejection is provisional the reply must be complete. See MPEP § 804, subsection I.B.1. For a reply to a non-final Office action, see 37 CFR 1.111(a). For a reply to final Office action, see 37 CFR 1.113(c). A request for reconsideration while not provided for in 37 CFR 1.113(c) may be filed after final for consideration. See MPEP §§ 706.07(e) and 714.13.
The USPTO Internet website contains terminal disclaimer forms which may be used. Please visit www.uspto.gov/patent/patents-forms. The actual filing date of the application in which the form is filed determines what form (e.g., PTO/SB/25, PTO/SB/26, PTO/AIA /25, or PTO/AIA /26) should be used. A web-based eTerminal Disclaimer may be filled out completely online using web-screens. An eTerminal Disclaimer that meets all requirements is auto-processed and approved immediately upon submission. For more information about eTerminal Disclaimers, refer to www.uspto.gov/patents/apply/applying-online/eterminal-disclaimer.
Claims 1-19 are rejected on the ground of nonstatutory double patenting as being unpatentable over claims 1-19 of U.S. Patent No. 12,323,332. See the claim correspondence table below. Although the claims at issue are not identical, they are not patentably distinct from each other because the present claims are fully anticipated by the patent. The only difference is the claim combination. Before the effective filing date of the invention, one of ordinary skill in the art would have been motivated to mix up the claim combination in order to see broader patent protection.
Present Application
U.S. Patent No. 12,323,332
1. A system for managing distributed shaping in a computer network, the system comprising: a plurality of logic nodes, each logic node comprising: a packet processor configured to determine metrics associated with traffic flows in the computer network; a control processor configured to determine a quality value based on the determined metrics and communicate with each of the plurality of logic nodes; and a shaper object configured to shape the network traffic.
4. The system of claim 1 wherein the quality value uses an exponential moving average for the one or more of the metrics.
6. The system of claim 4 wherein the control processor uses a smoothing factor configured to smooth the average of the exponential moving average.
5. The system of claim 4 wherein the quality value uses the exponential moving average of the input of traffic at each logic node.
2. The system of claim 1 wherein each logic node is configured to communicate with others of the plurality of logic nodes to balance traffic shaping among the logic nodes.
3. The system of claim 2 wherein the balancing of the traffic flows comprises using the quality value to determine if bandwidth allocation should be adjusted upward or downward at each logic node.
7. The system of claim 1 wherein the quality value is determined at each of the logic nodes for all of the logic nodes.
8. The system of claim 1 wherein the control processor is further configured to determine whether there is additional bandwidth to allocated to any of the logic nodes.
9. The system of claim 1 wherein the control processor is further configured to determine a utilization percentage for each logic node.
10. The system of claim 9 wherein if the utilization percentage is over a utilization threshold at the logic node and there is bandwidth to be allocated, the logic node receives a higher bandwidth allocation.
11. A method for managing distributed shaping in a computer network, the method comprising: initializing each logic node of a plurality of logic nodes; determining metrics associated with traffic flows in the computer network; determining a quality value based on the determined metrics; communicating the metrics with each of the plurality of logic nodes; and shaping the network traffic flows based on the quality value.
14. The method of claim 13 wherein the quality value uses the exponential moving average of the input of traffic at each logic node.
12. The method of claim 11 wherein the shaping of the traffic flows comprises using the quality value to determine if bandwidth allocation should be adjusted upward or downward at each logic node.
13. The method of claim 11 wherein the quality value uses an exponential moving average for the one or more of the metrics.
15. The method of claim 14 wherein determining metrics comprises determining a smoothing factor to smooth the average of the exponential moving average.
16. The method of claim 11 wherein determining a quality value comprises determining a quality value for each of the logic nodes at each logic node.
17. The method of claim 11 further comprising determining whether there is additional bandwidth to allocated to any of the logic nodes.
18. The method of claim 11 further comprising determining a utilization percentage for each logic node.
19. The method of claim 18 wherein if the utilization percentage is over a utilization threshold at the logic node and there is bandwidth to be allocated, providing a higher bandwidth allocation to the logic node.
1. A system for managing distributed shaping in a computer network, the system comprising at least one processor configured to execute instructions stored in a memory component wherein the instructions provide for: a plurality of logic nodes, each logic node comprising: a packet processor configured to determine metrics associated with network traffic flows in the computer network; a control processor configured to determine a quality value based on the determined metrics and communicate the metrics with each of the plurality of logic nodes, wherein the quality value uses an exponential moving average of an input of traffic at each logic node; and a shaper object configured to shape the network traffic.
2. The system of claim 1 wherein each logic node is configured to communicate with others of the plurality of logic nodes to balance traffic shaping among the logic nodes.
3. The system of claim 2 wherein the balancing of the traffic flows comprises using the quality value to determine if bandwidth allocation should be adjusted upward or downward at each logic node.
5. The system of claim 1 wherein the quality value is determined at each of the logic nodes for all of the logic nodes.
6. The system of claim 1 wherein the control processor is further configured to determine whether there is additional bandwidth to be allocated to any of the logic nodes.
7. The system of claim 1 wherein the control processor is further configured to determine a utilization percentage for each logic node.
8. The system of claim 7 wherein if the utilization percentage is over a utilization threshold at the logic node and there is bandwidth to be allocated, the logic node receives a higher bandwidth allocation.
9. A method for managing distributed shaping in a computer network, the method comprising: initializing each logic node of a plurality of logic nodes; determining metrics associated with network traffic flows in the computer network; determining a quality value based on the determined metrics, wherein the quality value uses an exponential moving average of an input of traffic at each logic node; communicating the metrics with each of the plurality of logic nodes; and shaping the network traffic flows based on the quality value.
10. The method of claim 9 wherein the shaping of the traffic flows comprises using the quality value to determine if bandwidth allocation should be adjusted upward or downward at each logic node.
11. The method of claim 9 wherein determining metrics comprises determining a smoothing factor to smooth the average of the exponential moving average.
11. The method of claim 9 wherein determining metrics comprises determining a smoothing factor to smooth the average of the exponential moving average.
12. The method of claim 9 wherein determining a quality value comprises determining a quality value for each of the logic nodes at each logic node.
13. The method of claim 9 further comprising determining whether there is additional bandwidth to be allocated to any of the logic nodes.
14. The method of claim 9 further comprising determining a utilization percentage for each logic node.
15. The method of claim 14 wherein if the utilization percentage is over a utilization threshold at the logic node and there is bandwidth to be allocated, providing a higher bandwidth allocation to the logic node.
Claim Rejections - 35 USC § 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
Claims 1-10 are rejected under 35 U.S.C. 101 because the claimed invention is directed to non-statutory subject matter.
Claim 1 recites a system comprising a plurality of logic nodes, each logic node comprising a packet processor, a control processor and a shaper object.
In view of the specification, a packet processor is a module in a logic node that receives, shapes, and transmits traffic (see paragraph [0045]), a control processor is a module that calculates the available bandwidth (see paragraph [0046]), and a shaper object is a logical entity that holds information required to perform shaping on the received traffic (see paragraph [0044]). There is no evidence that the processor or the object is hardware. Instead, one can reasonably interpret them as software. Software, per se, is not statutory.
Claims 2-10 depend on claim 1. These claims also do not provide any evidence that they are hardware. Therefore, they are rejected under the same rationale.
Claim Rejections - 35 USC § 103
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claim(s) 1-4, 6-13, 15-20 is/are rejected under 35 U.S.C. 103 as being unpatentable over Karagianninis et al. (US 2009/0290491, hereinafter referred to as “Kara”) in view of Ismailsheriff et al. (US 10,873,533, hereinafter referred to as “Ismail”).
Regarding claim 1, Karagianninis teaches a system for managing distributed shaping in a computer network, the system comprising:
a plurality of logic nodes (figure 1: devices 104-107), each logic node comprising: a packet processor configured to determine metrics associated with traffic flows in the computer network ([0027] Data is collected at each end-host (block 201 and block 301) by monitoring the performance of all network applications at the end-host (block 302) and data is then shared between end-hosts (block 202). The performance may be defined using a variety of different metrics, such as rate or latency and may depend upon the application.); and
a shaper object configured to shape the network traffic ([0034] A resource allocation module 404 which devises a nominal allocation amongst competing applications using a feedback control loop with real measurements, and enforces these allocations through rate control.).
However, Kara does not explicitly teach a control processor configured to determine a quality value based on the determined metrics, although Kara teaches communicate the determined with each of the plurality of logic nodes ([0027] Data is collected at each end-host (block 201 and block 301) by monitoring the performance of all network applications at the end-host (block 302) and data is then shared between end-hosts (block 202). The performance may be defined using a variety of different metrics, such as rate or latency and may depend upon the application. The data that is shared between nodes may be all the data that is collected (in block 201), a sub-set or summary of that data or a representation of some or all of that data. Data may be shared between end-hosts (in block 202) periodically and/or after a performance problem has been identified (blocks 303 and 304) and the network is controlled (block 203) based on analysis at an end-host of data received from multiple end-hosts (in block 305)).
In an analogous art, Ismail teaches a control processor configured to determine a quality value based on the determined metrics (col. 27, lines 24-34: Various approaches can be used to learn or approximate the optimal policy, and a common approach can involve determining or approximating optimal value functions, including the optimal state-value function (e.g., a function that assigns to each state the largest expected return or total amount of reward accumulated over the future, starting from that state) and the optimal action-value function or optimal Q-value function (e.g., a function that assigns to each state-action pair the largest expected return, or total amount of reward accumulated over the future, for a given state and a given action).).
Before the effective filing date of the invention, one of ordinary skill in the art would have been motivated to determine a quality value based on the determined metrics in order to enable each logic node to calculate its performance by analyzing the metrics, thus allowing network resource allocation to maintain quality.
Regarding claim 2, Kara teaches the system of claim 1 wherein each logic node is configured to communicate with others of the plurality of logic nodes to balance traffic shaping among the logic nodes (abstract - an end-host shares data on constrained local flows with other end-hosts and receives such data from other end-hosts. Based on this data, the end-host determines which flows from other nodes are competing for a shared resource with a constrained local flow and allocates the capacity of the shared resource between all the competing flows. This allocation is then enforced for the local flow by the end-host.).
Regarding claim 3, Kara teaches the system of claim 2 wherein the balancing of the traffic flows comprises using the quality value to determine if bandwidth allocation should be adjusted upward or downward at each logic node ([0064] An example mechanism for increasing (or decreasing) the x.sub.i (in blocks 1204 and/or 1206) which provides weighted proportional fairness).
Regarding claim 4, Kara teaches the system of claim 1 wherein the quality value uses an exponential moving average for the one or more of the metrics ([0047] Because instantaneous measurements can be quite noisy, both the current and the base performance may be smoothed using exponential moving averages, the former tracking the latest trends of the time-series, while the latter long-term fluctuations.).
Regarding claim 6, Kara teaches the system of claim 4 wherein the control processor uses a smoothing factor configured to smooth the average of the exponential moving average ([0047] Because instantaneous measurements can be quite noisy, both the current and the base performance may be smoothed using exponential moving averages, the former tracking the latest trends of the time-series, while the latter long-term fluctuations.).
Regarding claim 7, Kara teaches the system of claim 1 wherein the quality value is determined at each of the logic nodes for all of the logic nodes ([0027] Data is collected at each end-host (block 201 and block 301) by monitoring the performance of all network applications at the end-host (block 302) and data is then shared between end-hosts (block 202). The performance may be defined using a variety of different metrics, such as rate or latency and may depend upon the application. The data that is shared between nodes may be all the data that is collected (in block 201), a sub-set or summary of that data or a representation of some or all of that data. Data may be shared between end-hosts (in block 202) periodically and/or after a performance problem has been identified (blocks 303 and 304) and the network is controlled (block 203) based on analysis at an end-host of data received from multiple end-hosts (in block 305)).
Regarding claim 8, Kara does not explicitly teach the system of claim 1 wherein the control processor is further configured to determine whether there is additional bandwidth to allocated to any of the logic nodes. Ismail teaches determine whether there is additional bandwidth to allocated to any of the logic nodes (col. 30, line 66 to col. 31, line 3: The traffic shaping policies can specify average rate or peak rate traffic shaping for better use of available bandwidth by permitting more data than the configured traffic shaping rate to be sent if the bandwidth is available.). Before the effective filing date of the invention, one of ordinary skill in the art would have been motivated determine whether there is additional bandwidth to allocate to any of the logic nodes in order to ensure that each node can fulfil its function.
Regarding claim 9, Kara teaches the system of claim 1 wherein the control processor is further configured to determine a utilization percentage for each logic node ([0062] the 95th percentile of the observed distribution may be used instead as the capacity measure. This small underestimation of the total capacity (C=0.95C in expectation) results in a small utilization penalty but improves the ensure stability of the control algorithm and minimizes queuing delay).
Regarding claim 10, Kara does not explicitly teach the system of claim 9 wherein if the utilization percentage is over a utilization threshold at the logic node and there is bandwidth to be allocated, the logic node receives a higher bandwidth allocation. Ismail teaches wherein if the utilization percentage is over a utilization threshold at the logic node and there is bandwidth to be allocated, the logic node receives a higher bandwidth allocation (col. 30, line 66 to col. 31, line 3: The traffic shaping policies can specify average rate or peak rate traffic shaping for better use of available bandwidth by permitting more data than the configured traffic shaping rate to be sent if the bandwidth is available.). The motivation to combine is similar to claim 8.
Claims 11-13 and 15-19 are similar to claims 1, 3, 4, 6-10, respectively, but in method form, therefore they are rejected under the same rationale.
Allowable Subject Matter
Claims 5 and 14 would be allowable if rewritten to overcome the rejection(s) under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), 2nd paragraph, set forth in this Office action and to include all of the limitations of the base claim and any intervening claims, AND if a terminal disclaimer is filed to overcome the double patenting rejection above.
Regarding claim 5, the prior art of record does not teach the system of claim 4 wherein the quality value uses the exponential moving average of the input of traffic at each logic node.
Regarding claim 14, the prior art of record does not teach the method of claim 13 wherein the quality value uses the exponential moving average of the input of traffic at each logic node.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
Bharali et al. US 7,590,149 – load balancing with metrics and using EMA to calculate the flow.
Dilon et al., US 20190158371 – traffic shaping in VPN router.
Borch et al., US 20180351812 – bandwidth management in using exponential moving average.
Goodson et al., US 20150350083 - dynamic bandwidth allocation (DBA) algorithm based on current load conditions for controlling transmissions to a plurality of access modules of an access node in order to achieve a fair allocation of network bandwidth at the access node.
Landry et al., US 20100208587 - distributing a global shaper rate implemented across multiple traffic processing devices.
Michael Bugenhagen, US 20080049615 - dynamically shaping data packet traffic on a packet network.
Ogier et al., US 20030007453- traffic shaping using EMA.
Kampeas et al, US 10904150 – dynamic load balancing using flow metrics.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to ALINA N BOUTAH whose telephone number is (571)272-3908. The examiner can normally be reached M-F 7:00 AM - 3:00 PM.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Umar Cheema can be reached at (571) 270-3037. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
ALINA BOUTAH
Primary Examiner
Art Unit 2458
/ALINA A BOUTAH/Primary Examiner, Art Unit 2458