Architecture of the Object Oriented ARC framework for C# over .NET - - PowerPoint PPT Presentation

architecture of the object oriented arc framework for c
SMART_READER_LITE
LIVE PREVIEW

Architecture of the Object Oriented ARC framework for C# over .NET - - PowerPoint PPT Presentation

Architecture of the Object Oriented ARC framework for C# over .NET T. Vamsi Kalyan & R.K. Joshi Department of Computer Science and Engineering IIT Bombay Project sponsored by Microsoft A Presentation for SoDA, Jan 2004, Taj West End


slide-1
SLIDE 1

Architecture of the Object Oriented ARC framework for C# over .NET

  • T. Vamsi Kalyan & R.K. Joshi

Department of Computer Science and Engineering IIT Bombay

Project sponsored by Microsoft A Presentation for SoDA, Jan 2004, Taj West End Bangalore

slide-2
SLIDE 2

Outline of the talk

  • What is ARC
  • ARC Kernel Services
  • Architectural view of ARC framework
  • ARC from the user’s point of view
  • Summary and current status of work
slide-3
SLIDE 3

Anonymous Remote Computing (ARC) Anonymous Remote Computing (ARC)

  • ARC is a message passing paradigm to support

writing parallel/distributed programs.

  • ARC provides parallel/distributed programming

constructs.

  • Issues in ARC framework are

Selecting a processor. Sending a task and waiting for the results. Handling of node failures.

slide-4
SLIDE 4

What is ARC over C#/.NET

  • Object-oriented, message passing framework to

support development of distributed applications in presence of load, heterogeneity, failures and mobility.

  • Integration of

– Anonymity – Service orientation – Mobility and distribution of objects

  • Scalable (dynamic join and dynamic leave) system

in terms of participating nodes in a network.

slide-5
SLIDE 5

ARC Kernel Level Services

  • Registration Service
  • Migration Service
  • Synchronization
  • Retraction Construct
  • Connect Construct
  • Multi-hopping
  • HPF Service
  • Fault Tolerance Service
  • Auto Execution Service
  • Failure Detection
  • Object Arrival Intimation Service
  • Activation and Deactivation Service
  • Join Operation
  • Leave Operation
slide-6
SLIDE 6

ARC Framework Architecture

UserProgram

IMyObj Factory Container ARCObject

NodeAdmin Program

UserLevel

.NET Remoting Infrastructure

Call Services Call Services Call Services Asynchronous Notify

ARCObject Proxy Layer ARC Kernel Layer Communication Kernel Services ARC Proxy Layer ARC Services

NodeAdmin Services Services ARC Object

Join Service Registration Service Migration Service HPF Service ObjectArrival Intimation Service

Developer Services

Translated UserInterface

Acquire Proxy RealObj

ARC User Upper Layer ARC User Lower Layer Layer

Service Auto Execution Fault Tolerance & Leave Service Activation & Trigger Service

slide-7
SLIDE 7

Deployment View of ARC Software over LAN

:logical ring :a node not in the ARC logical ring :LAN Network :a node in the ARC logical ring ARC Sotware Components ARC Sotware Components ARC Sotware Components ARC Sotware Components ARC Sotware Components <<TCP .NET Remoting>> <<TCP .NET Remoting>> <<TCP .NET Remoting>> <<TCP .NET Remoting>> <<TCP .NET Remoting>> ARC Network

slide-8
SLIDE 8

User’s Perspective

  • A platform above .NET to support development of

distributed applications.

  • ARC Kernel level provides partial support for
  • bject migration and activating on remote nodes.
  • User has to write the methods that are not only

application specific but also interact with the framework.

  • Some functionalities are provided to the user as

partially implemented classes in ARC user lower level.

slide-9
SLIDE 9

Design of Container

«interface»

IContainer Container Factory

+New(): IMyObj «interface»

IPushCommand

+push(machine:HPFValue): int «interface»

IMyObject

+myOperation(param:type): type

UserProgram PContainer

«implementation» 2 «instantiate» «interface»

IRefCount

+IncRefCount(): void +DecRefCount(): void +RefCount(): int «use» «use» «interface»

ISync

+Sync(): void +GracefulRetract(): void +connect() «interface»

IMigratable

To Interfaces IMYObject, IPushRequest

slide-10
SLIDE 10

Design of Class Real

Proxy PReal Activator (.NET Remoting)

+GetObject(): Object «interface»

ITrigger

+Trigger(): void +OnReturn(): void +OnRetract(): void «interface»

IRealUtil

+isRetractonSet(): bool +RegisterForRemoteAccess(): void «interface»

IMyObject

+myOperation(param:type): type

Nonoriginator Context Real

«instantiate» «implementation» «interface»

IRefCount

+IncRefCount(): void +DecRefCount(): void +RefCount(): int «use» «use» «use» «interface»

IMigratable

«interface»

IPushRequest

+push(machine:HPFValue): int

Container at Originator

«use»

FrontEndReal

«use» To MarshalByRefObject, IMyObjectMigratable, IFronEndRealUtil, PFrontEndReal

slide-11
SLIDE 11

Component View of ARC Software over LAN

ARC Node CodeMotion Server .dll Name Server .dll Object Server .dll Join Class.cs FTS Service .dll ARC System .dll HPF Server .dll StartUp Program Config File User Program

slide-12
SLIDE 12

Components Categorized Based on Services

Name Server Code Motion Server Startup Program FTSServer ObjectServer JoinServer HPFServer ARCSystem

Node Administrator Service Components Developer Service Components ARC Object Service Components

slide-13
SLIDE 13

Summary

  • ARC framework integrates

– Anonymity – Mobility and distribution of objects – Service orientation at interface and interaction level – Object orientation at design and implementation level – OOAD process followed for development

  • LAN and Internet versions of ARC software code

– Tested using four Windows 2000 workstations.

  • Main design goal was separation of system’s concerns from the

programmer’s concerns while building service oriented and object-

  • riented ARC framework over C#/.NET.
slide-14
SLIDE 14

Current Status of the Research

  • ARC over LAN has been extended to work over

the Internet by keeping reuse and providing same abstraction to the user as main objectives.

– ASP.NET, XML Web services, .NET, C#

  • Security issues are not addressed in current work

and needs to be addressed.

  • Application framework and application that

involve real world problems

slide-15
SLIDE 15

Website: http://www.cse.iitb.ac.in/~rkj/arc.... Thank You