DETAILED ACTION
Claims status
In response to the application filed on 08/14/2024, claims 1-5, and 24-38 are currently pending for the examination. The present application, filed on or after March 1wl16, 2013, is being examined under the first inventor to file provisions of the AIA .
Notice of Pre-AIA or AIA Status
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.
Information Disclosure Statement
The information disclosure statement (IDS) submitted on 08/14/2024 has been placed in the application file, and the information referred therein has been considered as to the merits.
Drawings
Drawing figures submitted on 08/14/2024 have been reviewed and accepted.
Claim Rejections - 35 USC § 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
Claims 1-5, and 24-38 are rejected under 35 U.S.C. § 101 because the claimed invention is directed to a judicial exception without significantly more.
Under Step 2A, Prong One of the 2019 Revised Patent Subject Matter Eligibility Guidance, the claims recite an abstract idea in the form of mathematical concepts and mental processes. Specifically, the claims recite:
determining a source data packet, determining and applying a preconfigured network coding parameter, encoding the source data packet according to the network coding parameter, and generating an encoded data packet.
These limitations recite the manipulation and transformation of information according to predetermined coding rules and mathematical relationships. Such operations constitute mathematical calculations and data processing, which fall within the category of abstract ideas.
Under Step 2A, Prong Two, the claims do not integrate the abstract idea into a practical application. The additional elements recite receiving source data packets and transmitting encoded data packets through a communication network. These elements merely use generic networking components as tools to perform the recited mathematical processing. The transmission of the encoded data packet constitutes insignificant extra-solution activity because it merely communicates the result of the abstract data processing. The claims do not recite any improvement to computer functionality, network architecture, packet transmission mechanisms, encoding hardware, or any other technological field. Nor do the claims recite a particular machine that imposes a meaningful limit on the judicial exception.
Under Step 2B, the claims do not include additional elements that amount to significantly more than the judicial exception. Encoding data according to predetermined coding parameters prior to transmission is a conventional operation routinely performed in communication systems, including error-correction coding, source coding, channel coding, network coding, and data compression systems. Likewise, transmitting encoded packets over a communication network represents well-understood, routine, and conventional activity. Viewed individually and as an ordered combination, the additional elements merely implement the abstract idea using generic communication technology and do not provide an inventive concept sufficient to transform the judicial exception into patent-eligible subject matter.
Accordingly, the claims are directed to an abstract idea and do not recite additional elements that amount to significantly more than the abstract idea itself and are not patent-eligible under 35 U.S.C. §101.
Claim Rejections - 35 USC § 102
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.
Claims 1-5, and 24-38 are rejected under 35 U.S.C. 102(a)(1) as being anticipated by Calmon et al. (US 2013/0195106 A1).
Regarding claim 1; Colmon teaches a data processing method, comprising:
determining, in response to acquiring at least one source data packet (See Fig. 6: First, a number of original data packets may be obtained that are representative of the data to be transferred (step 132). ¶ [0068]), a first network coding mode for the at least one source data packet according to a pre-configured first network coding parameter (See Fig. 6: First coded data packets may then be generated by combining all of the original data packets using network coding (block 134). ¶ [0068]);
encoding the one source data packet according to the first network coding mode to obtain a first encoded data packet (See Fig. 6: a first coding window (e,g., a MPTCP/NC coding window, as described previously) may be used to generate the first coded packets. The first coding window may have a particular packet width (e.g., four packets wide, etc.) and a first coded packet may be generated by forming a linear combination of the original packets currently within the first coding window…¶ [0068]); and
sending the first encoded data packet to a first receiving end, such that the first receiving end processes the first encoded data packet (See Fig. 6: one or more second coded packets may be generated by linearly combining the first coded packets that currently reside within a corresponding second coding window using network coding (block 140)…The redundant packets may be transmitted to the destination node via a corresponding network medium after they have been generated (block 142). ¶ [0069 and 0070]).
Regarding claim 2; Colmon teaches the data processing method of claim 1, wherein the first network coding mode comprises at least one of: Linear Network Coding (LNC) (See Fig. 6: the coded packets each including a linear combination of original data packets; for each coded packet associated with the first connection that is successfully received. ¶ [0014]).
[Office’s Note: Because of the alternative claim language such as “at least one of…or…”, only one of the alternative limitations has been analyzed by the examiner].
Regarding claim 3; Colmon teaches the data processing method wherein the first network coding parameter comprises at least one of: quantity information of the source data packet (Colmon- a source node that has a number of original data packets to transfer to a destination node may combine the packets together into a “coded packet” that is then transmitted into the network. ¶ [0052]).
Regarding claim 4: Colmon teaches the data processing method wherein the source data packet comprises at least one of: a data packet of a physical layer in a Radio Interface Protocol stack (See Fig. 3: Fast-TCP/NC layer 58 is operative for performing a second level of network coding operations for the system and for simplifying the implementation of network coding within the TCP framework. IP layer 60 is operative for providing internet protocol (IP) related services in the communication system. Network interface layer 62 is operative for providing an interface to a physical network medium for the system. ¶ [0055]).
Regarding claim 24; Colmon teaches the data processing method wherein prior to determining a first network
coding mode according to a pre-configured first network coding parameter, the data processing method comprises at least one of: acquiring the pre-configured first network coding parameter sent through high-layer signaling (See Fig. 3: The MPTCP/NC layer 54 may sit directly above TCP layer 56 in protocol architecture 50. Fast-TCP/NC layer 58 may sit directly below TCP layer 56. Application layer 52 is the highest layer in protocol architecture 50 and is the layer where one or more application programs may be executed that may require one or more communications-related processes to be performed in a corresponding system. ¶ [0055]).
Regarding claim 25; Colmon teaches the data processing method wherein in response to existence of network coding in a plurality of Radio Interface Protocol stacks, the source data packets in any two of the Radio Interface Protocol stacks correspond to different first network coding modes (See Fig. 3: protocol architecture 50 may include: an application layer 52, an MPTCP/NC layer 54, a TCP (or transport) layer 56, a fast-TCP/NC layer 58, an IP layer 60, and a network interface layer 62. Application layer 52, TCP layer 56, IP layer 60, and network interface layer 62 may perform similar functions to corresponding layers in the basic TCP/IP protocol stack. The MPTCP/NC layer 54 may sit directly above TCP layer 56 in protocol architecture 50. Fast-TCP/NC layer 58 may sit directly below TCP layer 56. Application layer 52 is the highest layer in protocol architecture 50 and is the layer where one or more application programs may be executed that may require one or more communications-related processes to be performed in a corresponding system. ¶ [0055]).
Regarding claim 26; Colmon teaches a data processing method, comprising:
receiving a first encoded data packet sent by a transmitting end (See Fig. 7a: coded packets that are associated with a first connection (or a first data transfer operation) are received at a destination node via multiple different paths (block 162). ¶ [0071]), wherein the first encoded data packet is obtained by the transmitting end (See Fig. 6: one or more second coded packets may be generated by linearly combining the first coded packets that currently reside within a corresponding second coding window using network coding (block 140)…The redundant packets may be transmitted to the destination node via a corresponding network medium after they have been generated (block 142). ¶ [0069 and 0070]) by encoding acquired at least one source data packet according to a first network coding mode for the source data packet (See Fig. 6: a first coding window (e,g., a MPTCP/NC coding window, as described previously) may be used to generate the first coded packets. The first coding window may have a particular packet width (e.g., four packets wide, etc.) and a first coded packet may be generated by forming a linear combination of the original packets currently within the first coding window…¶ [0068]), and
the first network coding mode is determined by the transmitting end according to a pre-configured first network coding parameter (See Fig. 6: First coded data packets may then be generated by combining all of the original data packets using network coding (block 134). ¶ [0068], and see Abstract for the multiple levels of network coding to be provided within a transmitter in a multiple path scenario, with one level being applied across ail paths and another being applied within individual paths.); and
processing the first encoded data packet (See Fig. 6: a first coding window (e,g., a MPTCP/NC coding window, as described previously) may be used to generate the first coded packets. The first coding window may have a particular packet width (e.g., four packets wide, etc.) and a first coded packet may be generated by forming a linear combination of the original packets currently within the first coding window…¶ [0068]).
Regarding claim 27; Colmon teaches the data processing method wherein the first network coding mode comprises at least one of: Linear Network Coding (LNC) (See Fig. 6: the coded packets each including a linear combination of original data packets; for each coded packet associated with the first connection that is successfully received. ¶ [0014]).
[Office’s Note: Because of the alternative claim language such as “at least one of…or…”, only one of the alternative limitations has been analyzed by the examiner].
Regarding claim 28; Colmon teaches the data processing method wherein the first network coding parameter comprises at least one of: quantity information of the source data packet (Colmon- a source node that has a number of original data packets to transfer to a destination node may combine the packets together into a “coded packet” that is then transmitted into the network. ¶ [0052]).
Regarding claim 29: Colmon teaches the data processing method wherein the source data packet comprises at least one of: a data packet of a physical layer in a Radio Interface Protocol stack (See Fig. 3: Fast-TCP/NC layer 58 is operative for performing a second level of network coding operations for the system and for simplifying the implementation of network coding within the TCP framework. IP layer 60 is operative for providing internet protocol (IP) related services in the communication system. Network interface layer 62 is operative for providing an interface to a physical network medium for the system. ¶ [0055]).
Regarding claim 30; Colmon teaches the data processing method wherein processing the first encoded data packet comprises: determining a second network coding mode for the first encoded data packet according to a pre-configured second network coding parameter; and processing the first encoded data packet according to the second network coding mode (See Fig. 7B: whether the new coded packet (i.e., processing second coding mode) is linearly independent of previously received coded packets (i.e., first encoded data) associated with the first connection (block 170). To determine Whether the new packet is linearly independent, a Gaussian-Jordan elimination operation (or similar process) may be performed on a coefficient matrix associated with previously received packets. If the packet is not linearly independent (block 170-N), the packet may be discarded (block 180) and the common processing layer may proceed to look for new coded packet (block 168). If the packet is linearly independent (block 170-Y), then the common processing layer may send an ACK message (e.g., DATA_ACK, etc.) to the source node indicting that a new degree of freedom has been received for the first connection (block 172). The source node may use these degree of freedom related ACK messages to, for example, modify a coding window size within the source node. ¶ [0072]).
Regarding claim 31; Colmon teaches the data processing method of claim 30, wherein processing the first encoded data packet according to the second network coding mode comprises at least one of: sending the first encoded data packet to a second receiving end according to the second network coding mode (See Fig. 7b: whether the new coded packet is linearly independent of previously received coded packets associated with the first connection (block 170). To determine Whether the new packet is linearly independent, a Gaussian-Jordan elimination operation (or similar process) may be performed on a coefficient matrix associated with previously received packets. If the packet is not linearly independent (block 170-N), the packet may be discarded (block 180) and the common processing layer may proceed to look for new coded packet (block 168). If the packet is linearly independent (block 170-Y), then the common processing layer may send an ACK message (e.g., DATA_ACK, etc.) to the source node indicting that a new degree of freedom has been received for the first connection (block 172). The source node may use these degree of freedom related ACK messages to, for example, modify a coding window size within the source node. ¶ [0072]).
Regarding claim 32; Colmon teaches the data processing method of claim 30 or 31, wherein the second network coding mode comprises; LNC; RLNC (See Fig. 7B: n a new coded packet has been forwarded to the common processing layer, it may be next be determined whether the new coded packet is linearly independent of previously received coded packets associated with the first connection (block 170). ¶ [0072]).
Regarding claim 33; Colmon teaches the data processing method of claim 30, wherein the second network coding parameter comprises: quantity information of the source data packet (Colmon- a source node that has a number of original data packets to transfer to a destination node may combine the packets together into a “coded packet” that is then transmitted into the network. ¶ [0052]).
Regarding claim 34; Colmon teaches the data processing method wherein in response to existence of network coding in a plurality of Radio Interface Protocol stacks, the source data packets in any two of the Radio Interface Protocol stacks correspond to different first network coding modes (See Fig. 3: protocol architecture 50 may include: an application layer 52, an MPTCP/NC layer 54, a TCP (or transport) layer 56, a fast-TCP/NC layer 58, an IP layer 60, and a network interface layer 62. Application layer 52, TCP layer 56, IP layer 60, and network interface layer 62 may perform similar functions to corresponding layers in the basic TCP/IP protocol stack. The MPTCP/NC layer 54 may sit directly above TCP layer 56 in protocol architecture 50. Fast-TCP/NC layer 58 may sit directly below TCP layer 56. Application layer 52 is the highest layer in protocol architecture 50 and is the layer where one or more application programs may be executed that may require one or more communications-related processes to be performed in a corresponding system. ¶ [0055]).
Regarding claim 35; Colmon teaches an electronic device, comprising: at least one processor; and at least one memory, configured for storing at least one program, wherein the at least one program, when executed by the at least one processor, causes the at least one processor to perform the data processing method comprising:
determining, in response to acquiring at least one source data packet (See Fig. 6: First, a number of original data packets may be obtained that are representative of the data to be transferred (step 132). ¶ [0068]), a first network coding mode for the at least one source data packet according to a pre-configured first network coding parameter (See Fig. 6: First coded data packets may then be generated by combining all of the original data packets using network coding (block 134). ¶ [0068]);
encoding the one source data packet according to the first network coding mode to obtain a first encoded data packet (See Fig. 6: a first coding window (e,g., a MPTCP/NC coding window, as described previously) may be used to generate the first coded packets. The first coding window may have a particular packet width (e.g., four packets wide, etc.) and a first coded packet may be generated by forming a linear combination of the original packets currently within the first coding window…¶ [0068]); and
sending the first encoded data packet to a first receiving end, such that the first receiving end processes the first encoded data packet (See Fig. 6: one or more second coded packets may be generated by linearly combining the first coded packets that currently reside within a corresponding second coding window using network coding (block 140)…The redundant packets may be transmitted to the destination node via a corresponding network medium after they have been generated (block 142). ¶ [0069 and 0070]).
Regarding claim 36; Colmon teaches a non-transitory computer-readable storage medium, storing a processor-executable program which, when executed by a processor, causes the processor to perform the data processing method comprising:
determining, in response to acquiring at least one source data packet (See Fig. 6: First, a number of original data packets may be obtained that are representative of the data to be transferred (step 132). ¶ [0068]), a first network coding mode for the at least one source data packet according to a pre-configured first network coding parameter (See Fig. 6: First coded data packets may then be generated by combining all of the original data packets using network coding (block 134). ¶ [0068]);
encoding the one source data packet according to the first network coding mode to obtain a first encoded data packet (See Fig. 6: a first coding window (e,g., a MPTCP/NC coding window, as described previously) may be used to generate the first coded packets. The first coding window may have a particular packet width (e.g., four packets wide, etc.) and a first coded packet may be generated by forming a linear combination of the original packets currently within the first coding window…¶ [0068]); and
sending the first encoded data packet to a first receiving end, such that the first receiving end processes the first encoded data packet (See Fig. 6: one or more second coded packets may be generated by linearly combining the first coded packets that currently reside within a corresponding second coding window using network coding (block 140)…The redundant packets may be transmitted to the destination node via a corresponding network medium after they have been generated (block 142). ¶ [0069 and 0070]).
Regarding claim 37; Colmon teaches an electronic device, comprising: at least one processor; and at least one memory, configured for storing at least one program, wherein the at least one program, when executed by the at least one processor, causes the at least one processor to perform the data processing method comprising:
receiving a first encoded data packet sent by a transmitting end (See Fig. 7a: coded packets that are associated with a first connection (or a first data transfer operation) are received at a destination node via multiple different paths (block 162). ¶ [0071]), wherein the first encoded data packet is obtained by the transmitting end (See Fig. 6: one or more second coded packets may be generated by linearly combining the first coded packets that currently reside within a corresponding second coding window using network coding (block 140)…The redundant packets may be transmitted to the destination node via a corresponding network medium after they have been generated (block 142). ¶ [0069 and 0070]) by encoding acquired at least one source data packet according to a first network coding mode for the source data packet (See Fig. 6: a first coding window (e,g., a MPTCP/NC coding window, as described previously) may be used to generate the first coded packets. The first coding window may have a particular packet width (e.g., four packets wide, etc.) and a first coded packet may be generated by forming a linear combination of the original packets currently within the first coding window…¶ [0068]), and
the first network coding mode is determined by the transmitting end according to a pre-configured first network coding parameter (See Fig. 6: First coded data packets may then be generated by combining all of the original data packets using network coding (block 134). ¶ [0068], and see Abstract for the multiple levels of network coding to be provided within a transmitter in a multiple path scenario, with one level being applied across ail paths and another being applied within individual paths.); and
processing the first encoded data packet (See Fig. 6: a first coding window (e,g., a MPTCP/NC coding window, as described previously) may be used to generate the first coded packets. The first coding window may have a particular packet width (e.g., four packets wide, etc.) and a first coded packet may be generated by forming a linear combination of the original packets currently within the first coding window…¶ [0068]).
Regarding claim 38; Colmon teaches a non-transitory computer-readable storage medium, storing a processor- executable program which, when executed by a processor, causes the processor to perform the data processing method comprising:
receiving a first encoded data packet sent by a transmitting end (See Fig. 7a: coded packets that are associated with a first connection (or a first data transfer operation) are received at a destination node via multiple different paths (block 162). ¶ [0071]), wherein the first encoded data packet is obtained by the transmitting end (See Fig. 6: one or more second coded packets may be generated by linearly combining the first coded packets that currently reside within a corresponding second coding window using network coding (block 140)…The redundant packets may be transmitted to the destination node via a corresponding network medium after they have been generated (block 142). ¶ [0069 and 0070]) by encoding acquired at least one source data packet according to a first network coding mode for the source data packet (See Fig. 6: a first coding window (e,g., a MPTCP/NC coding window, as described previously) may be used to generate the first coded packets. The first coding window may have a particular packet width (e.g., four packets wide, etc.) and a first coded packet may be generated by forming a linear combination of the original packets currently within the first coding window…¶ [0068]), and
the first network coding mode is determined by the transmitting end according to a pre-configured first network coding parameter (See Fig. 6: First coded data packets may then be generated by combining all of the original data packets using network coding (block 134). ¶ [0068], and see Abstract for the multiple levels of network coding to be provided within a transmitter in a multiple path scenario, with one level being applied across ail paths and another being applied within individual paths.); and
processing the first encoded data packet (See Fig. 6: a first coding window (e,g., a MPTCP/NC coding window, as described previously) may be used to generate the first coded packets. The first coding window may have a particular packet width (e.g., four packets wide, etc.) and a first coded packet may be generated by forming a linear combination of the original packets currently within the first coding window…¶ [0068]).
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
Ballif et al. (US 11,528,342 B2).
Contact Information
Any inquiry concerning this communication or earlier communications from the examiner should be directed to SAI AUNG whose telephone number is (571)272-3507. The examiner can normally be reached on Monday-Friday, Alt Fridays, 7:30 AM- 5:00 PM (EST).
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Noel Beharry can be reached on 571-270-5630. 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.
/SAI AUNG/
Primary Examiner, Art Unit 2416