280 likes | 430 Views
Haggle Architecture. Erik Nordström , Christian Rohner. Haggle Project. 4 Year EU project 8 partners : Uppsala, Cambridge, Thomson, CNR, Eurecom , SUPSI, EPFL, LG (former Intel) Uppsala: Testbed (Virtual-APE) Architecture design and implementation People
E N D
Haggle Architecture Erik Nordström, Christian Rohner
Haggle Project • 4 Year EU project • 8 partners: Uppsala, Cambridge, Thomson, CNR, Eurecom, SUPSI, EPFL, LG (former Intel) • Uppsala: • Testbed (Virtual-APE) • Architecture design and implementation • People • Erik, Christian, Daniel, Fredrik
Haggle – “Ad hoc Google” Community “Search the neighborhood” Opportunistic Pocket-switched
Searching and Forwarding Search for matching content Search for matching content 1 Interests 2 3 4 Interests 4 3 2 1
Haggle Architecture Invariants • Data-centric • Application-layer framing (“data objects”) • Dissemination instead of conversation • Late binding • Asynchronous
Architecture Issues • Resolving “destinations” • Who and what is out there? • Interfacing • Physical • Language / Protocol • Content and priority • Forwarding ?
Host-centric vs. Data-centric news.bbc.co.uk www.cnn.com www.foxnews.com news.google.com
A Search-based Network Architecture • Make searching a first class networking primitive • What does searching imply? • Unstructured (meta)data • Query - Keywords/interests • Ranked results • How can searching help us in a Haggle-style networking context?
“Searching” in Early Haggle INS • INS-inspired namespace • Structured metadata • Hierarchical (name graph/tree) • Used to map from higher level name to lower level protocol/interface • Static, and pre-defined mappings • No searching – just lookup / tree traversal • How map data to user? • Implies destination oriented communication
Searching on the Desktop and the Web • Consistent namespaces • Semantic filesystem (Gifford et al. 1991) • File attributes along file names • User explicitly adds metadata • Metadata extraction and indexing • Content-based search • Probabilistic models map metadata (term freq., language models) to search terms • Context enhanced search using graph models • Google’s PageRank • Connections (Soule et al. 2005)
Haggle Relation Graph • Each Haggle node maintains a relation graph • Vertices are data objects • Edges are relations = two data objects share an attribute • Primitives on the relation graph = network operations • Shares similarities with (local) search • E.g., Connections [Soules et. al 2006], Apple Spotlight, Google Desktop
Relation Graph • Computer • Beer • Film • Music • Haggle • Food • Haggle • Music • CoRe • Film • Beer • Computer • Uppsala • Cambridge • Haggle 2 3 1 1 1 2 2 1 1 • Beer • Music • CoRe • Cambridge • Haggle 1 • Food • Stockholm • Haggle
Benefits of a Search Approach • Flexible “naming and addressing” • No e2e end-point identifiers • Late binding resolutions • Late binding demultiplexing • Content dissemination and forwarding • Ordered forwarding • Delegate forwarding and interest-based forwarding • Resource and congestion control • Limit queries – only get best matching content
Filter – Local Demultiplex Data object Induced subgraph Attribute Demux = filtering associated with an actor
Query – Weighting the graph There may be many ways to do the weighting!
Cut in Relation Graph Ranked result = {v1,v2} || {v2,v1}
Exchanging Data Objects Resolve data/content Resolve node • Since content and nodes are both data objects, these two operations are (more ore less) the same
Searching in Haggle • Use searching to resolve mappings between data and receivers • Analogy: Top 5 hits on Google • Content ranked (priority) • Results change with the content carried
Conclusions • Search primitives are useful abstractions for DTN-style networking • Novel naming and addressing • Ranking useful for dissemination • Resource/congestion control • Ordered forwarding (priorities) • Better understanding of scaling needed • Query time • Effect on battery life?