Office Action Predictor
Last updated: April 15, 2026
Application No. 18/228,503

PACKET PROCESSING METHOD AND RELATED APPARATUS

Non-Final OA §102§103
Filed
Jul 31, 2023
Examiner
BOUTAH, ALINA A
Art Unit
2458
Tech Center
2400 — Computer Networks
Assignee
Huawei Technologies Co., LTD.
OA Round
3 (Non-Final)
90%
Grant Probability
Favorable
3-4
OA Rounds
2y 8m
To Grant
86%
With Interview

Examiner Intelligence

Grants 90% — above average
90%
Career Allow Rate
745 granted / 830 resolved
+31.8% vs TC avg
Minimal -3% lift
Without
With
+-3.4%
Interview Lift
resolved cases with interview
Typical timeline
2y 8m
Avg Prosecution
22 currently pending
Career history
852
Total Applications
across all art units

Statute-Specific Performance

§101
14.9%
-25.1% vs TC avg
§103
35.8%
-4.2% vs TC avg
§102
19.5%
-20.5% vs TC avg
§112
16.3%
-23.7% vs TC avg
Black line = Tech Center average estimate • Based on career data from 830 resolved cases

Office Action

§102 §103
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 . Continued Examination Under 37 CFR 1.114 A request for continued examination under 37 CFR 1.114, including the fee set forth in 37 CFR 1.17(e), was filed in this application after final rejection. Since this application is eligible for continued examination under 37 CFR 1.114, and the fee set forth in 37 CFR 1.17(e) has been timely paid, the finality of the previous Office action has been withdrawn pursuant to 37 CFR 1.114. Applicant's submission filed on December 19, 2025 has been entered. Claims 1-2, and 18-20 have been amended. 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. Claim(s) 1-8, and 11-20 is/are rejected under 35 U.S.C. 103 as being unpatentable over Kommula et al. (US 2020/066607, hereinafter referred to as “Kommula”) in view of Gandhi et al. (US 2022/0286395, hereinafter referred to as “Gandhi”). Regarding claim 1, Kommula teaches a packet processing method, comprising: obtaining, by a first network device, a first packet, wherein the first packet comprises a first slice identifier (abstract - The switch can receive a packet and determine a slice identifier for the packet based on packet header information.), the first slice identifier comprises a plurality of sub-identifiers, the plurality of sub-identifiers indicate different attributes of a first network slice ([0044] ECMP can be modified to use Slice ID to make this link determination. In one example, the agent retrieves or generates a hash. The hash (hash_id) can be created (create_hash) using slice ID, the packet destination IP address, and the ECMP member count, in an example. This hash ID can then be used to select which of the ECMP members applies to the packet. [0045] The load balancing algorithm can determine which link to use for the slice when multiple links are available having the same (or similar within a threshold) preference and metric values. If there is an ECMP set for the active route, a load balancing algorithm can be used to choose one of the next-hop addresses in the ECMP to use for the packet, based on the slice ID. The load balancing algorithm can also preferentially treat one or more slices relative to others. For example, a first link can be reserved for a preferred slice when performance on that link falls below a threshold. For example, 911 calls can be the only slice using a particular link when multiple links are available to the next hop and the slice for 911 is prioritized. Slice prioritization can be determined at the switch or orchestrator based on service level agreement (“SLA”) requirements for a slice. For example, each slice can have guaranteed performance characteristics, such as threshold levels of latency, throughput, and bandwidth. SLA records can explicitly assign prioritization parameters, in an example, that are used by the switch for load balancing purpose.), and the first slice identifier identifies the first network slice to which the first packet belongs ([0024] At stage 120, the switch can determine a slice identifier for the packet. The switch can do this by inspecting the packet header. For example, a switch or slice selector can use a combination of layer 2 to layer 4 (L2-L4) headers or by performing deep packet inspection (e.g., to classify traffic based on data in the layer 7 (L7) header). For example, slice selection can be based simply on the source device by using the source network layer (e.g., IP) address, or can be based on the type of traffic or destination network domain by looking at the L7 header. In some embodiments, the network slice selector maintains state for mapping connections to network slices so that deep packet inspection does not need to be performed on each data message of a connection. In addition, for some connections, only certain data messages contain the L7 header information required for performing the slice selection.); and forwarding, by the first network device, the first packet based on the first slice identifier (abstract - The switch can use the slice identifier to determine a next hop. Using the slice identifier with a multi-path table, the switch can select an egress interface for sending the packet to the next hop.). However, Kommula does not explicitly teach wherein the plurality of sub-identifiers comprise a topology identifier, wherein the topology identifier indicates a topology of the first network slice. In an analogous art, Gandhi teaches a plurality of sub-identifiers comprise a topology identifier, wherein the topology identifier indicates a topology of the first network slice (abstract - Segment Routing Internet Protocol Version 6 (SRv6) micro segments (“uSIDs”) are included in destination addresses, and possibly in other Segment Identifiers (“SIDs”), of packets transported through a network, and invoking corresponding network behavior, including, but not limited to, realization of corresponding network slices. In one embodiment, network nodes are configured to perform differential network slice realization functionality based on values slice-representative value(s) provided by global and/or local uSIDs of packets. [0078] SRv6 is a Segment Routing flavor that implements source routing in an IPv6 data plane. As shown, an SRv6 segment (SID) 230 is represented as a 128-bit SID address, including a Locator portion (block) 231 (e.g., a highest-order block of bits), a function portion 232, and ARG portion 233 for optional arguments and/or padding. A first SID is the IPv6 Destination Address of the outer IPv6 header of a SRv6 packet; and if present, additional SID(s) are carried in a Segment List of a Segment Routing Header (SRH) (i.e., an IPv6 extension header). A SID is of topological (e.g., Internet Gateway Protocol IGP)) or service (e.g., Virtual Private Network (VPN), Network Function Virtualization (NFV)) type.). Before the effective filing date of the invention, one of ordinary skill in the art would have been motivated to enable the plurality of sub-identifier to comprise a topology identifier that indicates a topology of the first network slice in order to enable slice-specific forwarding behavior according to the topology, thus yielding predictable results. Regarding claim 2, Kommula teaches the method according to claim 1, wherein the plurality of sub-identifiers comprise a resource identifier ([0079] Slice selection can be based on information in the packet header for a packet. For example, a switch or slice selector can use a combination of layer 2 to layer 4 (L2-L4) headers or by performing deep packet inspection (e.g., to classify traffic based on data in the layer 7 (L7) header. For example, slice selection can be based simply on the source device by using the source network layer (e.g., IP) address, or can be based on the type of traffic or destination network domain by looking at the L7 header. In some embodiments, the network slice selector maintains state for mapping connections to network slices so that deep packet inspection does not need to be performed on each data message of a connection. In addition, for some connections, only certain data messages contain the L7 header information required for performing the slice selection.), and the resource identifier indicates a forwarding resource of the first network slice (abstract - Using the slice identifier with a multi-path table, the switch can select an egress interface for sending the packet to the next hop). Regarding claim 3, Kommula teaches the method according to claim 2, wherein the plurality of sub-identifiers further comprise an algorithm identifier, and the algorithm identifier indicates a path computation algorithm of the first network slice ([0032] An egress interface can have packet queues and other mechanisms, such as load balancing algorithms, that govern when the packet is actually sent to the next hop from an egress port at the egress interface.). Regarding claim 4, Kommula teaches the method according to claim 1, wherein the plurality of sub-identifiers comprise an algorithm identifier and a resource identifier, the algorithm identifier indicates a path computation algorithm of the first network slice ([0045] The load balancing algorithm can determine which link to use for the slice when multiple links are available having the same (or similar within a threshold) preference and metric values. If there is an ECMP set for the active route, a load balancing algorithm can be used to choose one of the next-hop addresses in the ECMP to use for the packet, based on the slice ID. The load balancing algorithm can also preferentially treat one or more slices relative to others. For example, a first link can be reserved for a preferred slice when performance on that link falls below a threshold. For example, 911 calls can be the only slice using a particular link when multiple links are available to the next hop and the slice for 911 is prioritized. Slice prioritization can be determined at the switch or orchestrator based on service level agreement (“SLA”) requirements for a slice. For example, each slice can have guaranteed performance characteristics, such as threshold levels of latency, throughput, and bandwidth. SLA records can explicitly assign prioritization parameters, in an example, that are used by the switch for load balancing purpose.), and the resource identifier indicates a forwarding resource of the first network slice (abstract - Using the slice identifier with a multi-path table, the switch can select an egress interface for sending the packet to the next hop). Regarding claim 5, Kommula teaches the method according to claim 2, wherein the plurality of sub-identifiers further comprise a domain identifier, and the domain identifier indicates a network domain in which the first slice identifier is effective ([0079] Slice selection can be based on information in the packet header for a packet. For example, a switch or slice selector can use a combination of layer 2 to layer 4 (L2-L4) headers or by performing deep packet inspection (e.g., to classify traffic based on data in the layer 7 (L7) header. For example, slice selection can be based simply on the source device by using the source network layer (e.g., IP) address, or can be based on the type of traffic or destination network domain by looking at the L7 header.). Regarding claim 6, Kommula teaches the method according to claim 1, wherein the plurality of sub-identifiers comprise a domain identifier and a resource identifier, the domain identifier indicates a network domain in which the first slice identifier is effective [0079] Slice selection can be based on information in the packet header for a packet. For example, a switch or slice selector can use a combination of layer 2 to layer 4 (L2-L4) headers or by performing deep packet inspection (e.g., to classify traffic based on data in the layer 7 (L7) header. For example, slice selection can be based simply on the source device by using the source network layer (e.g., IP) address, or can be based on the type of traffic or destination network domain by looking at the L7 header., and the resource identifier indicates a forwarding resource of the first network slice (abstract - Using the slice identifier with a multi-path table, the switch can select an egress interface for sending the packet to the next hop). Regarding claim 7, Kommula teaches the method according to claim 1, wherein a forwarding resource comprises a physical interface, a logical sub-interface, and/or a packet queue ([0032] At stage 140, the switch can select an egress port for the packet based on the slice identifier. For example, the slice can have an assigned egress interface in the routing table that corresponds to the next hop. Selecting an egress port can be achieved by selecting an egress interface, in an example. An egress interface can have packet queues and other mechanisms, such as load balancing algorithms, that govern when the packet is actually sent to the next hop from an egress port at the egress interface.). Regarding claim 8, Kommula teaches the method according to claim 1, wherein the forwarding, by the first network device, the first packet based on the first slice identifier comprises: determining, by the first network device based on the plurality of sub-identifiers in the first slice identifier and a mapping table, an interface for forwarding the first packet and a forwarding resource of the interface ([0024] the network slice selector maintains state for mapping connections to network slices so that deep packet inspection does not need to be performed on each data message of a connection. In addition, for some connections, only certain data messages contain the L7 header information required for performing the slice selection.); and forwarding, by the first network device, the first packet to a second network device based on the forwarding resource of the interface, wherein the mapping table comprises a mapping relationship between the interface and the plurality of sub-identifiers ([0026] After initial slice selection at the selector, the routers can be updated to include slice tables (one type of routing table) that correlate packet header information to slice ID. This can allow the switch to use the packet header can include address information to look up the slice ID. For example, the packet header can list source and destination media access control (“MAC”) addresses, source and destination internet protocol (“IP”) addresses, source and destination ports, and indicate a packet protocol. With this information, the switch can identify a slice ID in a local slice table.). Regarding claim 11, Kommula teaches the method according to claim 1, further comprising: receiving, by the first network device, a second packet, wherein the second packet comprises a second slice identifier; and updating, by the first network device, the second slice identifier to the first slice identifier, to obtain the first packet ([0060] Based on the slice ID, the switch can then retrieve the next hop at stage 230. A routing table can include next hop information for each slice. In one example, switch can check for ECMP routing. This can be a separate lookup at an ECMP table in one example. Alternatively, an ECMP process on the switch can update the routing table based on ECMP, allowing the switch to lookup the correct egress interface based on slice ID in the routing table. The egress interface can dynamically change based on load balancing for ECMP or based on changed characteristics of different links in a LAG. For example, if a particular link is not performing well, a load balancing algorithm can move a prioritized slice onto a different link. When the next hop is retrieved at stage 230, the routing table can include updated information such that the packet for that slice is routed to the different link.). Regarding claim 12, Kommula teaches the method according to claim 11, wherein the first slice identifier indicates the first network slice in a first network domain, the second slice identifier indicates a second network slice in a second network domain, and a service-level agreement (SLA) of the first network slice is the same as an SLA of the second network slice ([0084] an SLA can specify various threshold performance requirements for the slices. These performance requirements can include latency, round-trip time, bandwidth, and others. These can serve as per-slice QoS requirements, in an example.). Regarding claim 13, Kommula teaches the method according to claim 11, wherein the first network device is a boundary node of a bearer network (abstract – the switch). However, Kommula is silent in regards to the second slice identifier being a single network slice selection assistance information (S-NSSAI) or an application-aware networking (APN) identifier. Nevertheless, Kommula teaches the concept of 5G mobile networks ([0076]). S-NSSAI is a concept in 5G networks that enables dynamic network slicing. Therefore, although not explicitly cited, Kommula implicitly teaches this concept. Regarding claim 14, Kommula teaches the method according to claim 11, further comprising: receiving, by the first network device, a third packet; determining, by the first network device, a network slice to which the third packet belongs; and adding, by the first network device based on the network slice to which the third packet belongs, the first slice identifier to the third packet, to obtain the first packet ([0038] The ECMP can use load balancing to select between the multiple links in the ECMP set. In one example, slice-based load balancing can be used to distribute the packets across the multiple links. Packets having the same slice ID can be guaranteed to take the same link. For example, a table correlating slice ID to the links can be used. Alternatively, an additional column on Table 3 can indicate Slice ID, such that slice is used to select between the links in the ECMP set.). Regarding claim 15, Kommula teaches the method according to claim 14, wherein the determining, by the first network device, a network slice to which the third packet belongs comprises: determining, by the first network device based on information in the third packet, the network slice to which the third packet belongs, wherein the information in the third packet comprises one or more of the following information: a source address, a destination address, a protocol number, a differentiated services code point (DSCP) field, a traffic class (TC) field, a virtual local area network identifier, or a port number ([0008] Based on the slice identifier, the switch can determine a next hop for the packet. This can include retrieving a slice path or portion thereof from local storage at the switch. Based on the next hop and slice identifier, the switch can select an egress port from a plurality of ports available at the switch. In one example, the switch can determine whether a multi-path table exists for sending traffic to the next hop. If so, the switch can select the egress port from the multi-path table based on the slice identifier. In one example, the multi-path table is a Layer 3 equal-cost multi-path table. Multi-path tables can be used, for example, for ECMP or LAG functionality.). Regarding claim 16, Kommula teaches the method according to claim 14, wherein the adding, by the first network device based on the network slice to which the third packet belongs, the first slice identifier to the third packet comprises: adding, by the first network device based on the network slice to which the third packet belongs, the first slice identifier and a fourth slice identifier to the third packet, to obtain the first packet, wherein the fourth slice identifier identifies, in a bearer network comprising a plurality of network domains, the network slice to which the third packet belongs ([0038] The ECMP can use load balancing to select between the multiple links in the ECMP set. In one example, slice-based load balancing can be used to distribute the packets across the multiple links. Packets having the same slice ID can be guaranteed to take the same link. For example, a table correlating slice ID to the links can be used. Alternatively, an additional column on Table 3 can indicate Slice ID, such that slice is used to select between the links in the ECMP set.). Regarding claim 17, Kommula teaches the method according to claim 14, wherein the determining, by the first network device, a network slice to which the third packet belongs comprises: determining, by the first network device based on a third slice identifier in the third packet, the network slice to which the third packet belongs, wherein the third slice identifier identifies, in a bearer network comprising a plurality of network domains, the network slice to which the third packet belongs ([0038] The ECMP can use load balancing to select between the multiple links in the ECMP set. In one example, slice-based load balancing can be used to distribute the packets across the multiple links. Packets having the same slice ID can be guaranteed to take the same link. For example, a table correlating slice ID to the links can be used. Alternatively, an additional column on Table 3 can indicate Slice ID, such that slice is used to select between the links in the ECMP set.). Claims 18-19 are network device version of claims 1-2, respectively, therefore are rejected under the same rationale. Claim 20 is a computer-readable storage medium version of claim 1, therefore is rejected under the same rationale. Claim(s) 9-10 is/are rejected under 35 U.S.C. 103 as being unpatentable over Kommula in view of Gandhi, in further view of Li et al. (CN 111107004, hereinafter referred to as “Li”). Regarding claim 9, Kommula and Gandhi combination does not explicitly teach the method according to claim 1, wherein the plurality of sub-identifiers further comprise a flag bit identifier, the flag bit identifier indicates a forwarding policy corresponding to the first slice identifier, and the forwarding policy indicates a forwarding behavior performed after an interface is determined based on a sub-identifier for guiding forwarding. In an analogous art, Li teaches plurality of sub-identifiers further comprise a flag bit identifier, the flag bit identifier indicates a forwarding policy corresponding to the first slice identifier, and the forwarding policy indicates a forwarding behavior performed after an interface is determined based on a sub-identifier for guiding forwarding (figure 3B and its corresponding description illustrate a bit flag identifier that indicates forwarding policies and interfaces for receiving network performance parameters). Before the effective filing date of the invention, one of ordinary skill in the art would have been motivated to a flag bit identifier in order to further specify network slices to distinguish them from one another. Regarding claim 10, Kommula teaches the method according to claim 9, wherein the forwarding behavior comprises: if the interface for forwarding cannot be found based on the first slice identifier, skipping determining, based on the first slice identifier, the interface for forwarding; or discarding the first packet if the interface for forwarding cannot be found based on the first slice identifier ([0070] Updating the routing tables can include updating slice-based tables for ECMP and LAG. When the next hop changes, the ECMP sets can also change relative to which slices are in which sets. For example, at a first switch R1, a first ECMP set can include both the first and second slices 460, 465. However, when the first slice 460 is re-routed to follow a slice path along switches R2, R4, the first switch R1 can no longer include the first slice 460 in the first ECMP set. This is because the next hop is now switch R2 instead of switch R3. Therefore, the first switch R1 can remove the first slice 460 from the first ECMP set and instead place it in a second ECMP set that includes bundled links to switch R2. In one example, the switch is programmed to change its ECMP sets each time it receives new slice path information.). Response to Arguments Claim Rejections - 35 USC § 102 Applicant’s arguments have been considered but are moot because the new ground of rejection does not rely on any reference applied in the prior rejection of record for any teaching or matter specifically challenged in the argument. Conclusion Any inquiry concerning this communication or earlier communications from the examiner should be directed to ALINA N BOUTAH whose telephone number is (571)272-3908. The examiner can normally be reached M-F 7:00 AM - 3:00 PM. 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, Umar Cheema can be reached at (571) 270-3037. 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. ALINA BOUTAH Primary Examiner Art Unit 2458 /ALINA A BOUTAH/Primary Examiner, Art Unit 2458
Read full office action

Prosecution Timeline

Jul 31, 2023
Application Filed
May 02, 2025
Non-Final Rejection — §102, §103
Jul 29, 2025
Response Filed
Aug 18, 2025
Final Rejection — §102, §103
Nov 14, 2025
Response after Non-Final Action
Dec 19, 2025
Request for Continued Examination
Jan 08, 2026
Response after Non-Final Action
Jan 12, 2026
Non-Final Rejection — §102, §103
Apr 03, 2026
Response Filed

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12568025
AUTOMATIC CONFIGURATION OF IOT DEVICES FOR ONLINE DATA BROKERAGE SERVICES
2y 5m to grant Granted Mar 03, 2026
Patent 12568000
METHOD AND DEVICE FOR PERFORMING FEDERATED LEARNING IN WIRELESS COMMUNICATION SYSTEM
2y 5m to grant Granted Mar 03, 2026
Patent 12563449
MECHANISM FOR OPERATION OF 3GPP TSN VIRTUAL BRIDGE IN A CENTRALIZED NETWORK/DISTRIBUTED USER MODEL IN A 5G SYSTEM
2y 5m to grant Granted Feb 24, 2026
Patent 12562934
METHOD AND APPARATUS FOR BINDING PLURALITY OF ELECTRICAL DEVICES AND COMPUTER-READABLE STORAGE MEDIUM
2y 5m to grant Granted Feb 24, 2026
Patent 12556307
REDUCING TRANSMISSION OF DATA PACKETS IN DATA TRNASMISSION
2y 5m to grant Granted Feb 17, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

AI Strategy Recommendation

Get an AI-powered prosecution strategy using examiner precedents, rejection analysis, and claim mapping.
Powered by AI — typically takes 5-10 seconds

Prosecution Projections

3-4
Expected OA Rounds
90%
Grant Probability
86%
With Interview (-3.4%)
2y 8m
Median Time to Grant
High
PTA Risk
Based on 830 resolved cases by this examiner. Grant probability derived from career allow rate.

Sign in for Full Analysis

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

Free tier: 3 strategy analyses per month