2-jun-15 y. mazuryk, [email protected] tu/e informatica, system architecture and networking 1 yarema...

24
Mar 27, 2022 Y. Mazuryk, [email protected] TU/e Informatica, System Architecture and Networking 1 Yarema Mazuryk Service Oriented Architectures in Heterogeneous Environments

Post on 18-Dec-2015

213 views

Category:

Documents


0 download

TRANSCRIPT

Apr 18, 2023 Y. Mazuryk, [email protected]/e Informatica, System Architecture and Networking

1

Yarema Mazuryk

Service Oriented Architecturesin Heterogeneous Environments

Apr 18, 2023 Y. Mazuryk, [email protected]/e Informatica, System Architecture and Networking

2

Context – Connected Home

Wireless LAN

Firewire (IEEE1394)

Bluetooth

Ethernet

Powerline

GG

GG

Apr 18, 2023 Y. Mazuryk, [email protected]/e Informatica, System Architecture and Networking

3

Connected Home

Client Mobility Heterogeneous Network

Ad Hoc Network

Apr 18, 2023 Y. Mazuryk, [email protected]/e Informatica, System Architecture and Networking

4

Key Aspects

Transparent control

Self organizing networksMinimal (zero) configuration

Embedded intelligence

Open protocols

Privacy

Advanced interaction

Apr 18, 2023 Y. Mazuryk, [email protected]/e Informatica, System Architecture and Networking

5

Service Oriented Architecture - Place

Transport

MiddlewareService Oriented

Platform

ApplicationClient API

Client API

Service API

Service API

Transport

Service Oriented Platform

Client API

Client API

Service API

Service API

Service1Service1Client1Client1

Open protocolOpen protocol

Apr 18, 2023 Y. Mazuryk, [email protected]/e Informatica, System Architecture and Networking

6

Service Oriented Architecture – Addressed Issues

Interoperability

Scalability

Agility

Reusability

Maintainability

Functional Incrementalism

Apr 18, 2023 Y. Mazuryk, [email protected]/e Informatica, System Architecture and Networking

7

Service Oriented Architecture – Conceptual Model

ServiceService

Service Description

Service Description

Service Advertisement

Service Advertisement

Service User

Service User

Service Implementation

Service Implementation

provides

uses retrieves

Service Advertisement

Service Discovery

+address+address

+name+name

+address+address

Eventing, Control

Apr 18, 2023 Y. Mazuryk, [email protected]/e Informatica, System Architecture and Networking

8

Service Description Example (UPnP)<actionList> <action> <!-- are we playing now? --> <name>GetPlayMode</name> <argumentList> <argument> <name>Mode</name> <relatedStateVariable>PlayMode</relatedStateVariable> <direction>out</direction> <retval /> </argument> </argumentList> </action> </actionList>

<serviceStateTable> <stateVariable sendEvents="yes"> <name>PlayMode</name> <dataType>string</dataType> <allowedValueList> <allowedValue>PLAY</allowedValue> <allowedValue>PAUSE</allowedValue> <allowedValue>STOP</allowedValue> </allowedValueList> </serviceStateTable>

Apr 18, 2023 Y. Mazuryk, [email protected]/e Informatica, System Architecture and Networking

9

SOA – “Publish-Find-Bind-Execute” Model

Provider

Consumer

NetworkNetwork

1 Publish

2Find

ContractContract3 Bind

4 Execute

Apr 18, 2023 Y. Mazuryk, [email protected]/e Informatica, System Architecture and Networking

10

SOA vs Component Based Development

Networking environment

SOA COM

Central -

Communication model Messagebased

APIbased

Interfaces Coarse-grained

Fine-grained

InstantiationAs

neededSingle &active

Apr 18, 2023 Y. Mazuryk, [email protected]/e Informatica, System Architecture and Networking

11

Addressing & Naming

Uniform addressing schemeIndependent from physical network addressing

Apr 18, 2023 Y. Mazuryk, [email protected]/e Informatica, System Architecture and Networking

12

Discovery - GOALS

Locate the service provider

Retrieve provider’s access interfaceAcquire additional information

Apr 18, 2023 Y. Mazuryk, [email protected]/e Informatica, System Architecture and Networking

13

Discovery - METHODS

Service Discovery

Service Discovery

Pre-configured

Pre-configured

Non- configured

Non- configured

Location aware

Location aware

MediatedMediated

ImmediateImmediate

Non-transparent

Non-transparent

TransparentTransparent ActiveActive PassivePassive

Apr 18, 2023 Y. Mazuryk, [email protected]/e Informatica, System Architecture and Networking

14

Advertisement

Publish information about the service implementation

Service DescriptionProvider’s location

Apr 18, 2023 Y. Mazuryk, [email protected]/e Informatica, System Architecture and Networking

15

Eventing & Control

Provider

Consumer

execute action A,subscribe to event B

Event B

Apr 18, 2023 Y. Mazuryk, [email protected]/e Informatica, System Architecture and Networking

16

Existing Approaches

UPnP - IP-bound, has scalability problems

JXTA - Network independent, existing implementation has performance problems

Pastry - Focuses on efficient request routing

Web services - IP-bound

Can we base on one of these or do we need something new?

Apr 18, 2023 Y. Mazuryk, [email protected]/e Informatica, System Architecture and Networking

17

What is JXTA?

*borrowed from www.jxta.org

Apr 18, 2023 Y. Mazuryk, [email protected]/e Informatica, System Architecture and Networking

18

JXTA Vision

• promote communication (not isolation) among applications

• keep the core small and elegant

• support multiple platforms and languages, micro devices to servers

• address security from the beginning

• JXTA is an open source project

Apr 18, 2023 Y. Mazuryk, [email protected]/e Informatica, System Architecture and Networking

19

JXTA Architecture

Apr 18, 2023 Y. Mazuryk, [email protected]/e Informatica, System Architecture and Networking

20

JXTA – Set of XML-based Protocols

Peer Discovery Protocol—Enables peers to discover peer services on the network

Peer Resolver Protocol—Allows peers to send and process genericrequests

Rendezvous Protocol—Handles the details of propagating messages between peers

Peer Information Protocol—Provides peers with a way to obtain status information from other peers on the network

Pipe Binding Protocol—Provides a mechanism to bind a virtual communication channel to a peer endpoint

Endpoint Routing Protocol—Provides a set of messages used toenable message routing from a source peer to a destination peer

Apr 18, 2023 Y. Mazuryk, [email protected]/e Informatica, System Architecture and Networking

21

JXTA – Key Concepts

PeerPeer

RdvPeer

RdvPeer

PeerPeer

PeerPeer

Peer Group

PipePeerPeer

RelayPeer

RelayPeer

Apr 18, 2023 Y. Mazuryk, [email protected]/e Informatica, System Architecture and Networking

22

Case Study

Distributed Data Storage in Service-Oriented FashionDistributed Data Storage in Service-Oriented Fashion

JXTAJXTA UPnPUPnP ......

ANALYZE & COMPARE: Performance (discovery latency, memory

usage, ...)Scalability

Ad hoc networkingClient mobility

...

ANALYZE & COMPARE: Performance (discovery latency, memory

usage, ...)Scalability

Ad hoc networkingClient mobility

...

PROPOSE: Service Oriented FrameworkPROPOSE: Service Oriented Framework

Apr 18, 2023 Y. Mazuryk, [email protected]/e Informatica, System Architecture and Networking

23

Future Work

Accommodate real-time requirements in SOAInvestigate security aspects

Interaction with the userInteraction between services

Group servicesMobile services

...

Apr 18, 2023 Y. Mazuryk, [email protected]/e Informatica, System Architecture and Networking

24