Download presentation
Presentation is loading. Please wait.
Published byAbraham Clarke Modified over 9 years ago
1
PSIRP Architectural Components Part 1 Mikko Särelä Slides by Walter Wong
2
Outline Identifiers Algorithmic IDs Node Internal Architecture Helper Functions Rendezvous System
3
Background – IP-based Identifier Network Layer Identifier ◦ IP address ◦ Topological identifier ◦ Refers to a specific location in the network Transport Layer Identifier ◦ Also IP address (IP src/dst, port src/dst, protocol) ◦ Identifies end-hosts in the Internet
4
IP Semantic Overload Problem Application Transport Network Link Physical IP Socket 200.201.11/24 174.180.23/24 128.17.11.22
5
IP-based Identification – Problems Entangle host location with identification ◦ Host-centric approach Content can’t be addressed alone ◦ Sub-part of a URL ◦ Ex. www.unicamp.br/main/courses/index.htmlwww.unicamp.br/main/courses/index.html ◦ Identified as part of connection parameters ◦ Ex. TCP sequence number Limited naming system ◦ Hinders new features, ex., mobility, multicast ◦ Users can’t express their interest in data regardless of location
6
PSIRP Identifiers – Motivation Express user interests ◦ WWW users are interested in documents regardless of their location ◦ Currently users express an interest (what) and it is translated to a place (where) Publish/subscribe ◦ Users express their interest on data ◦ Data is asynchronously delivered to users
7
PSIRP Identifiers Application Level Identifier (AId) Rendezvous Identifier (RId) Scope Identifier (SId) Forwarding Identifier (FId) (Algorithmic Identifier (AlgId))
8
Application Level Identifier (AId) Application level identification Based application requirements ◦ Easiness to route, easiness to resolve, randomness, etc Can be any namespace ◦ Flat labels ◦ Structured names (FQDN) ◦ Global Unique Identifier (GUID) ◦ Electronic Numbering (ENUM)
9
Rendezvous Identifier (RId) PSIRP network level identifier Uniquely identifies a piece of information 256-bit identifier (SHA-256 hash over the data) Goal: identify the interest between publishers and subscribers in the rendezvous system
10
Rendezvous Identifier (Rid) Publish RId nut Subscribe RId nut Rendezvous Point Interest! Doesn’t subscribe RId nut Deliver data Bingo Scrat Nut
11
Scope Identifier (Sid) Also PSIRP network identifier with 256 bits length Goal: aggregate a set of Rids into one group (scope) Represents a collection of whatever information that Rids represents Scope = implicit context of a set of Rids ◦ Photo album has a Sid and each photo has a Rid Also ◦ Access control ◦ Metadata control operations
12
Scope Identifier (Sid) Rid C Rid B Rid A Sid family_album Sid public_album
13
Forwarding ID 256-bit long network identifier Goal: identify path segments in the forwarding path Difference: ◦ Sid/Rid used in the rendezvous system (slow path) ◦ Fid used in the forwarding fabric (fast path) Can be aggregated in Bloom filters
14
Forwarding ID Rendezvous 2 FId 21 FId 22 FId A Rendezvous 1 FId 11 FId 12 FId 13 FId 11 FId 21 FId 12 Bloom-filter Bob Clark David FId 31 FId 22
15
Forwarding ID Source controlled packet soft state ◦ Topology manager creates the Bloom filter ◦ + stateless ◦ - requires constant updates from the rendezvous to identify new subscribers ◦ - recycle Fids after un-subscription In-network state ◦ Fid switching state in the forwarding nodes ◦ + Identifies just initial Fid ◦ - state in the switches
16
Algorithmic Identifiers (AIgIds) Special class of identifiers Information collection concept ◦ group semantically similar information items Goal: automatic generation of IDs for different pieces of information Allow elaborate tests with the identifier
17
Forwarding State Aggregation FId 11 FId 12 FId 13 FId 21 FId 31 FId 22 FId 32 FId A FId B FId C FId 11 FId A FId 13 FId 31 FId 32 FId C Bloom-filter RVS Bob Clark David
18
Return Path (legacy client-server model) Bob Clark Publish(algId A ) Subscribe(hash(algId A )) Subscribe(algId A ) Publish(hash(algId A )) RVS Hey Clark, let’s have a beer after work! Okee dokee, Bob!
19
Sequence Numbering RVS Publish(algId) Subscribe(algId) ID 2 ID 2 = hash(ID 1 ) ID 3 ID 3 = hash(ID 2 ) ID 1 ID 1 = hash(algId) ID 1 ID 2 ID 3 Alice Beth
20
Algorithmic IDs – Other scenarios Error control ◦ generate error messages identified with IDs derived from the error ID Reliability ◦ different algIds can be generated to receive error messages Announcements ◦ prior to a data publication, publishers announce in the algId channel, informing possible subscribers that data will be published in the related algId
21
Node Internal Architecture Blackboard Approach ◦ Communication model for sharing memory objects through the network Uses Memory Object Service ◦ Simple unreliable page service ◦ Simple memory object service
22
Unreliable Page Service Unreliable Page Service Simple unreliable page service ◦ Pages can be mapped to packet level transmissions using PageIDs ◦ Allows for identifying and caching individual packets within the network ◦ There is one PageID for each Fid PageID A PageID B PageID C PageID D PageID E Memory Pages
23
Memory Object Service Works on the page service Supports larger data files (over one memory page) Supports update on memory objects PageID A PageID B PageID C PageID D PageID E Memory Pages MO A Memory Object
24
Node Internals – Networking Nodes ◦ Local input queues, with one Fid for each queue ◦ Local output queues, with one Fid for each queue ◦ Sender-helper sends the packet identified with the interfaces Fid ◦ Network-receiver receives packets from the network
25
Helper Functions Not core network service Not traditional applications ◦ Actually, it is a set of functions providing additional features for the system ◦ “Helps the system!” PSIRP has three categories: ◦ Network Management Functions ◦ Remote Service Functions ◦ Host Centric Functions
26
Network Management Functions Network Management & Information gathering Information gathering for better planning and management ◦ Increase performance In PSIRP, network management functions can subscribe to the link state, receiving information as it becomes available
27
Rendezvous System Meeting point of interests between publishers and subscribers Requirements ◦ Scalability (Internet scale) ◦ Efficiency in operation ◦ Deployability (gradual deployment and stakeholders incentives)
28
Rendezvous Network Composed of Rendezvous Nodes (RNs) Organized as a BGP-like inter-domain hierarchy Collection of RNs from multiple cooperative ASes Rendezvous points (RPs) ◦ logical meeting points of interests between publishers and subscribers ◦ one rendezvous point for each Sid/Rid pair
29
Rendezvous Network Interconnection Some approaches ◦ Central entity managing signaling reachability: lack of incentives, trust, competition ◦ Multiple entities: providers compete for global reachability coverage ◦ Fully distributed mechanism: rendezvous networks self-organize to interconnect without any third party infrastructure
30
Rendezvous Network Connection Canon DHT ◦ Hierarchical DHT ◦ Maintains local communication within its domain ◦ Caching in the sub-domain exit between levels in the DHT
31
Canon Hierarchical DHT 12 10 5 5 0 0 13 8 8 3 3 2 2 12 10 5 5 0 0 13 8 8 3 3 2 2 Domain A Domain B Top-level Domain
32
Rendezvous System Example RN A RN C RN B RN B10 RN B100 Node Sub RN C10 RN C100 Node Pub RP
33
Rendezvous System Bootstrapping RN A RN C RN B RN B10 RN B100 Node Sub RN C10 RN C100 Node Pub RP
34
Publish Operation RN A RN C RN B RN B10 RN B100 Node Sub RN C10 RN C100 Node Pub RP
35
Subscribe Operation RN A RN C RN B RN B10 RN B100 Node Sub RN C10 RN C100 Node Pub RP
36
Summarizing Identifiers ◦ Many types, special semantics Algorithmic ID ◦ New use cases Node Internal Architecture ◦ Blackboard, Input/output queues, memory objects segmentation Helper functions ◦ Adding new functionalities in the architecture Rendezvous System ◦ Matching interests between publishers and subscribers
37
Questions? Comments? Thanks!
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.