US2017337258A1PendingUtilityA1

Classifying uniform resource locators

Assignee: IBMPriority: Jun 4, 2014Filed: Aug 8, 2017Published: Nov 23, 2017
Est. expiryJun 4, 2034(~7.8 yrs left)· nominal 20-yr term from priority
G06F 16/951G06F 16/285G06F 16/9535G06F 16/9566H04L 67/02G06F 17/30598G06F 17/30867H04L 61/306G06F 17/30887H04L 2101/30G06F 16/955
56
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

Classifying a uniform resource locator (URL) includes: generating a first bloom filter to associate a uniform resource locator (URL) with a first URL category from a pre-determined set of URL categories, programming the first bloom filter with a set of identified URLs in a URL database, each identified URL respectively corresponding to at least one URL category from the pre-determined set of URL categories, extracting a target URL from a network packet stream, determining a set of hash strides for the target URL, and querying the first bloom filter with each hash stride of the set of hash strides to identify a corresponding URL category for the target URL from the set of URL categories.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A method for classifying a uniform resource locator (URL), the method comprising:
 generating a first bloom filter to associate a uniform resource locator (URL) with a first URL category from a pre-determined set of URL categories;   programming the first bloom filter with a set of identified URLs in a URL database, each identified URL respectively corresponding to at least one URL category from the pre-determined set of URL categories;   extracting a target URL from a network packet stream;   determining a set of hash strides for the target URL; and   querying the first bloom filter with each hash stride of the set of hash strides to identify a corresponding URL category for the target URL from the set of URL categories.   
     
     
         2 . The method of  claim 1 , wherein the querying step is performed in a data plane. 
     
     
         3 . The method of  claim 1 , wherein the extracting step is performed inline with a data transmission. 
     
     
         4 . The method of  claim 1 , further comprising:
 responsive to querying the set of bloom filters, identifying a plurality of URL categories from the pre-determined set of URL categories corresponding to the target URL; and   determining a single URL category based on a programmable mapping table;   wherein:   the programmable mapping table defines the plurality of URL categories as the single URL category.   
     
     
         5 . The method of  claim 4 , further comprising:
 generating the programmable mapping table including a set of URL categories individually listed in the programmable mapping table and a plurality of URL categories grouped together in the programmable mapping table;   wherein the single URL category is associated with the plurality of URL categories.   
     
     
         6 . The method of  claim 1 , further comprising:
 creating a set of bloom filters, each bloom filter respectively corresponding to a pre-determined URL category of the set of pre-determined URL categories.   
     
     
         7 . The method of  claim 1 , further comprising:
 reporting the corresponding URL category in human-readable form.   
     
     
         8 . A computer program product comprising a computer readable storage medium having stored thereon:
 first program instructions programmed to generate a first bloom filter to associate a uniform resource locator (URL) with a first URL category from a pre-determined set of URL categories;   second program instructions programmed to program the first bloom filter with a set of identified URLs in a URL database, each identified URL respectively corresponding to at least one URL category from the pre-determined set of URL categories;   third program instructions programmed to extract a target URL from a network packet stream;   fourth program instructions programmed to determine a set of hash strides for the target URL; and   fifth program instructions programmed to query the first bloom filters including the first bloom filter and the plurality of bloom filters with each hash stride of the set of hash strides to identify a corresponding URL category for the target URL from the set of URL categories.   
     
     
         9 . The computer program product of  claim 8 , wherein the querying the set of bloom filters is performed in a data plane. 
     
     
         10 . The computer program product of  claim 8 , wherein the extracting the target URL is performed inline with a data transmission. 
     
     
         11 . The computer program product of  claim 8 , further comprising:
 fifth program instructions programmed to, responsive to querying the first bloom filter, identify a plurality of URL categories from the pre-determined set of URL categories corresponding to the target URL; and   sixth program instructions programmed to determine a single URL category based on a programmable mapping table;   wherein:   the programmable mapping table defines the plurality of URL categories as the single URL category.   
     
     
         12 . The computer program product of  claim 11 , further comprising:
 seventh program instructions programmed to generate the programmable mapping table including a set of URL categories individually listed in the programmable mapping table and a plurality of URL categories grouped together in the programmable mapping table;   wherein the single URL category is associated with the plurality of URL categories.   
     
     
         13 . The computer program product of  claim 8 , further comprising:
 fifth program instructions programmed to create a set of bloom filters, each bloom filter respectively corresponding to a pre-determined URL category of the set of pre-determined URL categories.   
     
     
         14 . The computer program product of  claim 8 , further comprising:
 fifth program instructions programmed to report the corresponding URL category in human-readable form.   
     
     
         15 . A computer system comprising:
 a processor(s) set; and   a non-transitory computer readable storage medium;   wherein:   the processor(s) set is structured, located, connected, and/or programmed to run program instructions stored on the non-transitory computer readable storage medium; and   the program instructions include:
 first program instructions programmed to generate a first bloom filter to associate a uniform resource locator (URL) with a first URL category from a pre-determined set of URL categories; 
 second program instructions programmed to program the first bloom filter with a set of identified URLs in a URL database, each identified URL respectively corresponding to at least one URL category from the pre-determined set of URL categories; 
 third program instructions programmed to extract a target URL from a network packet stream; 
 fourth program instructions programmed to determine a set of hash strides for the target URL; and 
 fifth program instructions programmed to query the first bloom filters including the first bloom filter and the plurality of bloom filters with each hash stride of the set of hash strides to identify a corresponding URL category for the target URL from the set of URL categories. 
   
     
     
         16 . The computer system of  claim 15 , wherein the querying the set of bloom filters is performed in a data plane. 
     
     
         17 . The computer system of  claim 15 , wherein the extracting the target URL is performed inline with a data transmission. 
     
     
         18 . The computer system of  claim 15 , further comprising:
 fifth program instructions programmed to, responsive to querying the first bloom filter, identify a plurality of URL categories from the pre-determined set of URL categories corresponding to the target URL; and   sixth program instructions programmed to determine a single URL category based on a programmable mapping table;   wherein:   the programmable mapping table defines the plurality of URL categories as the single URL category.   
     
     
         19 . The computer system of  claim 18 , further comprising:
 seventh program instructions programmed to generate the programmable mapping table including a set of URL categories individually listed in the programmable mapping table and a plurality of URL categories grouped together in the programmable mapping table;   wherein:   the single URL category is associated with the plurality of URL categories.   
     
     
         20 . The computer system of  claim 15 , further comprising:
 fifth program instructions programmed to create a set of bloom filters, each bloom filter respectively corresponding to a pre-determined URL category of the set of pre-determined URL categories.

Join the waitlist — get patent alerts

Track US2017337258A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.