Prosecution Insights
Last updated: July 17, 2026
Application No. 18/658,486

Parallel Data Encoding and Decoding

Final Rejection §102§103§112
Filed
May 08, 2024
Priority
May 08, 2023 — provisional 63/464,885
Examiner
ALSHACK, OSMAN M
Art Unit
2112
Tech Center
2100 — Computer Architecture & Software
Assignee
Aps Technology 1 LLC
OA Round
2 (Final)
86%
Grant Probability
Favorable
3-4
OA Rounds
1m
Est. Remaining
99%
With Interview

Examiner Intelligence

Grants 86% — above average
86%
Career Allowance Rate
453 granted / 525 resolved
+31.3% vs TC avg
Moderate +14% lift
Without
With
+14.3%
Interview Lift
resolved cases with interview
Typical timeline
2y 4m
Avg Prosecution
34 currently pending
Career history
557
Total Applications
across all art units

Statute-Specific Performance

§101
8.4%
-31.6% vs TC avg
§103
74.2%
+34.2% vs TC avg
§102
4.2%
-35.8% vs TC avg
§112
6.3%
-33.7% vs TC avg
Black line = Tech Center average estimate • Based on career data from 525 resolved cases

Office Action

§102 §103 §112
DETAILED ACTION Notice of Pre-AIA or AIA Status 1. The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA . Status of Claims 2. Claims 1-21 are presented for examination. Drawings 3. The correction drawing of Fig. 2 that received on 04/21/2026 are acceptable for examination purposes. Therefore, the objection is withdrawn. Claim Rejections - 35 USC § 112 4. The rejection of claims 5 and 13 under 35 U.S.C. § 112, first paragraph, is withdrawn in view of applicant's amendments/remarks. Claim Rejections - 35 USC § 112 5. The rejection of claims 1-21 under 35 U.S.C. § 112, second paragraph, is withdrawn in view of applicant's amendments/remarks. Response to Arguments 6. Applicant’s argument filed on 04/21/2026 with respect claims 1-21 have been fully considered but they are not persuasive. For Claim Rejections - 35 USC § 103: The applicant contends that the office action fails to teach or suggest the limitation of " decoding, at the decoding service, the first plurality of encoded data packets using the first service decoder and the second plurality of encoded data packets using the second service decoder." Examiner respectfully disagrees and asserts that Medard et al. (US 2014/0269505 A1) in paragraphs [0044], [0045], [0088], and [0089] and Fig. 5 teaches the such limitation. For example, In accordance with a still another aspect of the concepts, systems, circuits, and techniques described herein, a method for use in providing reliable data transfer in a wireless network comprises: receiving coded segments from a remote wireless node, each coded segment being associated with a specific coding thread and being coded with a random linear network code (RLNC); reading thread identifiers within the received coded segments and directing the coded segments to corresponding decoder worker threads based thereon, each decoder worker thread having a corresponding encoder worker thread associated with the remote wireless node; and using the coded segments within the corresponding decoder worker threads to recover original data elements. See paragraph [0044]. In one embodiment, the method further comprises: receiving uncoded segments from the remote wireless node, each uncoded segment being associated with a specific coding thread; and reading thread identifiers within the received uncoded segments and directing the uncoded segments to corresponding decoder worker threads based thereon; wherein using the coded segments within the corresponding decoder worker threads to recover original data elements includes using the coded segments as redundant information to the uncoded segments within the decoder worker threads to recover the original data elements using systematic RLNC. See paragraph [0045]. FIGS. 4 and 5 are block diagrams illustrating an encoder process 100 and a decoder process 200, respectively, in accordance with an embodiment. The encoder process 100 may be used, for example, within a source node (or relay node) and the decoder process 200 may be used within a corresponding destination node during a data transfer operation. As shown in FIG. 4, the encoder process 100 may include an encoder master thread 102 and a plurality of encoder worker threads 104a, . . . ,104n. Likewise, with reference to FIG. 5, the decoder process 200 may include a decoder master thread 202 and a plurality of decoder worker threads 204a, . . . ,204n. Each of the encoder worker threads 104a, . . . ,104n in the source node may correspond to one of the decoder worker threads 204a, . . . ,204n in the destination node. Each encoder-decoder thread pair may operate independently from the other pairs and may be identified by a unique thread ID (TID). In some implementations, different worker threads being executed within a node may be processed concurrently within different processors or processor cores associated with the node. In other implementations, multiple worker threads may be executed within a single processor in a node using, for example, time division multiplexing or a similar technique. In still other embodiments, multiple processor cores that each execute multiple worker threads may be used within a node. See paragraph [0088].The encoder master thread 102 load-balances the encoder worker threads 104a, . . . ,104n by distributing incoming data elements, packets in this embodiment, to the threads 104a, . . . ,104n in a predetermined manner. In at least one embodiment, the master thread 102 distributes the packets in a round-robin fashion, although other techniques may alternatively be used. The encoder worker threads 104a, . . . ,104n may apply network coding to packets distributed to them to generate coded packets. As will be described in greater detail, the unique thread ID associated with each coded packet may be inserted into the coded packet before it is transmitted to the destination node. At the destination node, the decoder master thread 202 directs each incoming coded IP packet to a corresponding decoder worker thread 204a, . . . , 204n according to its TID. The decoder worker thread may then process the packets it receives to recover the original data packets. The original data packets may then be delivered to the appropriate application. See paragraph [0089]. For the Applicant’s convenience, see Fig. 5 is reproduced below. PNG media_image1.png 289 485 media_image1.png Greyscale As been described above, it’s clear that the decoder worker threads 204a, . . . 204n are operate independently by decoding the first plurality of encoded data packets 104a using the decoder worker thread 204a, and the second plurality of encoded data packets 104b using the second decoder worker thread. 204b, and so on. Emphasis added.” For Claim Rejections - 35 USC § 112: The applicant contends that the claims 6 and 14 do not include a Markush grouping but is a listing of three alternatives with an “or” statement. Applicant requests that the rejection be withdrawn. The Examiner respectfully disagrees and asserts that claims 6 and 14 include a Markush grouping since the claims recite a list of alternatively useable species. A "Markush" claim recites a list of alternatively useable members. In re Harnisch, 631 F.2d 716, 719-20, 206 USPQ 300, 302-304 (CCPA 1980); Ex parte Markush, 1925 Dec. Comm'r Pat. 126, 127 (1924). The listing of specified alternatives within a Markush claim is referred to as a Markush group or Markush grouping. Abbott Labs v. Baxter Pharmaceutical Products, Inc., 334 F.3d 1274, 1280-81, 67 USPQ2d 1191, 1196-97 (Fed. Cir. 2003) (citing to several sources that describe Markush groups). Claim language defined by a Markush grouping requires selection from a closed group "consisting of" the alternative members. Id. at 1280, 67 USPQ2d at 1196. See also Amgen Inc. v. Amneal Pharmaceuticals LLC, 945 F.3d 1368, 1376-78, 2020 USPQ2d 3197 (Fed. Cir. 2020) (stating that there is a strong presumption that a claim element set off with "consisting of" is closed to unrecited elements.) See MPEP § 2117. Claim Rejections - 35 USC § 112 The following is a quotation of 35 U.S.C. 112(b): (b) CONCLUSION. The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention. The following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph: The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention. 7. Claims 6 and 14 are rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor, or for pre-AIA the applicant regards as the invention. In regards to claim 6, the claim recites the limitation of "wherein the first plurality of encoded data packets, the second plurality of encoded data packets, or both comprise data fields representing at least one of: a total number of symbols, a symbol size, a sequence number, or a combination thereof." This feature is a "Markush group" because the claim recites a list of alternatively useable species, and it is improper to use the term "comprise" instead of "consisting of.” See MPEP 2117. (Emphasis added). Please clarify. Dependent claim 14 recites similar limitations of claim 6. Therefore, is rejected for the same reason of claim 6. 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 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) (1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention. 8. Claims 1, 2, and 4-19, and 21 are rejected under 35 U.S.C. 102(a) (1) as being anticipated by Medard et al. (US 2014/0269505 A1) "herein after as Medard." As per claim 1: Medard teaches or discloses a computer implemented method, comprising (see abstract, paragraph [0007], herein systems, circuits, and techniques described herein, a method for use in providing reliable data transfer in a wireless network comprises, and Figs. 2, 4&5): receiving, at a decoding service over a packet network, a first data block contained in a first plurality of encoded data packets and a second data block contained in a second plurality of encoded data packets (see paragraph [0092], herein obtaining data elements associated with a data transfer operation between a first node and a remote second node; distributing the data elements among a plurality of encoder worker threads; and employing random linear network coding (RLNC) in the encoder worker threads to generate, for corresponding data elements, coded segments for transmission from the first node to the second node, and paragraph [0089], herein the decoder master thread 202 directs each incoming coded IP packet to a corresponding decoder worker thread 204a, . . . , 204n according to its TID. The decoder worker thread may then process the packets it receives to recover the original data packets. The original data packets may then be delivered to the appropriate application, paragraph [0092], herein After coded segments have been generated, the coded segments may be encapsulated (312) by adding NC headers to form coded IP packets, and Figs. 4, 5, & 6), and Figs. 2, 4, 5, & 6); analyzing, at the decoding service, the first plurality of encoded data packets to identify a first encoder-decoder pair identifier block (see paragraph [0044], herein receiving coded segments from a remote wireless node, each coded segment being associated with a specific coding thread and being coded with a random linear network code (RLNC); reading thread identifiers within the received coded segments and directing the coded segments to corresponding decoder worker threads based thereon, each decoder worker thread having a corresponding encoder worker thread associated with the remote wireless node), wherein the first encoder-decoder pair identifier matches a first client encoder with a first service decoder for the first data block (see paragraph [0088], herein the decoder process 200 may include a decoder master thread 202 and a plurality of decoder worker threads 204a, . . . , 204n. Each of the encoder worker threads 104a, . . . , 104n in the source node may correspond to one of the decoder worker threads 204a, . . . , 204n in the destination node. Each encoder-decoder thread pair may operate independently from the other pairs and may be identified by a unique thread ID (TID), and Fig. 5); analyzing, at the service, the second plurality of encoded data packets to identify a second encoder-decoder pair identifier (see paragraph [0044], herein receiving coded segments from a remote wireless node, each coded segment being associated with a specific coding thread and being coded with a random linear network code (RLNC); reading thread identifiers within the received coded segments and directing the coded segments to corresponding decoder worker threads based thereon, each decoder worker thread having a corresponding encoder worker thread associated with the remote wireless node), wherein the second encoder-decoder pair identifier matches a second client encoder with a second service decoder for the second data block (see paragraph [0088], herein the decoder process 200 may include a decoder master thread 202 and a plurality of decoder worker threads 204a, . . . , 204n. Each of the encoder worker threads 104a, . . . , 104n in the source node may correspond to one of the decoder worker threads 204a, . . . , 204n in the destination node. Each encoder-decoder thread pair may operate independently from the other pairs and may be identified by a unique thread ID (TID), and Fig. 5); and decoding, at the decoding service, the first plurality of encoded data packets using the first service decoder and the second plurality of encoded data packets using the second service decoder (see paragraph [0044], herein using the coded segments within the corresponding decoder worker threads to recover original data elements, paragraph [0089], herein he decoder master thread 202 directs each incoming coded IP packet to a corresponding decoder worker thread 204a, . . . , 204n according to its TID. The decoder worker thread may then process the packets it receives to recover the original data packets. The original data packets may then be delivered to the appropriate application, and Fig. 5). PNG media_image2.png 646 494 media_image2.png Greyscale As per claim 2: Medard teaches or discloses that decoding, at the decoding service, the first plurality of encoded data packets using the first service decoder in a first time window and the second plurality of encoded data packets using the second service decoder in a second time window (see paragraph [0088], herein decoder process 200 may include a decoder master thread 202 and a plurality of decoder worker threads 204a, . . . , 204n. Each of the encoder worker threads 104a, . . . , 104n in the source node may correspond to one of the decoder worker threads 204a, . . . , 204n in the destination node. Each encoder-decoder thread pair may operate independently from the other pairs and may be identified by a unique thread ID (TID). In some implementations, different worker threads being executed within a node may be processed concurrently within different processors or processor cores associated with the node. In other implementations, multiple worker threads may be executed within a single processor in a node using, for example, time division multiplexing or a similar technique). As per claim 4: Medard teaches or discloses that sending, from the first service decoder to the first client encoder, a first acknowledge message indicating total received symbols for the first plurality of encoded data packets; and sending, from the second service decoder to the second client encoder, a second acknowledge message indicating total received symbols for the second plurality of encoded data packets (see paragraph [0016], herein employing random linear network coding further includes repeating generating and linearly combining to generate other coded segments in the first encoder worker thread until a predetermined number of coded segments has been generated or an acknowledgement message has been received from a corresponding processing thread in the second node, and paragraph [0048]). As per claim 5: Medard teaches or discloses that waiting, on a communications channel at the decoding service, for a third plurality of encoded data packets over the packet network when total sent symbols for the first plurality of encoded data packets has not been received, wherein the third plurality of encoded data packets is associated with the first data block; or waiting, on the communications channel at the decoding service, for a fourth plurality of encoded data packets over the packet network when total sent symbols for the second plurality of encoded data packets has not been received, wherein the fourth plurality of encoded data packets is associated with the second data block (see paragraph [0108], herein a transmitter will determine whether to retransmit information based on whether or not an acknowledgement (ACK) message or a negative acknowledgement (NACK) message is received in response to a transmission. Using the ARQ mechanism, block retransmissions are processed independently, and paragraph [0111]). As per claim 6: Medard teaches or discloses that wherein the first plurality of encoded data packets, the second plurality of encoded data packets, or both comprise data fields representing at least one of: a total number of symbols, a symbol size, a sequence number, or a combination thereof (see paragraph [0097], herein coded segments generated in a source node may be encapsulated into coded IP packets before transmission. During the encapsulation procedure, an NC header is added to the coded segment. FIG. 7 is a diagram illustrating an NC header format 400 that may be used in accordance with an embodiment. As shown, the NC header format 400 may include: an IP header field 402, a thread ID (TID) field 404, a block ID (BID) field 406, a segment ID (SID) field 408, a filed 412 for the number N.sub.s of segments in the coding block, and a coding coefficients field 414, and Fig. 7). As per claim 7: Medard teaches or discloses that decoding the first plurality of encoded data packets and the second plurality of encoded data packets using random linear network coding (RLNC) (see paragraph [0045], herein using the coded segments within the corresponding decoder worker threads to recover original data elements includes using the coded segments as redundant information to the uncoded segments within the decoder worker threads to recover the original data elements using systematic RLNC., and paragraph [0071], herein utilize systematic intra-session random linear network coding (RLNC) as a packet erasure code to support fast and reliable information transfer between wireless nodes. The systematic RLNC coding and decoding may be performed within, for example, a number of coding/decoding threads that span the channel between a transmitter and a receiver). As per claim 8: Medard teaches or discloses that encapsulating the first plurality of encoded data packets and the second plurality of encoded data packets as UDP packets to be sent over the packet network from a client (see paragraph [0092], herein After coded segments have been generated, the coded segments may be encapsulated (312) by adding NC headers to form coded IP packets); decapsulating the first plurality of encoded data packets and the second plurality of encoded data packets as UDP packets received over the packet network (see paragraph [0100], herein the decoding process used at a decoder worker thread is essentially a reverse of the encoding process used in the corresponding encoder worker thread (see, e.g., FIG. 6). First, de-capsulation may be performed to strip the NC header from a received coded segment). As per claim 9: Medard teaches or discloses that releasing the first service decoder when the first data block has been decoded and the second service decoder when the second data block has been decoded (see paragraph [0085], herein at the destination node, a netfilter may intercept the incoming coded IP packets handed from WiMAX to the OS and deliver them to a corresponding network coding module in user space. The network coding module of the destination node may then send decoded packets (or original data packets) to the corresponding OS, which forwards the packets to the destination application). As per claim 10: Medard teaches or discloses a system for enhancing communications between a client and a decoding service in a network, comprising (see abstract, paragraph [0007], herein systems, circuits, and techniques described herein, a method for use in providing reliable data transfer in a wireless network comprises, and Figs. 4&5): at least one processor (see Fig. 2, processor(s) 52); and a memory device (see Fig. 2, Memory 54) including instructions that, when executed by the at least one processor, cause the system to (see paragraph [0081], herein Memory 54 may include any type of system, device, or component, or combination thereof, that is capable of storing digital information (e.g., digital data, computer executable instructions and/or programs, etc.) for access by a processing device or other component): receive, at the decoding service from a client over a packet network, a first data block contained in a first plurality of encoded data packets and a second data block contained in a second plurality of encoded data packets (see paragraph [0007], herein obtaining data elements associated with a data transfer operation between a first node and a remote second node; distributing the data elements among a plurality of encoder worker threads; and employing random linear network coding (RLNC) in the encoder worker threads to generate, for corresponding data elements, coded segments for transmission from the first node to the second node, and paragraph [0089], herein the decoder master thread 202 directs each incoming coded IP packet to a corresponding decoder worker thread 204a, . . . , 204n according to its TID. The decoder worker thread may then process the packets it receives to recover the original data packets. The original data packets may then be delivered to the appropriate application, paragraph [0092], herein After coded segments have been generated, the coded segments may be encapsulated (312) by adding NC headers to form coded IP packets, paragraphs [0034], [0097], and Figs. 4, 5, & 7); analyze, at the decoding service, the first and second plurality of encoded data packets to identify a first data block number that matches a first client encoder with a first service decoder for the first data block and a second data block number that matches a second client encoder with a second service decoder for the second data block (see paragraph [0044], herein receiving coded segments from a remote wireless node, each coded segment being associated with a specific coding thread and being coded with a random linear network code (RLNC); reading thread identifiers within the received coded segments and directing the coded segments to corresponding decoder worker threads based thereon, each decoder worker thread having a corresponding encoder worker thread associated with the remote wireless node, and paragraph [0088], herein the decoder process 200 may include a decoder master thread 202 and a plurality of decoder worker threads 204a, . . . , 204n. Each of the encoder worker threads 104a, . . . , 104n in the source node may correspond to one of the decoder worker threads 204a, . . . , 204n in the destination node. Each encoder-decoder thread pair may operate independently from the other pairs and may be identified by a unique thread ID (TID), and Fig. 5); decode, at the decoding service, the first plurality of encoded data packets using the first service decoder; and decode, at the service, the second plurality of encoded data packets using the second service decoder (see paragraph [0044], herein using the coded segments within the corresponding decoder worker threads to recover original data elements, paragraph [0089], herein he decoder master thread 202 directs each incoming coded IP packet to a corresponding decoder worker thread 204a, . . . , 204n according to its TID. The decoder worker thread may then process the packets it receives to recover the original data packets. The original data packets may then be delivered to the appropriate application, and Fig. 5). PNG media_image2.png 646 494 media_image2.png Greyscale As per claim 11: Medard teaches or discloses that when executed by the at least one processor, cause the system to: decode the first plurality of encoded data packets using the first service decoder in a first time window; and decode, at the decoding service, the second plurality of encoded data packets using the second service decoder in a second time window, wherein the first time window overlaps with the second time window (see paragraph [0088], herein decoder process 200 may include a decoder master thread 202 and a plurality of decoder worker threads 204a, . . . , 204n. Each of the encoder worker threads 104a, . . . , 104n in the source node may correspond to one of the decoder worker threads 204a, . . . , 204n in the destination node. Each encoder-decoder thread pair may operate independently from the other pairs and may be identified by a unique thread ID (TID). In some implementations, different worker threads being executed within a node may be processed concurrently within different processors or processor cores associated with the node. In other implementations, multiple worker threads may be executed within a single processor in a node using, for example, time division multiplexing or a similar technique). As per claim 12: Medard teaches or discloses that when executed by the at least one processor, cause the system to: send, from the first service decoder to the first client encoder, a first acknowledge message indicating total received symbols for the first plurality of encoded data packets; and send, from the second service decoder to the second client encoder, a second acknowledge message indicating total received symbols for the second plurality of encoded data packets (see paragraph [0016], herein employing random linear network coding further includes repeating generating and linearly combining to generate other coded segments in the first encoder worker thread until a predetermined number of coded segments has been generated or an acknowledgement message has been received from a corresponding processing thread in the second node, and paragraph [0048]). As per claim 13: Medard teaches or discloses that when executed by the at least one processor, cause the system to: wait, on a communications channel at the decoding service, for a third plurality of encoded data packets over the packet network when total sent symbols for the first plurality of encoded data packets has not been received, wherein the third plurality of encoded data packets is associated with the first data block; or wait, on the communications channel at the decoding service, for a fourth plurality of encoded data packets over the packet network when total sent symbols for the second plurality of encoded data packets has not been received, wherein the fourth plurality of encoded data packets is associated with the second data block (see paragraph [0108], herein a transmitter will determine whether to retransmit information based on whether or not an acknowledgement (ACK) message or a negative acknowledgement (NACK) message is received in response to a transmission. Using the ARQ mechanism, block retransmissions are processed independently, and paragraph [0111]). As per claim 14: Medard teaches or discloses that wherein the first plurality of encoded data packets, the second plurality of encoded data packets, or both comprise fields representing at least one of a total number of symbols, a symbol size, a sequence number, or a combination thereof (see paragraph [0097], herein coded segments generated in a source node may be encapsulated into coded IP packets before transmission. During the encapsulation procedure, an NC header is added to the coded segment. FIG. 7 is a diagram illustrating an NC header format 400 that may be used in accordance with an embodiment. As shown, the NC header format 400 may include: an IP header field 402, a thread ID (TID) field 404, a block ID (BID) field 406, a segment ID (SID) field 408, a filed 412 for the number N.sub.s of segments in the coding block, and a coding coefficients field 414, and Fig. 7). As per claim 15: Medard teaches or discloses that when executed by the at least one processor, cause the system to decode the first plurality of encoded data packets and the second plurality of encoded data packets using random linear network coding (RLNC) (see paragraph [0045], herein using the coded segments within the corresponding decoder worker threads to recover original data elements includes using the coded segments as redundant information to the uncoded segments within the decoder worker threads to recover the original data elements using systematic RLNC., and paragraph [0071], herein utilize systematic intra-session random linear network coding (RLNC) as a packet erasure code to support fast and reliable information transfer between wireless nodes. The systematic RLNC coding and decoding may be performed within, for example, a number of coding/decoding threads that span the channel between a transmitter and a receiver). As per claim 16: Medard teaches or discloses that when executed by the at least one processor, cause the system to decapsulate the first plurality of encoded data packets and the second plurality of encoded data packets as first user datagram protocol (UDP) packets received over the packet network (see paragraph [0100], herein the decoding process used at a decoder worker thread is essentially a reverse of the encoding process used in the corresponding encoder worker thread (see, e.g., FIG. 6). First, de-capsulation may be performed to strip the NC header from a received coded segment). As per claim 17: Medard teaches or discloses that when executed by the at least one processor, cause the system to release the first service decoder when the first data block has been decoded and the second service decoder when the second data block has been decoded (see paragraph [0085], herein at the destination node, a netfilter may intercept the incoming coded IP packets handed from WiMAX to the OS and deliver them to a corresponding network coding module in user space. The network coding module of the destination node may then send decoded packets (or original data packets) to the corresponding OS, which forwards the packets to the destination application). As per claim 18: Kamath substantially teaches or discloses a computer implemented method, comprising (see abstract, paragraph [0007], herein systems, circuits, and techniques described herein, a method for use in providing reliable data transfer in a wireless network comprises, and Figs. 4&5) receiving, at a client from an encoder service over a packet network, a first data block contained in a first plurality of encoded data packets and a second data block contained in a second plurality of encoded data packets (see paragraph [0092], herein obtaining data elements associated with a data transfer operation between a first node and a remote second node; distributing the data elements among a plurality of encoder worker threads; and employing random linear network coding (RLNC) in the encoder worker threads to generate, for corresponding data elements, coded segments for transmission from the first node to the second node, and paragraph [0089], herein the decoder master thread 202 directs each incoming coded IP packet to a corresponding decoder worker thread 204a, . . . , 204n according to its TID. The decoder worker thread may then process the packets it receives to recover the original data packets. The original data packets may then be delivered to the appropriate application, paragraph [0034], herein the one or more processors are configured to: (a) cause encoded segments to be generated in at least one of the encoder worker threads for corresponding data elements; and transmit the coded and encoded segments to the destination node via the transceiver to implement systematic RLNC, paragraph [0092], herein After coded segments have been generated, the coded segments may be encapsulated (312) by adding NC headers to form coded IP packets, and Figs. 4, 5, & 6); analyzing, at the client, the first plurality of encoded data packets to identify a first encoder-decoder pair identifier (see paragraph [0044], herein receiving coded segments from a remote wireless node, each coded segment being associated with a specific coding thread and being coded with a random linear network code (RLNC); reading thread identifiers within the received coded segments and directing the coded segments to corresponding decoder worker threads based thereon, each decoder worker thread having a corresponding encoder worker thread associated with the remote wireless node), wherein the first encoder-decoder pair identifier matches a first service encoder with a first client decoder for the first data block (see paragraph [0088], herein the decoder process 200 may include a decoder master thread 202 and a plurality of decoder worker threads 204a, . . . , 204n. Each of the encoder worker threads 104a, . . . , 104n in the source node may correspond to one of the decoder worker threads 204a, . . . , 204n in the destination node. Each encoder-decoder thread pair may operate independently from the other pairs and may be identified by a unique thread ID (TID), and Fig. 5); analyzing, at the client, the second plurality of encoded data packets to identify a second encoder-decoder pair identifier (see paragraph [0044], herein receiving coded segments from a remote wireless node, each coded segment being associated with a specific coding thread and being coded with a random linear network code (RLNC); reading thread identifiers within the received coded segments and directing the coded segments to corresponding decoder worker threads based thereon, each decoder worker thread having a corresponding encoder worker thread associated with the remote wireless node), wherein the second encoder-decoder pair identifier matches a second service encoder with a second client decoder for the second data block (see paragraph [0088], herein the decoder process 200 may include a decoder master thread 202 and a plurality of decoder worker threads 204a, . . . , 204n. Each of the encoder worker threads 104a, . . . , 104n in the source node may correspond to one of the decoder worker threads 204a, . . . , 204n in the destination node. Each encoder-decoder thread pair may operate independently from the other pairs and may be identified by a unique thread ID (TID), and Fig. 5); and decoding, at the client, the first plurality of encoded data packets using the first client decoder and the second plurality of encoded data packets using the second client decoder (see paragraph [0044], herein using the coded segments within the corresponding decoder worker threads to recover original data elements, paragraph [0089], herein he decoder master thread 202 directs each incoming coded IP packet to a corresponding decoder worker thread 204a, . . . , 204n according to its TID. The decoder worker thread may then process the packets it receives to recover the original data packets. The original data packets may then be delivered to the appropriate application, and Fig. 5). PNG media_image2.png 646 494 media_image2.png Greyscale As per claim 19: Medard teaches or discloses that decoding, at the client, the first plurality of encoded data packets using the first client decoder in a first time window and the second plurality of encoded data packets using the second client decoder in a second time window (see paragraph [0088], herein decoder process 200 may include a decoder master thread 202 and a plurality of decoder worker threads 204a, . . . ,204n. Each of the encoder worker threads 104a, . . . ,104n in the source node may correspond to one of the decoder worker threads 204a, . . . 204n in the destination node. Each encoder-decoder thread pair may operate independently from the other pairs and may be identified by a unique thread ID (TID). In some implementations, different worker threads being executed within a node may be processed concurrently within different processors or processor cores associated with the node. In other implementations, multiple worker threads may be executed within a single processor in a node using, for example, time division multiplexing or a similar technique). As per claim 21: Medard teaches or discloses that sending, from the first client decoder to the first service encoder, a first acknowledge message indicating total received symbols for the first plurality of encoded data packets; and sending, from the second client decoder to the second service encoder, a second acknowledge message indicating total received symbols for the second plurality of encoded data packets (see paragraph [0016], herein employing random linear network coding further includes repeating generating and linearly combining to generate other coded segments in the first encoder worker thread until a predetermined number of coded segments has been generated or an acknowledgement message has been received from a corresponding processing thread in the second node, and paragraph [0048]). 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. 9. Claims 3 and 20 are rejected under 35 U.S.C. 103 (a) as being unpatentable over Medard et al. (US 2014/0269505 A1) "herein after as Medard" in view of Kamath et al. (US 2014/0344326 A1 "herein after as Kamath." As per claims 3 and 20: Medard does not explicitly teach analyzing a first user datagram protocol (UDP) header for a first UDP packet from the first plurality of encoded data packets to identify the first encoder-decoder pair identifier, wherein the first encoder-decoder pair identifier is a first data block number; and analyzing a second UDP header for a second UDP packet from the second plurality of encoded data packets to identify the second encoder-decoder pair identifier, wherein the second encoder-decoder pair identifier is a second data block number. However, Kamath in the same the field of endeavor teaches analyzing a first user datagram protocol (UDP) header for a first UDP packet from the first plurality of encoded data packets to identify the first encoder-decoder pair identifier, wherein the first encoder-decoder pair identifier is a first data block number; and analyzing a second UDP header for a second UDP packet from the second plurality of encoded data packets to identify the second encoder-decoder pair identifier (see paragraph [0344], herein traffic of one protocol is encapsulated within traffic of another protocol, such as lossy UDP traffic encapsulated via a lossless TCP header, the flow distributor may calculate the hash based on the headers of the encapsulated protocol (e.g. UDP headers) rather than the encapsulating protocol (e.g. TCP headers)), wherein the second encoder-decoder pair identifier is a second data block number (see paragraph [0307], herein the second core 662 identifies from encoding of the second session identifier 688 that the second core 662 is the establisher of the SSL session. For example, the second core 662 may determine that the core identifier in the received session identifier matches the second core identifier 656, and paragraph [0284]). Therefore, it would have been obvious to one of ordinary skill in the art, before the effective filing date of the invention, to modify the system of Medard with the teachings of Kamath by analyzing a first and second user datagram protocol (UDP) headers for a first UDP packet from the first and second plurality of encoded data packets to identify the first and second encoder-decoder pair identifiers, wherein the first and second encoder-decoder pair identifiers are a first and second data block number respectively. This modification would have been obvious to one of ordinary skill in the art, before the effective filing date of the invention, because one of ordinary skill in the art would have recognized the analyzing a first and second user datagram protocol (UDP) headers for a first UDP packet from the first and second plurality of encoded data packets to identify the first and second encoder-decoder pair identifiers, wherein the first and second encoder-decoder pair identifiers are a first and second data block number respectively would have improved the communication system performance. Examiner Notes 10. When amending the claims, applicants are respectfully requested to indicate the portion(s) of the specification which dictate(s) the structure relied on for proper interpretation and also to verify and ascertain the metes and bounds of the claimed invention. Prior Art 11. The prior art of record, considered pertinent to the applicant’s disclosure, is listed in the attached PTO-892 form. Conclusion 12. 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 extension fee 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 date of this final action. Any inquiry concerning this communication or earlier communications from the examiner should be directed to OSMAN ALSHACK whose telephone number is (571)272-2069. The examiner can normally be reached on MON-FRI 8:30 AM-5:00 PM EST, also please fax interview request to (571) 273- 2069. If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, ALBERT DECADY can be reached on 5712723819. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300. Information regarding the status of an application may be obtained from the Patent Application Information Retrieval (PAIR) system. Status information for published applications may be obtained from either Private PAIR or Public PAIR. Status information for unpublished applications is available through Private PAIR only. For more information about the PAIR system, see http://pair-direct.uspto.gov. Should you have questions on access to the Private PAIR system, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative or access to the automated information system, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000. /OSMAN ALSHACK/ Examiner, Art Unit 2112 /ALBERT DECADY/Supervisory Patent Examiner, Art Unit 2112
Read full office action

Prosecution Timeline

May 08, 2024
Application Filed
Oct 21, 2025
Non-Final Rejection mailed — §102, §103, §112
Apr 21, 2026
Response Filed
Jun 16, 2026
Final Rejection mailed — §102, §103, §112 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12670078
STORAGE DEVICE INCLUDING TEST STORAGE BLOCK AND COMPUTING SYSTEM
1y 9m to grant Granted Jun 30, 2026
Patent 12663462
ON-CHIP FAULT DETECTION DUE TO MALFUNCTIONS ON CHIP PINS
2y 9m to grant Granted Jun 23, 2026
Patent 12665698
SYSTEMS AND METHODS TO GENERATE COPIES OF DATA FOR TRANSMISSION OVER MULTIPLE COMMUNICATION CHANNELS
1y 9m to grant Granted Jun 23, 2026
Patent 12625759
REMEDIATING CHARACTERISTICS OF CONTENT CAPTURED BY A RECORDING APPLICATION ON A USER DEVICE
3y 9m to grant Granted May 12, 2026
Patent 12619362
MEMORY SYSTEM AND CONTROL METHOD
2y 3m to grant Granted May 05, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

Strategy Recommendation AI-generated — please review before filing

Get a prosecution strategy drawn from examiner precedents, rejection analysis, and claim mapping.
Typically takes 5-10 seconds — AI-generated, attorney review required before filing

Prosecution Projections

3-4
Expected OA Rounds
86%
Grant Probability
99%
With Interview (+14.3%)
2y 4m (~1m remaining)
Median Time to Grant
Moderate
PTA Risk
Based on 525 resolved cases by this examiner. Grant probability derived from career allowance rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month