{"search_session":{},"preferences":{"l":"fr","queryLanguage":"fr"},"patentId":"080-159-303-416-924","frontPageModel":{"patentViewModel":{"ref":{"entityRefId":"080-159-303-416-924","entityRefType":"PATENT"},"entityMetadata":{"linkedIds":{"empty":true},"tags":[],"collections":[{"id":211969,"type":"PATENT","title":"Cited_by_SEPS_1","description":"","access":"OPEN_ACCESS","displayAvatar":true,"attested":false,"itemCount":99996,"tags":[],"user":{"id":466368769,"username":"JPG","firstName":"Janpieter","lastName":"van der Pol","created":"2022-08-15T07:57:29.000Z","displayName":"Janpieter Van Der Pol","preferences":"{}","accountType":"INSTITUTIONAL","isOauthOnly":false},"notes":[],"sharedType":"PUBLISHED","hasLinkedSavedQueries":false,"savedQueries":[],"created":"2023-08-10T15:30:18Z","updated":"2023-08-10T15:33:21Z","lastEventDate":"2023-08-10T15:33:21Z"}],"notes":[],"inventorships":[],"privateCollections":[],"publicCollections":[{"id":211969,"type":"PATENT","title":"Cited_by_SEPS_1","description":"","access":"OPEN_ACCESS","displayAvatar":true,"attested":false,"itemCount":99996,"tags":[],"user":{"id":466368769,"username":"JPG","firstName":"Janpieter","lastName":"van der Pol","created":"2022-08-15T07:57:29.000Z","displayName":"Janpieter Van Der Pol","preferences":"{}","accountType":"INSTITUTIONAL","isOauthOnly":false},"notes":[],"sharedType":"PUBLISHED","hasLinkedSavedQueries":false,"savedQueries":[],"created":"2023-08-10T15:30:18Z","updated":"2023-08-10T15:33:21Z","lastEventDate":"2023-08-10T15:33:21Z"}],"privateNotes":[],"landscapeCollections":[],"landscapeNotes":[]},"document":{"record_lens_id":"080-159-303-416-924","lens_id":["080-159-303-416-924","193-314-959-685-603"],"doc_key":"US_20150208318_A1_20150723","created":"2016-01-15T21:08:08.104","docdb_id":442563823,"lens_internal":{"earliest_lens_id_created_time":"2016-01-15T21:08:08.104","last_modified":"2024-03-24T21:43:36.441","legacy_pub_key":"US_2015_0208318_A1","has_doc_lang":true,"has_biblio_lang":true,"has_all_title_lang":true,"has_all_abstract_lang":true,"has_all_claims_lang":true,"has_description_lang":true},"jurisdiction":"US","doc_number":"20150208318","kind":"A1","date_published":"2015-07-23","year_published":2015,"ids":["US_2015_0208318_A1","080-159-303-416-924","193-314-959-685-603","US_20150208318_A1_20150723","US","20150208318","A1","US20150208318A1","US20150208318","20150208318A1"],"lang":"en","publication_type":"PATENT_APPLICATION","application_reference":{"jurisdiction":"US","doc_number":"201414161406","kind":"A","date":"2014-01-22"},"priority_claim":[{"jurisdiction":"US","doc_number":"201414161406","kind":"A","date":"2014-01-22"}],"priority_claim.source":"DOCDB","earliest_priority_claim_date":"2014-01-22","title":{"en":[{"text":"SERVICE-ORIENTED ROUTING IN SOFTWARE-DEFINED MANETS","lang":"en","source":"DOCDB","data_format":"DOCDBA"}]},"title_lang":["en"],"has_title":true,"applicant":[{"name":"PALO ALTO RES CT INC","residence":"US","sequence":1,"app_type":"applicant"}],"applicant_count":1,"has_applicant":true,"inventor":[{"name":"MOSKO MARC E","residence":"US","sequence":1},{"name":"GARCIA-LUNA-ACEVES JOSE J","residence":"US","sequence":2}],"inventor_count":2,"has_inventor":true,"agent":[],"agent_count":0,"has_agent":false,"owner":[{"name":"CISCO TECHNOLOGY INC","address":"170 WEST TASMAN DRIVE, SAN JOSE, CALIFORNIA, 95134-1706","sequence":2,"recorded_date":"2017-02-14","execution_date":"2017-02-10","is_current_owner":true}],"owner_count":1,"owner_all":[{"name":"CISCO SYSTEMS INC","address":"170 WEST TASMAN DRIVE, SAN JOSE, CALIFORNIA, 95134-1706","sequence":5,"recorded_date":"2017-02-14","execution_date":"2017-01-10","is_current_owner":false},{"name":"CISCO TECHNOLOGY INC","address":"170 WEST TASMAN DRIVE, SAN JOSE, CALIFORNIA, 95134-1706","sequence":2,"recorded_date":"2017-02-14","execution_date":"2017-02-10","is_current_owner":true},{"name":"PALO ALTO RESEARCH CENTER INCORPORATED","address":"3333 COYOTE HILL ROAD, PALO ALTO, CALIFORNIA, 94304","sequence":3,"recorded_date":"2014-01-23","execution_date":"2014-01-22","is_current_owner":false}],"owner_all_count":3,"has_owner":true,"has_examiner":false,"class_ipcr":[{"symbol":"H04W40/04","version_indicator":"2009-01-01","class_symbol_position":"F","class_value":"I","action_date":"2015-07-23","class_status":"B","class_data_source":"H","generating_office":"US","sequence":1},{"symbol":"H04L45/42","version_indicator":"2022-01-01","class_symbol_position":"L","class_value":"I","action_date":"2021-10-28","class_status":"R","class_data_source":"M","generating_office":"US","sequence":2}],"class_ipcr.first_symbol":"H04W40/04","class_ipcr.later_symbol":["H04L45/42"],"class_ipcr.inv_symbol":["H04W40/04","H04L45/42"],"class_ipcr.add_symbol":[],"class_ipcr.source":"DOCDB","class_cpc":[{"symbol":"H04L45/42","version_indicator":"2013-01-01","class_symbol_position":"L","class_value":"A","action_date":"2015-04-24","class_status":"B","class_data_source":"H","generating_office":"EP","sequence":1},{"symbol":"H04W40/24","version_indicator":"2013-01-01","class_symbol_position":"L","class_value":"A","action_date":"2015-09-30","class_status":"B","class_data_source":"H","generating_office":"EP","sequence":2},{"symbol":"H04L45/124","version_indicator":"2013-01-01","class_symbol_position":"L","class_value":"A","action_date":"2015-09-30","class_status":"B","class_data_source":"H","generating_office":"EP","sequence":3},{"symbol":"H04W40/04","version_indicator":"2013-01-01","class_symbol_position":"F","class_value":"I","action_date":"2015-07-23","class_status":"B","class_data_source":"H","generating_office":"EP","sequence":4},{"symbol":"H04W40/32","version_indicator":"2013-01-01","class_symbol_position":"L","class_value":"A","action_date":"2015-07-23","class_status":"B","class_data_source":"H","generating_office":"EP","sequence":5},{"symbol":"H04L41/40","version_indicator":"2022-05-01","class_symbol_position":"L","class_value":"I","action_date":"2022-05-18","class_status":"R","class_data_source":"H","generating_office":"EP","sequence":6},{"symbol":"H04L41/122","version_indicator":"2022-05-01","class_symbol_position":"L","class_value":"I","action_date":"2022-05-18","class_status":"R","class_data_source":"H","generating_office":"EP","sequence":7},{"symbol":"H04L45/124","version_indicator":"2013-01-01","class_symbol_position":"L","class_value":"I","action_date":"2016-07-22","class_status":"B","class_data_source":"H","generating_office":"KR","sequence":8},{"symbol":"H04L45/38","version_indicator":"2013-01-01","class_symbol_position":"L","class_value":"I","action_date":"2016-07-22","class_status":"B","class_data_source":"H","generating_office":"KR","sequence":9},{"symbol":"H04L45/42","version_indicator":"2013-01-01","class_symbol_position":"L","class_value":"I","action_date":"2016-07-22","class_status":"B","class_data_source":"H","generating_office":"KR","sequence":10},{"symbol":"H04L45/44","version_indicator":"2013-01-01","class_symbol_position":"L","class_value":"I","action_date":"2016-07-22","class_status":"B","class_data_source":"H","generating_office":"KR","sequence":11},{"symbol":"H04L45/64","version_indicator":"2013-01-01","class_symbol_position":"L","class_value":"I","action_date":"2016-07-22","class_status":"B","class_data_source":"H","generating_office":"KR","sequence":12},{"symbol":"H04W40/00","version_indicator":"2013-01-01","class_symbol_position":"L","class_value":"I","action_date":"2016-07-22","class_status":"B","class_data_source":"H","generating_office":"KR","sequence":13},{"symbol":"H04W40/04","version_indicator":"2013-01-01","class_symbol_position":"L","class_value":"I","action_date":"2016-07-22","class_status":"B","class_data_source":"H","generating_office":"KR","sequence":14},{"symbol":"H04W40/24","version_indicator":"2013-01-01","class_symbol_position":"L","class_value":"I","action_date":"2016-07-22","class_status":"B","class_data_source":"H","generating_office":"KR","sequence":15},{"symbol":"H04W40/32","version_indicator":"2013-01-01","class_symbol_position":"L","class_value":"I","action_date":"2016-07-22","class_status":"B","class_data_source":"H","generating_office":"KR","sequence":16},{"symbol":"H04W84/18","version_indicator":"2013-01-01","class_symbol_position":"F","class_value":"I","action_date":"2016-07-22","class_status":"B","class_data_source":"H","generating_office":"KR","sequence":17},{"symbol":"H04W40/04","version_indicator":"2013-01-01","class_symbol_position":"F","class_value":"I","action_date":"2015-07-23","class_status":"B","class_data_source":"H","generating_office":"US","sequence":18},{"symbol":"H04W40/32","version_indicator":"2013-01-01","class_symbol_position":"L","class_value":"A","action_date":"2015-07-23","class_status":"B","class_data_source":"H","generating_office":"US","sequence":19},{"symbol":"H04W84/18","version_indicator":"2013-01-01","class_symbol_position":"L","class_value":"A","action_date":"2015-07-23","class_status":"B","class_data_source":"H","generating_office":"US","sequence":20},{"symbol":"H04L45/42","version_indicator":"2013-01-01","class_symbol_position":"L","class_value":"A","action_date":"2015-04-24","class_status":"B","class_data_source":"H","generating_office":"US","sequence":21},{"symbol":"H04W40/24","version_indicator":"2013-01-01","class_symbol_position":"L","class_value":"A","action_date":"2015-09-30","class_status":"B","class_data_source":"H","generating_office":"US","sequence":22},{"symbol":"H04L45/124","version_indicator":"2013-01-01","class_symbol_position":"L","class_value":"A","action_date":"2015-09-30","class_status":"B","class_data_source":"H","generating_office":"US","sequence":23},{"symbol":"H04L41/12","version_indicator":"2013-01-01","class_symbol_position":"L","class_value":"I","action_date":"2017-03-21","class_status":"B","class_data_source":"H","generating_office":"US","sequence":24}],"class_cpc_cset":[],"class_cpc.first_symbol":"H04W40/04","class_cpc.later_symbol":["H04L45/42","H04W40/24","H04L45/124","H04W40/32","H04L41/40","H04L41/122","H04L45/124","H04L45/38","H04L45/42","H04L45/44","H04L45/64","H04W40/00","H04W40/04","H04W40/24","H04W40/32","H04W40/32","H04W84/18","H04L45/42","H04W40/24","H04L45/124","H04L41/12"],"class_cpc.inv_symbol":["H04W40/04","H04L41/40","H04L41/122","H04L45/124","H04L45/38","H04L45/42","H04L45/44","H04L45/64","H04W40/00","H04W40/04","H04W40/24","H04W40/32","H04W84/18","H04W40/04","H04L41/12"],"class_cpc.add_symbol":["H04L45/42","H04W40/24","H04L45/124","H04W40/32","H04W40/32","H04W84/18","H04L45/42","H04W40/24","H04L45/124"],"class_cpc.source":"DOCDB","class_national":[],"class_national.later_symbol":[],"reference_cited":[{"patent":{"num":1,"document_id":{"jurisdiction":"US","doc_number":"2006268792","kind":"A1","date":"2006-11-30","name":"BELCEA JOHN M [US]"},"lens_id":"088-979-915-614-678","srep_office":"US","category":[],"us_category":[],"cited_phase":"PRS","rel_claims":[],"sequence":1}},{"patent":{"num":2,"document_id":{"jurisdiction":"US","doc_number":"2008151755","kind":"A1","date":"2008-06-26","name":"NISHIOKA ITARU [JP]"},"lens_id":"084-407-599-387-24X","srep_office":"US","category":[],"us_category":[],"cited_phase":"PRS","rel_claims":[],"sequence":2}},{"patent":{"num":3,"document_id":{"jurisdiction":"US","doc_number":"2010185753","kind":"A1","date":"2010-07-22","name":"LIU HANG [US], et al"},"lens_id":"145-586-067-708-476","srep_office":"US","category":[],"us_category":[],"cited_phase":"PRS","rel_claims":[],"sequence":3}},{"patent":{"num":4,"document_id":{"jurisdiction":"US","doc_number":"2010246549","kind":"A1","date":"2010-09-30","name":"ZHANG QINQING [US], et al"},"lens_id":"014-607-543-509-233","srep_office":"US","category":[],"us_category":[],"cited_phase":"PRS","rel_claims":[],"sequence":4}},{"patent":{"num":5,"document_id":{"jurisdiction":"US","doc_number":"2013282920","kind":"A1","date":"2013-10-24","name":"ZHANG XINWEN [US], et al"},"lens_id":"007-804-529-952-65X","srep_office":"US","category":[],"us_category":[],"cited_phase":"PRS","rel_claims":[],"sequence":5}},{"patent":{"num":6,"document_id":{"jurisdiction":"US","doc_number":"2014003232","kind":"A1","date":"2014-01-02","name":"GUICHARD JAMES [US], et al"},"lens_id":"069-261-961-412-725","srep_office":"US","category":[],"us_category":[],"cited_phase":"PRS","rel_claims":[],"sequence":6}},{"patent":{"num":7,"document_id":{"jurisdiction":"US","doc_number":"8832302","kind":"B1","date":"2014-09-09","name":"BRADFORD RICHARD M [US], et al"},"lens_id":"066-471-348-224-204","srep_office":"US","category":[],"us_category":[],"cited_phase":"PRS","rel_claims":[],"sequence":7}},{"patent":{"num":8,"document_id":{"jurisdiction":"US","doc_number":"2015063802","kind":"A1","date":"2015-03-05","name":"BAHADUR NITIN [US], et al"},"lens_id":"087-002-082-765-096","srep_office":"US","category":[],"us_category":[],"cited_phase":"PRS","rel_claims":[],"sequence":8}},{"patent":{"num":9,"document_id":{"jurisdiction":"US","doc_number":"2008123558","kind":"A1","date":"2008-05-29","name":"CHHABRA KAPIL [US]"},"lens_id":"107-852-206-839-136","srep_office":"US","category":[],"us_category":[],"cited_phase":"PRS","rel_claims":[],"sequence":9}},{"patent":{"num":10,"document_id":{"jurisdiction":"US","doc_number":"2010254309","kind":"A1","date":"2010-10-07","name":"MANKINS DAVID PATRICK [US], et al"},"lens_id":"120-438-522-709-015","srep_office":"US","category":[],"us_category":[],"cited_phase":"PRS","rel_claims":[],"sequence":10}},{"patent":{"num":11,"document_id":{"jurisdiction":"US","doc_number":"2012042075","kind":"A1","date":"2012-02-16","name":"GOETZ MICHAEL C [US], et al"},"lens_id":"153-264-679-646-278","srep_office":"US","category":[],"us_category":[],"cited_phase":"PRS","rel_claims":[],"sequence":11}},{"patent":{"num":12,"document_id":{"jurisdiction":"US","doc_number":"2013159550","kind":"A1","date":"2013-06-20","name":"VASSEUR JEAN-PHILIPPE [FR]"},"lens_id":"114-282-032-134-022","srep_office":"US","category":[],"us_category":[],"cited_phase":"PRS","rel_claims":[],"sequence":12}},{"patent":{"num":13,"document_id":{"jurisdiction":"US","doc_number":"2013191688","kind":"A1","date":"2013-07-25","name":"AGARWAL NAVNEET [IN], et al"},"lens_id":"096-369-066-224-502","srep_office":"US","category":[],"us_category":[],"cited_phase":"PRS","rel_claims":[],"sequence":13}},{"patent":{"num":14,"document_id":{"jurisdiction":"US","doc_number":"8654649","kind":"B2","date":"2014-02-18","name":"VASSEUR JEAN-PHILIPPE [FR], et al"},"lens_id":"011-074-627-515-19X","srep_office":"US","category":[],"us_category":[],"cited_phase":"PRS","rel_claims":[],"sequence":14}},{"patent":{"num":15,"document_id":{"jurisdiction":"US","doc_number":"8862774","kind":"B2","date":"2014-10-14","name":"VASSEUR JEAN-PHILIPPE [FR], et al"},"lens_id":"125-232-521-596-15X","srep_office":"US","category":[],"us_category":[],"cited_phase":"PRS","rel_claims":[],"sequence":15}},{"patent":{"num":16,"document_id":{"jurisdiction":"US","doc_number":"2010250710","kind":"A1","date":"2010-09-30","name":"CADWELL ERIC [US], et al"},"lens_id":"043-225-893-155-875","srep_office":"US","category":[],"us_category":[],"cited_phase":"PRS","rel_claims":[],"sequence":16}},{"patent":{"num":17,"document_id":{"jurisdiction":"US","doc_number":"2010306280","kind":"A1","date":"2010-12-02","name":"SAPEK ADAM [US]"},"lens_id":"198-880-975-042-497","srep_office":"US","category":[],"us_category":[],"cited_phase":"PRS","rel_claims":[],"sequence":17}},{"patent":{"num":18,"document_id":{"jurisdiction":"US","doc_number":"2013137473","kind":"A1","date":"2013-05-30","name":"WATANABE YOSHINORI [JP], et al"},"lens_id":"103-166-111-370-245","srep_office":"US","category":[],"us_category":[],"cited_phase":"PRS","rel_claims":[],"sequence":18}},{"patent":{"num":19,"document_id":{"jurisdiction":"US","doc_number":"2015006571","kind":"A1","date":"2015-01-01","name":"VARVELLO MATTEO [US], et al"},"lens_id":"025-729-161-516-483","srep_office":"US","category":[],"us_category":[],"cited_phase":"PRS","rel_claims":[],"sequence":19}},{"patent":{"num":20,"document_id":{"jurisdiction":"US","doc_number":"2011158232","kind":"A1","date":"2011-06-30","name":"NESBITT DAVID W [US], et al"},"lens_id":"119-412-487-737-529","srep_office":"US","category":[],"us_category":[],"cited_phase":"PRS","rel_claims":[],"sequence":20}},{"patent":{"num":21,"document_id":{"jurisdiction":"US","doc_number":"2012030150","kind":"A1","date":"2012-02-02","name":"MCAULEY ANTHONY [US], et al"},"lens_id":"143-049-611-781-655","srep_office":"US","category":[],"us_category":[],"cited_phase":"PRS","rel_claims":[],"sequence":21}},{"patent":{"num":22,"document_id":{"jurisdiction":"US","doc_number":"2007067452","kind":"A1","date":"2007-03-22","name":"FUNG CASEY K [US], et al"},"lens_id":"186-843-135-762-864","srep_office":"US","category":[],"us_category":[],"cited_phase":"PRS","rel_claims":[],"sequence":22}},{"patent":{"num":23,"document_id":{"jurisdiction":"US","doc_number":"2012195229","kind":"A1","date":"2012-08-02","name":"CHEN HUAIMO [US]"},"lens_id":"138-164-013-347-720","srep_office":"US","category":[],"us_category":[],"cited_phase":"PRS","rel_claims":[],"sequence":23}},{"patent":{"num":24,"document_id":{"jurisdiction":"US","doc_number":"2013094404","kind":"A1","date":"2013-04-18","name":"VAN WYK HARTMAN [FR], et al"},"lens_id":"123-338-548-112-170","srep_office":"US","category":[],"us_category":[],"cited_phase":"PRS","rel_claims":[],"sequence":24}},{"patent":{"num":25,"document_id":{"jurisdiction":"US","doc_number":"2014098710","kind":"A1","date":"2014-04-10","name":"ONG LYNDON Y [US]"},"lens_id":"006-450-456-054-282","srep_office":"US","category":[],"us_category":[],"cited_phase":"PRS","rel_claims":[],"sequence":25}},{"patent":{"num":26,"document_id":{"jurisdiction":"US","doc_number":"2016248664","kind":"A1","date":"2016-08-25","name":"HUANG KAIYUAN [CA]"},"lens_id":"120-611-904-965-619","srep_office":"US","category":[],"us_category":[],"cited_phase":"PRS","rel_claims":[],"sequence":26}}],"reference_cited.source":"DOCDB","reference_cited.patent_count":26,"cites_patent":true,"reference_cited.npl_count":0,"reference_cited.npl_resolved_count":0,"cites_npl":false,"cites_resolved_npl":false,"cited_by":{"patent_count":17,"patent":[{"lens_id":"102-775-382-960-922","document_id":{"jurisdiction":"US","doc_number":"9942934","kind":"B2"}},{"lens_id":"072-391-231-691-981","document_id":{"jurisdiction":"US","doc_number":"20190149419","kind":"A1"}},{"lens_id":"015-501-450-012-528","document_id":{"jurisdiction":"US","doc_number":"20170127466","kind":"A1"}},{"lens_id":"186-602-624-497-005","document_id":{"jurisdiction":"US","doc_number":"9936052","kind":"B2"}},{"lens_id":"190-787-556-515-58X","document_id":{"jurisdiction":"US","doc_number":"10785697","kind":"B2"}},{"lens_id":"048-615-377-263-883","document_id":{"jurisdiction":"US","doc_number":"20190116543","kind":"A1"}},{"lens_id":"077-638-432-072-419","document_id":{"jurisdiction":"US","doc_number":"10631226","kind":"B2"}},{"lens_id":"107-981-998-416-887","document_id":{"jurisdiction":"US","doc_number":"10292198","kind":"B2"}},{"lens_id":"166-544-954-218-859","document_id":{"jurisdiction":"CN","doc_number":"110138676","kind":"A"}},{"lens_id":"021-772-289-614-646","document_id":{"jurisdiction":"US","doc_number":"10367726","kind":"B1"}},{"lens_id":"062-819-505-878-033","document_id":{"jurisdiction":"US","doc_number":"11811642","kind":"B2"}},{"lens_id":"008-362-617-073-365","document_id":{"jurisdiction":"RU","doc_number":"2734021","kind":"C1"}},{"lens_id":"005-675-520-428-113","document_id":{"jurisdiction":"US","doc_number":"11252077","kind":"B2"}},{"lens_id":"030-160-470-104-690","document_id":{"jurisdiction":"US","doc_number":"11765642","kind":"B2"}},{"lens_id":"066-601-241-418-706","document_id":{"jurisdiction":"US","doc_number":"20230254754","kind":"A1"}},{"lens_id":"096-894-867-220-910","document_id":{"jurisdiction":"US","doc_number":"9967909","kind":"B2"}},{"lens_id":"085-612-024-285-444","document_id":{"jurisdiction":"US","doc_number":"11184240","kind":"B2"}}]},"cited_by_patent":true,"family":{"simple":{"size":6,"id":186404028,"member":[{"lens_id":"185-768-517-053-314","document_id":{"jurisdiction":"KR","doc_number":"20150087797","kind":"A","date":"2015-07-30"}},{"lens_id":"083-693-912-578-303","document_id":{"jurisdiction":"EP","doc_number":"2899931","kind":"A1","date":"2015-07-29"}},{"lens_id":"132-675-398-554-128","document_id":{"jurisdiction":"JP","doc_number":"2015139220","kind":"A","date":"2015-07-30"}},{"lens_id":"065-132-640-017-920","document_id":{"jurisdiction":"US","doc_number":"10172068","kind":"B2","date":"2019-01-01"}},{"lens_id":"038-652-584-307-754","document_id":{"jurisdiction":"EP","doc_number":"2899931","kind":"B1","date":"2018-03-21"}},{"lens_id":"080-159-303-416-924","document_id":{"jurisdiction":"US","doc_number":"20150208318","kind":"A1","date":"2015-07-23"}}]},"extended":{"size":6,"id":186375917,"member":[{"lens_id":"185-768-517-053-314","document_id":{"jurisdiction":"KR","doc_number":"20150087797","kind":"A","date":"2015-07-30"}},{"lens_id":"065-132-640-017-920","document_id":{"jurisdiction":"US","doc_number":"10172068","kind":"B2","date":"2019-01-01"}},{"lens_id":"132-675-398-554-128","document_id":{"jurisdiction":"JP","doc_number":"2015139220","kind":"A","date":"2015-07-30"}},{"lens_id":"083-693-912-578-303","document_id":{"jurisdiction":"EP","doc_number":"2899931","kind":"A1","date":"2015-07-29"}},{"lens_id":"080-159-303-416-924","document_id":{"jurisdiction":"US","doc_number":"20150208318","kind":"A1","date":"2015-07-23"}},{"lens_id":"038-652-584-307-754","document_id":{"jurisdiction":"EP","doc_number":"2899931","kind":"B1","date":"2018-03-21"}}]}},"has_sequence":false,"legal_status":{"ipr_type":"patent for invention","granted":true,"earliest_filing_date":"2014-01-22","grant_date":"2019-01-01","anticipated_term_date":"2034-01-22","has_disclaimer":false,"patent_status":"ACTIVE","publication_count":2,"has_spc":false,"has_grant_event":true,"has_entry_into_national_phase":false},"abstract":{"en":[{"text":"One embodiment provides a mobile ad-hoc network (MANET). The MANET includes a plurality of mobile nodes and a centralized controller node. The controller node includes a receiving mechanism configured to receive, from a source mobile node, a request for a service, with the request including an identifier associated with the requested service; an identification mechanism configured to identify a destination mobile node that provides the service associated with the identifier; a path-computation mechanism configured to compute a path between the source mobile node and the destination mobile node using a network graph for the mobile nodes; and a path-sending mechanism configured to send the computed path to at least the destination mobile node, which facilitates establishing a route between the source mobile node and the destination mobile node.","lang":"en","source":"USPTO_FULLTEXT","data_format":"ORIGINAL"}]},"abstract_lang":["en"],"has_abstract":true,"claim":{"en":[{"text":"1 . A computer-implemented method for providing service-oriented routing in a mobile ad-hoc network (MANET) that includes a centralized controller node, comprising: receiving, by the controller node from a source mobile node, a request for a service, wherein the request includes an identifier associated with the requested service; identifying a destination mobile node that provides the service associated with the identifier; computing a path between the source mobile node and the destination mobile node using a network graph for a plurality of ad-hoc mobile nodes; and sending the computed path to at least the destination mobile node, which facilitates establishing a route between the source mobile node and the destination mobile node.","lang":"en","source":"USPTO_FULLTEXT","data_format":"ORIGINAL"},{"text":"2 . The method of claim 1 , wherein sending the computed path further involves sending the computed path to the source mobile node.","lang":"en","source":"USPTO_FULLTEXT","data_format":"ORIGINAL"},{"text":"3 . The method of claim 1 , further comprising: receiving status updates from one or more of the mobile nodes, wherein the status updates from a respective mobile node includes one or more of: neighborhood metrics associated with the respective mobile node; a list of multicast groups to which the respective mobile node is subscribed; and names of one or more services provided by the respective mobile node.","lang":"en","source":"USPTO_FULLTEXT","data_format":"ORIGINAL"},{"text":"4 . The method of claim 3 , wherein the neighborhood metrics include a list of neighbor nodes and connectivity metrics for a respective neighbor node, and wherein the connectivity metrics include one or more of: a channel reliability; a residual bandwidth; and a queueing latency.","lang":"en","source":"USPTO_FULLTEXT","data_format":"ORIGINAL"},{"text":"5 . The method of claim 1 , wherein identifying the destination mobile node involves: identifying a group of mobile nodes capable of providing the service; and selecting, from the group of mobile nodes, a node that has a least-cost path to the source mobile node based on neighborhood metrics for one or more mobile nodes along the path.","lang":"en","source":"USPTO_FULLTEXT","data_format":"ORIGINAL"},{"text":"6 . The method of claim 1 , wherein the service includes one or more of: a computational service and a piece of content.","lang":"en","source":"USPTO_FULLTEXT","data_format":"ORIGINAL"},{"text":"7 . The method of claim 1 , wherein the identifier includes at least one of: a hierarchical name; a hierarchical name prefix; a flat name; a fixed-length name; an arbitrary-length name; a label.","lang":"en","source":"USPTO_FULLTEXT","data_format":"ORIGINAL"},{"text":"8 . A non-transitory computer-readable storage medium storing instructions that when executed by a computing device cause the computing device to perform a method for providing service-oriented routing in a mobile ad-hoc network (MANET) that includes a centralized controller node, the method comprising: receiving, by the controller node from a source mobile node, a request for a service, wherein the request includes an identifier associated with the requested service; identifying a destination mobile node that provides the service associated with the identifier; computing a path between the source mobile node and the destination mobile node using a network graph for a plurality of ad-hoc mobile nodes; and sending the computed path to at least the destination mobile node, which facilitates establishing a route between the source mobile node and the destination mobile node.","lang":"en","source":"USPTO_FULLTEXT","data_format":"ORIGINAL"},{"text":"9 . The storage medium of claim 8 , wherein sending the computed path further involves sending the computed path to the source mobile node.","lang":"en","source":"USPTO_FULLTEXT","data_format":"ORIGINAL"},{"text":"10 . The storage medium of claim 8 , wherein the method further comprises: receiving status updates from one or more of the mobile nodes, wherein the status updates from a respective mobile node includes one or more of: neighborhood metrics associated with the respective mobile node; a list of multicast groups to which the respective mobile node is subscribed; and names of one or more services provided by the respective mobile node.","lang":"en","source":"USPTO_FULLTEXT","data_format":"ORIGINAL"},{"text":"11 . The storage medium of claim 10 , wherein the neighborhood metrics include a list of neighbor nodes and connectivity metrics for a respective neighbor node, and wherein the connectivity metrics include one or more of: a channel reliability; a residual bandwidth; and a queueing latency.","lang":"en","source":"USPTO_FULLTEXT","data_format":"ORIGINAL"},{"text":"12 . The storage medium of claim 8 , wherein identifying the destination mobile node involves: identifying a group of mobile nodes capable of providing the service; and selecting, from the group of mobile nodes, a node that has a least-cost path to the source mobile node based on neighborhood metrics for one or more mobile nodes along the path.","lang":"en","source":"USPTO_FULLTEXT","data_format":"ORIGINAL"},{"text":"13 . The storage medium of claim 8 , wherein the service includes one or more of: a computational service and a piece of content.","lang":"en","source":"USPTO_FULLTEXT","data_format":"ORIGINAL"},{"text":"14 . The storage medium of claim 8 , wherein the identifier includes at least one of: a hierarchical name; a hierarchical name prefix; a flat name; a fixed-length name; an arbitrary-length name; and a label.","lang":"en","source":"USPTO_FULLTEXT","data_format":"ORIGINAL"},{"text":"15 . A mobile ad-hoc network (MANET), comprising: a plurality of mobile nodes; and a centralized controller node, wherein the controller node comprises: a receiving mechanism configured to receive, from a source mobile node, a request for a service, wherein the request includes an identifier associated with the requested service; an identification mechanism configured to, in response to the request, identify a destination mobile node that is capable of providing the service associated with the identifier; a path-computation mechanism configured to compute a path between the source mobile node and the destination mobile node using a network graph for the mobile nodes; a path-sending mechanism configured to send the computed path to at least the destination mobile node, which facilitates establishing a route between the source mobile node and the destination mobile node.","lang":"en","source":"USPTO_FULLTEXT","data_format":"ORIGINAL"},{"text":"16 . The MANET of claim 15 , wherein the path-sending mechanism is further configured to send the computed path to the source mobile node.","lang":"en","source":"USPTO_FULLTEXT","data_format":"ORIGINAL"},{"text":"17 . The MANET of claim 15 , wherein the controller node further comprises an update-receiving mechanism configured to receive status updates from one or more of the mobile nodes, wherein the status updates from a respective mobile node includes one or more of: neighborhood metrics associated with the respective mobile node; a list of multicast groups to which the respective mobile node is subscribed; and names of one or more services provided by the respective mobile node.","lang":"en","source":"USPTO_FULLTEXT","data_format":"ORIGINAL"},{"text":"18 . The MANET of claim 17 , wherein the neighborhood metrics include a list of neighbor nodes and connectivity metrics for a respective neighbor node, and wherein the connectivity metrics include one or more of: a channel reliability; a residual bandwidth; and a queueing latency.","lang":"en","source":"USPTO_FULLTEXT","data_format":"ORIGINAL"},{"text":"19 . The MANET of claim 15 , wherein while identifying the destination mobile node the identification mechanism is configured to: identify a group of mobile nodes capable of providing the service; and select, from the group of mobile nodes, a node that has a least-cost path to the source mobile node based on neighborhood metrics for one or more mobile nodes along the path.","lang":"en","source":"USPTO_FULLTEXT","data_format":"ORIGINAL"},{"text":"20 . The MANET of claim 15 , wherein the service includes one or more of: a computational service and a piece of content.","lang":"en","source":"USPTO_FULLTEXT","data_format":"ORIGINAL"},{"text":"21 . The MANET of claim 15 , wherein the identifier includes at least one of: a hierarchical name; a hierarchical name prefix; a flat name; a fixed-length name; an arbitrary-length name; and a label.","lang":"en","source":"USPTO_FULLTEXT","data_format":"ORIGINAL"}]},"claim_lang":["en"],"has_claim":true,"description":{"en":{"text":"STATEMENT OF GOVERNMENT-FUNDED RESEARCH This invention was made with U.S. government support under Contract No. FA8750-12-C-0246(3743) awarded by the Advanced Research Projects Agency (ARPA). The U.S. government has certain rights in this invention. BACKGROUND 1. Field This disclosure is generally related to mobile ad-hoc networks (MANETs). More specifically, this disclosure is related to a software-defined MANET based on an intelligent backbone infrastructure. 2. Related Art Typical ad-hoc communication systems oftentimes require independent mobile users that can communicate in a non-centralized and self-organized fashion. For example, mobile ad-hoc networks (MANETs) employ peer-to-peer a communication protocol to determine a path between two wireless nodes. Some key characteristics of MANETs include their ability to adapt to route changes due to mobility and the fact that they have no requirement for base stations or access points for node organization. In theory, a MANET provides an ideal communication infrastructure to support disaster-relief and battlefield operations, emergency search and rescue missions, and many other mobile and distributed applications. However, these applications cannot be supported effectively in today's networks. This is mainly because the networks don't scale due to the excessive signaling incurred with an increasing number of nodes and applications. More specifically, MANET protocols distribute calculations (such as routing information) over many nodes hop-by-hop. To ensure protocol correctness and efficient operation, such as to avoid loops and excessive flooding, complex distributed algorithms are needed. On the other hand, cellular systems use centralized resources (such as a set of networked cell towers) to service large areas, usually at much lower data rates than a MANET could achieve to nearby neighbors. However, compared to the distributed system, this centralized system allows much simpler routing and protocol operations due to the centralized nature of the system. The centralized nature can also be seen in software-defined networking (SDN), such as the one based on the OpenFlow protocol. In SDN, the “control plane” and the “data plane” are separated, and at least two control routers are used to instantiate state on the controlled network elements. With SDN, the topology of the network is virtualized at the controller nodes, which compute routes from sources to destinations according to a network-wide view, and can instantiate the “flow-state” at each switch of the network. Unfortunately, current SDN implementations compute paths based on the network's flow-states, and thus cannot be applied to MANETs. SUMMARY One embodiment provides a mobile ad-hoc network (MANET). The MANET includes a plurality of mobile nodes and a centralized controller node. The controller node includes a receiving mechanism configured to receive, from a source mobile node, a request for a service, with the request including an identifier associated with the requested service; an identification mechanism configured to identify a destination mobile node that provides the service associated with the identifier; a path-computation mechanism configured to compute a path between the source mobile node and the destination mobile node using a network graph for the mobile nodes; and a path-sending mechanism configured to send the computed path to at least the destination mobile node, which facilitates establishing a route between the source mobile node and the destination mobile node. In a variation on this embodiment, the path-sending mechanism is further configured to send the path to the source mobile node. In a variation on this embodiment, the controller node further comprises an update-receiving mechanism configured to receive status updates from one or more of the mobile nodes. The status updates from a respective mobile node includes one or more of: neighborhood metrics associated with the respective mobile node, a list of multicast groups to which the respective mobile node is subscribed, and names of one or more services provided by the respective mobile node. In a further variation, the neighborhood metrics include a list of neighbor nodes and connectivity metrics for a respective neighbor node. The connectivity metrics include one or more of: a channel reliability, a residual bandwidth; and a queueing latency. In a variation on this embodiment, while identifying the destination mobile node the identification mechanism is configured to identify a group of mobile nodes capable of providing the service; and select, from the group of mobile nodes, a node that has a least-cost path to the source mobile node based on neighborhood metrics for one or more mobile nodes along the path. In a variation on this embodiment, the service includes one or more of: a computational service and a piece of content. In a variation on this embodiment, the identifier includes at least one of: a hierarchical name, a hierarchical name prefix, a flat name, a fixed-length name, an arbitrary-length name, and a label. BRIEF DESCRIPTION OF THE FIGURES FIG. 1 presents a diagram illustrating an exemplary software-defined MANET (SDM), in accordance with an embodiment of the present invention. FIG. 2 presents a diagram illustrating an exemplary frame format of a “Hello” packet sent from a node to its neighbor, in accordance with an embodiment of the present invention. FIG. 3 presents an exemplary pseudocode for updating the next-hop node, in accordance with an embodiment of the present invention. FIG. 4 presents a diagram illustrating an exemplary update message sent by a mobile node to the backbone, in accordance with an embodiment of the present invention. FIG. 5 presents a diagram illustrating a unicast routing process, in accordance with an embodiment of the present invention. FIG. 6 presents a diagram illustrating an exemplary multicast scenario, in accordance with an embodiment of the present invention. FIG. 7A presents a flowchart illustrating an exemplary routing process performed by a source mobile node, in accordance with an embodiment of the present invention. FIG. 7B presents a flowchart illustrating an exemplary routing process performed by a controller node in the backbone, in accordance with an embodiment of the present invention. FIG. 7C presents a flowchart illustrating an exemplary route-update process performed by the backbone, in accordance with an embodiment of the present invention. FIG. 8 presents a diagram illustrating an exemplary service-oriented routing scenario, in accordance with an embodiment of the present invention. FIG. 9 presents a diagram illustrating an exemplary scenario for inter-MANET communication, in accordance with an embodiment of the present invention. FIG. 10 presents a diagram illustrating an exemplary architecture of a controller node, in accordance with an embodiment of the present invention. FIG. 11 presents a diagram illustrating an exemplary architecture of a MANET node, in accordance with an embodiment of the present invention. FIG. 12 illustrates an exemplary computer system for service-oriented routing, in accordance with one embodiment of the present invention. In the figures, like reference numerals refer to the same figure elements. DETAILED DESCRIPTION The following description is presented to enable any person skilled in the art to make and use the embodiments, and is provided in the context of a particular application and its requirements. Various modifications to the disclosed embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be applied to other embodiments and applications without departing from the spirit and scope of the present disclosure. Thus, the present invention is not limited to the embodiments shown, but is to be accorded the widest scope consistent with the principles and features disclosed herein. Overview Embodiments of the present invention provide a system for a software-defined MANET that solves the scalability problem of currently existing MANETs. More specifically, the system includes a centralized backbone service which maintains a weighted graph of a wireless network, and can compute shared multicast trees based on changes in the weighted graph. The wireless network includes a number of mobile nodes that can send status updates to the backbone service, for example, to report the link quality to each one-hop neighbor. The centralized backbone service can update the weighted graph based on the status updates, and the mobile nodes can request an optimized routing path from the centralized backbone service. If a mobile node does not have a path to the backbone service, this mobile node can send a routing request or status update to its connected peer nodes to obtain peer-to-peer routing. In some embodiments, routing within the wireless network is achieved based on Interest-defined mesh enclaves. A mesh includes a set of connected components of a MANET for unicast and multicast flows associated with a specific piece of data or service. The backbone service can activate or deactivate a mesh based on the presence or absence of interest in a destination or a service, and confines most of the signaling overhead within each region of interest (enclave). Here, the term “interest” generally refers to data traffic for a specific piece of data or a service. Also, under the context of information-centric networking (ICN), the term “Interest” or “Interest packet” refers to a packet that indicates a request for a piece of data by including a name (or name prefix) for the data. A data consumer can disseminate an interest packet across a named-data network, which ICN routers can propagate toward a storage device (e.g., a cache server) or a data producer that can provide a matching content object to satisfy the interest packet. In some embodiments, the system can use flow-specific routing to enable QoS (quality of service). For example, the backbone service can collect neighborhood information reported by a set of wireless nodes, such as a channel reliability, a residual bandwidth, and a queueing latency. The backbone service can use the neighborhood information to determine an optimal route to the destination for a given flow. The backbone service can also facilitate communication across two or more MANETs. Each MANET can include one or more nodes that act as gateways between two MANETs operating on different peer-to-peer channels, such as via different frequencies and/or different time slots for a given frequency. The backbone service can reserve time slots or airtime on the foreign MANET to ensure contention-free inter-MANET routing. Network Architecture The protocol stacks used in today's wireless networks are inherently based on peer-to-peer signaling and are designed to operate with limited information. In these existing protocols, the control and data planes do not take into account much of the context within which user data are disseminated, and each packet specifies its own context in its headers; backbones are exploited only at the link level within the context of hierarchical network architectures used to cope with size. SDN provides a simplified network operation that reduces peer-to-peer signaling, and reduces signaling from switches by configuring switches to only transmit updated neighborhood information to the controller. SDN also provides a backbone service that simplifies the configuration and management of the network, for example, based on neighborhood information from various wireless nodes. However, a typical SDN does not directly address scalability issues facing MANETs, because current SDN implementations are focused on wired network topologies operating in server rooms, where the controller is one link away from every switch and the signaling is performed solely on the network layer. In other words, typical SDN implementations do not facilitate dynamic placement of content and services. Information-centric networking (ICN) has recently attracted much research attention. ICN implementations consist of publish-subscribe schemes in which content objects have names (e.g., a hierarchical or flat name), and routing nodes can cache content objects to handle future requests locally. Each request that states an Interest in a specific piece of content is diffused in a way similar to route requests, and the nearest sites with copies of the requested content answer the requests. ICN implementations can dynamically adapt a network to the needs of an application by providing content and services to the application from the sites closest to the application. However, limitations in typical ICN implementations do not allow a network to scale toward large-scale dynamic networks. First, these ICN implementations route packets on the basis of object names, which incurs excessive signaling overhead between network peers and requires an undesirably large computation overhead at each routing node. The signaling and computation overhead increases as the number of information objects requested by applications becomes far larger than the number of network nodes. Second, ICN implementations utilize routing nodes as caching nodes, which causes relaying nodes to incur an additional computation overhead to evaluate content requests (e.g., Interest packets) to determine whether the requested content is stored locally. Some embodiments of the present invention provide a software-defined MANET (SDM), which uses the network backbone as a service. SDM integrates SDN, ICN, and utility-based cross-layering (including the integrating of routing states, channel states, and MAC (media access control) states) to implement very large-scale dynamic networks, without using predefined clustering or artificial network bounds. FIG. 1 presents a diagram illustrating an exemplary software-defined MANET (SDM), in accordance with an embodiment of the present invention. SDM 100 can include a backbone cloud 102 (which is hereinafter referred to as backbone 102 ) and a set of mobile network nodes. More specifically, backbone 102 can include one or more controller nodes, such as a controller node 104 , which communicate with each other via a wired or wireless network. At least some of the mobile nodes can communicate with backbone 102 over a wireless network, either directly or via a multi-hop path. For example, mobile node 106 is coupled to backbone 102 via a one-hop link, whereas mobile node 108 is coupled to backbone 102 via a two-hop link through node 106 . Also, some the mobile nodes may not detect a path to backbone cloud 102 . For example, mobile nodes 110 and 112 may not detect a path to backbone 102 when a large physical barrier 120 obstructs the communication channel to any device with a path to backbone 102 . However, mobile modes 110 and 112 may detect a network path to each other, and can communicate with each other via a default peer-to-peer routing protocol. In FIG. 1 , the dashed lines indicate wireless links. During operation, the mobile nodes that have a path to backbone 102 can monitor their neighborhood environment to periodically report local information and this neighborhood information to backbone 102 . The neighborhood information reported by the mobile nodes to backbone 102 includes neighborhood metrics (e.g., a link quality to each one-hop neighbor based on received signals), and a set of multicast addresses used by the node. The local information can include a geographic location (e.g., global positioning system (GPS) coordinates) for the local node, and a change in the content cached by the local node. The neighborhood metrics can include a list of neighbor nodes detected by the local node, along with the connectivity metrics for each neighbor. The connectivity metrics for each neighbor can be gathered by a node at the MAC (media access control) layer. In some embodiments, the connectivity metrics for each neighbor include, but are not limited to: a channel identifier, a channel reliability metric, a residual bandwidth metric, and a queueing latency. The channel reliability metric can be computed by the signal-to-interference-plus-noise ratio (SINR), or by the rate of successful packet delivery. In some embodiments, a network node measures the channel reliability of a link to its neighbor node by calculating the ratio of “Hello” packets (which we will describe in more detail later) received clearly at the local node to the total “Hello” packets sent by the neighboring node (as determined based on a sequence number attached to the “Hello” packets). In a further embodiment, the channel reliability is computed based on a packet success ratio calculated for both the uplink and downlink directions. The network node can compute the channel reliability metric by computing a product of the uplink packet success ratio and the downlink packet success ratio. The residual bandwidth metric for a link to a neighboring node is computed from the amount of bandwidth available across the link, and is calculated from the free timeslots available in a set of scheduled time slots. The node computes the queueing latency from the average time that packets spend in the MAC queue before they are transmitted. Backbone 102 uses these neighborhood metrics to determine the best routes to the destination node for a given flow. The multicast-groups information indicates the multicast groups (as expressed in MAC IDs) that the network node has subscribed to at a given point in time. Backbone 102 can use multicast information to create and maintain the proactive multicast trees. Each mobile node across network 100 can send the content-deltas information to backbone 102 to inform backbone 102 on changes in the content items cached by the network node. Sending content-deltas information to backbone 102 avoids redundant signaling, by omitting the names of content objects that backbone 102 is already aware to be cached by the network node. Note that sending content deltas to the backbone is equivalent to “publish” messages in ICN architectures. Mobile nodes that do not have a path to backbone cloud 102 , such as mobile nodes 110 and 112 , do not report or update their local or neighborhood information to backbone 102 . These nodes rely on a default peer-to-peer routing protocol where network nodes report or update their information directly to their neighbor nodes. Note that, in conventional MANETs, the routing operations (unicast or multicast) is performed in a peer-to-peer manner, which can be inefficient and limits the network scalability. In contrast, in the example shown in FIG. 1 , backbone 102 provides a centralized backbone service to a set of mobile nodes. The backbone service relieves most routing overhead from the MANET (which includes the mobile nodes) by using node information reported to backbone 102 to generate optimal unicast routes, and to compute shared multicast trees per multicast group. In some embodiments, backbone 102 creates and manages a weighted graph of network 100 using a cost function that incorporates link reliability, queueing delays, scheduling delays, and residual bandwidth information obtained from mobile nodes of MANET 100 . The backbone service can dynamically update the weighted graph each time backbone 102 receives information that indicates a change in MANET 100 (such as when a mobile node moves or changes its state). The cost function captures the estimates a latency that may be incurred by using a link between two MANET nodes as a relay for data traffic. The cost function can be computed in various ways, depending on the underlying MAC protocol. For example, for a Wi-Fi network, the cost function considers the channel congestion and backoff experienced due to network contention over the MAC layer. For a scheduling-based MAC, the cost function considers the scheduling delay between transmission time slots and the cost of lost packets. In some embodiments, the backbone service computes the cost function as: In equation (1), queueTime is the average queueing delay for the neighbor's channel measured in microseconds, and packetTime is the time to transmit a 128 byte packet on the channel, also in microseconds. In some embodiments, packetTime is assumed to be no less than 1 microsecond. Penalty is a cost penalty incurred as the residual bandwidth approaches 0 (i.e., the node is using a high percentage of its available scheduled airtime). The factor 1/reliability increases as a link's reliability decreases to penalize unreliable neighbors that require a large number of transmission attempts for a successful packet reception. In some embodiments, the backbone service can compute the cost using the bi-directional link reliability given that the backbone service knows the two one-way reliability of a link based on information reported by each MANET node across the link. The backbone service can use the weighted graph, whose weighted values are dynamically updated using the cost function, to perform on-demand routing while accounting for real-time changes to MANET 100 . Protocols and Algorithm Conventional MANETs often rely on running a unicast and a multicast protocol in parallel to support both point-to-point and many-to-many communication, and thus, is inefficient in bandwidth utilization. Moreover, existing on-demand unicast or multicast protocols often result in the network being flooded frequently with link-state updates, distance updates, route requests, or multicast updates. To solve these problems, embodiments of the present invention use an interest-based routing protocol that can be used to implement unicast and multicast routing. More specifically, this interest-based protocol establishes meshes that are activated and deactivated by the presence or absence of interest in individual destination nodes and groups, and confines most of the signaling overhead within regions of interest (enclaves) in such meshes. It has been shown that routes established in the interest-based protocol are free of permanent loops, and this protocol is more scalable than traditional multicast and unicast routing protocols. The interest-based routing protocol establishes and maintains a routing mesh for each active multicast group (i.e., for each group with active sources and receivers) and for each unicast destination with at least one active source. The first source that becomes active for a given unicast or multicast destination sends its first data packet included in a mesh request (MR) that is flooded to peer mobile devices across a MANET up to a horizon threshold (which defines the scope of the dissemination of the MR). If the interest expressed by the source spans more than the single data packet, the intended receiver(s) of an MR establish and maintain a routing mesh spanning the active sources and the destination. The destination may be a single node if the destination is unicast, or may be a dynamic set of nodes if the destination is multicast. For a multicast flow, the receivers of the multicast group run a distributed election using mesh announcements (MAs) to elect a core for the group. Once elected, the core node is the only receiver that continues to generate MAs for the group. In some embodiments, when the backbone service is available, the backbone service proactively computes the shared multicast trees for each multicast group (e.g., in response to receiving updated information from a mobile node), and sends this information to the multicast group members so they always have the multicast groups' setup. In some embodiments, the backbone service dynamically elects a tree core for each multicast tree based on the core's centrality within the weighted network graph. No such election is needed for a unicast destination. An elected multicast core or unicast destination continues sending MAs with monotonically increasing sequence numbers for as long as there is at least one active source interested in it. When there is no active source detected in a flow, the destination or core of the flow stops generating MAs after a finite time, which causes the backbone and the associated mobile nodes to delete the routing information corresponding to the mesh of the flow. To confine control traffic to those portions of the network that need the information, the routing protocol defines an enclave (or region of interest) for an established mesh. Note that establishment of such an enclave involves both the backbone and the mobile nodes. The enclave is a connected component of the network, and spans all the receivers that can include the destination, the interested active sources, and the relay nodes needed to connect them. Various MAC protocols can be used in the SDM. In some embodiments, nodes within the SDM communicate with each other using a MAC protocol derived from GCMA (Geographical Classification Multiple Access). Other possible protocols can include a context-aware protocol engine (CAPE), which relies on context-aware packet switching to disseminate information. In some embodiments, the backbone can implement GCMA to define collision-free transmission schedules using deterministic distributed algorithms based on the geo-spatial coordinates of nodes, together with their transmission and interference ranges. These algorithms require each node to know only the geo-spatial coordinates (which can be obtained from the GPS data for each node) of its immediate neighbors to derive correct transmission schedules, even in the presence of hidden terminals. The transmission frames in GCMA consist of the minimum number of time slots needed to avoid multiple access interference, given the transmission and interference ranges of the nodes. Within a MANET, neighboring nodes can share a common channel. The channel is partitioned into a set of transmission frames, and each node is mapped into slots within the frames based on its ‘x’ and ‘y’ geographical coordinates and its slot number value. A mobile node can use a time slot to transmit one or more data packets. In some embodiments, a mobile node can use a time slot to transmit a “Hello” packet as a way to detect a set of next-hop nodes, for example, to find a next-hop node along a path to the backbone. FIG. 2 presents a diagram illustrating a frame format of an exemplary “Hello” packet 200 sent from a node to its neighbor, in accordance with an embodiment of the present invention. “Hello” packet 200 can include a set of fields, some of which can be used for GCMA scheduling. For example, “Hello” packet 200 can include a sequence number (SeqNo) field 202 , a node ID field 204 , an X-coordinate (X-coord) field 206 , and a Y-coordinate (Y-coord) field 208 . In addition, “Hello” packet 200 can include a set of fields that can be used to find the next-hop node along a path to the backbone. These set of fields can include, for example, a root ID field 210 that indicates the root of the tree connected to the backbone, a bbSeqNo field 212 that indicates the sequence number at the node, and a bbHop field 214 that indicates the number of hops from the node to the root node. During operation, each node periodically (e.g., after every HelloInterval seconds) sends “Hello” packets to its neighbor nodes, and maintains a list of one-hop neighbors along with the data fields reported by each neighbor in its “Hello” packet. In addition to GCMA-based scheduling, in some embodiments, a priority-based queueing system is used to handle signaling traffic, elastic data flows, and real-time flows. When a node is allowed to transmit over a time slot, the node transmits as many packets as possible during the time slot, for example, by selecting packets from its local transmission queues using a strict priority scheduler. In some embodiments, a node's queues are FIFO (first-in, first-out), and are served using a priority-based algorithm. In some embodiments, a mobile node can include more than one queue. For example, a gateway node may have time slots for two or more channels, each of which corresponds to a different flow. If a node has more than one nonempty queue with the highest priory, the node can iterate between these queues in a round-robin fashion. For example, network-layer signaling packets can have the highest priority (p ctr ), followed by data packets waiting in data queues. Data queues can be either elastic or real-time, and real-time queues are assigned higher priority (p RT ) than the priority given to elastic queues (p eleastic ), given that jitter and latencies are not as important for elastic queues. A mobile node can transmit “Hello” packets with the lowest priority (p Hello− ) if fewer than HelloInterval seconds have elapsed since the last time a “Hello” packet was transmitted. However, if more than HelloInterval seconds have elapsed, then the mobile node can refresh the neighborhood information; hence, the mobile node sets the priority of the “Hello” packet to p Hello+ >p ctr . Overall, during a time slot allocated to a node, the relationship among traffic priorities is: p Hello−
receiving, by the controller node from a source mobile node, a request for a service, wherein the request includes an identifier associated with the requested service;\n
identifying a destination mobile node that provides the service associated with the identifier;\n
computing a path between the source mobile node and the destination mobile node using a network graph for a plurality of ad-hoc mobile nodes; and\n
sending the computed path to at least the destination mobile node, which facilitates establishing a route between the source mobile node and the destination mobile node."],"number":1,"annotation":false,"claim":true,"title":false},{"lines":["The method of claim 1, wherein sending the computed path further involves sending the computed path to the source mobile node."],"number":2,"annotation":false,"claim":true,"title":false},{"lines":["The method of claim 1, further comprising:\n
receiving status updates from one or more of the mobile nodes, wherein the status updates from a respective mobile node includes one or more of:\n
neighborhood metrics associated with the respective mobile node;\n
a list of multicast groups to which the respective mobile node is subscribed; and\n
names of one or more services provided by the respective mobile node."],"number":3,"annotation":false,"claim":true,"title":false},{"lines":["The method of claim 3, wherein the neighborhood metrics include a list of neighbor nodes and connectivity metrics for a respective neighbor node, and wherein the connectivity metrics include one or more of:\n
a channel reliability;\n
a residual bandwidth; and\n
a queueing latency."],"number":4,"annotation":false,"claim":true,"title":false},{"lines":["The method of claim 1, wherein identifying the destination mobile node involves:\n
identifying a group of mobile nodes capable of providing the service; and\n
selecting, from the group of mobile nodes, a node that has a least-cost path to the source mobile node based on neighborhood metrics for one or more mobile nodes along the path."],"number":5,"annotation":false,"claim":true,"title":false},{"lines":["The method of claim 1, wherein the service includes one or more of: a computational service and a piece of content."],"number":6,"annotation":false,"claim":true,"title":false},{"lines":["The method of claim 1, wherein the identifier includes at least one of:\n
a hierarchical name;\n
a hierarchical name prefix;\n
a flat name;\n
a fixed-length name;\n
an arbitrary-length name;\n
a label."],"number":7,"annotation":false,"claim":true,"title":false},{"lines":["A non-transitory computer-readable storage medium storing instructions that when executed by a computing device cause the computing device to perform a method for providing service-oriented routing in a mobile ad-hoc network (MANET) that includes a centralized controller node, the method comprising:\n
receiving, by the controller node from a source mobile node, a request for a service, wherein the request includes an identifier associated with the requested service;\n
identifying a destination mobile node that provides the service associated with the identifier;\n
computing a path between the source mobile node and the destination mobile node using a network graph for a plurality of ad-hoc mobile nodes; and\n
sending the computed path to at least the destination mobile node, which facilitates establishing a route between the source mobile node and the destination mobile node."],"number":8,"annotation":false,"claim":true,"title":false},{"lines":["The storage medium of claim 8, wherein sending the computed path further involves sending the computed path to the source mobile node."],"number":9,"annotation":false,"claim":true,"title":false},{"lines":["The storage medium of claim 8, wherein the method further comprises:\n
receiving status updates from one or more of the mobile nodes, wherein the status updates from a respective mobile node includes one or more of:\n
neighborhood metrics associated with the respective mobile node;\n
a list of multicast groups to which the respective mobile node is subscribed; and\n
names of one or more services provided by the respective mobile node."],"number":10,"annotation":false,"claim":true,"title":false},{"lines":["The storage medium of claim 10, wherein the neighborhood metrics include a list of neighbor nodes and connectivity metrics for a respective neighbor node, and wherein the connectivity metrics include one or more of:\n
a channel reliability;\n
a residual bandwidth; and\n
a queueing latency."],"number":11,"annotation":false,"claim":true,"title":false},{"lines":["The storage medium of claim 8, wherein identifying the destination mobile node involves:\n
identifying a group of mobile nodes capable of providing the service; and\n
selecting, from the group of mobile nodes, a node that has a least-cost path to the source mobile node based on neighborhood metrics for one or more mobile nodes along the path."],"number":12,"annotation":false,"claim":true,"title":false},{"lines":["The storage medium of claim 8, wherein the service includes one or more of: a computational service and a piece of content."],"number":13,"annotation":false,"claim":true,"title":false},{"lines":["The storage medium of claim 8, wherein the identifier includes at least one of:\n
a hierarchical name;\n
a hierarchical name prefix;\n
a flat name;\n
a fixed-length name;\n
an arbitrary-length name; and\n
a label."],"number":14,"annotation":false,"claim":true,"title":false},{"lines":["A mobile ad-hoc network (MANET), comprising:\n
a plurality of mobile nodes; and\n
a centralized controller node, wherein the controller node comprises:\n"],"number":15,"annotation":false,"claim":true,"title":false},{"lines":["The MANET of claim 15, wherein the path-sending mechanism is further configured to send the computed path to the source mobile node."],"number":16,"annotation":false,"claim":true,"title":false},{"lines":["The MANET of claim 15, wherein the controller node further comprises an update-receiving mechanism configured to receive status updates from one or more of the mobile nodes, wherein the status updates from a respective mobile node includes one or more of:\na receiving mechanism configured to receive, from a source mobile node, a request for a service, wherein the request includes an identifier associated with the requested service;\nan identification mechanism configured to, in response to the request, identify a destination mobile node that is capable of providing the service associated with the identifier;\na path-computation mechanism configured to compute a path between the source mobile node and the destination mobile node using a network graph for the mobile nodes;\na path-sending mechanism configured to send the computed path to at least the destination mobile node, which facilitates establishing a route between the source mobile node and the destination mobile node.\n
neighborhood metrics associated with the respective mobile node;\n
a list of multicast groups to which the respective mobile node is subscribed; and\n
names of one or more services provided by the respective mobile node."],"number":17,"annotation":false,"claim":true,"title":false},{"lines":["The MANET of claim 17, wherein the neighborhood metrics include a list of neighbor nodes and connectivity metrics for a respective neighbor node, and wherein the connectivity metrics include one or more of:\n
a channel reliability;\n
a residual bandwidth; and\n
a queueing latency."],"number":18,"annotation":false,"claim":true,"title":false},{"lines":["The MANET of claim 15, wherein while identifying the destination mobile node the identification mechanism is configured to:\n
identify a group of mobile nodes capable of providing the service; and\n
select, from the group of mobile nodes, a node that has a least-cost path to the source mobile node based on neighborhood metrics for one or more mobile nodes along the path."],"number":19,"annotation":false,"claim":true,"title":false},{"lines":["The MANET of claim 15, wherein the service includes one or more of: a computational service and a piece of content."],"number":20,"annotation":false,"claim":true,"title":false},{"lines":["The MANET of claim 15, wherein the identifier includes at least one of:\n
a hierarchical name;\n
a hierarchical name prefix;\n
a flat name;\n
a fixed-length name;\n
an arbitrary-length name; and\n
a label."],"number":21,"annotation":false,"claim":true,"title":false}]}},"filters":{"npl":[],"notNpl":[],"applicant":[],"notApplicant":[],"inventor":[],"notInventor":[],"owner":[],"notOwner":[],"tags":[],"dates":[],"types":[],"notTypes":[],"j":[],"notJ":[],"fj":[],"notFj":[],"classIpcr":[],"notClassIpcr":[],"classNat":[],"notClassNat":[],"classCpc":[],"notClassCpc":[],"so":[],"notSo":[],"sat":[]},"sequenceFilters":{"s":"SEQIDNO","d":"ASCENDING","p":0,"n":10,"sp":[],"si":[],"len":[],"t":[],"loc":[]}}