Chapter 4: Inter-Process Communications: 95-702 Distributed Systems
Chapter 4: Inter-Process Communications: 95-702 Distributed Systems
Chapter 4: Inter-Process Communications: 95-702 Distributed Systems
Lecture 8
Chapter 4: Inter-process
Communications
95-702 Distributed Systems Information
System Management
1
Middleware layers
Applications, services
Interoperability Problems
Big-endian, little-endian byte ordering
Floating point representation
Character encodings (ASCII, UTF-8, Unicode, EBCDIC)
Request
doOperation
message getRequest
select object
(wait) execute
Reply method
message sendReply
(continuation)
Na
m
e
Me
ss
age
s s
e
n
t by
Cl
ie
n
t
Se
r
v
er
Cl
ie
n
t
R
Re
q
ue
st
RR Re
q
ue
st
Re
p
ly
A
RR Re
q
ue
st
Re
p
ly
Ac
kn
ow
l
edge
rep
ly
HTTP is extensible.
servant MyCoolClassServant.java
server CoolClassServer.java
skeleton MyCool_Skeleton.java
interface MyCoolClass.java
Client CoolClient.java
Interface MyCoolClass.java
stub CoolClass_Stub.java
Netbeans 6.8
LowLevelDistributedObjectProject
LowLevelDistributedObjectProjectClient
System.out.println("Main");
MyCool_Skeleton cs =
new MyCool_Skeleton(new MyCoolClass_Servant());
cs.serve();
}
}
MyCoolClass mcc;
public MyCool_Skeleton(MyCoolClass p) {
mcc = p;
}
try {
Socket socket;
ObjectOutputStream o;
ObjectInputStream i;
i = new ObjectInputStream(socket.getInputStream());
Request-Reply protocol.
Marshalling and external data representation.
Interoperability.
Security.
Reliability.
Performance.
Openness.
Use of Metadata.
Remote references.