soap routing: the missing link rohit khare 16 may 2002 o’reilly emerging technology conf uc irvine...

23
SOAP Routing: The Missing Link Rohit Khare 16 May 2002 O’Reilly Emerging Technology Conf UC Irvine & KnowNow, Inc.

Upload: ezra-lynch

Post on 18-Dec-2015

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: SOAP Routing: The Missing Link Rohit Khare 16 May 2002 O’Reilly Emerging Technology Conf UC Irvine & KnowNow, Inc

SOAP Routing: The Missing Link

Rohit Khare16 May 2002

O’Reilly Emerging Technology ConfUC Irvine & KnowNow, Inc.

Page 2: SOAP Routing: The Missing Link Rohit Khare 16 May 2002 O’Reilly Emerging Technology Conf UC Irvine & KnowNow, Inc

16 May 2002 O'Reilly Emerging Technology Conference: SOAP Routing (Khare)

2

Our Vision

The future of software development

requires integratingnetwork services

that are very far away and owned by strangers

Page 3: SOAP Routing: The Missing Link Rohit Khare 16 May 2002 O’Reilly Emerging Technology Conf UC Irvine & KnowNow, Inc

16 May 2002 O'Reilly Emerging Technology Conference: SOAP Routing (Khare)

3

Three Elements of Our VisionThe abstract unit of software is a network service

Prior levels of abstractions were subroutines, libraries, processes, objects, …

In this view, the only way to understand software is to watch its message traffic

Latency is an absolute limit of system architecture Just as “real” architects grapple with gravity, so with the speed of

light London will always be 30ms from New York, regardless of Moore’s

Law

Decentralization means crossing agency boundaries The essential complication above and beyond distributed (parallel)

computing is extending a system to achieve consensus between several separate agencies

Every computing and communication device is owned by someone.

Page 4: SOAP Routing: The Missing Link Rohit Khare 16 May 2002 O’Reilly Emerging Technology Conf UC Irvine & KnowNow, Inc

16 May 2002 O'Reilly Emerging Technology Conference: SOAP Routing (Khare)

4

How Our Vision is Emerging Today

The technological shift from a component model to a service model of software is already underway SOAP and Web Services technologies make it easy to

write new protocols

The Internet is inexorably shifting to higher-latency, decentralized connectivity Ad-hoc, peer-to-peer networking, mainly wireless, is

being deployed at every scale from one meter (handhelds) to billions of meters (space probes)

Enterprise Application Integration (EAI) is only now reaching ‘outside the firewall’ to business partners The next revolution in productivity requires

reengineering processes end-to-end

Page 5: SOAP Routing: The Missing Link Rohit Khare 16 May 2002 O’Reilly Emerging Technology Conf UC Irvine & KnowNow, Inc

16 May 2002 O'Reilly Emerging Technology Conference: SOAP Routing (Khare)

5

So What’s This Talk About?

There is a ‘missing link’ between the near-future predicted by today’s Web Services hype and realizing the true potential of our vision

It is a new architectural style for software integration we call Application-Layer Internetworking (ALIN) ALIN applies networking concepts to software

engineering

The primary way that developers will use ALIN is an unheralded implication of SOAP 1.2: Routing

… so this talk is about a new style and a new device

Page 6: SOAP Routing: The Missing Link Rohit Khare 16 May 2002 O’Reilly Emerging Technology Conf UC Irvine & KnowNow, Inc

16 May 2002 O'Reilly Emerging Technology Conference: SOAP Routing (Khare)

6

Talk Overview

What’s really new about Web ServicesWhat a SOAP Router isWhat a SOAP Router can do for youHow an SOAP Router worksALIN in theoryALIN in practice

Page 7: SOAP Routing: The Missing Link Rohit Khare 16 May 2002 O’Reilly Emerging Technology Conf UC Irvine & KnowNow, Inc

16 May 2002 O'Reilly Emerging Technology Conference: SOAP Routing (Khare)

7

Web Services are NOT New

There is nothing new under the sun in distributed (or parallel , or grid, …) computing These are all efforts to lash many systems together to

act as one

SOAP today is a distributed computing technology ‘Sprinkling angle-bracket pixie dust’ over plain ol’

client/server RPC

Sure, it works across the public Internet, but only by treating it as a very slow LAN Trade rags already lament the ‘gap’ at this boundary:

real security, reliability, and performance problems reveal the fallacy of assuming TCP/IP ‘just works’

Page 8: SOAP Routing: The Missing Link Rohit Khare 16 May 2002 O’Reilly Emerging Technology Conf UC Irvine & KnowNow, Inc

16 May 2002 O'Reilly Emerging Technology Conference: SOAP Routing (Khare)

8

Web Services ARE new

Decentralization does pose brand-new challenges

Latency Services are no longer mere milliseconds away. We need middleware for seconds up to weeks

Agency Services can be owned by other organizations We need middleware for translating semantics

Because SOAP messages are self-contained, they can be stored, analyzed, and replayed at will

Page 9: SOAP Routing: The Missing Link Rohit Khare 16 May 2002 O’Reilly Emerging Technology Conf UC Irvine & KnowNow, Inc

16 May 2002 O'Reilly Emerging Technology Conference: SOAP Routing (Khare)

9

SOAP is Simpler Than You Think

Starts w/point-to-point, synchronous invocations just as Web page servers are accessed today

Main virtue is that it is not DCOM, IIOP, or RMI Encapsulates the messy details of cross-platform,

cross-language binding using standard marshalling formats

Getting started requires very little re-education. On the other hand, straight RPC message exchange

patterns (MEPs) don’t inherently reduce the tight coupling between client and server semantics.

Page 10: SOAP Routing: The Missing Link Rohit Khare 16 May 2002 O’Reilly Emerging Technology Conf UC Irvine & KnowNow, Inc

16 May 2002 O'Reilly Emerging Technology Conference: SOAP Routing (Khare)

10

SOAP is Cooler Than You Think:

The vastly underestimated power of SOAP is that its model is genuinely asynchronous Today, we use it as a form of XML RPC Underneath, that’s merely a pair 1-way

messages

Furthermore, SOAP Actors are not hosts An actor is a much more general concept than a

fixed service provider machine and port One actor may be a proxy for many others Ideally, actors represent actual business models

Page 11: SOAP Routing: The Missing Link Rohit Khare 16 May 2002 O’Reilly Emerging Technology Conf UC Irvine & KnowNow, Inc

16 May 2002 O'Reilly Emerging Technology Conference: SOAP Routing (Khare)

11

What is ‘SOAP Routing’?

Today, the canonical Web Services diagram directly connects SOAP endpoints

There will also be a complementary technology that sits in the middle: Store-and-forward reliable messaging Filtering, transformation, & analysis of flows Intelligent “active proxy chaining” of actors

Page 12: SOAP Routing: The Missing Link Rohit Khare 16 May 2002 O’Reilly Emerging Technology Conf UC Irvine & KnowNow, Inc

16 May 2002 O'Reilly Emerging Technology Conference: SOAP Routing (Khare)

12

What Good is ‘SOAP Routing’?1/2

Internet-scale Middleware Just as distributed objects needed message-

oriented-middleware (MOM)… … decentralized services will need mediators

Wrappers: SOAP brokers to legacy systemsMonitors: SOAP transaction correlation & auditQueues: decouples SOAP provider from requestorPub/Sub: decouples SOAP actors entirely

The difference is coping with firewalls and other kinds of agency boundaries

Page 13: SOAP Routing: The Missing Link Rohit Khare 16 May 2002 O’Reilly Emerging Technology Conf UC Irvine & KnowNow, Inc

16 May 2002 O'Reilly Emerging Technology Conference: SOAP Routing (Khare)

13

What Good is ‘SOAP Routing’?2/2

Add new ilities without modifying either end. Security: Router can authenticate and authorize Reliability: Router can store-and-forward msgs Availability: Router can redirect to live servers Scalability: Router can redistribute messages Interoperability: Router can transform msgs Interactivity: Router can update msgs ‘in-flight’

Routing lets us reason about a “network of services” -- not just pipelines, but graphs

Page 14: SOAP Routing: The Missing Link Rohit Khare 16 May 2002 O’Reilly Emerging Technology Conf UC Irvine & KnowNow, Inc

16 May 2002 O'Reilly Emerging Technology Conference: SOAP Routing (Khare)

14

How ‘SOAP Routing’ Works 1/2

Consider a simple Bank ATM service In the old world, you would have fine-grained

account objects and setUserName() functions As Web Services, you have more flexible XML-

document services like getStatement()

A client-side ATM program can easily call it directly today by composing a SOAP message and POSTing it to the Bank server

Page 15: SOAP Routing: The Missing Link Rohit Khare 16 May 2002 O’Reilly Emerging Technology Conf UC Irvine & KnowNow, Inc

16 May 2002 O'Reilly Emerging Technology Conference: SOAP Routing (Khare)

15

How ‘SOAP Routing’ Works 2/2

First, it provides ‘simple middleware’ Recall how CGI scripts directly invoked scripts. Later, Application Servers emerged to

‘encapsulate’ the effort of storing state &c

By passing the message through a SOAP router: It can enforce the Bank’s security policy It can store a copy of the message for audit

logs It can redirect requests across a server farm …This is exactly what Web proxies do today

Page 16: SOAP Routing: The Missing Link Rohit Khare 16 May 2002 O’Reilly Emerging Technology Conf UC Irvine & KnowNow, Inc

16 May 2002 O'Reilly Emerging Technology Conference: SOAP Routing (Khare)

16

How ‘SOAP Routing’ Helps 1/2

Second, it affords flexibility of connectionsWhat if you wanted to change banks?

The router can filter the captured message stream so that messages from the new bank ‘look like’ the old bank

What if you wanted to change currencies? This is equivalent to routing ‘through’ another actor The router can transform messages;

with plugin scripts today, XML schemas tomorrow

What if you wanted to know if cash is running out? The router can analyze messages for trends

Page 17: SOAP Routing: The Missing Link Rohit Khare 16 May 2002 O’Reilly Emerging Technology Conf UC Irvine & KnowNow, Inc

16 May 2002 O'Reilly Emerging Technology Conference: SOAP Routing (Khare)

17

How ‘SOAP Routing’ Helps 2/2

Third, it allows 3rd & 4th-party extensionsWhat if you wanted to check on your bonds,

too? The router can multicast the balance inquiry to

the Bank service and a Broker service

What if you wanted to buy more bonds? The router can monitor the joint transaction of a

money transfer to the broker and the purchase of the bonds

What if you wanted your limit kids’ access? The router can delegate access control rights

Page 18: SOAP Routing: The Missing Link Rohit Khare 16 May 2002 O’Reilly Emerging Technology Conf UC Irvine & KnowNow, Inc

16 May 2002 O'Reilly Emerging Technology Conference: SOAP Routing (Khare)

18

ALIN in theory 1/3ALIN is NOT merely Actor intermediation (piping)

Actor chains today are like UUCP !path addressing; it’s source-routing only

It’s the ability to infer semantic chains, decouple political control, etc.

SOAP Routers directly address the twin novel challenges of decentralized service integration: Latency

by decomposing every communication into a one-way, asynchronous message, routers force us to confront extreme latency, rather than hiding it

Agencyby introducing a trusted 3rd-party between the original

endpoints, routers allow us to represent the interests of many other 4th-party agencies

Page 19: SOAP Routing: The Missing Link Rohit Khare 16 May 2002 O’Reilly Emerging Technology Conf UC Irvine & KnowNow, Inc

16 May 2002 O'Reilly Emerging Technology Conference: SOAP Routing (Khare)

19

ALIN in theory 2/3

The Internet itself is a result of addressing high latency and diverse agency at Layer 3 IP Routers store-and-forward packets across

autonomous systems, each containing many LANs IP-format packets are a generic interchange for LANs

Consequently, “Internet-scale” services must: Scale Across Time: Interfaces must be stable for

decades Scale Across Space: Protocols must handle >100ms

delays Scale Across Organizations: Namespaces must ‘peer’

This is merely an application-layer router for *TPs

Page 20: SOAP Routing: The Missing Link Rohit Khare 16 May 2002 O’Reilly Emerging Technology Conf UC Irvine & KnowNow, Inc

16 May 2002 O'Reilly Emerging Technology Conference: SOAP Routing (Khare)

20

ALIN in theory 3/3

This architectural style builds on REST & C2 Beyond merely transferring representation, now we can

mediate them Can connect any graph, not just a strict lattice

It generalizes other MOM styles Queues, sync/async, 1-1, N-N, transactional Pub/Sub, address-based and content-based

The most contentious aspect of ALIN for MOM folks is “best-effort”: it is still difficult to sell TCP over IP If your ‘bottom turtle’ is already transactional, it rules out

scalability and perf The very definition of agency boundary is that

transactions can’t span them!

Page 21: SOAP Routing: The Missing Link Rohit Khare 16 May 2002 O’Reilly Emerging Technology Conf UC Irvine & KnowNow, Inc

16 May 2002 O'Reilly Emerging Technology Conference: SOAP Routing (Khare)

21

ALIN in practice Lots of ink is being spilled on ‘missing infrastructure

for Web Services’ Major software platform vendors are only beginning to market

RPC-style Web Services

Existing middleware products are having difficulty “outside the firewall” JMS, for example, is single-vendor, single-language High-performance EAI tools often assume multicast IP

Early Internet-scale messaging startups include KnowNow, Bang, Kenamea, SonicXQ, Grand Central, and others

Microsoft has outlined its WS-Routing proposal IBM has Business Rule Beans and MQ Event Broker in

WS5.0

Page 22: SOAP Routing: The Missing Link Rohit Khare 16 May 2002 O’Reilly Emerging Technology Conf UC Irvine & KnowNow, Inc

16 May 2002 O'Reilly Emerging Technology Conference: SOAP Routing (Khare)

22

Distributed vs. Decentralized

We already have lots of techniques for decomposing systems to run on many distributed processors acting as one

The genuinely novel potential of Web Services is decentralization Marketplaces, rather than central brokers

Routing is a new technique for integrating services provided by 3rd and 4th parties

Page 23: SOAP Routing: The Missing Link Rohit Khare 16 May 2002 O’Reilly Emerging Technology Conf UC Irvine & KnowNow, Inc

16 May 2002 O'Reilly Emerging Technology Conference: SOAP Routing (Khare)

23

A Parting Thought

The dirty little secret is that the 7-Layer ISO Network model is insufficient to model decentralized computing.

It’s really all about integration at Layer 8 & 9

Political

EconomicYou Are Here

Application

Presentation

Session

Transport

Network

Link

Physical