1 / 23

SOAP Routing: The Missing Link

SOAP Routing: The Missing Link. Rohit Khare 16 May 2002 O’Reilly Emerging Technology Conf UC Irvine & KnowNow, Inc. Our Vision. The future of software development requires integrating network services that are very far away and owned by strangers. Three Elements of Our Vision.

johana
Download Presentation

SOAP Routing: The Missing Link

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


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

  2. Our Vision The future of software development requires integratingnetwork servicesthat are very far awayand owned by strangers O'Reilly Emerging Technology Conference: SOAP Routing (Khare)

  3. Three Elements of Our Vision • The 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 agencyboundaries • 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. 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 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 O'Reilly Emerging Technology Conference: SOAP Routing (Khare)

  6. Talk Overview • What’s really new about Web Services • What a SOAP Router is • What a SOAP Router can do for you • How an SOAP Router works • ALIN in theory • ALIN in practice 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’ O'Reilly Emerging Technology Conference: SOAP Routing (Khare)

  8. Web Services ARE new • Decentralizationdoes 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 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. 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 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 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 systems • Monitors: SOAP transaction correlation & audit • Queues: decouples SOAP provider from requestor • Pub/Sub: decouples SOAP actors entirely • The difference is coping with firewalls and other kinds of agency boundaries 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 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 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 O'Reilly Emerging Technology Conference: SOAP Routing (Khare)

  16. How ‘SOAP Routing’ Helps 1/2 • Second, it affords flexibility of connections • What 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 O'Reilly Emerging Technology Conference: SOAP Routing (Khare)

  17. How ‘SOAP Routing’ Helps 2/2 • Third, it allows 3rd & 4th-party extensions • What 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 O'Reilly Emerging Technology Conference: SOAP Routing (Khare)

  18. ALIN in theory 1/3 • ALIN 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 • Agency • by introducing a trusted 3rd-party between the original endpoints, routers allow us to represent the interests of many other 4th-party agencies 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 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 definitionof agency boundary is that transactions can’t span them! 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 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 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 You Are Here O'Reilly Emerging Technology Conference: SOAP Routing (Khare)

More Related