Systems and methods for predicting fields in a data packet
DCFirst Claim
Patent Images
1. A method for predicting one or more fields of a packet having a plurality of fields, each of the fields storing data representing a value, the method comprising:
- receiving one or more of the fields of the packet;
analyzing the value of at least one of the received fields;
predicting how the packet will be processed by upper level protocols, application protocols or both based on the value of the at least one received field and further predicting a value of at least one other field of the packet not yet received, based on the value of the at least one received field; and
processing the packet based on the one or more received fields and the predicted at least one other field.
2 Assignments
Litigations
0 Petitions
Accused Products
Abstract
A system predicts one or more fields of a packet that includes multiple fields. Each of the fields stores a value. The system receives one or more of the fields of the packet and determines the value of at least one of the received fields (710). The system predicts a value of at least one other one of the fields of the packet based on the value of the received field before the other field is received (715). The system then processes the packet based on the received fields and the predicted field(s) (720).
-
Citations
57 Claims
-
1. A method for predicting one or more fields of a packet having a plurality of fields, each of the fields storing data representing a value, the method comprising:
-
receiving one or more of the fields of the packet; analyzing the value of at least one of the received fields; predicting how the packet will be processed by upper level protocols, application protocols or both based on the value of the at least one received field and further predicting a value of at least one other field of the packet not yet received, based on the value of the at least one received field; and processing the packet based on the one or more received fields and the predicted at least one other field. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A method for predicting one or more fields of a packet having a plurality of fields, each of the fields storing data representing a value, the method comprising:
-
receiving one or more of the fields of the packet; analyzing the value of at least one of the received fields; predicting a value of at least one other field of the packet not yet received, based on the value of the at least one received field; processing the packet based on the one or more received fields and the predicted at least one other field; receiving the at least one other field; receiving one or more additional fields of the packet after receiving the at least one other field; and rechecking the predicted value using the one or more additional fields.
-
-
14. A method for predicting one or more fields of a packet having a plurality of fields, each of the fields storing data representing a value, the method comprising:
-
receiving one or more of the fields of the packet; analyzing the value of at least one of the received fields; predicting a value of at least one other field of the packet not yet received, based on the value of the at least one received field; and processing the packet based on the one or more received fields and the predicted at least one other field; analyzing the value of at least one additional one of the received fields; and confirming the predicted value using the value of the at least one additional field. - View Dependent Claims (15)
-
-
16. A system for predicting one or more fields of a packet having a plurality of fields, each of the fields storing data representing a value, the system comprising:
-
means for obtaining one of the fields of the packet; means for determining the value of the obtained field; means for predicting how the packet will be processed by upper level protocols, application protocols or both based on the value of the obtained field and further predicting a value of at least one other field of the packet not vet received based on the prediction of how the packet will be processed; and means for processing the packet based on at least the obtained field and the predicted at least one other fields.
-
-
17. A system for predicting one or more fields of a packet having a plurality of fields, each of the fields storing data representing a value, the system comprising:
- a memory configured to store instructions; and
a processor configured to execute the instructions to receive one or more fields of the packet, determine the value of at least one of the received fields, predict how the packet will be processed by upper level protocols, application protocols or both based on the value of the obtained field and further predict a value of one or more other fields not yet received based on the value of the at least one received field, and process the packet based on the one or more received fields and the predicted one or more other fields. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24, 25, 26)
- a memory configured to store instructions; and
-
27. A system for predicting one or more fields of a packet having a plurality of fields, each of the fields storing data representing a value, the system comprising:
-
a memory configured to store instructions; and a processor configured to execute the instructions to receive one or more fields of the packet, determine the value of at least one of the received fields, predict a value of one or more other fields not yet received based on the value of the at least one received field, and process the packet based on the one or more received fields and the predicted one or more other fields, the processor further configured to receive one or more additional fields of the packet after receiving the one or more other fields and recheck the predicted value using the one or more additional fields.
-
-
28. A system for predicting one or more fields of a packet having a plurality of fields, each of the fields storing data representing a value, the system comprising:
- a memory configured to store instructions; and
a processor configured to execute the instructions to receive one or more fields of the packet, determine the value of at least one of the received fields, predict a value of one or more other fields not yet received based on the value of the at least one received field, and process the packet based on the one or more received fields and the predicted one or more other fields; the processor further configured to analyze the value of at least one additional one of the received fields and confirm the predicted value using the value of the at least one additional field. - View Dependent Claims (29)
- a memory configured to store instructions; and
-
30. A computer-readable medium embodied in a tangible form that stores instructions executable by one or more processors to perform a method for predicting at least one field of a packet, the packet including a plurality of fields, the computer-readable medium comprising:
-
instructions for obtaining one or more of the fields of the packet; instructions for predicting how the packet will be processed by upper level protocols, application protocols or both based on the value of the obtained field and further predicting at least one other field based on at least one of the one or more obtained fields before the at least one other field is received; and instructions for processing the packet based on the one or more obtained fields and the predicted at least one other field. - View Dependent Claims (31, 32, 33, 34, 35, 36, 37, 38, 39, 40)
-
-
41. A computer-readable medium embodied in a tangible form that stores instructions executable by one or more processors to perform a method for predicting at least one field of a packet, the packet including a plurality of fields, the computer-readable medium comprising:
-
instructions for obtaining one or more of the fields of the packet; instructions for predicting at least one other field based on at least one of the one or more obtained fields before the at least one other field is received; instructions for processing the packet based on the one or more obtained fields and the predicted at least one other field; instructions for obtaining one or more additional fields of the packet after obtaining the at least one other field; and instructions for rechecking the predicted at least one other field using the one or more additional fields.
-
-
42. A computer-readable medium embodied in a tangible form that stores instructions executable by one or more processors to perform a method for predicting at least one field of a packet, the packet including a plurality of fields, the computer-readable medium comprising:
-
instructions for obtaining one or more of the fields of the packet; instructions for predicting at least one other field based on at least one of the one or more obtained fields before the at least one other field is received; instructions for processing the packet based on the one or more obtained fields and the predicted at least one other field; instructions for analyzing at least one additional one of the obtained fields; and instructions for confirming the predicted at least one other field using the at least one additional field. - View Dependent Claims (43)
-
-
44. A method for replying to packets that have a plurality of fields, before the packets are entirely received, comprising:
-
receiving one or more fields of a packet; predicting how the packet will be processed by upper level protocols, application protocols or both based on the value of at least one of the received fields and further predicting one or more other fields of the packet before the one or more other fields are received; generating a reply packet based on the one or more received fields and the predicted one or more other fields; and transmitting the reply packet. - View Dependent Claims (45, 46, 47, 48)
-
-
49. A system for replying to packets that have a plurality of fields, before the packets are completely received, comprising:
-
a memory configured to store instructions for obtaining one or more fields of a packet, predicting how the packet will be processed by upper level protocols, application protocols or both based on the value of at least one of the obtained fields and further predicting one or more other fields of the packet before the one or more other fields are obtained, generating a reply packet based on the one or more obtained fields and the predicted one or more other fields, and transmitting the reply packet; and a processor configured to execute the instructions in the memory. - View Dependent Claims (50, 51, 52, 53)
-
-
54. A computer-readable medium embodied in a tangible form that stores instructions executable by one or more processors to perform a method for generating responses to packets having a plurality of fields, before the packets are entirely received, the method comprising:
-
receiving one or more fields of a packet; predicting how the packet will be processed by upper level protocols, application protocols or both based on the value of at least one of the received fields and further predicting one or more other fields of the packet before the one or more other fields are received; and generating a reply packet based on the one or more received fields and the predicted one or more other fields.
-
-
55. A method for processing packets having a plurality of fields, comprising:
-
receiving one or more fields of a packet; determining a value associated with at least one of the received fields; predicting how the packet will be processed by upper level protocols, application protocols or both based on the value of the at least one received fields and further predicting a value of one or more other fields of the packet based on the value of the at least one received field before the one or more other fields are received; and generating a reply packet based on the one or more received fields and the predicted one or more other fields.
-
-
56. A method for predicting a protocol field or a flags field of a packet, comprising:
-
receiving a plurality of fields of the packet, one of the fields including a total length field; analyzing a value of data stored in the total length field; predicting a value of data stored in the protocol field or the flags field based on the value of the total length field before the protocol field or flags field is received; and processing the packet based on the received fields and the predicted protocol field or flags field.
-
-
57. A device that predicts one or more fields of a packet having a plurality of fields, each of the fields storing data representing a value, the device comprising:
-
logic configured to receive one or more fields of the packet; logic configured to determine the value of at least one of the received fields; logic configured to predict how the packet will be processed by upper level protocols, application protocols or both based on the value of the at least one of the received fields and further predict a value of one or more other fields based on the value of the at least one received field before the one or more other fields are received; and logic configured to process the packet based on the one or more received fields and the predicted one or more other fields.
-
Specification