DETAILED ACTION
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Response to Arguments
Applicant's arguments filed 7/22/2026 have been fully considered but they are not persuasive.
Regarding 102 rejection of claim 1, Applicant argues in substance that Goglin fails to disclose “distributing the packet across one of a plurality of physical links based on the entropy”
In response to argument, Examiner respectfully disagree, newly cited prior art Roitshtein this limitation. Combined teachings of Goglin and Roitshtein teaches every limitation of claim 1.
Claim Rejections - 35 USC § 103
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
The following is a quotation of 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.
This application currently names joint inventors. In considering patentability of the claims the examiner presumes that the subject matter of the various claims was commonly owned as of the effective filing date of the claimed invention(s) absent any evidence to the contrary. Applicant is advised of the obligation under 37 CFR 1.56 to point out the inventor and effective filing dates of each claim that was not commonly owned as of the effective filing date of the later invention in order for the examiner to consider the applicability of 35 U.S.C. 102(b)(2)(C) for any potential 35 U.S.C. 102(a)(2) prior art against the later invention.
Claims 1, 4, 5, 8, 15, 18, 21, 22, 24 are rejected under 35 U.S.C. 103 as being unpatentable over Goglin et al (USPN 20080005352) in view of Roitshtein et al (USPN 20140160934).
Regarding claim 15, Goglin discloses
a switch, comprising: (network controller/device comprising, FIG. 1 #126 [¶ 0016, 0017, 0011]
memory for storing executable instructions (memory storing instructions, FIG. 1 #132, [¶ 0018]
a packet entropy engine (protocol table [¶ 0019]
at least one processor to execute the instructions, wherein the packet entropy engine is configured to: (processor, FIG. 1 #102A, for executing machine readable instructions [¶ 0011, 0012]
determine a protocol type for the packet (determine type of packet [¶ 0024-0028, 0036-0040]
extract information from the packet (information such as header, IP, source/destination are extracted from packet [¶ 0021, 0023]
match a configured protocol field corresponding to the extracted information in the header of the packet to a specified value (extracted packet information such as source/destination are used to match/lookup with entries in one of protocol tables [¶ 0023, 0024, 0030]
determine a byte range for the packet using the specified value (each entry in protocol table comprise a corresponding offset that specifies a distance and a corresponding bitmask (offset + mask = byte range) [¶ 0025, 0026]
create entropy for the packet by using data from the byte range (apply hash function to byte range (offset + bitmask) to generate hash result [¶ 0025], FIG. 2 #204-208.
Goglin does not expressly disclose “distributing the packet across one of a plurality of physical links based on the entropy”
Roitshtein link selector selecting a physical communication link in a group of links, FIG. 1 #24, 26, 28, based on hash value [0019-0021, 0043, 0044]
Therefore, it would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to implement “distributing the packet across one of a plurality of physical links based on the entropy” as taught by Roitshtein into Goglin’s system with the motivation to enable processing and distributing packet based on hash values (Roitshtein, paragraph [¶ 0019-0021, 0043, 0044], FIG. 6).
Claim 1 is rejected based on similar ground(s) provided in rejection of claim 15.
Regarding claim 4, Goglin discloses “accessing a database that includes a plurality of destination ports, wherein the database includes bytes to hash that correspond to each of the destination ports; ” each of at least one protocol table(s) may comprise entries that include packet characteristics such as destination port [¶ 0024, 0032]
“and determining which bytes from the packet are included in the hash to create the entropy for the packet” packet characteristic corresponding to last reveal layer corresponding to offset and mask to be applied to the packet to generate hash value [¶ 0025, 0030, 0033].
Regarding claim 5, Goglin discloses “wherein the creating includes each byte of a payload of the packet being included or excluded in an entropy calculation for the packet based on a particular destination port of the packet being included in the database” start bit may comprise end of packet header, e.g. bit 112, with offset 0 bits and bitmask at 32 bits, bits 112-143 may be masked to generate hash value corresponding to payload region. Offset and mask can be specified to default fields enabling customization of fields for hash value [¶ 0025, 0031, 0032].
Regarding claim 8, Goglin discloses “wherein the determining of the byte range is determined by an 8. arbitrary header field within the header of the packet” multiple header fields that can drive byte range determination/arbitrarily header field [¶ 0024, 0027, 0036, 0037].
Regarding claim 18, Goglin discloses “a database that includes a plurality of destination ports, wherein the database includes bytes to hash that correspond to each of the destination ports” each of at least one protocol table(s) may comprise entries that include packet characteristics such as destination port [¶ 0024, 0032].
“and wherein each byte of a payload of the packet is included or excluded in an entropy calculation for the packet based on a particular destination port of the packet being included in the database that includes the plurality of destination ports” start bit may comprise end of packet header, e.g. bit 112, with offset 0 bits and bitmask at 32 bits, bits 112-143 may be masked to generate hash value corresponding to payload region. Offset and mask can be specified to default fields enabling customization of fields for hash value [¶ 0025, 0031, 0032].
Regarding claims 21, 24, Goglin does not expressly disclose “wherein the plurality of physical links are combined into a link aggregation group (LAG)”
Roitshtein discloses LAG of links such as network cables [0005, 0021]
Therefore, it would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to implement “wherein the plurality of physical links are combined into a link aggregation group (LAG)” as taught by Roitshtein into Goglin’s system with the motivation to enable processing and distributing packet based on hash values (Roitshtein, paragraph [¶ 0019-0021, 0043, 0044], FIG. 6).
Regarding claim 22, Goglin does not expressly disclose “wherein packets within a same flow produce a same entropy such that the packets within the same flow are distributed across a same one of the plurality of physical links”
Roitshtein discloses a common hash value for all packets of a flow used to pink a link [0021, 0030-0032, 0036]
Therefore, it would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to implement “wherein packets within a same flow produce a same entropy such that the packets within the same flow are distributed across a same one of the plurality of physical links” as taught by Roitshtein into Goglin’s system with the motivation to enable processing and distributing packet based on hash values (Roitshtein, paragraph [¶ 0019-0021, 0043, 0044], FIG. 6).
Claims 3, 16 are rejected under 35 U.S.C. 103 as being unpatentable over Goglin in view of Roitshtein as applied to claims 1, 15 and in further view of Roitshtein et al (USPN 20120134497), hereafter Roitshtein’497.
Regarding claims 3, 16, combined system of Goglin and Roitshtein does not expressly disclose “wherein the byte range corresponds to a payload byte range and includes non-consecutive bytes”
Roitshtein’497 discloses “wherein the byte range corresponds to a payload byte” network device, FIG. 1 #ND1, utilizes subset of bytes defined by mask, FIG. 2 #120/byte range with input bytes operated on are bytes of packet, FIG. 2 #102, which includes both header and data regions [¶ 0024, 0028, 0035]
“and includes non-consecutive bytes” the mask, FIG. 2 #102, selectively turns on or off individual bytes in N input bytes [¶ 0035]
Therefore, it would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to implement “wherein the byte range corresponds to a payload byte range and includes non-consecutive bytes” as taught by Roitshtein’497 into combined system of Goglin and Roitshtein with the motivation to achieve better entropy distribution (Roitshtein’497, paragraph [¶ 0035]).
Claim 17 is rejected under 35 U.S.C. 103 as being unpatentable over Goglin in view of Roitshtein and Roitshtein’497 as applied to claim 16 and in further view of Anand et al (USPN 20150373164).
Regarding claim 17, Goglin discloses wherein a payload type is identified using a destination port in the header” protocol table includes entry for different destination ports which results in payload bytes get hashed [¶ 0024, 0030-0032, 0028]
Combined system of Goglin, Roitshtein, and Roitshtein’497 does not expressly disclose “wherein the protocol type is user datagram protocol (UDP) for the packet”
Anand discloses UDP as supported layer [¶ 0048]
Therefore, it would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to implement “wherein the protocol type is user datagram protocol (UDP) for the packet” as taught by Anand into combined system of Goglin, Roitshtein, and Roitshtein’497 with the motivation to enable support of UDP as well-known technology.
Claims 2, 6, 7, 19 are rejected under 35 U.S.C. 103 as being unpatentable over Goglin in view of Roitshtein as applied to claims 1, 15 and in further view of Anand et al (USPN 20150373164).
Regarding claim 2, Goglin discloses wherein a payload type is identified using a destination port in the header” protocol table includes entry for different destination ports which results in payload bytes get hashed [¶ 0024, 0030-0032, 0028]
Combined system of Goglin and Roitshtein does not expressly disclose “wherein the protocol type is user datagram protocol (UDP) for the packet”
Anand discloses UDP as supported layer [¶ 0048].
Therefore, it would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to implement “wherein the protocol type is user datagram protocol (UDP) for the packet” as taught by Anand into combined system of Goglin and Roitshtein with the motivation to enable support of UDP as well-known technology.
Regarding claims 6, 19, combined system of Goglin and Roitshtein does not expressly disclose “using a plurality of offset bytes in a header field of the packet to determine a location of data in a payload field of the packet to be used to create the hash for the packet”
Anand discloses a plurality of offset bytes, i.e. offset 0 (MAC DA) and offset 16 (IP DA), in header of packet to determine location of data in payload [¶ 0064, 0079-0080, 0090]
Therefore, it would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to implement “using a plurality of offset bytes in a header field of the packet to determine a location of data in a payload field of the packet to be used to create the hash for the packet” as taught by Anand into combined system of Goglin and Roitshtein with the motivation to enable improving hash function (Anand, paragraph [¶ 0064, 0079-0080, 0090]).
Regarding claim 7, combined system of Goglin and Roitshtein does not expressly disclose “wherein the plurality of offset bytes can be configured at run time for an associated switch that receives the packet”
Anand discloses generic hash commands with “fieldOffset” per protocol layer where these fields are software defined/run time configuration [¶ 0079, 0009, 0017, 0078]
Therefore, it would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to implement “using a plurality of offset bytes in a header field of the packet to determine a location of data in a payload field of the packet to be used to create the hash for the packet” as taught by Anand into combined system of Goglin and Roitshtein system with the motivation to enable improving hash function (Anand, paragraph [¶ 0064, 0079-0080, 0090]).
Claims 9, 20 are rejected under 35 U.S.C. 103 as being unpatentable over Goglin in view of Roitshtein as applied to claims 1, 15 and in further view of Basso et al (USPN 20130156036).
Regarding claims 9, 20, Goglin discloses next-protocol driven layer revealing and destination-port keyed table entries [0024, 0027, 0032, 0037]
Combined system of Goglin and Roitshtein does not expressly disclose “wherein the protocol type for the packet is identified by a next protocol field, which corresponds to a destination port field”
Basso discloses parsing a packet header to extract bytes for hash code generation, including extracting both destination port and protocol byte from the same header. A tunneled IP-in-IP table reciting “DP Inner packet destination port 2 byte” along “proto inner packet protocol byte [0014, 0019, 0021, 0022]
Therefore, it would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to implement “wherein the protocol type for the packet is identified by a next protocol field, which corresponds to a destination port field” as taught by Basso into combined system of Goglin and Roitshtein with the motivation to providing higher entropy hash inputs by leveraging both next-protocol identifier and destination port (Basso, paragraph [¶ 0014, 0019, 0021, 0022]).
Claims 23, 25 are rejected under 35 U.S.C. 103 as being unpatentable over Goglin in view of Roitshtein as applied to claims 1, 15 and in further view of Greene et al (USPN 7,219,211).
Regarding claim 23, Goglin discloses tables being configurable as well as start bit [0024, 025].
Combined system of Goglin and Roitshtein does not expressly disclose “range at run time”
Greene discloses each bit may specify whether the corresponding packet by should be included in the hash key; using the hash bit mask any combination of bytes of the packet may be used; mask is kept in register/run time for looking up per packet (column 5 lines 1-11, 23-46, 55-61), FIGs 5, 6
Therefore, it would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to implement “at run time” as taught by Greene into combined system of Goglin and Roitshtein with the motivation to enable use per-byte mask register as mask format in Goglin’s per protocol table entries to provide more control over payload byte(s) selected for hash.
Regarding claim 25, Roitshtein discloses “wherein a payload of the packet is represented as a plurality of byte fields,” network device, FIG. 1 #ND1, utilizes subset of bytes defined by mask, FIG. 2 #120/byte range with input bytes operated on are bytes of packet, FIG. 2 #102, which includes both header and data regions [¶ 0024, 0028, 0035]
Combined system of Goglin and Roitshtein does not expressly disclose “each of the byte fields being individually included in or excluded from the byte range at run time”
Greene discloses each bit may specify whether the corresponding packet by should be included in the hash key; using the hash bit mask any combination of bytes of the packet may be used; mask is kept in register/run time for looking up per packet (column 5 lines 1-11, 23-46, 55-61), FIGs 5, 6
Therefore, it would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to implement “each of the byte fields being individually included in or excluded from the byte range at run time” as taught by Greene into combined system of Goglin and Roitshtein with the motivation to enable use per-byte mask register as mask format in Goglin’s per protocol table entries to provide more control over payload byte(s) selected for hash.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
Zhang et al (USPN 20120163389)
Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). 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 THAI NGUYEN whose telephone number is (571)270-7632. The examiner can normally be reached M-F campus 10:30-5pm, telework 6pm-8pm| Telework count days.
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, Ian N Moore can be reached at (571)272-3085. 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.
/THAI NGUYEN/Primary Examiner, Art Unit 2469