{"id":"https://openalex.org/W2101816905","doi":"https://doi.org/10.1145/1323548.1323550","title":"Ruler","display_name":"Ruler","publication_year":2007,"publication_date":"2007-12-03","ids":{"openalex":"https://openalex.org/W2101816905","doi":"https://doi.org/10.1145/1323548.1323550","mag":"2101816905"},"language":"en","primary_location":{"id":"doi:10.1145/1323548.1323550","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1323548.1323550","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 3rd ACM/IEEE Symposium on Architecture for networking and communications systems","raw_type":"proceedings-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":false,"oa_status":"closed","oa_url":null,"any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5083887265","display_name":"Tom\u00e1\u0161 Hrub\u00fd","orcid":null},"institutions":[],"countries":[],"is_corresponding":true,"raw_author_name":"Tomas Hruby","raw_affiliation_strings":["Vrije Universiteit Amsterdam and World45 Ltd"],"affiliations":[{"raw_affiliation_string":"Vrije Universiteit Amsterdam and World45 Ltd","institution_ids":[]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5062842605","display_name":"Kees van Reeuwijk","orcid":null},"institutions":[{"id":"https://openalex.org/I865915315","display_name":"Vrije Universiteit Amsterdam","ror":"https://ror.org/008xxew50","country_code":"NL","type":"education","lineage":["https://openalex.org/I865915315"]}],"countries":["NL"],"is_corresponding":false,"raw_author_name":"Kees van Reeuwijk","raw_affiliation_strings":["Vrije Universiteit Amsterdam","Vrije Universiteit Amsterdam ,"],"affiliations":[{"raw_affiliation_string":"Vrije Universiteit Amsterdam","institution_ids":["https://openalex.org/I865915315"]},{"raw_affiliation_string":"Vrije Universiteit Amsterdam ,","institution_ids":["https://openalex.org/I865915315"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5029566823","display_name":"Herbert Bos","orcid":"https://orcid.org/0000-0001-6179-1510"},"institutions":[{"id":"https://openalex.org/I865915315","display_name":"Vrije Universiteit Amsterdam","ror":"https://ror.org/008xxew50","country_code":"NL","type":"education","lineage":["https://openalex.org/I865915315"]}],"countries":["NL"],"is_corresponding":false,"raw_author_name":"Herbert Bos","raw_affiliation_strings":["Vrije Universiteit Amsterdam","Vrije Universiteit Amsterdam ,"],"affiliations":[{"raw_affiliation_string":"Vrije Universiteit Amsterdam","institution_ids":["https://openalex.org/I865915315"]},{"raw_affiliation_string":"Vrije Universiteit Amsterdam ,","institution_ids":["https://openalex.org/I865915315"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":3,"corresponding_author_ids":["https://openalex.org/A5083887265"],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":0.6333,"has_fulltext":false,"cited_by_count":14,"citation_normalized_percentile":{"value":0.71329158,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":90,"max":97},"biblio":{"volume":null,"issue":null,"first_page":"1","last_page":"10"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T12326","display_name":"Network Packet Processing and Optimization","score":1.0,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},"topics":[{"id":"https://openalex.org/T12326","display_name":"Network Packet Processing and Optimization","score":1.0,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10714","display_name":"Software-Defined Networks and 5G","score":0.9976999759674072,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10400","display_name":"Network Security and Intrusion Detection","score":0.9955000281333923,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8836768865585327},{"id":"https://openalex.org/keywords/packet-processing","display_name":"Packet processing","score":0.7359002828598022},{"id":"https://openalex.org/keywords/programmer","display_name":"Programmer","score":0.6147595047950745},{"id":"https://openalex.org/keywords/software-portability","display_name":"Software portability","score":0.5923548340797424},{"id":"https://openalex.org/keywords/network-packet","display_name":"Network packet","score":0.5047258138656616},{"id":"https://openalex.org/keywords/programming-paradigm","display_name":"Programming paradigm","score":0.47436246275901794},{"id":"https://openalex.org/keywords/computer-architecture","display_name":"Computer architecture","score":0.4486456513404846},{"id":"https://openalex.org/keywords/network-processor","display_name":"Network processor","score":0.4154300391674042},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.3632718026638031},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.33520951867103577},{"id":"https://openalex.org/keywords/computer-network","display_name":"Computer network","score":0.18428415060043335}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8836768865585327},{"id":"https://openalex.org/C2779581428","wikidata":"https://www.wikidata.org/wiki/Q7122997","display_name":"Packet processing","level":3,"score":0.7359002828598022},{"id":"https://openalex.org/C2778514511","wikidata":"https://www.wikidata.org/wiki/Q1374194","display_name":"Programmer","level":2,"score":0.6147595047950745},{"id":"https://openalex.org/C63000827","wikidata":"https://www.wikidata.org/wiki/Q3080428","display_name":"Software portability","level":2,"score":0.5923548340797424},{"id":"https://openalex.org/C158379750","wikidata":"https://www.wikidata.org/wiki/Q214111","display_name":"Network packet","level":2,"score":0.5047258138656616},{"id":"https://openalex.org/C34165917","wikidata":"https://www.wikidata.org/wiki/Q188267","display_name":"Programming paradigm","level":2,"score":0.47436246275901794},{"id":"https://openalex.org/C118524514","wikidata":"https://www.wikidata.org/wiki/Q173212","display_name":"Computer architecture","level":1,"score":0.4486456513404846},{"id":"https://openalex.org/C74366991","wikidata":"https://www.wikidata.org/wiki/Q2755335","display_name":"Network processor","level":3,"score":0.4154300391674042},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.3632718026638031},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.33520951867103577},{"id":"https://openalex.org/C31258907","wikidata":"https://www.wikidata.org/wiki/Q1301371","display_name":"Computer network","level":1,"score":0.18428415060043335}],"mesh":[],"locations_count":3,"locations":[{"id":"doi:10.1145/1323548.1323550","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1323548.1323550","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 3rd ACM/IEEE Symposium on Architecture for networking and communications systems","raw_type":"proceedings-article"},{"id":"pmh:oai:research.vu.nl:publications/c7fd5c11-53da-42af-aa56-d126f3ae02cb","is_oa":false,"landing_page_url":"http://www.scopus.com/inward/record.url?scp=77952283784&partnerID=8YFLogxK","pdf_url":null,"source":{"id":"https://openalex.org/S4306400546","display_name":"Digital Academic REpository of VU University Amsterdam (Vrije Universiteit Amsterdam)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I865915315","host_organization_name":"Vrije Universiteit Amsterdam","host_organization_lineage":["https://openalex.org/I865915315"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Hruby, T, Van Reeuwijk, K & Bos, H 2007, Ruler : High-speed packet matching and rewriting on NPUs. in ANCS'07 - Proceedings of the 2007 ACM Symposium on Architecture for Networking and Communications. pp. 1-10, 3rd ACM/IEEE Symposium on Architectures for Networking and Communications Systems, ANCS 2007, Orlando, FL, United States, 3/12/07. https://doi.org/10.1145/1323548.1323550","raw_type":"contributionToPeriodical"},{"id":"pmh:vu:oai:research.vu.nl:publications/c7fd5c11-53da-42af-aa56-d126f3ae02cb","is_oa":false,"landing_page_url":"https://research.vu.nl/en/publications/c7fd5c11-53da-42af-aa56-d126f3ae02cb","pdf_url":null,"source":{"id":"https://openalex.org/S4306401843","display_name":"Data Archiving and Networked Services (DANS)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I1322597698","host_organization_name":"Royal Netherlands Academy of Arts and Sciences","host_organization_lineage":["https://openalex.org/I1322597698"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"ANCS'07 - Proceedings of the 2007 ACM Symposium on Architecture for Networking and Communications, 1 - 10","raw_type":"info:eu-repo/semantics/conferencepaper"}],"best_oa_location":null,"sustainable_development_goals":[{"score":0.49000000953674316,"display_name":"Industry, innovation and infrastructure","id":"https://metadata.un.org/sdg/9"}],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":24,"referenced_works":["https://openalex.org/W109802382","https://openalex.org/W245277704","https://openalex.org/W1512979674","https://openalex.org/W1531610435","https://openalex.org/W1674877186","https://openalex.org/W2030102079","https://openalex.org/W2070030531","https://openalex.org/W2070908350","https://openalex.org/W2080202421","https://openalex.org/W2096474000","https://openalex.org/W2099290142","https://openalex.org/W2099964107","https://openalex.org/W2101547548","https://openalex.org/W2105977877","https://openalex.org/W2111128664","https://openalex.org/W2124007362","https://openalex.org/W2139418336","https://openalex.org/W2147228424","https://openalex.org/W2149695592","https://openalex.org/W2914541664","https://openalex.org/W3144157896","https://openalex.org/W4242309756","https://openalex.org/W4246819420","https://openalex.org/W4285719527"],"related_works":["https://openalex.org/W1606574587","https://openalex.org/W1556003661","https://openalex.org/W2097731574","https://openalex.org/W1233822343","https://openalex.org/W2097595905","https://openalex.org/W4235315652","https://openalex.org/W1993620881","https://openalex.org/W2390663577","https://openalex.org/W4243019710","https://openalex.org/W2017199760"],"abstract_inverted_index":{"Programming":[0],"specialized":[1],"network":[2,95],"processors":[3,10],"(NPU)":[4],"is":[5,67,179],"inherently":[6],"difficult.":[7],"Unlike":[8],"mainstream":[9],"where":[11],"architectural":[12],"features":[13,125],"such":[14,65,162],"as":[15],"out-of-order":[16],"execution":[17,57],"and":[18,54,59,107,175,185,200,215],"caches":[19],"hide":[20,145],"most":[21],"of":[22,25,30,36,51,84,147,150,193],"the":[23,37,74,85,91,123,148,154,187,191,194,211],"complexities":[24],"efficient":[26],"program":[27],"execution,":[28],"programmers":[29],"NPUs":[31],"face":[32],"a":[33,44,48,87,166],"'bare-metal'":[34,151],"view":[35],"architecture.":[38],"They":[39,117],"have":[40],"to":[41,110,113,133,138,181],"deal":[42],"with":[43,47],"multithreaded":[45],"environment":[46],"high":[49,114],"degree":[50],"parallelism,":[52],"pipelining":[53],"multiple,":[55],"heterogeneous,":[56],"units":[58],"memory":[60],"banks.":[61],"Software":[62],"development":[63],"on":[64,99,190,203,210],"architectures":[66,152],"expensive.":[68],"Moreover,":[69],"different":[70],"NPUs,":[71,128],"even":[72],"within":[73],"same":[75,92],"family,":[76],"differ":[77],"considerably":[78],"in":[79],"their":[80],"architecture,":[81],"making":[82],"portability":[83],"software":[86],"major":[88],"concern.":[89],"At":[90],"time":[93],"expensive":[94],"processing":[96,222],"applications":[97],"based":[98,202],"deep":[100,171],"packet":[101,172,176,198,221],"inspection":[102],"are":[103],"both":[104],"in-creasingly":[105],"important":[106],"increasingly":[108],"difficult":[109],"realize":[111],"due":[112],"link":[115],"rates.":[116,226],"could":[118],"potentially":[119],"benefit":[120],"greatly":[121],"from":[122,153],"hardware":[124],"offered":[126],"by":[127],"provided":[129],"they":[130],"were":[131],"easy":[132,180],"use.":[134],"We":[135,206],"therefore":[136],"propose":[137],"use":[139],"more":[140],"abstract":[141],"programming":[142,163],"models":[143],"that":[144,178],"much":[146],"complexity":[149],"programmer.":[155],"In":[156],"this":[157],"paper,":[158],"we":[159],"present":[160],"one":[161],"model:":[164],"Ruler,":[165],"flexible":[167],"high-level":[168],"language":[169],"for":[170],"in-spection":[173],"(DPI)":[174],"rewriting":[177],"learn,":[182],"platform":[183],"independent":[184],"lets":[186],"programmer":[188],"concentrate":[189],"functionality":[192],"application.":[195],"Ruler":[196],"provides":[197,219],"matching":[199],"rewrit-ing":[201],"regular":[204],"expressions.":[205],"describe":[207],"our":[208],"implementa-tion":[209],"Intel":[212],"IXP2xxx":[213],"NPU":[214],"show":[216],"how":[217],"it":[218],"versatile":[220],"at":[223],"gigabit":[224],"line":[225]},"counts_by_year":[{"year":2018,"cited_by_count":1},{"year":2016,"cited_by_count":1},{"year":2014,"cited_by_count":2},{"year":2013,"cited_by_count":3},{"year":2012,"cited_by_count":2}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2016-06-24T00:00:00"}
