Stages of Complexity - PowerPoint PPT Presentation

1 / 20
About This Presentation
Title:

Stages of Complexity

Description:

naming, trading. handling and routing of events, notifications. security ... Futures. Agents: AI embedded in distributed systems ... – PowerPoint PPT presentation

Number of Views:27
Avg rating:3.0/5.0
Slides: 21
Provided by: webPr
Category:

less

Transcript and Presenter's Notes

Title: Stages of Complexity


1
Stages of Complexity
Enterprise Computing - DCE - CORBA - Javas
J2EE- .NET framework and servers - SOAPs
buddies gt XML gt WSDL gt UDDI gt more
to come!
Distributed Programming - RPC (C/C) - RMI
(Java) - Remoting (.NET)- DCOM (win32) - invoke
via email (messaging i/f) - winner? SOAP
Network Programming - sockets
Basic Networking - ISO/OSI - addressing -
protocols
2
Enterprise Computing
  • Everybody their brother has a framework
  • A framework is typically two things
  • collection of programs distributed services
  • programmers interfaces (APIs)
  • Programmers typically use existing services while
    creating their own
  • e.g. write RPC client, server and use rpcbind

3
Enterprise Computing Issues
  • Scalability
  • Reliability
  • Security
  • Heterogeneity

4
Levels of Computing Design
Enterprise Computing - many middleware
services - non-trivial issues with
concurrency- non-trivial issues with
distribution - rely heavily on code re-use and
design patterns
Complex Computing - many system services -
some concurrent algorithms - some middleware
services - familiarity with design patterns
Essential Computing - good designs -
non-trivial algorithms - some system services
Simple Computing - basic syntax - basic design
5
Some Core Middleware Services
  • Handling remote processes data
  • Handling remote file I/O
  • Naming/Brokering/Trading
  • multiple levels
  • multiple attributes (yellow pages)
  • Security
  • authentication, authorization, privacy
  • Threading, Synchronization, Transacting

6
Some Frameworks (80s,90s,zips)
  • Old-line Unix/Internet Sun RPC friends
  • OSF DCE newer RPC-base Unix/Microsoft
  • Old-line Microsoft DCOM friends
  • CORBA the OO alternative to RPC-base
  • Java J2EE Java borrows from CORBA
  • .NET newer Microsoft base (and Mono!)
  • Web services SOAP friends
  • The freeware option and Linux

7
1980s Unix Framework
  • Processes local (various IPC), remote (Sun RPC)
  • Data Translation XDR
  • File I/O local and Network File System (NFS)
  • Naming rpcbind,Network Info Service (NIS) was
    Yellow Pages,Domain Name Service (DNS)
  • Time sync Network Time Protocol (NTP)
  • Threading/Sync pthreads, fork/exec
  • Security basic authentication and authorization
  • And GUI too Tcl/Tk, X Windows, OSF Motif

8
OSF DCE
  • Open Software Foundation created Distribute
    Computing Environment early 1990s
  • Processes DCE RPC, Interface Definition Language
    (IDL)
  • File I/O Distributed File System (DFS)
  • Naming rpcd, Cell Directory Service (CDS)
  • Time sync DECs Distribd Time Service (DTS)
  • Security Kerberos (from MIT, 1980s)
  • Interoperates with old-line Unix framework

9
DCEs Contributions
  • Pulled Unix community (and Microsoft) around
    distributed processing standard
  • First attempt to pull together middleware pieces
  • Systematically addressed scalability in each part
  • OSF also tried network management
  • Distributed Management Environment (DME)
  • brought together network management standards
  • fizzled after OSF ran into financial woes

10
Microsoft Frameworks of Old
  • The Programmers choices/tools
  • the win32 API (basic OS resources)
  • Microsoft Foundation Classes (MFC)
  • Web programming tools
  • ActiveX Template Library (ATL)
  • Active Server Pages (ASP)
  • Internet Server API (ISAPI)
  • Email Collaboration Data Objects (CDO)

11
More Historical Microsoft
  • Database (ActiveX Data Objects - ADO)
  • ODBC, DAO, RDO, whatever
  • Distributed COM, DCOM, COM
  • sockets and DCE RPC also available
  • Enterprise servers
  • SQL Server
  • Exchange Server
  • many, many more!

12
CORBA
  • Essential idea object request broker (ORB)
  • CORBA Common ORB Architecture
  • CORBA RMI IDL (interface defn. lang.)
  • CORBA services and features
  • naming, trading
  • handling and routing of events, notifications
  • security
  • interoperability via Inter-ORB protocol

13
CORBAs Contributions
  • Provided a rallying point for OO RPC
  • industry was stuck on traditional RPC
  • Pioneer in inter-organization (enterprise)
    computing
  • predecessor Electronic Data Interchange (EDI)
  • Object Mgmt Group created CORBA in 1991
  • version 2.0 specification arrived in 1996
  • glue Internet Inter-ORB Protocol (IIOP)
  • challenger for future dominance SOAP

14
J2EE Components
  • RMI and registry
  • Database (JDBC) and File I/O
  • Threads and synchronization
  • Graphics (2D/3D), windows, GUI (Swing)
  • Java Servlets API, JavaServer Pages (JSP)
  • JAX packages (XML services)
  • Enterprise JavaBeans components
  • Security
  • Email, Web services

15
.NET Framework Classes
  • Remoting (RMI), Message (email)
  • Database and File I/O (local distributed)
  • Security
  • Data presentation with XML
  • Web Services and web communication
  • Graphics (2D/3D), windows, GUIs
  • Threads and synchronization
  • 3500 classes (so far)

16
The Magic Word Transparency
  • Access transparency
  • Location transparency
  • Concurrency transparency
  • Replication transparency
  • Failure transparency
  • Migration transparency
  • Performance transparency
  • Scaling transparency

17
Problem of Distributed State
  • A huge problem of distribution
  • Hard to keep everybody on the same page
  • Some sub-problems
  • controlling massive amounts of concurrency
  • handling uncertain message delays
  • dealing with failures (versus monolithic failure)
  • changing state in gt1 place (two-phase commits)
  • increased security risk

18
The Network Operating System
  • Same basic five tasks of an OS
  • Process management (including sync)
  • Memory management
  • File/Storage management
  • Security
  • Device management
  • Device mgmt naming/brokering
  • everything on the net is a resource/device

19
Web Services
  • SOAP Simple Object Access Protocol
  • THE wave of the decade
  • On track to become the standard for remote
    procedure/method call/invocation
  • Works across all platforms and all languages
  • Built on top of HTTP and XML
  • WSDL Web Service Description Language
  • The interface definition mechanism for SOAP
  • UDDI Universal Description, Discovery and
    Integration
  • Essential protocol for clients/servers to connect

20
Futures
  • Agents AI embedded in distributed systems
  • P2P peer-to-peer rather than client/server model
  • Grid Computing massively distributed tasks
  • Pervasive Computing
  • small wireless computers everywhere
  • often embedded in more natural objects
Write a Comment
User Comments (0)
About PowerShow.com