Response to Amendment
This office action is in response to a response received on January 27, 2026.
Claims 1, 8, 9, 16 and 17 have been amended.
Claims 2, 10 and 18 have been canceled.
Claims 1, 3-9, 11-17 and 19 are pending.
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 .
Response to Arguments
The 35 USC §102(a)(1) and §103 rejection is hereby withdrawn in light of applicant’s
amendments and arguments (see remarks pp. 9-13). However, upon further consideration, a new ground(s) of rejection has been made.
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 non-obviousness.
Claim(s) 1, 3-7, 9, 11-15 and 17 and 19, are rejected under 35 U.S.C. 103 as being
unpatentable over Eckert et al., WO 2020191014 A1, (hereinafter Eckert) and in view of Song, US 10560383 B2, (hereinafter Song).
Regarding claim 1, 9, and 17 Eckert teaches, A time-deterministic packet forwarding method that guarantees a maximum and minimum latency requirement of a service (see Fig. 6, element 601-609, Pg. 21, [0085], e.g., FIG. 6 is a high level overview for an embodiment of end-to-end latency based forwarding (LBF) 600; Pg. 9, [0051], e.g., High-precision networks demand high-precision service-level guarantees that can be characterized through a set of Service Level Objectives (SLOs), A delay, or latency, based SLO can indicate a specific end-to-end delay, given a certain not-to- exceed packet rate or bandwidth. Examples can include an upper bound (“delay not to exceed”); a lower bound (less common)),
the method comprising:
receiving latency information of links and nodes on a path, and buffer resource information of the nodes (Fig. 2, e.g., element 212, 210a-e, Predicted prop delay, Remaining # nodes, Delay, Local latency budget, Pg. 15, [0071], e.g., the control/management plane 212 provides node 210b with a predicted propagation delay of (500ps+500ps+500ps)=1 5ms and 3 remaining nodes, Pg. 16-17, [0074], e.g., The SLO can indicate one or both of an upper bound and a lower bound for the total latency, or delay, for the packet as it is transmitted from the sending node (210a in FIG. 3) to the receiving node (21 Oe in FIG. 2).), Fig. 2, e.g., element 210a-e, Local latency budget, Pg. 1-2, [0004], e.g., the forwarding header indicating an accumulated delay experienced by the packet since being transmitted by a network sender and a maximum latency for the transfer of the packet from the network sender to the network destination);
calculating, based on the buffer resource information of a last node, local latency budgets that other nodes need to guarantee (Note that, “Instant Spec, ¶ [0100], the resource-based on-time packet forwarding, buffer resource information of the last node is the maximum latency time”; see Fig. 2, e.g., element 210e, SLO: end-to-end delay e.g. lb==ub==8 ms, ¶ [0070], e.g., FIG. 2 presents an example where the service level objective (SLO) indicates an end-to-end delay or latency with a lower bound of lb milliseconds and an upper bound of ub milliseconds and where lb and ub are both taken to be the same (an“on-time guarantee”) at 8ms. The control/management plane 212 can notify each node of the number of remaining nodes, or hops, towards each possible destination and the predicted non-queuing propagation latency towards each destination calculated by adding up the non-queuing propagation latency of all hops from this node to a the destination, based upon this information and the amount of delay that the packet has experienced so far, the node can determine a local latency budget for the packet in the node; ¶ [0071], e.g., FIG. 2, at node 210a the predicted propagation delay is (1 ms+500ps+500ps+500ps)=2.5ms and there are 4 hops to arrive at destination node 21 Oe, giving node 210a a local latency budget of: (8-2.5)ms/4=1.375ms, local budget for latency at node 210b of: (8-2.375-1 5)ms/3=1 375ms, giving a latency budget for node 210c of: (8-4.25-1 )ms/2=1 .375ms, node 21 Od, the latency budget is similarly calculated as: (8-6.125-0.5)ms/1 = 1 375ms.);
performing control so that the other nodes transmit a packet based on the local latency budgets (see ¶ [0071], e.g., Taking the allotted 8ms for the entire end-to-end delay, subtracting the delay so far (1 ms propagation delay, 1 .375ms latency budgeted to node 210a) and predicted additional delay (1.5ms), and then dividing by the number of remaining nodes (3) gives a local budget for latency at node 210b of: (8-2.375-1 5)ms/3=1 375ms. The node 210b can determine when to transmit the packet based on this budget. With this budgeting, the packer arrives at node 21 Oe in (6.125+1 .375+0.5)ms=8.00ms, as wanted); and
performing control so that finally, the last node guarantees a residual latency budget remaining after the other nodes transmit the packet within the local latency budgets (see ¶ [0072], e.g., For example, if there were 1 ms additional unexpected delay related to node 210b, either arising on node 210b itself or during propagation between node 210b and 210c, this loss can be taken out of local latency budgets of nodes 210c and 21 Od. Revising the calculation of the previous paragraph to add in this extra 1 ms delay, the local latency budget of 210c becomes: (8-5.25-1 )ms/2=0.875ms. The local latency budget of 21 Od becomes: (8-7.125-0.5)ms/1 =0.875ms. This again allows the packet to arrive at the designated lb==ub==8ms.),
wherein the method further comprises:
calculating a sum of minimum fixed latencies per end-to-end path based on the latency information (see ¶ [0070], The total non queuing path propagation latency will be the sum of the fixed delays between each of the nodes and the local delays in each of the intermediate nodes.),
calculating a lower bound and an upper bound of the latency budget per end-to-end path based on a lower bound and an upper bound of a user latency requirement and the sum of the minimum fixed latencies per end-to-end path (see Fig. 2, e.g., element SLO end-to-end delay [ld ms, ub ms]; ¶ [0070], the service level objective (SLO) indicates an end-to-end delay or latency with a lower bound of lb milliseconds and an upper bound of ub milliseconds and where lb and ub are both taken to be the same (an“on-time guarantee”) at 8ms; The control/management plane 212 can notify each node of the number of remaining nodes, or hops, towards each possible destination and the predicted non-queuing propagation latency towards each destination calculated by adding up the non-queuing propagation latency of all hops from this node to a the destination. As described in more detail below, based upon this information and the amount of delay that the packet has experienced so far, the node can determine a local latency budget for the packet in the node.),
calculating a lower bound and an upper bound of the latency budget that each of the nodes guarantees based on the lower bound and the upper bound of the latency budget of the end-to-end path, and
determining a lower bound and an upper bound of the residual latency budget of the last node based on the lower bound and the upper bound of the latency budget that each of the nodes guarantees (see ¶ [0072], e.g., If the actual local delay or latency is not as predicted, the local latency budgets can be adjusted accordingly. For example, if there were 1 ms additional unexpected delay related to node 210b, either arising on node 210b itself or during propagation between node 210b and 210c, this loss can be taken out of local latency budgets of nodes 210c and 21 Od. Revising the calculation of the previous paragraph to add in this extra 1 ms delay, the local latency budget of 210c becomes:
(8-5.25-1 )ms/2=0.875ms.
The local latency budget of 21 Od becomes:
(8-7.125-0.5)ms/1 =0.875ms.
This again allows the packet to arrive at the designated lb==ub==8ms. As discussed in more detail below, when upper bound and lower bounds differ, both a minimum and a maximum lower latency budget are used:
Min-Local-latency-budget = (lb - latency-in-packet - path-delay-to-destination)/number-hops-to-destination; and
Max-Local-latency-budget = (ub - latency-in-packet - path-delay-to-destination)/number-hops-to-destination. In these expressions, “latency-in-packet” corresponds to the cumulative amount of delay or latency already experienced by the packet since leaving its source, and“path- delay-to-destination” is the expected amount of fixed transmission delay before the packet reaches its destination node.),
However, it does not explicitly teach wherein the buffer resource information of the last node is determined based on a buffer size allocated to the service and attributes of the service, and wherein the buffer resource information indicates a maximum buffering times of the last node.
Song teaches, wherein the buffer resource information of the last node is determined based on a buffer size allocated to the service and attributes of the service, and wherein the buffer resource information indicates a maximum buffering times of the last node (see Fig. 1, e.g., element 100; Col 6, lines 57-66, e.g., In addition to sending the packets 120 to the receiver 155, the last router 145 in the path from the host 115 to the receiver 155 may include a condition module 160 that determines the condition of the network 100 and reports the determined condition to the host 115 and/or access router 125. In one embodiment, the condition module 160 may compare a current time with the latency information 122 to generate a representation of network congestion. The determination can be based on whether the packet 120 arrived at the receiver 155 on time; see Col 7, lines 1-21, e.g., maximum and minimum latency values for packets between the host 115 and router 145 may be determined from multiple received packets processed by the condition module 160 over time. The minimum latency may occur when there is little network traffic and unlabeled packets, having no latency information, are not significantly delayed in the router queues. The maximum latency may occur when the network traffic is high and the unlabeled packets experience significant queuing delays in the router(s). The maximum and minimum latency values may then be sent back to the host 115 and/or access router 125 for use in determining latency information to be applied to the packets processed by the host 115 and/or access router 125. For example, an urgent packet may be assigned the minimum latency value, while a non-urgent packet may be assigned the maximum latency value or may be sent without latency information; see Col 8, lines 56-65, e.g., When the latency information represents a maximum latency, a target latency, or a latency budget, the latency information value may be reduced at each router; for example, each router may adjust the latency information to reflect a packet holding time and/or an expected transport time to the next router/receiver.).
It would have been obvious to one of ordinary skill in the art before the effective
filing date of the claimed invention to have modified buffer resource information determination of the last node of Eckert to incorporate the teachings of Song to include buffer resource information of the last node is determined based on a buffer size allocated to the service and attributes of the service. Doing so would facilitate in achieving successful delivery of urgent packet even in congested network as suggested by Song (see Col. 10, lines 33-44, e.g., Thus, even in a congested network, an urgent packet 120 may be delivered with latency close to the minimum because the urgent packet 120 is moved to the head of each of the PIFO queues 130, 140, and 150 in each of the routers 125, 135, and 145 along its path. Even if its deadline is already passed, an urgent packet 120 can be delivered with minimum latency, for example by setting its latency information 122 to the current time or to the current time plus the minimum latency determined by the condition module 160. Alternatively, the latency budget for the urgent packet 120 may be set to zero or to the minimum latency value.)
Regarding claim 3, 11, and 19 Eckert as combined with Song teaches the limitations of Claim 1, 9, and 17.
Eckert further teaches, wherein the performing of control so that the nodes transmit the packet on the basis of the local latency budgets comprises
setting clear upper and lower bounds of the local latency budget that each of the nodes needs to guarantee (Pg. 16, [0072], e.g., both a minimum and a maximum lower latency budget are used: Min-Local-latency-budget = (lb - latency-in-packet - path-delay-to-destination)/number-hops-to-destination; and Max-Local-latency-budget = (ub - latency-in-packet - path-delay-to-destination)/number-hops-to-destination.).
Regarding claim 4, and 12, Eckert as combined with Song teaches the limitations of Claim 3, and 11.
Eckert further teaches, wherein the performing of control so that the nodes transmit the packet on the basis of the local latency budgets comprises:
collecting the buffer resource information of all the nodes (Fig. 2, e.g., element 212, 210a-e, Predicted prop delay, Remaining # nodes, Delay); and
calculating the local latency budget of each of the nodes that does not exceed latency time providable on the basis of a buffer resource of each node (Instant Spec, [0100], in the resource-based on-time packet forwarding, buffer resource information of the last node is the maximum latency time, Fig. 2, e.g., element 212, 210a-e, Local latency budget, Pg. 15, [0071], e.g., FIG. 2, at node 210a the predicted propagation delay is (1s+500ps+500ps+500ps)=2.5ms and there are 4 hops to arrive at destination node 21 Oe, giving node 210a a local latency budget of: (8-2.5)ms/4=1.375ms. The amount of propagation time from node 210a to 210b is 1 ms and the control/management plane 212 provides node 210b with a predicted propagation delay of (500ps+500ps+500ps)=1 5ms and 3 remaining nodes. Taking the allotted 8ms for the entire end-to-end delay, subtracting the delay so far (1 ms propagation delay, 1 .375ms latency budgeted to node 210a) and predicted additional delay (1.5ms), and then dividing by the number of remaining nodes (3) gives a local budget for latency at node 210b of: (8-2.375-1 5)ms/3=1 375ms. The node 210b can determine when to transmit the packet based on this budget).
Regarding claim 5, and 13, Eckert as combined with Song teaches the limitations of Claim 4, and 12.
Eckert further teaches, wherein the local latency budgets are determined on the basis of total network latency and residual latency time obtained by subtracting latency guaranteeable by the last node so that a service latency requirement is guaranteed (Instant Spec, [0100], in the resource-based on-time packet forwarding, buffer resource information of the last node is the maximum latency time, Pg. 15, [0071], e.g., at node 210a the predicted propagation delay is (1 ms+500ps+500ps+500ps)=2.5ms and there are 4 hops to arrive at destination node 21 Oe, giving node 210a a local latency budget of: (8-2.5)ms/4=1.375ms, For node 21 Od, the latency budget is similarly calculated as: (8-6.125-0.5)ms/1 = 1 375ms. With this budgeting, the packer arrives at node 21 Oe in (6.125+1 .375+0.5)ms=8.00ms, as wanted.).
Regarding claim 6, and 14, Eckert as combined with Song teaches the limitations of Claim 1, and 9.
Eckert further teaches, wherein the performing of control so that finally, the last node guarantees the residual latency budget comprises (Pg. 14-15, [0070], e.g., FIG. 2 presents an example where the service level objective (SLO) indicates an end-to-end delay or latency with a lower bound of lb milliseconds and an upper bound of ub milliseconds and where lb and ub are both taken to be the same (an“on-time guarantee”) at 8ms.):
forwarding, to the last node, actual latency information consumed by each of the nodes when the nodes transmit the packet within upper bounds and lower bounds of the local latency budgets (Fig. 3, 301-311, Pg. 15, [0075], e.g., The packet can also carry information on the accumulated delay metadata, such as the amount of accumulated delay or latency experienced by the packet so far since it left the sending node);
identifying the residual latency budget on the basis of the actual latency information forwarded from the previous nodes (Pg. 16, [0072], e.g., For example, if there were 1 ms additional unexpected delay related to node 210b, either arising on node 210b itself or during propagation between node 210b and 210c, this loss can be taken out of local latency budgets of nodes 210c and 21 Od. Revising the calculation of the previous paragraph to add in this extra 1 ms delay, the local latency budget of 210c becomes: (8-5.25-1 )ms/2=0.875ms. The local latency budget of 21 Od becomes: (8-7.125-0.5)ms/1 =0.875ms. This again allows the packet to arrive at the designated lb==ub==8ms); and
setting the identified residual latency budget as a local latency budget of the last node (Fig. 2, e.g., 212, 210, Local latency budget, Pg. 15, [0071], e.g., For node 21 Od, the latency budget is similarly calculated as: (8-6.125-0.5)ms/1 = 1 375ms. With this budgeting, the packer arrives at node 21 Oe in (6.125+1 .375+0.5)ms=8.00ms, as wanted.).
Regarding claim 7, and 15, Eckert as combined with Song teaches the limitations of Claim 6, and 14.
Eckert further teaches, wherein when an upper bound of the residual latency budget is greater than maximum latency providable on the basis of a buffer resource of the last node, it is determined that an upper bound of the local latency budget of the last node is the maximum latency providable by the last node (Pg. 21-22, [0086], e.g., The latency with which the final receiving node RR 609 receives the packet is meant to be between the minimum and maximum latency, Pg. 22, [0088], e.g., A packet can be entered into the queue based on its delay budget. If the edelay value of a packet is over the maximum latency, the packet can be discarded.).
Claim(s) 8 and 16, are rejected under 35 U.S.C. 103 as being unpatentable over Eckert,
Song and in view of SUN et al., CN 111884885 A (see the English translated copy), (hereinafter SUN) and in further view of SONG et al., CN 118828725 A (see the English translated copy), (hereinafter SONG).
Regarding claim 8, and 16, Eckert as combined with Song teaches the limitations of Claim 1, and 9.
Eckert teaches Service Level Objectives (SLO) with parameters like end-to-end minimum and maximum latency and accumulated delay experienced by the packet across nodes since it left the sending node. (Pg. 21-22, [0086], e.g., packet 621 adds three parameters to a forwarding header: edelay, Imin and Imax), however it does not explicitly teach information on a packet forwarding period, the number of packets forwarded within the period and a packet size.
Eckert as improved by Song does not teach but SUN teaches, wherein the attributes of the service include information on a packet forwarding period, the number of packets forwarded within the period (Pg. 2, Paragraph 6, e.g., obtaining N target data packets forwarded by M target forwarding devices in a predetermined time period; M and N are integers greater than or equal to 1; analyzing to obtain the packet head information of each N target data packets; and based on the packet head information, determining the access information corresponding to the N target data packet, Pg. 7, Paragraph 1, e.g., the data packet forwarded within the period of time (e.g., within one minute or ten minutes) may be summarized and analyzed every predetermined duration (e.g., one minute or ten minutes), and the access information within the period of time is determined.).
Eckert, Song, SUN does not teach but SONG teaches, wherein the attributes of the service include information on a packet size (Pg. 14, Paragraph 2, e.g., wherein, the service attribute parameter and the service reporting parameter may include periodic information, service packet size and time delay requirement and so on).
It would have been obvious to one of ordinary skill in the art before the effective
filing date of the claimed invention to have modified Service Level Objectives (SLO) of Eckert as improved by Song to incorporate the teachings of SUN and SONG to include information on packet forwarding period, the number of packets forwarded within the period and a packet size. Doing so would facilitate in collecting statistical information comprising maximum delay time in each data packet in the data packet group within a predetermined time period which can help in fast location of problem source as suggested by SUN (Pg. 8, Paragraph 1, e.g., according to the traffic on each access path, retransmission, packet loss and delay and other state statistic information for key detection, because the packet loss, retransmission, abnormal flow rate or delay time abnormal condition of abnormal condition of the failure probability is large, therefore, it can be lost packet, retransmission, abnormal flow rate or delay time abnormal condition of the path, fast locating problem source.)
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
US 20200106710 A1 issued to RYOO et al.
US 20220217051 A1 issued to Zhang.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to POONAM SHARMA whose telephone number is (571)272-6579. The examiner can normally be reached Monday thru 8:30-5:30 pm, ET.
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, Kevin Bates can be reached at (571) 272-3980. 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.
/POONAM SHARMA/Examiner, Art Unit 2472
/KEVIN T BATES/Supervisory Patent Examiner, Art Unit 2472