MarketNet Directory Services MDS - PowerPoint PPT Presentation

1 / 15
About This Presentation
Title:

MarketNet Directory Services MDS

Description:

lookup/mapping: white page, yellow page. reverse lookup/mapping: DNS (domain name vs. IP) ... attribute-based lookup/mapping: LDAP, SLP. Components. client ... – PowerPoint PPT presentation

Number of Views:56
Avg rating:3.0/5.0
Slides: 16
Provided by: yechiam
Category:

less

Transcript and Presenter's Notes

Title: MarketNet Directory Services MDS


1
MarketNet Directory Services (MDS)
  • Weibin Zhao
  • Henning Schulzrinne
  • Department of Computer Science
  • Columbia University

2
Background
  • Directory Services
  • lookup/mapping white page, yellow page
  • reverse lookup/mapping DNS (domain name vs. IP)
  • attribute-based lookup/mapping LDAP, SLP
  • Components
  • client
  • server
  • database
  • protocol

3
MDS Market-based Directory Services
  • Design Goals
  • survivability adjust gracefully to service
    dynamic change and resource loss
  • dynamic update price advertisement
  • scale to large systems
  • Some Critical Issues
  • data organization, distribution, replication
  • access control
  • scalability

4
MDS Design
  • Approaches
  • use existing directory services as building
    block SLP
  • low-cost, widely accepted, reuse for other
    systems
  • enhance reliability and scalability
  • Out contributions
  • define scheme for interaction of SLP directory
    servers
  • Mesh-enhanced Service Location Protocol (mSLP)
  • standalone and integrated implementation Java
  • Internet draft being considered for RFC

5
Architecture
Service
Application
User Agent
Service Agent
Query
Registration
Interaction
Directory Agent
Directory Agent
6
Service Registration
  • Service Description
  • URL
  • attributes-value pairs can be in different
    languages
  • service type lpr, bank
  • service scope Columbia-CS, Amazon
  • Service Registration
  • lifetime
  • full or incremental registration
  • Service Deregistration
  • deregister whole service or individual attributes

7
Service Query
  • Query Service Type
  • list available service types in given scope
  • Query Service URL
  • given attribute description, find matched URLs
  • Query Attributes
  • list all or part attributes for given URL or
    service type

8
Directory Agent (DA) Discovery
  • Active Discovery
  • multicast special service query
  • service-type directory-agent
  • Passive Discovery
  • listen to DA multicast advertisement
  • Other Methods
  • Static configuration
  • DHCP

9
DA Interaction
  • Peering DA Architecture
  • peer DAs share service scopes
  • more than one DA for each scope
  • peer DAs maintain same data for common scopes
  • Two Issues
  • group membership management
  • data exchange management

10
DA Set Membership Management
  • Learning of New Peers
  • DA multicast, static configuration, DHCP
  • exchange common peer list (CPL) with peers
  • forward DA advertisement
  • send unsolicited DA advertisement to peer
  • Keeping Peer Relationship
  • keep-alive message
  • Removal of Peers
  • peer shut-down
  • keep-alive timeout (peer failure, network
    separation)

11
Data Exchange Management
  • Initial Data Exchange
  • pull model download data from new peers
  • optimize data download
  • Forward New Service Registration
  • push model
  • one-hop forwarding full mesh connection

(a)
(a,c)
(c)
DA1 (a,b)
DA3 (a,c)
DA2 (b,c)
(a,b)
(a,c)
(b,c)
(a,c)
DA4 (a,b,c)
SA
(a,b)
(c)
12
Protocol Design
  • Mesh-Control Message (MeshCtrl)
  • peering connection notification
    (Pconn_Notification)
  • common peer notification (Cpeer_Notification)
  • get requested data (Get_Rdata)
  • requested data end (Rdata_End)
  • keep alive (Keep_Alive)
  • Mesh-Forwarding Extension (MeshFwd)
  • Action-ID Rqst_Forward, No_Forward
  • SA registration timestamp

13
Message Flows
(1) DAAdvert
DA1
DA2
(2) create a peering connection
(3) Pconn_Notification MeshCtrl
(4) unsolicited DAAdvert
(5) Cpeer_Notification MeshCtrl
(5) Cpeer_Notification MeshCtrl
(6) Get_Rdata MeshCtrl
(7) requested data in SrvReg(s)
(8) Rdata_End MeshCtrl
(6) Get_Rdata MeshCtrl
(7) requested data in SrvReg(s)
(8) Rdata_End MeshCtrl
(9) forward SrvReg/SrvDeReg(s)
(9) forward SrvReg/SrvDeReg(s)
(10) Keep_Alive MeshCtrl(s)
(10) Keep_Alive MeshCtrl(s)
14
Demo
  • Survivability in case of failure
  • DA crash
  • network separation
  • peer DAs handle DA failure (keep-alive timeout)
  • client (SA/UA) handle DA failure (response
    timeout)
  • Optimize data download scheme
  • Forward new service registration

15
Conclusions
  • MDS
  • a robust distributed directory services
  • serve general purpose or customized applications
  • fully implemented in Java, open source software
  • submitted Internet draft to standardize protocol
  • Future work
  • advance mSLP to RFC
  • Thank you!
Write a Comment
User Comments (0)
About PowerShow.com