Title: Centralized vs. Decentralized Design for Internet Applications
1Centralized vs. Decentralized Design for
Internet Applications
I
- Adriana Iamnitchi
- Department of Computer Science
- The University of Chicago
2Internet Applications
- Components that build the Internet itself (DNS )
- Tools that connect the user to Internet resources
(browsers, applets, CGIs, ...) - Services that can be accessed through Internet
(e-commerce, e-banking, newspapers, e-libraries,
)
- Applications that run on a collection of
Internet-connected resources (SETI_at_home, ) - Tools that create new environments over the
Internet (middleware services)
3Internet-Connected Resources
- Unreliable communication
- Unreliable resources
- Highly heterogeneous environment
- Potentially very large number of resources
- Potentially highly variable number of resources
4Centralized or Decentralized?
- Applications
- Middleware services
5Internet-Connected Resources
- Unreliable communication
- Unreliable resources
- Fault-tolerance mechanisms
- Highly heterogeneous environment
- Asynchronous algorithms
- Potentially very large number of resources
- Potentially highly variable number of resources
- Scalability
6Application Design Decentralized!
- What about
- Distributed management control?
- Fault tolerance in distributed, asynchronous
systems? - Termination detection?
- Communication costs?
- Security?
7Experience with MetaNEOS
- Solving very large optimization problems on
metacomputing platforms - Branch-and-bound search algorithms
- Search for optimal solution
- Successive decomposition of the original problem
- Elimination of unpromising subproblems based on
the best known solution
8Fully decentralized BB Solution
- Process management group membership based on
epidemic communication - Fault-tolerance tree-based encoding of the
problem space. - Report completed problems
- Unsolved problems detected/restored based on
completed problems - Price redundant work
- Termination detection tree contraction
- Dynamic load balancing
9Decentralized BB Performance
Processors Execution time (h) BB time Contraction time Communication (MB/h/p)
10 7.93 98.1 0.3 1.0
30 2.91 90.4 5.2 1.4
50 2.00 81.2 11.7 2.3
70 1.37 87.3 2.3 3.1
100 1.04 84.4 1.1 4.5
10Decentralized BB Fault Tolerance
11Decentralized BB Fault Tolerance
12Experience with MetaNEOS
- Decentralized design is wonderful
- Meantime, the centralized implementation produces
results, because - Centralized code already exists (master-worker)
- Available resources hundreds resources working
simultaneously (Condor testbed) - Centralized code still efficient on relatively
small collections of resources
13Centralized or Decentralized?
- Applications
- Middleware services
14Middleware Services for Computational Grids
- Computational Grids hardware and software
infrastructure that provides access to
computational capabilities. - Middleware services responsible for application
performance - Information Services
- Service Location Services (Resource Discovery)
- Resource Management
- Security
- Fault tolerance/detection
15Information Service Resource Discovery
- Information Service
- Resources (networks, computers, applications, )
- Users
- Resource Discovery Give me n resources with
attribute X - Input set of resource attributes
- Output set of resources
- Attributes hardware characteristics, current
load, network connection, existent/available
software, data, etc.
16Resource Discovery Requirements
- Scalable
- Increasing number of resources
- Increasing number of users
- Reliable
- Flexible (heterogeneity support)
- Heterogeneity
- Administrative level (policies)
- Technical level (hardware and software)
- Support for changing environment
17Resource Discovery Requirements
- Efficient
- Accurate
- Secure
- No global hierarchy
- Politically difficult for wide area (impossible?)
- Hierarchical structures are resistant to change
18Globus
- Toolkit that builds computational grids
- Components
- Metacomputing Directory Service
- Heartbeat Monitor
- Grid Security Infrastructure
- Globus Resource Allocation Manager
- Global Access to Secondary Storage
- Nexus
-
19Globus MDS Step 1
CUS, oGlobus, oUC, ouCS
CUS, oGlobus, oANL, ouMCS
CUS, oGlobus, oUSC, ouISI
20Globus MDS Step 2
CUS, oGlobus, oANL, ouMCS
CUS, oGlobus, oUC, ouCS
CUS, oGlobus, oUSC, ouISI
21Globus MDS Step 3
oGrid, dcmcs, dcanl, dcgov
Organizational Server
Organizational Server
oGrid, dcisi, dcedu
oGrid, dccs, dcuchicago, dcedu
Organizational Server
22Decentralized Information Service
- More difficult than the centralized design
- Resource discovery based on attributes
- Rich set of queries to support
- Compound queries
- Static and dynamic data
- Access policies
- Necessary
23Conclusions
- Applications running on collections of
Internet-connected resources may be centralized
or decentralized. - Middleware services must be decentralized.