Presentation is loading. Please wait.

Presentation is loading. Please wait.

CORBA over ATM San Diego State University Department of Mathematical and Computer Sciences San Diego, April 6-7, 2000 Workshop ATM Networking Worawan Tunsiengsomjareon,

Similar presentations


Presentation on theme: "CORBA over ATM San Diego State University Department of Mathematical and Computer Sciences San Diego, April 6-7, 2000 Workshop ATM Networking Worawan Tunsiengsomjareon,"— Presentation transcript:

1 CORBA over ATM San Diego State University Department of Mathematical and Computer Sciences San Diego, April 6-7, 2000 Workshop ATM Networking Worawan Tunsiengsomjareon, Mary Li

2 CORBA over ATM CORBA Overview Problems with Classical CORBA CORBA over ATM Classical IP over ATM AREQUIPA

3 Middleware CORBA: Common Object Request Broker Architecture –Relies on a protocol called the Internet Inter-ORB Protocol(IIOP) for remote Objects. Everything in the CORBA architecture depends on an Object Request Broker(ORB). RMI: Remote Method Invocation –Relies on a protocol called the Java Remote Method Protocol(JRMP). Java relies heavily on Java Object Serialization, which allows objects to be marshaled (or transmitted) as a steam. DCOM: Distributed Component Object Model –Supports remote objects by running on a protocol called the Object Remote Procedure Call (ORP).

4 CORBA Overview ORB GIOP/IIOP Client Server Object Implementation IDL Stubs IDL Skeleton Object Adapter ORB Interface

5 CORBA Application using Java IDL Writing the IDL Interface Mapping.idl file from IDL to Java Developing a Client Application Developing the Hello World Server Compiling and Running the Hello World Application

6 Hello.idl module HelloApp { interface Hello { string sayHello(); };

7 IDL Compiler Output Hello.java _HelloStub.java _HelloImplBase.java HelloHelper.java HelloHolder.java Hello.idl

8 IDL Compiler Output (continue) _HelloImplBase.java This abstract class is the server skeleton, providing basic CORBA functionality for the server. It implements the Hello.java interface. The server class HelloServant extends _HelloImplBase. _HelloStub.java This class is the client stub, providing CORBA functionality for the client. It implements the Hello.java interface.

9 IDL Compiler Output (continue) Hello.java This interface contains the Java version of our IDL interface. It contains the single method sayHello. The Hello.java interface extends org.omg.CORBA.Object, providing standard CORBA object functionality as well. HelloHelper.java This final class provides auxiliary functionality, notably the narrow method required to cast CORBA object references to their proper types.

10 IDL Compiler Output (continue) HelloHolder.java This final class holds a public instance member of type Hello. It provides operations for out and inout arguments, which CORBA has but which do not map easily to Java's semantics.

11 Hello World Architecture

12 Problems with Classical CORBA Lack of QoS specification and enforcement. Lack of real-time features. Lack of performance optimization.

13 CORBA over ATM High bandwidth Low latency Scalability of endsystems and distributed systems

14 Comparison of Various Options Native ATM IP over ATM Application ORB Socket TCP IP LLC 1,2 Physical (Ethenet) Application ORB WinSock2 AAL ATM SONET/SDH Application ORB Socket TCP CLIP/LANE AAL ATM SONET/SDH NO ATM AREQUIPA Application ActiveORB Socket TCP/UDP IP AREQUIPA AAL ATM SONET/SDH

15 Classical IP over ATM Classical IP over ATM uses hop by hop connections Hosts can not influence the QoS reserved on the different links Classical IP over ATM has to use routers even if a direct ATM connection could be established between communicating hosts

16 Application Requested IP over ATM (AREQUIPA) AREQUIPA runs TCP/IP over end to end connections Each application can request its own connection with the QoS it needs End-to-End AREQUIPA connections for three applications with QoS requirements

17 Communication without AREQUIPA Upper layer (e.g.IP) Upper layer (e.g. IP) Lower layer (e.g. ATM) Lower layer (e.g. ATM) Router Application

18 Communication with AREQUIPA Upper layer (e.g.IP) Upper layer (e.g. IP) Lower layer (e.g. ATM) Lower layer (e.g. ATM) Application

19 What is AREQUIPA ? AREQUIPA is an extension to Classical IP over ATM which allows applications to request their own SVCs AREQUIPA provides two new socket primitives to applications –Arequipa_preset: Opens an end-to-end SVC and sends all data from the socket over that connection –Arequipa_expect: Allows to use incoming AREQUIPA connections in the reverse direction

20 Comparison AREQUIPA is developed by IETF (RFC 2170) to provide end-to-end ATM connections with guaranteed QoS Solution with NHRP (RFC 2332) also provides direct connections which bypass the routers but must use RSVP to provide QoS on these connections Even if NHRP and RSVP were available now, they would have to be deployed over the entire ATM WAN to be usable AREQUIPA needs only to be installed on the end systems. It uses the standard UNI to establish the connections

21 AREQUIPA and the Web Using AREQUIPA each document can be downloaded with the QoS it needs Required QoS is specified in meta information of Web documents Web browsers (or proxies) put their ATM address in every request Knowing the QoS from the meta-information and the ATM address from the request, the server can open an ATM connection to send the document AREQUIPA capable servers and clients are fully compatible with standard ones

22 Example AGENTSERVER appl.system appl. 1, First request without socket pragma 2. Check document for QoS meta info send header only 3. Open UDP socket 8090 call Arequipa_expect read from socket 4. Request with socket pragma 5. Open UDP socket connect to port 8090 on agent’s machine call Arequipa_preset 6. Send document over UDP socket GET UserAgent:ATM.xxx.yyy Header with QoS meta info GET, UserAgent: ATM.xxx.yyy Pragma: Socket=UDP.8090 ATM connection setup Open AREQUIPA connection Accept AREQUIPA connection Document over dedicated ATM connection Use VC on which data is received for outgoing traffic

23 Using an AREQUIPA proxy An AREQUIPA proxy can be placed on a gateway of an enterprise network to provide AREQUIPA for the whole enterprise. An AREQUIPA proxy also allows to provide AREQUIPA service with browsers which don't know about AREQUIPA (ie Netscape, Internet Explorer)

24 ActiveORB The ORB developed in the Laboratoire de Teleinformatique, is based on the sC++ language and has the capability to manage different threads simultaneously and to make asynchronous and synchronous invocations with immediate or deferred response collection.

25 Advantage of ActiveORB Opens new opportunities for CORBA in the exchange of continuous audio/video data between remote objects. Defines the interfaces needed to specify the Quality of Services.

26 Architecture of ActiveORB Client Server Object implementation Stub ORB Interface Skeleton BOA ActiveORB CORE IIOP Handler TCP Socket TCP Daemon creation call 1 6 23 4 5 7


Download ppt "CORBA over ATM San Diego State University Department of Mathematical and Computer Sciences San Diego, April 6-7, 2000 Workshop ATM Networking Worawan Tunsiengsomjareon,"

Similar presentations


Ads by Google