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 .
Claims 1-30 are pending.
Response to Arguments
Double Patenting Rejection
Applicant's arguments filed have been fully considered but they are not persuasive. The double patenting rejection is maintained subject to a terminal disclaimer being filed or substantive amendments being made to claims.
103 Rejections
Applicant’s arguments, see pages 10-19, with respect to claims 1-30 have been fully considered and are persuasive. The 103 rejections of claims 1-30 have been withdrawn.
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-30 are rejected on the ground of nonstatutory double patenting as being unpatentable over claims 1-15 of U.S. Patent No. 12192262 (hereinafter ‘262). Although the claims at issue are not identical, they are not patentably distinct from each other because it would have been obvious to one of ordinary skill, apprised of ‘262 method claims, to have contemplated system & CRM implementations of the patented method claims.
Instant claims
‘262 claims
1. A system comprising:
at least one intermediate device (maps to ‘262, claim 1, “determining…a route comprising a plurality of intermediate devices…”); and
a computing device (maps to ‘262, claim 1, “receiving, by a computing device…”) configured to:
receive, from a user device, a request for a content item;
determine, for a delivery of at least a portion of the content item to the user device, a route comprising the at least one intermediate device;
send, to the at least one intermediate device, an instruction for prioritizing buffers during delivery of the at least the portion of the content item; and
after sending the instruction, cause, via the route, the delivery of the at least the portion of the content item.
2. The system of claim 1, wherein the route comprises: a route between the computing device and the user device; or a route between the user device and a content server different from the computing device.
3. The system of claim 1, wherein the at least one intermediate device comprises a plurality of buffer queues, and wherein the instruction instructs the at least one intermediate device to select a buffer queue, of the plurality of buffer queues, that prioritizes the delivery of the at least the portion of the content item over deliveries of other content items.
4. The system of claim 1, wherein the at least one intermediate device comprises a plurality of buffer queues corresponding to different buffer priority levels, and wherein the instruction: indicates one of the different buffer priority levels; and instructs the at least one intermediate device to select, for buffering the content item, a buffer queue, of the plurality of buffer queues, that corresponds to the one of the different buffer priority levels.
5. The system of claim 1, wherein the instruction is based on: a media type of the content item; or a file type extension of the content item.
6. The system of claim 1, wherein the instruction is based on: a performance metric associated with the delivery of the at least the portion of the content item; a maximum allowed packet loss rate during the delivery of the at least the portion of the content item; or a transport protocol associated with the delivery of the at least the portion of the content item.
7. The system of claim 1, wherein the instruction is based on a minimum delay between the at least one intermediate device and another intermediate device in the route.
8. The system of claim 1, wherein the computing device is configured to: determine a failure to meet a performance threshold associated with the delivery of the at least the portion of the content item; and send, based on the determined failure and to the at least one intermediate device, a second instruction for the at least one intermediate device to adjust a performance metric associated with delivery of other portions of the content item.
9. A system comprising:
[1] a first intermediate device of a plurality of intermediate devices of a path between a content source and a user device; and
a [2] second intermediate device of the plurality of intermediate devices,
wherein the first intermediate device is configured to:
receive, prior to receiving a content item, an instruction to prioritize a delivery of the content item to the user device;
select, based on the instruction and from a plurality of buffer queues associated with the intermediate device, a buffer queue;
receive a portion of the content item;
store the portion of the content item in the selected buffer queue; and
send, from the selected buffer queue and to the second intermediate device, the stored portion of the content item.
10. The system of claim 9, wherein the first intermediate device is configured to select the buffer queue by selecting a buffer queue that prioritizes a delivery of the portion of the content item over deliveries of other content items.
11. The system of claim 9, wherein the plurality of buffer queues correspond to different buffer priority levels, wherein the instruction indicates one of the different buffer priority levels, and wherein the first intermediate device is configured to select the buffer queue by selecting a buffer queue that corresponds to the indicated one of the different buffer priority levels.
12. The system of claim 9, wherein the instruction is based on: a media type of the content item; or a file type extension of the content item.
13. The system of claim 9, wherein the instruction is based on: a performance metric associated with the delivery of the content item; a maximum allowed packet loss rate during the delivery of the content item; a transport protocol associated with the delivery of the content item; a minimum delay between the first intermediate device receiving a second portion of the content item and the first intermediate device sending the second portion of the content item to the second intermediate device or the user device; or a minimum delay between the first intermediate device receiving other content items and the first intermediate device sending the other content items to the second intermediate device or the user device.
14. The system of claim 9, wherein the first intermediate device is configured to: receive the instruction from a computing device; determine a failure to meet a performance threshold associated with sending the stored portion of the content item; and send, to the computing device, a message indicating the failure.
15. The system of claim 9, wherein the first intermediate device is configured to: receive the portion of the content item from a third intermediate device of the plurality of intermediate devices; determine a failure to meet a performance threshold associated with receiving the portion of the content item; and send, to the third intermediate device, a second instruction for the third intermediate device to adjust a performance metric associated with sending of a second portion of the content item to the intermediate device.
16. A non-transitory computer readable medium storing instructions that, when executed, cause a computing device to:
receive, from a user device, a request for a content item;
determine, for a delivery of at least a portion of the content item to the user device, a route comprising at least one intermediate device;
send, to the at least one intermediate device, an instruction for prioritizing buffers during delivery of the at least the portion of the content item; and
after sending the instruction, cause, via the route, the delivery of the at least the portion of the content item.
17. The non-transitory computer readable medium of claim 16, wherein the route comprises: a route between the computing device and the user device; or a route between the user device and a content server different from the computing device.
18. The non-transitory computer readable medium of claim 16, wherein the at least one intermediate device comprises a plurality of buffer queues, and wherein the instruction instructs the at least one intermediate device to select a buffer queue, of the plurality of buffer queues, that prioritizes the delivery of the at least the portion of the content item over deliveries of other content items.
19. The non-transitory computer readable medium of claim 16, wherein the at least one intermediate device comprises a plurality of buffer queues corresponding to different buffer priority levels, and wherein the instruction: indicates one of the different buffer priority levels; and instructs the at least one intermediate device to select, for buffering the content item, a buffer queue, of the plurality of buffer queues, that corresponds to the one of the different buffer priority levels.
20. The non-transitory computer readable medium of claim 16, wherein the instruction is based on: a media type of the content item; or a file type extension of the content item.
21. The non-transitory computer readable medium of claim 16, wherein the instruction is based on: a performance metric associated with the delivery of the at least the portion of the content item; a maximum allowed packet loss rate during the delivery of the at least the portion of the content item; or a transport protocol associated with the delivery of the at least the portion of the content item.
22. The non-transitory computer readable medium of claim 16, wherein the instruction is based on a minimum delay between the at least one intermediate device and another intermediate device in the route.
23. The non-transitory computer readable medium of claim 16, wherein the instructions, when executed, further cause the computing device to: determine a failure to meet a performance threshold associated with the delivery of the at least the portion of the content item; and send, based on the determined failure and to the at least one intermediate device, a second instruction for the at least one intermediate device to adjust a performance metric associated with delivery of other portions of the content item.
24. A non-transitory computer readable medium storing instructions that, when executed, [1] cause an intermediate device, of a plurality of intermediate devices of a path between a content source and a user device, to:
receive, prior to receiving a content item, an instruction to prioritize a delivery of the content item to the user device;
select, based on the instruction and from a plurality of buffer queues associated with the intermediate device, a buffer queue;
receive a portion of the content item;
store the portion of the content item in the selected buffer queue; and
send, from the selected buffer queue and to another intermediate device of the path, the stored portion of the content item.
25. The non-transitory computer readable medium of claim 24, wherein the instructions, when executed, cause the intermediate device to select the buffer queue by selecting a buffer queue that prioritizes a delivery of the portion of the content item over deliveries of other content items.
26. The non-transitory computer readable medium of claim 24, wherein the plurality of buffer queues correspond to different buffer priority levels, wherein the instruction indicates one of the different buffer priority levels, and wherein instructions, when executed, cause the intermediate device to select the buffer queue by selecting a buffer queue that corresponds to the indicated one of the different buffer priority levels.
27. The non-transitory computer readable medium of claim 24, wherein the instruction is based on: a media type of the content item; or a file type extension of the content item.
28. The non-transitory computer readable medium of claim 24, wherein the instruction is based on: a performance metric associated with the delivery of the content item; a maximum allowed packet loss rate during the delivery of the content item; a transport protocol associated with the delivery of the content item; a minimum delay between the intermediate device receiving a second portion of the content item and intermediate device sending the second portion of the content item to a second intermediate device of the path or the user device; or a minimum delay between the intermediate device receiving other content items and the intermediate device sending the other content items to a second intermediate device of the path or the user device.
29. The non-transitory computer readable medium of claim 24, wherein instructions, when executed, cause the intermediate device to: receive the instruction from a computing device; determine a failure to meet a performance threshold associated with sending the stored portion of the content item; and send, to the computing device, a message indicating the failure.
30. The non-transitory computer readable medium of claim 24, wherein instructions, when executed, cause the intermediate device to: receiving the portion of the content item from a second intermediate device of the path; determine a failure to meet a performance threshold associated with receiving the portion of the content item; and send, to the second intermediate device, a second instruction for the second intermediate device to adjust a performance metric associated with sending of a second portion of the content item to the intermediate device.
1. A method comprising:
receiving, by a computing device and from a user device, a request for a content item;
determining, for a delivery of at least a portion of the content item to the user device, a route comprising a plurality of intermediate devices;
sending, to the plurality of intermediate devices, instructions for prioritizing buffers during delivery of the at least the portion of the content item; and
after sending the instructions, causing, via the route, the delivery of the at least the portion of the content item.
2. The method of claim 1, wherein determining the route comprises determining a route between: the computing device and the user device; or the user device and a content server different from the computing device.
3. The method of claim 1, wherein at least one of the plurality of intermediate devices comprises a plurality of buffer queues, and wherein the instructions instruct the at least one of the plurality of intermediate devices to select a buffer queue, of the plurality of buffer queues, that prioritizes the delivery of the at least the portion of the content item over deliveries of other content items.
4. The method of claim 1, wherein at least one of the plurality of intermediate devices comprises a plurality of buffer queues corresponding to different buffer priority levels, and wherein the instructions: indicate one of the different buffer priority levels; and instruct the at least one of the plurality of intermediate devices to select, for buffering the content item, a buffer queue, of the plurality of buffer queues, that corresponds to the one of the different buffer priority levels.
5. The method of claim 1, wherein sending the instructions comprises generating the instructions based on: a media type of the content item; or a file type extension of the content item.
6. The method of claim 1, wherein sending the instructions comprises generating the instructions based on: at least one performance metric associated with the delivery of the at least the portion of the content item; a maximum allowed packet loss rate during the delivery of the at least the portion of the content item; or a transport protocol associated with the delivery of the at least the portion of the content item.
7. The method of claim 1, wherein sending the instructions comprises generating the instructions based on a minimum delay between each of the plurality of intermediate devices, the method further comprising: receiving other content items; and sending the other content items to other intermediate devices of the plurality of intermediate devices or the user device.
8. The method of claim 1, further comprising: determining a failure to meet a performance threshold associated with the delivery of the at least the portion of the content item; and sending, based on the determined failure and to the plurality of intermediate devices, second instructions for the plurality of intermediate devices to adjust a performance metric associated with delivery of other portions of the content item.
9. A method comprising:
receiving, [1, 2] by an intermediate device of a plurality of intermediate devices of a path between a content source and a user device and prior to receiving a content item, an instruction to prioritize a delivery of the content item to the user device;
selecting, based on the instruction and from a plurality of buffer queues associated with the intermediate device, a buffer queue;
receiving a portion of the content item;
storing the portion of the content item in the selected buffer queue; and
sending, from the selected buffer queue and to another intermediate device of the path, the stored portion of the content item.
10. The method of claim 9, wherein selecting the buffer queue comprises selecting a buffer queue that prioritizes a delivery of the portion of the content item over deliveries of other content items.
11. The method of claim 9, wherein the plurality of buffer queues correspond to different buffer priority levels, wherein the instruction indicates one of the different buffer priority levels, and wherein selecting the buffer queue comprises selecting a buffer queue that corresponds to the indicated one of the different buffer priority levels.
12. The method of claim 9, wherein the instruction is based on: a media type of the content item; or a file type extension of the content item.
13. The method of claim 9, wherein the instruction is based on: at least one performance metric associated with the delivery of the content item; a maximum allowed packet loss rate during the delivery of the content item; a transport protocol associated with the delivery of the content item; a minimum delay between the intermediate device receiving a second portion of the content item and the intermediate device sending the second portion of the content item to the another intermediate device or the user device; or a minimum delay between the intermediate device receiving other content items and the intermediate device sending the other content items to the another intermediate device or the user device.
14. The method of claim 9, wherein receiving the instruction comprises receiving, from a computing device, the instruction, and the method further comprises: determining a failure to meet a performance threshold associated with sending the stored portion of the content item; and sending, to the computing device, a message indicating the failure.
15. The method of claim 9, wherein receiving the portion of the content item comprises receiving, from a third intermediate device of the plurality of intermediate devices, the portion of the content item, and the method further comprises: determining a failure to meet a performance threshold associated with receiving the portion of the content item; and sending, to the third intermediate device, a second instruction for the third intermediate device to adjust a performance metric associated with sending of a second portion of the content item to the intermediate device.
1. A method comprising:
receiving, by a computing device and from a user device, a request for a content item;
determining, for a delivery of at least a portion of the content item to the user device, a route comprising a plurality of intermediate devices;
sending, to the plurality of intermediate devices, instructions for prioritizing buffers during delivery of the at least the portion of the content item; and
after sending the instructions, causing, via the route, the delivery of the at least the portion of the content item.
2. The method of claim 1, wherein determining the route comprises determining a route between: the computing device and the user device; or the user device and a content server different from the computing device.
3. The method of claim 1, wherein at least one of the plurality of intermediate devices comprises a plurality of buffer queues, and wherein the instructions instruct the at least one of the plurality of intermediate devices to select a buffer queue, of the plurality of buffer queues, that prioritizes the delivery of the at least the portion of the content item over deliveries of other content items.
4. The method of claim 1, wherein at least one of the plurality of intermediate devices comprises a plurality of buffer queues corresponding to different buffer priority levels, and wherein the instructions: indicate one of the different buffer priority levels; and instruct the at least one of the plurality of intermediate devices to select, for buffering the content item, a buffer queue, of the plurality of buffer queues, that corresponds to the one of the different buffer priority levels.
5. The method of claim 1, wherein sending the instructions comprises generating the instructions based on: a media type of the content item; or a file type extension of the content item.
6. The method of claim 1, wherein sending the instructions comprises generating the instructions based on: at least one performance metric associated with the delivery of the at least the portion of the content item; a maximum allowed packet loss rate during the delivery of the at least the portion of the content item; or a transport protocol associated with the delivery of the at least the portion of the content item.
7. The method of claim 1, wherein sending the instructions comprises generating the instructions based on a minimum delay between each of the plurality of intermediate devices, the method further comprising: receiving other content items; and sending the other content items to other intermediate devices of the plurality of intermediate devices or the user device.
8. The method of claim 1, further comprising: determining a failure to meet a performance threshold associated with the delivery of the at least the portion of the content item; and sending, based on the determined failure and to the plurality of intermediate devices, second instructions for the plurality of intermediate devices to adjust a performance metric associated with delivery of other portions of the content item.
9. A method comprising:
receiving, [1] by an intermediate device of a plurality of intermediate devices of a path between a content source and a user device and prior to receiving a content item, an instruction to prioritize a delivery of the content item to the user device;
selecting, based on the instruction and from a plurality of buffer queues associated with the intermediate device, a buffer queue;
receiving a portion of the content item;
storing the portion of the content item in the selected buffer queue; and
sending, from the selected buffer queue and to another intermediate device of the path, the stored portion of the content item.
10. The method of claim 9, wherein selecting the buffer queue comprises selecting a buffer queue that prioritizes a delivery of the portion of the content item over deliveries of other content items.
11. The method of claim 9, wherein the plurality of buffer queues correspond to different buffer priority levels, wherein the instruction indicates one of the different buffer priority levels, and wherein selecting the buffer queue comprises selecting a buffer queue that corresponds to the indicated one of the different buffer priority levels.
12. The method of claim 9, wherein the instruction is based on: a media type of the content item; or a file type extension of the content item.
13. The method of claim 9, wherein the instruction is based on: at least one performance metric associated with the delivery of the content item; a maximum allowed packet loss rate during the delivery of the content item; a transport protocol associated with the delivery of the content item; a minimum delay between the intermediate device receiving a second portion of the content item and the intermediate device sending the second portion of the content item to the another intermediate device or the user device; or a minimum delay between the intermediate device receiving other content items and the intermediate device sending the other content items to the another intermediate device or the user device.
14. The method of claim 9, wherein receiving the instruction comprises receiving, from a computing device, the instruction, and the method further comprises: determining a failure to meet a performance threshold associated with sending the stored portion of the content item; and sending, to the computing device, a message indicating the failure.
15. The method of claim 9, wherein receiving the portion of the content item comprises receiving, from a third intermediate device of the plurality of intermediate devices, the portion of the content item, and the method further comprises: determining a failure to meet a performance threshold associated with receiving the portion of the content item; and sending, to the third intermediate device, a second instruction for the third intermediate device to adjust a performance metric associated with sending of a second portion of the content item to the intermediate device.
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.
Claims 1-8 and 16-23 are rejected under AIA 35 U.S.C. 103(a) as being unpatentable over Delay et al. (US 20080285578), in view of Jing (US 20100232370), in view of Hosain (US 20100135287).
For claims 1 and 16, Delay discloses:
A system/non-transitory CRM comprising: at least one intermediate device; and a computing device configured to: receive, from a user device, a request for a content item; determine, for a delivery of at least a portion of the content item to the user device, a route comprising at least one intermediate device (Delay, see figs. 1-4 and 8, paragraphs 0023-0030 and 0044-0060, system 10 includes a source 12 that is configured to provide data packets corresponding to selected media information content for distribution to one or more clients 14 via a network, the source 12 provides the multimedia program to the router 18 in the form of data packet, each packet includes predetermined content or metadata based on which the router 18 controls routing of the data packet from the router to the clients 14);
Delay fails to teach, send, to the at least one intermediate devices, an instruction for prioritizing buffers during delivery of at least the portion of the content item;
In a similar field of endeavor Jing teaches send, to the at least one intermediate devices, an instruction for prioritizing buffers during delivery of at least the portion of the content item (Jing see paragraphs 0032, 0034, 0036, 0045-0046, flow control agent 214 effectively uses each of the buffers 302, 304, 306 as receive buffers associated with content of a disparate priority level 1-N, management data structure 500 includes at least a destination identifier field 502, a flow control priority field 504 and a number of entries 506 associated with the number of active point-to-point communication links implemented in a network element hub, switch, router, where a single flow control agent 214 supports multiple communication ports, as shown in fig.8 block 802 wherein the network interface receives a control message 600 from a remote network element coupled through a point-to-point Ethernet communication link from source device 06, the control message 600 is routed to a media access controller 206 of the receiving network interface, a flow control agent 214 implemented within the network interface determines whether the control message 600 includes flow control priority information, block 804, flow control agent 214 identifies a priority level field 610 in the received control message 600, flow control agent 214 throttles transmission of an appropriate subset of the total content within the transmission buffer 400, as shown in fig 4, transmission queue 400 is depicted comprising a plurality of entries 402, wherein each entry is associated with a datagram or a stream of content, each of the entries 402 represents a plurality of content having a similar priority level, also the number of transmit and receive queues need not be the same, flow control agent 214 may well implement a number of transmit queues to facilitate precise flow control as enabled by a receiving network element);
It would have been obvious to one of ordinary skill in the art before the effective filling date of the claimed invention to combine the teaching of Delay in view of Jing as doing so would provide an efficient method for priority based flow using an enhanced network interface with a flow control agent receiving and monitoring contents in multiple receiving buffer queue with multiple priority levels into a transmit buffer with prioritize transmission effectively enhancing the perceived performance of the Ethernet network by only allowing high priority data to traverse the link during periods of congestion (Jing see para 0016-0018).
Delay in view of Jing fails to teach, and after sending the instructions, via the route, the delivery of the at least the portion of the content item.
In a similar field of endeavor Hosain teaches and after sending the instructions, via the route, the delivery of the at least the portion of the content item (Hosain see para 0087, 0089, as shown in fig. 3, End-to-End data flow is being setup by QoS-NSLP nodes 30A, 31A, 32A, 32B, 31B, and 30B, which process intra-domain reserve message against available and required resources, if the reservation is successful in each Interior node 32A and 32B, the egress node 31B forwards original reserve to the next domain, Egress node 31B sends a response message directly to the Ingress node 31A with status, user data is sent after response message is received, intranet side a t the left of the edge router 31A uses signaling protocol and builds control data, which has an Internet source IP Address, destination IP Address, session ID, and priority Information, once a core router 32A or 32B receives control message, it decrypts the message and adds the tuple with Internet source IP Address, destination IP Address, session ID, and priority information in the access control list).
It would have been obvious to one of ordinary skill in the art before the effective filling date of the claimed invention to combine the teaching of Delay in view of Jing with the teaching of Hosain as doing so would provide an efficient method for a communication system wherein the priority of the data taking place in various layers of the protocols from source host to the destination host along the edge and core routers, where priority indicator is provided by a signaling protocol and the priority is established before any user data is transmitted between the source and the destination device (Hosain see para 0010, 0011).
For claims 2 and 17, Delay-Jing-Hosain teaches the system/non-transitory CRM of claim 1, wherein the route comprises: a route between the computing device and the user device; or a route between the user device and a content server different from the computing device (Delay, see figs. 1-4 and 8, paragraphs 0023-0030 and 0044-0060, system 10 includes a source 12 that is configured to provide data packets corresponding to selected media information content for distribution to one or more clients 14 via a network);
For claims 3 and 18, Delay-Jing-Hosain teaches the system/non-transitory CRM of claim 1, wherein the at least one intermediate device comprises a plurality of buffer queues, and wherein the instruction instructs the at least one intermediate device to select a buffer queue, of the plurality of buffer queues, that prioritizes the delivery of the at least the portion of the content item over deliveries of other content items (Jing see para 0030, 0031 flow control agent 214 checks administrative information of content received, from coupled network element for one or more of a class-of-service CoS, type-of-service ToS, and/or a quality-of-service QoS indication denoting a priority level, and stores such received content in a buffer commensurate with its identified priority level, flow control agent 214 monitors the capacity of receive buffers of the network interface, and selectively generates and issues control messages to throttle transmission of content from a coupled device, flow control agent 214 monitors the receive buffers of I/O buffers to identify the receive capability of each of the buffers associated with one or more content priority levels).
It would have been obvious to one of ordinary skill in the art before the effective filling date of the claimed invention to combine the teaching of Delay in view of Jing and the motivation to do so would the same as the motivation related to claim 1.
For claims 4 and 19, Delay-Jing-Hosain teaches the system/non-transitory CRM of claim 1, wherein the at least one intermediate device comprises a plurality of buffer queues corresponding to different buffer priority levels, and wherein the instruction: indicates one of the different buffer priority levels; and instructs the at least one intermediate device to select, for buffering the content item, a buffer queue, of the plurality of buffer queues, that corresponds to the one of the different buffer priority levels (Jing see paragraphs 0032, 0045-0046, flow control agent 214 effectively uses each of the buffers 302, 304, 306 as receive buffers to receive content from a remote network device, each of the buffers is associated with content of a disparate priority level, priority level 1 content, priority level 2 content, through priority level N content, as shown in fig.8 the control message 600 is routed to a media access controller 206 of the receiving network interface, a flow control agent 214 implemented within the network interface determines whether the control message 600 includes flow control priority information, block 804, flow control agent 214 identifies a priority level field 610 in the received control message 600, flow control agent 214 throttles transmission of an appropriate subset of the total content within the transmission buffer 400);
It would have been obvious to one of ordinary skill in the art before the effective filling date of the claimed invention to combine the teaching of Delay in view of Jing and the motivation to do so would the same as the motivation related to claim 1.
For claims 5 and 20, Delay-Jing-Hosain teaches the system/non-transitory CRM of claim 1, wherein the instruction is based on: a media type of the content item; or a file type extension of the content item (Jing see para 0030, 0031 flow control agent 214 checks administrative information of content received, from coupled network element for one or more of a class-of-service CoS, type-of-service ToS, and/or a quality-of-service QoS indication denoting a priority level, and stores such received content in a buffer commensurate with its identified priority level, flow control agent 214 monitors the capacity of receive buffers of the network interface, and selectively generates and issues control messages to throttle transmission of content from a coupled device, flow control agent 214 monitors the receive buffers of I/O buffers to identify the receive capability of each of the buffers associated with one or more content priority levels).
It would have been obvious to one of ordinary skill in the art before the effective filling date of the claimed invention to combine the teaching of Delay in view of Jing and the motivation to do so would the same as the motivation related to claim 1.
For claims 6 and 21, Delay-Jing-Hosain teaches the system/non-transitory CRM of claim 1, wherein the instruction is based on: a performance metric associated with the delivery of the at least the portion of the content item; a maximum allowed packet loss rate during the delivery of the at least the portion of the content item; or a transport protocol associated with the delivery of the at least the portion of the content item (Jing see para 0030, 0031 flow control agent 214 checks administrative information of content received, from coupled network element for one or more of a class-of-service CoS, type-of-service ToS, and/or a quality-of-service QoS indication denoting a priority level, and stores such received content in a buffer commensurate with its identified priority level, flow control agent 214 monitors the capacity of receive buffers of the network interface, and selectively generates and issues control messages to throttle transmission of content from a coupled device).
It would have been obvious to one of ordinary skill in the art before the effective filling date of the claimed invention to combine the teaching of Delay in view of Jing and the motivation to do so would the same as the motivation related to claim 1.
For claims 7 and 22, Delay-Jing-Hosain teaches the system of claim 1, wherein the instruction is based on a minimum delay between the at least one intermediate device and another intermediate device in the route (Jing see para 0030, 0031).
For claims 8 and 23, Delay-Jing-Hosain teaches the system/non-transitory CRM of claim 1, wherein the computing device is configured to: determine a failure to meet a performance threshold associated with the delivery of the at least the portion of the content item; and send, based on the determined failure and to the at least one intermediate device, a second instruction for the at least one intermediate device to adjust a performance metric associated with delivery of other portions of the content item (Jing see para 0043, 0044 in block 704 if the threshold of a buffer is reached in block 708 wherein the flow control agent 214 identifies which of the receive buffers 302, 304, 306 has reached the threshold 308, and generates a control message 600 denoting the priority level 610 above or below which is oversubscribed, block 710 the priority level denotes the level at and below which the flow control agent 214 is suspending transmission, or the flow control priority level denoted in field 610 of a control message 600 may well denote a content priority level above which is oversubscribed, suspending transmission of content at and above the level denoted in the control message 600. block 712 flow control agent 214 issues the control message 600 to other network devices, flow control agent 214 transmits the generated control message 600 denoting a flow control priority level 610 to a network element coupled through the point-to-point Ethernet communication link).
It would have been obvious to one of ordinary skill in the art before the effective filling date of the claimed invention to combine the teaching of Delay in view of Jing and the motivation to do so would the same as the motivation related to claim 1.
Claims 9-15 and 24-30 are rejected under AIA 35 U.S.C. 103(a) as being unpatentable over Delay (US 20080285578), in view of Jing (US 20100232370).
For claims 9 and 24, Delay teaches a system/non-transitory CRM comprising a first intermediate device of a plurality of intermediate devices of a path between a content source and a user device; and a second intermediate device of the plurality of intermediate devices, wherein the first intermediate device is configured to: receive, prior to receiving a content item, an instruction to prioritize a delivery of the content item to the user device (Delay, see figs. 1-4 and 8, paragraphs 0023-0030 and 0044-0060, system 10 includes a source 12 that is configured to provide data packets corresponding to selected media information content for distribution to one or more clients 14 via a network, the source 12 provides the multimedia program to the router 18 in the form of data packet, each packet includes predetermined content or metadata based on which the router 18 controls routing of the data packet from the router to the clients 14, each program available to the client as any number of one or more of the pre-assigned categories, the predetermined content in the respective packets is known, the routing and prioritization is determined based on analyzing the content in the packets);
Delay fails to teach select, based on the instruction and from a plurality of buffer queues associated with the intermediate device, a buffer queue; receive a portion of the content item; store the portion of the content item in the selected buffer queue; and send, from the selected buffer queue and to the second intermediate device, the stored portion of the content item.
In a similar field of endeavor Jing teaches select, based on the instruction and from a plurality of buffer queues associated with the intermediate device, a buffer queue (Jing see paragraphs 0032, 0034, 0036, 0045-0046, flow control agent 214 effectively uses each of the buffers 302, 304, 306 as receive buffers associated with content of a disparate priority level 1-N, management data structure 500 includes at least a destination identifier field 502, a flow control priority field 504 and a number of entries 506 associated with the number of active point-to-point communication links implemented in a network element hub, switch, router, where a single flow control agent 214 supports multiple communication ports);
receive a portion of the content item (Jing see para 0042 in block 704, that the buffer load has not exceeded a threshold 308, network interface allows continue content to be received from the remote network device, as flow control agent 214 continues to monitor the receive capacity associated with each of the priority levels until a threshold in one of the buffers is reached);
and sending, from the selected buffer queue and to another intermediate device of the path, the stored portion of the content item (Jing see para 0032, 0034, 0036, 0045-0046, as shown in fig.8 block 802 wherein the network interface receives a control message 600 from a remote network element coupled through a point-to-point Ethernet communication link from source device 06, the control message 600 is routed to a media access controller 206 of the receiving network interface, a flow control agent 214 implemented within the network interface determines whether the control message 600 includes flow control priority information, block 804, flow control agent 214 identifies a priority level field 610 in the received control message 600, flow control agent 214 throttles transmission of an appropriate subset of the total content within the transmission buffer 400, as shown in fig 4, transmission queue 400 is depicted comprising a plurality of entries 402, wherein each entry is associated with a datagram or a stream of content, each of the entries 402 represents a plurality of content having a similar priority level, also the number of transmit and receive queues need not be the same, flow control agent 214 may well implement a number of transmit queues to facilitate precise flow control as enabled by a receiving network element);
It would have been obvious to one of ordinary skill in the art before the effective filling date of the claimed invention to combine the teaching of Delay in view of Jing as doing so would provide an efficient method for priority based flow using an enhanced network interface with a flow control agent receiving and monitoring contents in multiple receiving buffer queue with multiple priority levels into a transmit buffer with prioritize transmission effectively enhancing the perceived performance of the Ethernet network by only allowing high priority data to traverse the link during periods of congestion (Jing see para 0016-0018).
For claims 10 and 25, Delay-Jing discloses the system/non-transitory CRM of claim 9, wherein the first intermediate device is configured to select the buffer queue by selecting a buffer queue that prioritizes a delivery of the portion of the content item over deliveries of other content items (Jing see para 0030, 0031 flow control agent 214 checks administrative information of content received, from coupled network element for one or more of a class-of-service CoS, type-of-service ToS, and/or a quality-of-service QoS indication denoting a priority level, and stores such received content in a buffer commensurate with its identified priority level, flow control agent 214 monitors the capacity of receive buffers of the network interface, and selectively generates and issues control messages to throttle transmission of content from a coupled device, flow control agent 214 monitors the receive buffers of I/O buffers to identify the receive capability of each of the buffers associated with one or more content priority levels).
It would have been obvious to one of ordinary skill in the art before the effective filling date of the claimed invention to combine the teaching of Delay in view of Jing and the motivation to do so would the same as the motivation related to claim 9.
For claims 11 and 26, Delay-Jing discloses the system/non-transitory CRM of claim 9, wherein the plurality of buffer queues correspond to different buffer priority levels, wherein the instruction indicates one of the different buffer priority levels, and wherein selecting the buffer queue comprises selecting a buffer queue that corresponds to the indicated one of the different buffer priority levels(Jing see paragraphs 0032, 0045-0046, flow control agent 214 effectively uses each of the buffers 302, 304, 306 as receive buffers to receive content from a remote network device, each of the buffers is associated with content of a disparate priority level, priority level 1 content, priority level 2 content, through priority level N content, as shown in fig.8 the control message 600 is routed to a media access controller 206 of the receiving network interface, a flow control agent 214 implemented within the network interface determines whether the control message 600 includes flow control priority information, block 804, flow control agent 214 identifies a priority level field 610 in the received control message 600, flow control agent 214 throttles transmission of an appropriate subset of the total content within the transmission buffer 400),
It would have been obvious to one of ordinary skill in the art before the effective filling date of the claimed invention to combine the teaching of Delay in view of Jing and the motivation to do so would the same as the motivation related to claim 9.
For claims 12 and 27, Delay-Jing discloses the system/non-transitory CRM of claim 9, wherein the instruction is based on: a media type of the content item; or a file type extension of the content item (Jing see para 0030, 0031 flow control agent 214 checks administrative information of content received, from coupled network element for one or more of a class-of-service CoS, type-of-service ToS, and/or a quality-of-service QoS indication denoting a priority level, and stores such received content in a buffer commensurate with its identified priority level, flow control agent 214 monitors the capacity of receive buffers of the network interface, and selectively generates and issues control messages to throttle transmission of content from a coupled device, flow control agent 214 monitors the receive buffers of I/O buffers to identify the receive capability of each of the buffers associated with one or more content priority levels).
It would have been obvious to one of ordinary skill in the art before the effective filling date of the claimed invention to combine the teaching of Delay in view of Jing and the motivation to do so would the same as the motivation related to claim 9.
For claims 13 and 28, Delay-Jing discloses the system/non-transitory CRM of claim 9, wherein the instruction is based on: at least one performance metric associated with the delivery of the content item; a maximum allowed packet loss rate during the delivery of the content item; a transport protocol associated with the delivery of the content item; a minimum delay between the intermediate device receiving a second portion of the content item and the intermediate device sending the second portion of the content item to the another intermediate device or the user device; or a minimum delay between the intermediate device receiving other content items and the intermediate device sending the other content items to the another intermediate device or the user device(Jing see para 0030, 0031 flow control agent 214 checks administrative information of content received, from coupled network element for one or more of a class-of-service CoS, type-of-service ToS, and/or a quality-of-service QoS indication denoting a priority level, and stores such received content in a buffer commensurate with its identified priority level, flow control agent 214 monitors the capacity of receive buffers of the network interface, and selectively generates and issues control messages to throttle transmission of content from a coupled device, flow control agent 214 monitors the receive buffers of I/O buffers to identify the receive capability of each of the buffers associated with one or more content priority levels).
It would have been obvious to one of ordinary skill in the art before the effective filling date of the claimed invention to combine the teaching of Delay in view of Jing and the motivation to do so would the same as the motivation related to claim 9.
For claims 14 and 29, Delay-Jing discloses the system/non-transitory CRM of claim 9, wherein the first intermediate device is configured to: wherein receive the instruction comprises receiving, from a computing device, the instruction, determine a failure to meet a performance threshold associated with sending the stored portion of the content item; and send, to the computing device, a message indicating the failure Jing see para 0043, 0044 in block 704 if the threshold of a buffer is reached in block 708 wherein the flow control agent 214 identifies which of the receive buffers 302, 304, 306 has reached the threshold 308, and generates a control message 600 denoting the priority level 610 above or below which is oversubscribed, block 710 the priority level denotes the level at and below which the flow control agent 214 is suspending transmission, or the flow control priority level denoted in field 610 of a control message 600 may well denote a content priority level above which is oversubscribed, suspending transmission of content at and above the level denoted in the control message 600. block 712 flow control agent 214 issues the control message 600 to other network devices, flow control agent 214 transmits the generated control message 600 denoting a flow control priority level 610 to a network element coupled through the point-to-point Ethernet communication link).
It would have been obvious to one of ordinary skill in the art before the effective filling date of the claimed invention to combine the teaching of Delay in view of Jing and the motivation to do so would the same as the motivation related to claim 9.
For claims 15 and 30, Delay-Jing discloses the system/non-transitory CRM of claim 9, wherein the first intermediate device is configured to: receive the portion of the content item from a third intermediate device of the plurality of intermediate devices, determine a failure to meet a performance threshold associated with receiving the portion of the content item; and send, to the third intermediate device, a second instruction for the third intermediate device to adjust a performance metric associated with sending of a second portion of the content item to the intermediate device (Jing, see para 0043, 0044, block 710. In the priority level denotes the level at and below which the flow control agent 214 is suspending transmission or the flow control priority level denoted in field 610 of a control message 600 may well denote a content priority level above which is oversubscribed, suspending transmission of content at and above the level denoted in the control message 600, at block 712 flow control agent 214 issues the control message 600 to other network devices, flow control agent 214 transmits the generated control message 600 denoting a flow control priority level 610 to a network element coupled through the point-to-point Ethernet communication link in both direct ion uplink and downlink, once the control message 600 has been issued, flow control agent 214 monitors the capacity of buffers associated with a priority level denoted in the generated control message 600 and issues a revised control command when the buffer associated with the priority level becomes available falls below the threshold 308, block 714)
It would have been obvious to one of ordinary skill in the art before the effective filling date of the claimed invention to combine the teaching of Delay in view of Jing and the motivation to do so would the same as the motivation related to claim 9.
Conclusion
THIS ACTION IS MADE FINAL. Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to CLAYTON R WILLIAMS whose telephone number is (571)270-3801. The examiner can normally be reached M-F 10:00am - 6:00pm.
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, Nicholas Taylor can be reached at 571-272-3889. 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.
/CLAYTON R WILLIAMS/Primary Examiner, Art Unit 2443