i.1 distributed systems prof. dr. alexander schill dresden technical university computer networks...
TRANSCRIPT
I.1
Distributed Systems
Prof. Dr. Alexander SchillDresden Technical University
Computer Networks Dept.
http://www.rn.inf.tu-dresden.de
I.2Motivation and development tendencies
Desktop PC:
• multitasking
• networking
• direct manipulation, graphical interface
• high performance (CPU, transfer)
• large primary and secondary storage
Areas of application:
• management / development (CASE – Computer Aided Software Engineering)
• team working (CSCW – Computer Supported Collaborative Work)
• group communication
• process control (CIM – Computer Integrated Manufacturing)
I.3Sample topology
• networked workstations, also organizationally integrated• super-proportionally increasing communication performance
DistributedOS
LAN (for instance
high performance network)
LAN
L
A
N
L
A
N
WAN
V.A.N.Value added network
Distributed DB
I.4Distributed System
• physical computer nodes (processor + storage)• direct / indirect computer coupling
– local networks (Ethernet (CSMA/CD), Token Ring, Token Bus)
– high-performance networks (Gigabit Ethernet, ATM)
– gateways / bridges
– radio networks (GSM, UMTS)
• transport-oriented comm. protocols (TCP/IP, UDP/IP, IPng)• communicating processes
– complete logical connection
– no complete physical connection (communication via inter-components)
• system oriented resources (file system, threads, system programs)• distributed storage, decentralized, co-operative• distributed applications (area specific) on top of distributed systems
I.5Example: distributed application
DistributedOS
LAN for instance
high performance network)
LAN
L
A
N
L
A
N
WAN
V.A.N.Value added network
Distributed DB
Logical communication path
Process
I.6
Distribution: Purposes
• data, function and load distribution
• decentralization and co-operation
• locality properties and efficiency
• integration of partial applications
• remote resource access
• fault tolerance: reliability and availability
I.7
Client(for instance Point of Sale)
Client(for instance Automated
Teller Machine)
Server(for instance
accountserver)
Server(for instance
database)
Requirements:- decentralized system structure- Internet/Intranet-integration- scalability- security concepts- transaction processing- heterogeneity of systems
Client(for instance
Home Access)
Application example
I.8Network infrastructure: examples
required bridging betweenheterogeneous networks, system platforms and applications
Middleware
Client(for instance Point of Sale)
Client(for instance Automated
Teller Machine)
Server(for instance
accountserver)
Server(for instance
database)
Client(for instance
Home Access)
X.25
Modem / ISDN / ADSLInternet-access
Fast Ethernet /Token Ring
ATM
ISDN / X.25Fast Ethernet / Token Ring
I.9N-tier-architectures
Client(for instance Point of Sale)
Client(for instance Automated
Teller Machine)
Server(for instance
accountserver)
Server(for instance
database)
3-tier: three-level structure; preferable for complex applications
2-tier: two-level structure (user-interface<->Host); simpler, butless flexible
Client(for instance
Home Access)
User interface,if necessarypre-processing (thin client vs.fat client)
Application logic Data management
I.10
Middleware and Client/Server: coordination
Client(for instance Point of Sale)
Middleware(for instance
Java RMI, CORBA, .NET, SOAP)
Transport-oriented layers
(for instance TCP/IP, SNA)
Phys. network(for instance Fast Ethernet,
Token Ring, ATM)
Server(for instance account
server)
Middleware
Transport-orientedlayers
Phys. network
Applicationinteraction
Object interaction
Def. of Middleware: “Infrastructure services for distributed applications for bridging of heterogeneity of different systems and networks”
I.11
Middleware: Basic technologies
Java (Sun and others):- programming language, applets- Remote Method Invocation (RMI)- Enterprise JavaBeans (EJB): Components
CORBA (Common Object Request Broker Architecture):- object-oriented, language independent; relatively low-level- standard of Object Management Group (OMG)
.NET / COM+ (Component Object Model):- object-oriented, COM+ relatively proprietary, .NET more open- development of Microsoft
Further approaches:- MOM (Message Oriented Middleware)- SOAP (Simple Object Access Protocol), Web Services- transaction monitors, Application Servers
I.12
Middleware: general overview
Integrity
Flexibility
Client/Server, Remote Procedure Call (RPC)
(for instance DCE - Distributed
Computing Environment)
Transactionmonitors
Message Oriented Middleware
CORBA-/ RMI-/.NET/SOAP-
Object-orientedBasic comm.
Object TransactionMonitor
Component-Frameworks
(CORBA, EnterpriseJavaBeans, .NET,
WebServices)
ApplicationServer /
Enterprise Appli-cation Integration
Usabilityby
application developer
I.13
System models
Client/Server (Remote Procedure Call):
ClientCall
Result
Server
Offeredprocedures
Control thread and data transfer
Separate address spaces
Object-oriented communication:
01 02 06
07
04
03
05Computer 1
Computer 3
Computer 2
I.14
Client A
CopyDocument 1
Client B
Client C
CopyDocument 3
Document 1
Document 2
Document n
DocumentServer
. . .
providedocument(“Document 1”)
generateindex(“Document 1”)
providedocument(“Document 3”)
I.15
Client-Object A
Client-Object B
Client-Object C
DocumentServer
. . .
D1 = Server.provideDocument (“Document 1”)D1.move (here)D1.<operation>
D2 = Server ...D2.generate Index ()
D3 = Server.provideDocument (“Document 3”)D3.<operation>
Document 1
Document 2
Document n
Document 1
Document 2
Document 3
I.16Comparison of system models
Client/Server-Model Distributed Object-Oriented Model
processing model procedural model with restrictions
object communication
data access type indirect data access via RPC-Server
direct access to objects
data transfer value parameter semantics
reference parameter semantics
identity not system-wide unique
system-wide unique
granularity server of coarse granularity
objects of any granularity
placement fixed placement modifiable placement
higher transparency grade and improved influence on distributionwith object-oriented model