A method and device for string matching HTTP headers. The method typically includes identifying a predefined string, identifying an unknown string to compare with the predefined string, performing a bitwise exclusive OR operation on an ASCII binary representation of at least one segment of the unkno
A method and device for string matching HTTP headers. The method typically includes identifying a predefined string, identifying an unknown string to compare with the predefined string, performing a bitwise exclusive OR operation on an ASCII binary representation of at least one segment of the unknown string and an ASCII binary representation of at least one segment of the predefined string, and identifying a case-insensitive string match based on the exclusive OR operation. The method may further include performing a bitwise operation with a predefined flag to determine the case-insensitive segment match.
대표청구항▼
I claim: 1. A computer-implemented method for comparing an unknown string to a predefined string, the method comprising: storing, on a network device, a database containing a plurality of predefined strings in ASCII binary representation, wherein the predefined strings stored within the database re
I claim: 1. A computer-implemented method for comparing an unknown string to a predefined string, the method comprising: storing, on a network device, a database containing a plurality of predefined strings in ASCII binary representation, wherein the predefined strings stored within the database represent known headers for a network communication protocol; receiving, with the network device, a network message having characters in ASCII binary representation, wherein a case of the characters of the received network message is unknown by the network device; in response to receiving the network message, selecting one of the plurality of predefined strings stored within the database of the network device; identifying a portion of the network message as an unknown string for comparison with the selected predefined string, wherein the unknown string and the selected predefined string have an equal number of characters; dividing the unknown string and the selected predefined string into segments, wherein the segments of the unknown string and the segments of the selected predefined string have an equal number of the characters; performing a bitwise exclusive OR operation between the ASCII binary representation of each of the segments of the unknown string and the ASCII binary representation of each of the segments of the selected predefined string; performing a bitwise operation between a predefined flag and each result of the exclusive OR operations, wherein the predefined flag has an equal number of characters as the result of the exclusive OR operation; comparing the predefined flag and each result of the bitwise operations to produce an indication for a case-insensitive string match, wherein the indication for the case-insensitive string match indicates whether all the characters of the segments of the unknown string within the network message match all the corresponding characters of the segments of the selected predefined string so as to match one of the known headers of the network communication protocol; processing the network message based on the indication of the case-insensitive string match; and outputting a response from the network device based on the processed network message. 2. The method of claim 1, further comprising identifying a segment of the selected predefined string and identifying a segment of the unknown string for comparison with the identified segment of the selected predefined string. 3. The method of claim 2, wherein the segment of the selected predefined string and the segment of the unknown string contain a same number of characters. 4. The method of claim 2, further including left-shifting the binary representation of the segments if the segments contain less than four characters. 5. The method of claim 2, wherein identifying a case-insensitive string match includes identifying a case-insensitive segment match based on the exclusive OR operation. 6. The method of claim 1, wherein the predefined flag is 0x20202020. 7. The method of claim 2, further comprising identifying a subsequent segment of the selected predefined string and a subsequent segment of the unknown string for comparison. 8. The method of claim 1, wherein the predefined flag is zero. 9. The method of claim 1, wherein the predefined flag is 0x20. 10. The method of claim 1, wherein the predefined flag is 0x20202020. 11. The method of claim 1, wherein the segment of the unknown string and the segment of the selected predefined string each include one character. 12. The method of claim 1, wherein the segment of the unknown string and the segment of the selected predefined string each include four characters. 13. The method of claim 1, wherein the unknown string includes an HTTP header field. 14. The method of claim 1, wherein the selected predefined string is from a table of predetermined HTTP header fields. 15. The method of claim 1, wherein identifying a case-insensitive match further includes performing another bitwise operation. 16. The method of claim 1, further comprising identifying the length of the strings. 17. The method of claim 16, wherein the length of each of the strings are equal. 18. The method of claim 1, wherein the computer-implemented method is used over a WAN. 19. The method of claim 1, further comprising determining if characters of the strings are within a predefined ASCII range. 20. The method of claim 19, wherein characters not within the predefined ASCII range caused the method to yield a negative string match. 21. An article of manufacture comprising a non-transitory storage medium having a plurality of machine-readable instructions, wherein when the instructions are executed by a computing system, the instructions providing for: storing, on a network device, a database containing a plurality of predefined strings in ASCII binary representation, wherein the predefined strings stored within the database represent known headers for a network communication protocol; receiving, with the network device, a network message in ASCII binary representation; in response to receiving the network message, selecting one of the plurality of predefined strings stored within the database of the network device; identifying a portion of the network message as an unknown string for comparison with the selected predefined string; dividing the unknown string and the selected predefined string into corresponding segments, wherein the segments of the unknown string and the segments of the selected predefined string have an equal number of the characters; for each of the segments of the unknown string, performing a bitwise exclusive OR operation between the ASCII binary representation of the segment of the unknown string and the ASCII binary representation of a corresponding segment of the selected predefined string, wherein the segment of the unknown string and the segment of the selected predefined string have an equal number of characters; for each of the exclusive OR operations, performing a bitwise operation between a predefined flag and a result of the exclusive OR operation; for each of the bitwise operations, comparing the predefined flag and a result of the bitwise OR operation to produce an indication for a case-insensitive string match between the predefined string and the unknown string, wherein the indication for the case-insensitive match indicates whether all characters of the unknown string within the network message match all corresponding characters of the identified predefined string so as to match one of the known headers of the network communication protocol; processing the network message based on the indication of the case-insensitive match; and outputting a response from the network device based on the processed network message.
연구과제 타임라인
LOADING...
LOADING...
LOADING...
LOADING...
LOADING...
이 특허에 인용된 특허 (29)
Hazra Rajeeb, Adaptive control of video encoder's bit allocation based on user-selected region-of-interest indication feedback from video decoder.
Alek Movshovich ; Robert H. Hoem ; Niranjan A. Puttaswamy ; Brian Lai, MPEG-2 transport demultiplexor architecture with non-time-critical post-processing of packet information.
James, David; Liu, Jung-Jen, Method of and apparatus for extracting a string of bits from a binary bit string and depositing a string of bits onto a binary bit string.
Brian J. Smith ; Hans Hurvig DK, Method, computer program product, and system for migrating URLs within a dynamically changing distributed cache of URLs.
Slater, Charles; Chennapragada, Krishna Rao, System for managing cluster of network switches using IP address for commander switch and redirecting a managing request via forwarding an HTTP connection to an expansion switch.
Clarke ; Jr. Edward Payson ; Flavin Robert Alan ; Nihal Perwaiz ; Purdy Geoffrey Hale ; Vogl Norbert George, System for parsing multimedia data into separate channels by network server in according to type of data and filtering out unwanted packets by client.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.