DETAILED ACTION
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 .
Claim Rejections - 35 USC § 102
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 the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(2) the claimed invention was described in a patent issued under section 151, or in an application for patent published or deemed published under section 122(b), in which the patent or application, as the case may be, names another inventor and was effectively filed before the effective filing date of the claimed invention.
Claims 1-2, 4, 7, 13, and18-20 are rejected under 35 U.S.C. 102(a)(2) as being anticipated by Singhal et al. (US 11,929,838 B1).
Regarding claim 1, Singhal discloses a method comprising: receiving telemetry data from one or more of a network device or a compute device within a cloud computing network, wherein the telemetry data is associated with a customer of the cloud computing network (col. 1, lines 21-41; col. 1, line 55-col. 2, line 3; col. 2, lines 27-50; col. 3, line 53-col. 4, line 49; and so on, illustrating receiving or collecting data lows related to user from devices of cloud computing); retrieving an egress-based pricing scheme associated with a provider of the cloud computing network (col. 2, lines 27-41; col. 5, lines 21-51; and etc., cost information related to egress flows associated with a provider of the cloud computing are retrieved); and provisioning one or more of the network device or the compute device to optimize routing decisions for the customer to reduce a data egress charge for the customer (col. 1, lines 21-54; col. 2, lines 13-41; col. 3, line 60-col. 4, line 14; col. 7, line 38-col. 8, line 3; col. 10, lines 22-41; col. 5, lines 52-67; and so on, describe providing an optimized cost analysis and decisions for a user to minimize or reduce egress flow charges or prices for the user).
Regarding claim 2, Singhal discloses wherein provisioning the one or more of the network device or the compute device comprises causing the one or more of the network device or the compute device to execute instructions comprising: identifying a plurality of paths for routing a data package from a source address to a destination address (col. 3, line 60-col. 4, line 14; col. 5, lines 45-67; and so on); and calculating an egress charge associated with each of the plurality of paths, wherein calculating the egress charge comprises calculating based on the egress-based pricing scheme associated with the provider of the cloud computing network (col. 1, lines 21-54; col. 2, lines 13-41; col. 3, line 60-col. 4, line 14; col. 7, line 38-col. 8, line 3; col. 10, lines 22-41; col. 5, lines 52-67; and so on).
Regarding claim 4, Singhal further comprising generating a report for the customer of the cloud computing network, wherein the report comprises the predicted data egress charge and further comprises one or more of: an amount of data belonging to the customer that is egressing the cloud computing network; or an amount of data belonging to the customer that is transferred between two or more regions of the cloud computing network (col. 2, lines 51-62; col. 5, line 45-col. 6, line 18; col. 8, lines 20-38; col. 10, line 42-col. 11, line 9; col. 11, lines 14-63; and etc.).
Regarding claim 7, Singhal discloses wherein provisioning the one or more of the network device or the compute device to optimize the routing decisions for the customer to reduce the predicted egress charge for the customer comprises instructing the one or more of the network device or the compute device to select a path with a lowest egress charge Singhal does not disclose the selection is irrespective of whether the selected path comprises a lowest quantity of hops or a shortest distance traveled (col. 8, lines 4-56; col. 9, lines 19-34; col. 2, lines 51-62; col. 5, line 45-col. 6, line 18; col. 10, line 42-col. 11, line 9; col. 11, lines 14-63; and etc.).
Regarding claim 13, Singhal discloses wherein provisioning the one or more of the network device or the compute device to optimize the routing decisions for the customer to reduce the predicted data egress charge for the customer comprises causing the one or more of the network device or the compute device to execute instructions comprising: identifying a plurality of paths for routing a data package from a source address to a destination address (col. 3, line 60-col. 4, line 14; col. 5, lines 45-67; and so on); determining, based on the egress cost data, an egress charge associated with each of the plurality of paths (col. 1, lines 21-54; col. 2, lines 13-41; col. 3, line 60-col. 4, line 14; col. 7, line 38-col. 8, line 3; col. 10, lines 22-41; col. 5, lines 52-67; and so on); identifying one or more least expensive paths of the plurality of paths, wherein the one or more least expensive paths comprises a lowest egress charge (col. 1, lines 21-54; col. 2, lines 4-41; col. 3, line 60-col. 4, line 14; col. 7, line 38-col. 8, line 3; col. 10, lines 22-41; col. 5, lines 52-67; and so on).
Regarding claim 18, Singhal discloses wherein provisioning the network device comprises providing route metrics to a data plane of the network device, and wherein the route metrics indicate an optimal path selection that minimizes a total egress cost between data source and data destination (col. 8, line 39-67; col. 9, lines 19-34; and etc.).
Regarding claim 19, Singhal discloses wherein the provider of the cloud computing network comprises a plurality of providers of a plurality of interconnected cloud computing networks such that retrieving the egress-based pricing scheme associated with the provider of the cloud computing network comprises retrieving an egress-based pricing scheme associated with each of the plurality of providers of the plurality of interconnected cloud computing networks (col. 1, line 21-col. 2, line 3; col. 2, lines 27-41; col. 3, line 60-col. 4, line 14; col. 5, lines 21-32; col. 8, lines 20-38; and so on).
Regarding claim 20, Singhal discloses wherein provisioning the one or more of the network device or the compute device to optimize the routing decisions for the customer to reduce a predicted data egress charge for the customer comprises causing the one or more of the network device or the compute device (col. 2, lines 51-62; col. 5, line 45-col. 6, line 18; col. 8, lines 20-38; col. 10, line 42-col. 11, line 9; col. 11, lines 14-63; and etc.) to execute instructions comprising: identifying a plurality of paths for routing a data package from a source address to a destination address, wherein at least a portion of the plurality of paths cause the data package to travel between two or more of the plurality of interconnected cloud computing networks (col. 3, line 60-col. 4, line 14; col. 5, lines 45-67; and so on); calculating a total egress charge associated with each of the plurality of paths, wherein calculating the egress charge comprises calculating based on the egress-based pricing scheme associated with each of the plurality of providers of the plurality of interconnected cloud computing networks (col. 1, lines 21-54; col. 2, lines 13-41; col. 3, line 60-col. 4, line 14; col. 7, line 38-col. 8, line 3; col. 10, lines 22-41; col. 5, lines 52-67; and so on); and selecting a least expensive path based on which of the plurality of paths has the lowest total egress charge (col. 8, lines 20-67; col. 9, lines 19-34; and etc.), wherein selecting the least expensive path comprises selecting irrespective of whether the least expensive path also has a lowest quantity of egress events (col. 8, lines 4-56; col. 9, lines 19-34; col. 2, lines 51-62; col. 5, line 45-col. 6, line 18; col. 10, line 42-col. 11, line 9; col. 11, lines 14-63; and etc.).
Claim Rejections - 35 USC § 103
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.
The factual inquiries for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows:
1. Determining the scope and contents of the prior art.
2. Ascertaining the differences between the prior art and the claims at issue.
3. Resolving the level of ordinary skill in the pertinent art.
4. Considering objective evidence present in the application indicating obviousness or nonobviousness.
Claims 3, 5-6, 8-12, and 14-17 are rejected under 35 U.S.C. 103 as being unpatentable over Singhal in view of Michael et al. (US 2021/0377156 A1).
Regarding claim 3, Singhal discloses wherein the instructions provisioned to the one or more of the network device or the compute device further comprises: identifying a cost-efficient path for routing the data package to the destination address, wherein the cost-efficient path is one of the plurality of paths comprising a lowest egress charge (col. 1, lines 21-54; col. 2, lines 4-41; col. 3, line 60-col. 4, line 14; col. 7, line 38-col. 8, line 3; col. 10, lines 22-41; col. 5, lines 52-67; and so on).
Singhal doesn’t explicitly disclose determining a next hop address for the cost-efficient path; and routing the data package to the next hop address.
Michael teaches determining a next hop address for the cost-efficient path (paragraph [0143]; [0277]; [0342]; [0344]-[0345]; [0373]; [0462]; and etc.); and routing the data package to the next hop address (paragraph [0342]; [0373]; [0542]; and so on).
Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to use determining a next hop address for the cost-efficient path; and routing the data package to the next hop address as taught by Michael into Singhal in order to improve flexibility.
Regarding claim 5, Singhal discloses wherein retrieving the egress-based pricing scheme comprises querying an Application Program Interface (API) associated with the cloud computing network to retrieve the egress-based pricing scheme (col. 2, lines 27-41, 51-62; and so on).
Singhal does not explicitly disclose retrieve a current version of the pricing scheme is in real-time.
Michael teaches retrieve a current version of the pricing scheme is in real-time (paragraph [0335]-[0336]; [0230]; [0168]; [0171]-[0172]; [0176]; and etc.).
Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to use retrieve a current version of the pricing scheme is in real-time as taught by Michael into Singhal in order to improve quality of communication.
Regarding claim 6, as applied above, Singhal discloses wherein the egress-based pricing scheme. However, Singhal doesn’t explicitly disclose comprises: an identification of a cost associated with sending traffic over an underlay interface; and an identification of a cost associated with sending traffic using a tunneling interface.
Michael teaches comprises: an identification of a cost associated with sending traffic over an underlay interface (paragraph [0164]; [0141]; [0149]-[0150]; and so on); and an identification of a cost associated with sending traffic using a tunneling interface (paragraph [0154]-[0155]; [0146]; [0151]-[0152]; [0164]; [0241]; and etc.).
Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to use comprises: an identification of a cost associated with sending traffic over an underlay interface; and an identification of a cost associated with sending traffic using a tunneling interface as taught by Michael into Singhal in order to reduce congestion.
Regarding claim 8, as applied above, Singhal discloses wherein provisioning the one or more of the network device or the compute device further comprises causing the one or more of the network device or the compute device to execute instructions comprising: querying the cloud computing network to retrieve information of the egress-based pricing scheme (col. 2, lines 27-41; col. 5, lines 21-51; and etc.).
Singhal does not disclose retrieve a current version of the egress-based pricing scheme identifying a first region within the cloud computing network that is connected to a first underlay interface associated with the one or more of the network device or the compute device; identifying a first subnet within the cloud computing network that is connected to the first underlay interface; identifying a second region within the cloud computing network that is connected to a second underlay interface associated with the one or more of the network device or the compute device; and identifying a second subnet within the cloud computing network that is connected to the second underlay interface.
Michael teaches retrieve a current version of the egress-based pricing scheme (paragraph [0260]; [0335]-[0336]; [0230]; [0168]; [0171]-[0172]; [0176]; [0513]; [0627]; and etc.).; identifying a first region within the cloud computing network that is connected to a first underlay interface associated with the one or more of the network device or the compute device (paragraph [0438]); identifying a first subnet within the cloud computing network that is connected to the first underlay interface (paragraph [0269]; [0293]; [0300]; and so on); identifying a second region within the cloud computing network that is connected to a second underlay interface associated with the one or more of the network device or the compute device (paragraph [0467]); and identifying a second subnet within the cloud computing network that is connected to the second underlay interface (paragraph [0291]).
Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to use retrieve a current version of the egress-based pricing scheme identifying a first region within the cloud computing network that is connected to a first underlay interface associated with the one or more of the network device or the compute device; identifying a first subnet within the cloud computing network that is connected to the first underlay interface; identifying a second region within the cloud computing network that is connected to a second underlay interface associated with the one or more of the network device or the compute device; and identifying a second subnet within the cloud computing network that is connected to the second underlay interface as taught by Michael into Singhal in order to reduce overloading and dropping of data.
Regarding claim 9, as applied above, Singhal discloses wherein the instructions executed by the one or more of the network device or the compute device. Singhal does not further disclose comprises calculating, based on the current version of the egress-based pricing scheme: a cost of sending traffic from the first underlay interface to any of a first plurality of other underlay interfaces within the first region of the cloud computing network; and a cost of sending traffic from the second underlay interface to any of a second plurality of other underlay interfaces within the second region of the cloud computing network.
Michael teaches comprises calculating, based on the current version of the egress-based pricing scheme: a cost of sending traffic from the first underlay interface to any of a first plurality of other underlay interfaces within the first region of the cloud computing network (e.g. paragraph [0340]); and a cost of sending traffic from the second underlay interface to any of a second plurality of other underlay interfaces within the second region of the cloud computing network (paragraph [0155]; [0211]; [0238]; and so on).
Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to use comprises calculating, based on the current version of the egress-based pricing scheme: a cost of sending traffic from the first underlay interface to any of a first plurality of other underlay interfaces within the first region of the cloud computing network; and a cost of sending traffic from the second underlay interface to any of a second plurality of other underlay interfaces within the second region of the cloud computing network as taught by Michael into Singhal in order to reduce overloading and dropping of data.
Regarding claim 10, as applied above, Singhal discloses wherein the instructions executed by the one or more of the network device or the compute device further comprises calculating: a cost of sending traffic. However, Singhal does not disclose the calculating, based on the current version of the egress-based pricing scheme: a cost of sending traffic via one or more first tunneling interfaces connected to the first underlay interface; and a cost of sending traffic via one or more second tunneling interfaces connected to the second underlay interface.
Michael teaches the calculating, based on the current version of the egress-based pricing scheme: a cost of sending traffic via one or more first tunneling interfaces connected to the first underlay interface (paragraph [0164]; [0141]; [0149]-[0151]; [0155]; and so on); and a cost of sending traffic via one or more second tunneling interfaces connected to the second underlay interface (paragraph [0143]; [0154]-[0155]; [0145]-[0146]; [0151]-[0152]; [0164]; [0241]; and etc.).
Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to use the calculating, based on the current version of the egress-based pricing scheme: a cost of sending traffic via one or more first tunneling interfaces connected to the first underlay interface; and a cost of sending traffic via one or more second tunneling interfaces connected to the second underlay interface as taught by Michael into Singhal in order to reduce congestion.
Regarding claim 11, as applied above, Singhal discloses cloud computing network that is connected to the one or more of the network device or the compute device. However, Singhal does not further disclose comprising: identifying an underlay interface for the cloud computing network that is connected to the one or more of the network device or the compute device; calculating a base cost for the underlay interface based on the egress-based pricing scheme, wherein the base cost indicates a required per-byte cost for routing traffic from the underlay interface; calculating a variable cost for the underlay interface based on the egress-based pricing scheme, wherein the variable cost indicates a variable per-Gb cost for routing traffic from the underlay interface; calculating a total cost for the underlay interface, wherein the total cost is equal to a sum of the base cost and the variable cost.
Michael teaches comprising: identifying an underlay interface for the cloud computing network that is connected to the one or more of the network device or the compute device (e.g. paragraph [0290]); calculating a base cost for the underlay interface based on the egress-based pricing scheme, wherein the base cost indicates a required per-byte cost for routing traffic from the underlay interface (paragraph [0336]; and so on); calculating a variable cost for the underlay interface based on the egress-based pricing scheme, wherein the variable cost indicates a variable per-Gb cost for routing traffic from the underlay interface (paragraph [0269]; [0360]; and etc.); calculating a total cost for the underlay interface, wherein the total cost is equal to a sum of the base cost and the variable cost (paragraph [0563]; and so on).
Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to use comprising: identifying an underlay interface for the cloud computing network that is connected to the one or more of the network device or the compute device; calculating a base cost for the underlay interface based on the egress-based pricing scheme, wherein the base cost indicates a required per-byte cost for routing traffic from the underlay interface; calculating a variable cost for the underlay interface based on the egress-based pricing scheme, wherein the variable cost indicates a variable per-Gb cost for routing traffic from the underlay interface; calculating a total cost for the underlay interface, wherein the total cost is equal to a sum of the base cost and the variable cost as taught by Michael into Singhal in order to improve resource utilization.
Regarding claim 12, Singhal further discloses comprising storing egress cost data on a database, wherein the egress cost data comprises: a base cost for routing traffic (such as col. 5, lines 45-51). Singhal does not disclose the routing traffic is through each of a plurality of underlay interfaces utilized by the customer within the cloud computing network; and a variable cost for routing traffic through each of the plurality of underlay interfaces utilized by the customer within the cloud computing network.
Michael teaches the routing traffic is through each of a plurality of underlay interfaces utilized by the customer within the cloud computing network (paragraph [0565]; and etc.); and a variable cost for routing traffic through each of the plurality of underlay interfaces utilized by the customer within the cloud computing network (e.g. paragraph [9581]).
Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to use the routing traffic is through each of a plurality of underlay interfaces utilized by the customer within the cloud computing network; and a variable cost for routing traffic through each of the plurality of underlay interfaces utilized by the customer within the cloud computing network as taught by Michael into Singhal in order to reduce congestion.
Regarding claim 14, Singhal discloses selecting a best path for routing the data package from the source address to the destination address. Singhal does not disclose wherein the instructions further comprise: in response to the one or more least expensive paths comprising two or more paths having an equal egress charge, applying equal cost multi-path (ECMP) routing protocols to the two or more paths having the equal egress charge; selecting a best path for routing the data package from the source address to the destination address based on an outcome of applying the ECMP routing protocols to the two or more paths having the equal egress charge; identifying a next hop address for the best path; and routing the data package to the next hop address.
Michael teaches wherein the instructions further comprise: in response to the one or more least expensive paths comprising two or more paths having an equal egress charge, applying equal cost multi-path (ECMP) routing protocols to the two or more paths having the equal egress charge (such as paragraph [0564]); selecting a best path for routing the data package from the source address to the destination address based on an outcome of applying the ECMP routing protocols to the two or more paths having the equal egress charge (paragraph [0580]); identifying a next hop address for the best path (paragraph [0357]); and routing the data package to the next hop address (paragraph [0373]).
Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to use wherein the instructions further comprise: in response to the one or more least expensive paths comprising two or more paths having an equal egress charge, applying equal cost multi-path (ECMP) routing protocols to the two or more paths having the equal egress charge; selecting a best path for routing the data package from the source address to the destination address based on an outcome of applying the ECMP routing protocols to the two or more paths having the equal egress charge; identifying a next hop address for the best path; and routing the data package to the next hop address as taught by Michael into Singhal in order to reduce congestion.
Regarding claim 15, as applied above, Singhal discloses path having the lowest egress charge. Singhal doesn’t disclose wherein the instructions further comprise, in response to the one or more least expensive paths comprising only one path having the lowest egress charge, injecting the one path having the lowest egress charge into a forwarding information base (FIB) for the data package.
Michael teaches wherein the instructions further comprise, in response to the one or more least expensive paths comprising only one path having the lowest egress charge, injecting the one path having the lowest egress charge into a forwarding information base (FIB) for the data package (paragraph [0224]; [0315]; and so on).
Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to use wherein the instructions further comprise, in response to the one or more least expensive paths comprising only one path having the lowest egress charge, injecting the one path having the lowest egress charge into a forwarding information base (FIB) for the data package as taught by Michael into Singhal in order to improve rate and cost of communication.
Regarding claim 16, as applied above, Singhal discloses assessing the telemetry data to calculate one or more of an amount of data egressing the cloud, and calculating the predicted data egress charge computing network. Singhal does not disclose comprising: assessing the telemetry data to calculate one or more of an amount of data egressing the cloud computing network or an amount of data transferred between two or more regions of the cloud computing network; and calculating the predicted data egress charge to be levied on the customer of the cloud computing network, wherein calculating the predicted data egress charge comprises calculating based on one or more of the amount of data egressing the cloud computing network or the amount of data transferred between the two or more regions of the cloud computing network.
Michael teaches comprising: assessing the telemetry data to calculate one or more of an amount of data egressing the cloud computing network or an amount of data transferred between two or more regions of the cloud computing network (paragraph [0318]); and calculating the predicted data egress charge to be levied on the customer of the cloud computing network, wherein calculating the predicted data egress charge comprises calculating based on one or more of the amount of data egressing the cloud computing network or the amount of data transferred between the two or more regions of the cloud computing network (paragraph [0378]; [0446]; and etc.).
Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to use comprising: assessing the telemetry data to calculate one or more of an amount of data egressing the cloud computing network or an amount of data transferred between two or more regions of the cloud computing network; and calculating the predicted data egress charge to be levied on the customer of the cloud computing network, wherein calculating the predicted data egress charge comprises calculating based on one or more of the amount of data egressing the cloud computing network or the amount of data transferred between the two or more regions of the cloud computing network as taught by Michael into Singhal in order to improve resource utilization and reduce congestion.
Regarding claim 17, as applied above, Singhal discloses wherein retrieving the egress-based pricing scheme comprises retrieving, from an Application Program Interface (API) associated with the cloud computing network (col. 2, lines 27-41, 51-62; and so on). Singhal does not disclose the retrieve is a real-time egress cost for one or more of egressing data from the cloud computing network or transferring data between two or more regions of the cloud computing network.
Michael teaches the retrieve is a real-time egress cost for one or more of egressing data from the cloud computing network or transferring data between two or more regions of the cloud computing network (paragraph [0327]; [0335]-[0336]; [0230]; [0168]; [0171]-[0172]; [0176]; [0492]; and etc.).
Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to use the retrieve is a real-time egress cost for one or more of egressing data from the cloud computing network or transferring data between two or more regions of the cloud computing network as taught by Michael into Singhal in order to reduce dropping of data.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to KIBROM T HAILU whose telephone number is (571)270-1209. The examiner can normally be reached M-F 8:00 AM to 5:30 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, HUY D VU can be reached at (571)272-3155. 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.
/KIBROM T HAILU/Primary Examiner, Art Unit 2461