Aucun titre de diapositive

Download Report

Transcript Aucun titre de diapositive

A quick overview of
Network communications
Anthony Lomax
Anthony Lomax Scientific Software
Mouans-Sartoux, France
[email protected] www.alomax.net
Distributed, Network-based software
ftp:
http:
Java-RMI
Corba
SOAP
…
SOAP
(Simple Object Access
Protocol)
CORBA
(Common Object Request
Broker Architecture)
Java-RMI
(Remote Method Invocation)
HTTP
(HyperText Transfer Protocol)
FTP
(File Transfer Protocol)
FTP
HTTP
JavaRMI
CORBA
SOAP
TCP (Transmission Control Protocol – management)
messages
Internet
network
hardware dependent transmission protocol
IP (Internetwork Protocol – message delivery)
…
FTP server
FTP client
commands
+ simple, widelyFTP
used
x limited functionality (file transfer)
data connection
FTP
(File Transfer Protocol)
FTP
HTTP
JavaRMI
CORBA
SOAP
TCP (Transmission Control Protocol – management)
IP (Internetwork Protocol – message delivery)
hardware dependent transmission protocol
…
HTTP Request message:
+ simple & standard
GET http://orfeus.nl
GET cgi-bin
POST data
script
HTTP/1.0
+ formatted document display
HTTP HTTP
Response message:
+ secure
HTTP/1.1
200 OK Protocol)
(HyperText
Transfer
Date:
22
Sep 2003 10:18:59
x limited functionality
GMT
Server: Apache/1.0.0
x server overhead
Content-type: text/html
Content-length: 1579
HTML document
FTP
HTTP
JavaRMI
CORBA
SOAP
TCP (Transmission Control Protocol – management)
IP (Internetwork Protocol – message delivery)
hardware dependent transmission protocol
…
server
client
FTP
HTTP
Java-RMI interface
Java-RMI interface
+ relatively simple (~Java)
+ secure Java-RMI
Method
Invocation)
+ (Remote
low server
overhead
(uses client)
+ efficient, powerful, flexible
+ pure Java
x pure Java
HTTP
JavaRMI
CORBA
SOAP
TCP (Transmission Control Protocol – management)
IP (Internetwork Protocol – message delivery)
hardware dependent transmission protocol
…
servant
CORBA
(C,C++,Java,…)
(C,C++,Java,…)
(Common Object Request
+ heterogeneous platforms/languages
Broker Architecture)
client
FTP
HTTP
CORBA interfaces
CORBA interfaces
+ use “legacy” programs
Object
+ secure
Request
+ low server overhead (uses client)
Broker
+ efficient, powerful,
flexible
x complexity
(ORB)
x no direct FORTRAN support
JavaRMI
CORBA
SOAP
TCP (Transmission Control Protocol – management)
IP (Internetwork Protocol – message delivery)
hardware dependent transmission protocol
…
client
(C,C++,Java,…)
SOAP
(Simple Object Access
Protocol)
SOAP
SOAP
Request
Response
message:
message:
service
(C,C++,Java,…)
+ heterogeneous platforms/languages
FTP
SOAP interfaces
SOAP interfaces
POST /Magnitude
HTTP/1.1 200
HTTP/1.1
OK
Host: Content-Type:
orfeus.nl
text/xml; charset="utf-8"
+ use text/xml;
HTTP
/ XML
Content-Type:
Content-Length:
nnnn
charset="utf-8"
Content-Length: nnnn
SOAP
+ secure
SOAPAction:
<SOAP-ENV:Envelope
"Some-URI"
xmlns:SOAP-ENV="http://xmlsoap.org/soap/envelope/"
<SOAP-ENV:Envelope
+SOAPlow serverXML
overhead
(uses client)
messages
xmlns:SOAP-ENV="http://xmlsoap.org/soap/envelope/"
ENV:encodingStyle="http://xmlsoap.org/soap/encod/">
SOAP-ENV:encodingStyle="http://xmlsoap.org/soap/encod/">
+<SOAP-ENV:Body>
powerful, flexible
<SOAP-ENV:Body>
(HTTP)
<m:GetMagnitudeResponse
xmlns:m="Some-URI">
<m:GetMagnitude
xmlns:m="Some-URI">
<Magnitude>6.7</Magnitude>
+</m:GetMagnitudeResponse>
standardized,
w/ registry services
<event>20030923.100327</event>
</m:GetMagnitude>
</SOAP-ENV:Body>
x complexity
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
</SOAP-ENV:Envelope>
x poor efficiency (?)
HTTP
JavaRMI
CORBA
HTTP
SOAP
TCP (Transmission Control Protocol – management)
IP (Internetwork Protocol – message delivery)
hardware dependent transmission protocol
…
A quick overview of Network communications
References
General:
Developer.com - http://developer.com
O'Reilly Network - http://www.oreillynet.com
W3Schools - http://www.w3schools.com
Connected: An Internet Encyclopaedia - http://www.freesoft.org/CIE
HTTP:
HTTP Made Really Easy - http://www.jmarshall.com/easy/http
Java & JavaRMI:
java.sun.com - http://java.sun.com
CORBA:
Object Management Group - http://www.omg.org
Two papers on CORBA and FORTRAN
- http://accl.grc.nasa.gov/IPG/CORBA/CAS_corba.pdf
http://www.ssgrr.it/en/ssgrr2002w/papers/211.pdf
SOAP
soapware.org http://www.soapware.org
Anthony Lomax Scientific Software, Mouans-Sartoux, France
[email protected] www.alomax.net