1 / 60

Bio-networking Architecture

Information Design. Service Model: how user access service? Part IV: ... So the former design is not fit for web application! We should not blindly apply object ...

Kelvin_Ajay
Télécharger la présentation

Bio-networking Architecture

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


    Slide 1:Bio-networking Architecture Design

    Jiuyun Wang jywang@ics.uci.edu Netgroup 04/07/99

    Slide 2:Outline

    Part I: Overview Part II: Overall Design CyberEntity and SuperEntity Part III: Individual Design Class Hierarchy Bio-Net System Design System Control Mechanism System Services Distributed Event Model Bio-Net Application Design Service Design Information Design Service Model: how user access service? Part IV: some thoughts for thinking

    Slide 3:Part I Bio-Net System Overview

    Slide 4:Bio-Networking Architecture

    The systems running on the bio-net have features learned from biological system, in which the entities of the system demonstrate behavior such as communication, cooperation, competition migration, reproduction, death, adaptation Bio-Net System consists of three parts: system: bio-net platform / cyber-entity context application: cyber-entity provide service to user user

    Slide 5:Key Characteristics of Bio-Net

    scalable (to millions of users) adaptable (to heterogeneous and dynamic network environments) survivable (from hacker attacks) available (fault/failure-tolerant) autonomous (self-organized and less administration overhead) simple (easy to design and maintain)

    Slide 6:Part II Overall Design

    Slide 7:The Essence of Design

    Everything is a cyber-entity implement Bio-Net platform software in forms of cyber-entities implement applications in forms of cyber-entities individual user can also be treat as a cyber-entity in the cyber-space Envision: All kinds of cyber-entities with biological features cooperate with each other to provide other (e.g. user) c-e.s with desired services successfully and efficiently (emergent behavior of super-entity) Cyber-entities can interact / communicate with each other if permitted (in the way specified by cyber-entity developers) or communicated by distributed event model (provided by platform software provider)

    Slide 8:Why everything is cyber-entities?

    Cyber-entity verbally means any object existed in the cyber-space Give a generic view of any object (system, application, and user cyber-entity) in the cyber-space, no matter what they actually are So the system itself can exploit the features of Bio-networking as well.

    Slide 9:***

    1 super entity = 10 cyber entities 1 cyber entity = 1 web page (body, n-e code) + HTTP functions (body, e code)

    Slide 10:Interface **to Behavior ICyberEntity

    provideService (IService is); //providing **some kind of service, ->migration, ennergy exhange, etc. *** interface IService see later gainEnergy(int amount); //provide service to user to gain some energy loseEnergy(int amount); //lose energy due to leasing some service from other entities reproduce( ); //gain enough energy to reproduce / clone death( ); // run out of energy migrateTo (Address a); //address is generic class for different address: e.g. IP address or others suicide( ); //It is the only altruistic behavior which can transfer energy to other cyber-entity to protect the whole super-entity

    Slide 11:class CyberEntity

    ----- implements ICyberEntity ID id ID superEntityID Object o; // the essential properties what this cyber-entity can do Energy e; Time t; //timeStamp of cyber-entity created Note: it can also implement certain kinds of eventListeners to handle certain events

    Slide 12:interface ISuperEntity

    provideService(IService is); //IService is a interface which provide all kinds of interface synchronizeAll( ); //synchronize all cyber-entity and make them consistent authorizeAccess(A B); denyAccess(Object o); other services (such **)

    Slide 13:class SuperEntity

    ------- implements ISuperEntity ID; //distinguish itself from others Vector cyberEntities; //a list of cyber-entities Note: It is class CyberEntity that actually provides service to end-user, class SuperEntity is an class used by system service cyber-entity to register the service, to expedite system control cyber-entity to authorize user to access the service (refer to system service c-e and System control c-e). We never declare an instance of class SuperEntity!

    Java Virtual Machine & Generic Network

    Slide 14:Bio-Net Overall Design (version 1)

    Distributed Event Model***alternate to social networking *** Bio-Networking Architecture Cyber space Virtual application super-entity Virtual system super-entity Cyber-entities Resouce Cyber-entities Virtual application super-entity Cyber-entities Virtual user super-entity

    Slide 15:**** alternative to social networking define the mechanism differentiate yours from existing ones social networking DNS, NDS, etc

    Slide 16:Part III Individual Design

    Java Virtual Machine & Generic Network

    Slide 17:Bio-Net Overall Design (version 2)

    Service CyberEntity e.g., serverEntity SysService CyberEntity Distributed Event Model Application cyber-entities Bio-Net platform software ( System cyber-entities ) SysCtrl CyberEntity Bio-Networking Architecture Cyber space Data CyberEntity e.g., webpages Virtual application super-entity Virtual system super-entity Administator CyberEntity EndUser CyberEntity Virtual user super-entity

    Slide 18:***For now, use TS definition. One entity containing both: execution code, non e code (dont; worry about efficiency) later, if we need to optimzie for efficiency, we may separate two (e code, non e code)

    Slide 19:explanation

    Super-entity is virtual entity in the network cyber-space. It consists of a set of cyber-entities can provide a certain services to user There are 3 different categories of cyber-entities System cyber-entity System Service CyberEntity: e.g. lookup Service CyberEntity System Control CyberEntity: e.g. competition ctrl, access ctrl Application cyber-entity ServiceCyberEntity: e.g. WebServerEntity DataCyberEntity: e.g. WenPageEntity User cyber-entity administrator, end-user, manager, employee c-e

    Slide 20:The rule of thumb in the design: Separation of concerns

    Separation 3 categories of cyber-entity: system, application and user Separation of system service cyber-entity and system control cyber-entity Separation of service cyber-entity and data cyber-entity (e.g., webServer c-e and webPage c-e) Separation different user cyber-entities: (e.g, administrator and end-user c-e)

    Slide 21:Why separation of concern?

    different c-e addresses different aspect in the bio-net architecture, that is, different c-e have different role in the s-e different c-e have different behavior different c-e can be implemented with different priority follow divide-and-conquer approach will be explained in more details in the following individual sections

    Slide 22:Section 1 Bio-Net Class Hierarchy

    Slide 23:Component / Class Hierarchy

    ServiceEntity DataEntity ServerEntity IServer ITransaction DataBaseManager ResourceEntity WebServerEntity SuperEntity ISuperEntity CyberEntity ICyberEntity IService IPrint ISave ... Application cyber-entity UserEntity SysServiceEntity SysCtrlEntity lookupEntity EnergyEntity SecurityEntity EventListener EventGenerator Note: extends implements class interface contains uses System Cyber-entity (Bio-net Platform s.w.) User cyber-entity EndUser Administrator Event oo

    Slide 24:**(*

    not clear what each component does ***

    Slide 25:Explanation

    Super-entity is virtual entity consisting of a set of cyber-entities can provide a certain services to user There are many kinds of cyber-entities Service c-e and Control c-e in the system platform environment Server c-e and Data c-e which cooperate with each other implement service for super-entity User cyber-entity

    Slide 26:Section 2 System Design ( platform design )

    Slide 27:Outline and overview

    System Control Mechanism System Services Distributed Event Model

    Slide 28:Key point

    Platform software itself is also (implemented in the form of) cyber-entity to take advantage of biological feature in the bio-net Separation of Control and Service cyber-entity

    Slide 29:Section 2-1 System Control / Management

    Slide 30:System Control Mechanism

    Implemented in a bunch of subclasses of the class (cyber-entity) SysCtrlEntity, which provide high level (coarse granularity) management of service note: low-level (fine-granularity) control is implemented in the application cyber-entity (see section 3 for Application cyber-entity design) through interact with user profile and application service c-e (such as server) to implement such control mechanism

    Slide 31:Different categories of Control c-e

    EnergyControl c-e

    Slide 32:Section 2-2 System Service

    Slide 33:System Service

    Implemented in the c-e SysServiceEntity

    Slide 34:Different categories of SysService c-e

    LookupService c-e

    Slide 35:Why separate control and service in the system?

    Different functionality control basically handle all kind of event in the system service basically provide system service (run-time environment for application cyber-entity)

    Slide 36:Section 2-3 Distributed Event Model

    Slide 37:Overview

    Distributed event model, need some special mechanism for event-dispatching and handing one destination event multiple destination event In every bio-net node there is maintain a priority queue of events, cyber-entity can also maintain a priority queue of events to be handled cyber-entity can implement interface EventGenerator, or / and EventListener to generate event and handle event as necessary event can be internal or external event, similar to os event and application event, which generated by system and user respectively

    Slide 38:Event

    Event: //generic event class member var Time t; //the time event being generated Object info; // contain some kind of information Object from; // eventGenerator Object to; //eventListener / eventHandler member method dispatchTo(Object to); //dispatch to object possible in other node dispatchTo(Object[] to); dispatchToAll( ); timeOut( ) isHandled( );

    Slide 39:Event class Hierarchy

    Java.lang.Object Event InternalEvent ExternalEvent RegisterEvent LoginEvent LogoutEvent AddServiceEvent RemoveServiceEvent RequestEvent

    Slide 40:EventGenerator

    create( )

    Slide 41:EventListener

    handle()

    Slide 42:Section 3 Application Design

    Slide 43:Key point

    Separation of Service and data cyber-entity why? Suppose in web application we only need to migrate necessary (related) portion of database along with server when the node where c-e migrate to already have serverEntity exist there, we only need to move corresponding webPageEntity benefit: lower traffic (bandwidth consumption) **For now, dont separate.***

    Slide 44:class ServiceEntity

    Provide service to end-user

    Slide 45:Different categories of Service c-e

    ServerEntity (e.g. WebServerEntity in Web application)

    Slide 46:Class ServerEntity

    ---- extends CyberEntity implements IServer authorize(User u) setPrice(A) //A.setPrice($5) who sets the price of what value of price getPrice(X )// price = B.getPrice(); .. Note: implement any functionality that generic Server need to provide

    Slide 47:class DataEntity

    Object o; //information Note: Contains information (data) and provide service to end-user along withServiceEntity. For example webPageEntity in Web Appliation

    Slide 48:Class WebPageEntity

    ---- extends CyberEntity Vector webpages; // contains a group of related webpages

    Slide 49:Why separate service and data in the application?

    It seems that such separation contradicts with Object-oriented (OO) approach? Why the following OO approach is not appropriate? (we take web application for example) server: object member method = functionality webpage: Object member variable = data problem in such approach: you bundle data with server, while such data in the server, usually is huge (more than 1GB), such object is really cumbersome in the network environment! So you cant treat the whole database as a value in the member variable. OK, you separate such huge database into several groups in which the web pages is closely related. But whenever you need a new group of web pages, you have to retransmit server again even though such server already exists in the destination node

    Slide 50:Why separate service and data in the application? (cont.)

    So the former design is not fit for web application! We should not blindly apply object approach to everything!

    Slide 51:Section 4 Service (access) Model How user access service in the Bio-net?

    Slide 52:Step 1: Bio-net system set-up

    Deploy bio-net platform software some OS / JVM related software system control cyber-entity e.g., securityCyberEntity system service cyber-entity e.g, accountingCyberEntity, lookupCyberEntity some auxiliary software e.g., event-model related software

    Slide 53:Step 2: Application register in the bio-net cyber space

    deploy applications cyber-entity service cyber-entity data (information) cyber-entity register them in the Bio-net CyberSpaces so it can provide service to user

    Slide 54:Step 2: User register in the bio-net cyber space

    User cyber-entity login to this cyber space with some task need to be finished register lookup the desire service carrying on the task paying the bill logout

    Slide 55:Part IV Some thoughts for thinking

    Slide 56:Server Application characteristics

    Server is huge divide server into different component http Server ftp Server other database server Database behind the server is even larger (~GB) divide the information into transportable unit We need to design it in the way fit for network traffic pattern

    Slide 57:Social Networking?

    Apparently, not very efficient So need to find a way to circumvent it? The mechanism shown in this design (lookup cyber-entity is a dedicated c-e for register and lookup service maybe an alternative (in my opinion, better) to the social networking. Why? such mechanism have overhead too? But such overhead is amortized in the time the system idle, but not at the time we need it.

    Slide 58:References:

    Overview of Bio-Networking Architecture, M. Wang, T. Suda, Netgroup, 1999 Mobile Web Server, M. Wang, Netgroup, 1999 Jini Technology, Sun Microsystem, 1999 White paper Distributed event model lookup services NDS, Novell, 1999 AgentOS, Netgroup, 1999 Event model in JDK and other application ...

    Slide 59:Former Design: Cyber-Entity

    Behavior Attributes Body Stored Energy ID Type Age Non-Executable Data Executable Code Migration Replication Reproduction Protection Cyber-Entity ... Service Communication Pheromone Emission Super-entity ID

    Slide 60:disclaim

    This design is only represent my personal opinions. Inevitably, it will have a lot of inconsistency with Bio-networking architecture. What is more, it will have a lot of fallacies which is due to my lack of related knowledge.

More Related