Scenarios.http / https - Internet Sitesrmi-IIOP - INTRANET Environment; Interoperability Requirements (EJB-EJB, EJB-CORBA, ETC.) RMI-JRMP - INTRANET with AN All Java Environment
FireWalls Provide Protection By: • Packet Filtering IP Blocking - Source Or Destination IP Port Blocking - E.G. Only Allow Well-KNown Ports Such AS 80, 443, 25, etc. • Protocol Filtering - E.G. NO FTP
HTTP (HyperText Transfer Protocol) .Stateless, connection-less request / response mechanism, default port is 80.Pros • simple request / response mechanism • allowed through firewalls (most of the time) • widely supported / deployed • extensible - supports tunnelling of Arbitrary Data; Custom Request Types / Response ContentCons • Stateless - Hence Non-Transactional • INSecient - Eg Mime Encoding Can Make Files Bigger • Doesn't Support "Push" model "MODEL
HTTPS.SSL (Secure Socket Layer) is an application level protocol layered over TCP. HTTP layered over SSL is HTTPS, default port is 443.Regarded as connection-based / stateful as an SSL session is maintained over multiple requests / responses.Each session may include multiple secure connections in addition, each party (client / server) may hold multiple SSL sessions.Pros • secure -. only "in-the-clear" at client / server • allowed through firewalls (most of the time) • widely SUPPORTED / DepensedCons • Computationally Expensive - Excluding Dedicated Hardware, Https Can Only Process 10% of ThetRaffic HTTP CAN • Admin Overhead - Renewing Certs, ETC.
IIOP (Internet Inter-ORB Protocol) .The GIOP (General Inter-ORB Protocol) specifies a set of message formats and common data representations for communication and is intended for use on any suitable connection-based transportprotocol.IIOP is GIOP layered over TCP, no default port - the GIOP / IIOP implementation will dynamically assign ports when an object server instance binds to a name.Pros • Interoperability - Java clients can call C servers; Cobol client can call Java server, etc. • Legacy integration • Designed for generic remote object invocation - type safe, extensible • inbuilt support for security and transactionsCons • Firewalls - servers bound to arbitrary ports so firewall can not be configured with an IIOP port; can be supported with an IIOP proxy but "push" model is still problematic • Performance - All Method Invocations Are Remote (Possibly over the Internet) • Pass-by-reference - Only Supports Remote References, Can't Use Pass-by-Value (UnTil Corba 2.3)