the early life of ws-reliablemessaging

20
The Early Life of The Early Life of WS-ReliableMessaging WS-ReliableMessaging Where we are, and how we Where we are, and how we got here got here Jorgen Thelin Jorgen Thelin Program Manager – WS-* Workshops Program Manager – WS-* Workshops Microsoft Corporation Microsoft Corporation

Upload: varsha

Post on 05-Feb-2016

28 views

Category:

Documents


2 download

DESCRIPTION

The Early Life of WS-ReliableMessaging. Where we are, and how we got here. Jorgen Thelin Program Manager – WS-* Workshops Microsoft Corporation. Summary of RM Workshop History. 1 Feedback Workshop 3 Interop Workshops 14 Workshop Participants - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: The Early Life of  WS-ReliableMessaging

The Early Life of The Early Life of WS-ReliableMessagingWS-ReliableMessaging

Where we are, and how we Where we are, and how we got heregot here

Jorgen ThelinJorgen ThelinProgram Manager – WS-* Workshops Program Manager – WS-* Workshops Microsoft CorporationMicrosoft Corporation

Page 2: The Early Life of  WS-ReliableMessaging

22

Summary of RM Workshop Summary of RM Workshop HistoryHistory• 11 Feedback Workshop Feedback Workshop• 33 Interop Workshops Interop Workshops• 14 14 Workshop ParticipantsWorkshop Participants

– Apache, BEA, Blue Titan, Fujitsu, IBM, Iona, Microsoft, Apache, BEA, Blue Titan, Fujitsu, IBM, Iona, Microsoft, NEC, RogueWave, SAP, SeeBeyond, Sonic, Systinet, TIBCONEC, RogueWave, SAP, SeeBeyond, Sonic, Systinet, TIBCO

• 99 Workshop Implementations Workshop Implementations– Apache Axis, BEA, Blue Titan, IBM, Microsoft, SAP, Sonic, Apache Axis, BEA, Blue Titan, IBM, Microsoft, SAP, Sonic,

Systinet, TIBCOSystinet, TIBCO• 77 Main Interop Scenarios (plus variants) Main Interop Scenarios (plus variants)• At least At least 77 Currently Shipping Products (Beta+) Currently Shipping Products (Beta+)

– Apache Axis, BEA, Blue Titan, Cape Clear, IBM, Microsoft, Apache Axis, BEA, Blue Titan, Cape Clear, IBM, Microsoft, SystinetSystinet

Page 3: The Early Life of  WS-ReliableMessaging

33

WS-RM – Birth and Early WS-RM – Birth and Early ChildhoodChildhood• July 2003 - Feedback WorkshopJuly 2003 - Feedback Workshop

– 12 Participants:12 Participants:• BEA, Blue Titan, Fujitsu, IBM, Iona, Microsoft, NEC, SAP, BEA, Blue Titan, Fujitsu, IBM, Iona, Microsoft, NEC, SAP,

SeeBeyond, Sonic, TIBCOSeeBeyond, Sonic, TIBCO

• Presentation TopicsPresentation Topics– RM Scenarios RM Scenarios – RM Protocol Overview and Walkthrough RM Protocol Overview and Walkthrough – RM Scalability and Durability RM Scalability and Durability – RM and Security Demo RM and Security Demo – WS-ReliableMessaging Scalability and DurabilityWS-ReliableMessaging Scalability and Durability

Page 4: The Early Life of  WS-ReliableMessaging

44

WS-RM – Pre-TeenWS-RM – Pre-Teen

• Oct 2003 - First Interop WorkshopOct 2003 - First Interop Workshop– 7 Implementations:7 Implementations:

• BEA, Blue Titan, IBM, Microsoft, Sonic, Systinet, TIBCOBEA, Blue Titan, IBM, Microsoft, Sonic, Systinet, TIBCO

• Interop Scenarios:Interop Scenarios:– Reliable One-way Ping without FailureReliable One-way Ping without Failure

• Variations: Async + Synchronous AcksVariations: Async + Synchronous Acks– Reliable One-way Ping with Communication Reliable One-way Ping with Communication

FailureFailure

Page 5: The Early Life of  WS-ReliableMessaging

55

Scenario #1 - Reliable One-Scenario #1 - Reliable One-way Ping without Failureway Ping without Failure• Basic form of Basic form of

reliable message reliable message exchange in the exchange in the normal casenormal case

• Each message is Each message is independentindependent

• Variations: Variations: – number and number and

timing of Acks timing of Acks sentsent

– Synchro vs Synchro vs async acksasync acks

SENDER RECEIVER

Msg 1

Ack 1

Msg 2

Ack 2

Msg 3

Ack 3

Scenario #1 - Reliable One-way Ping without Failure

Page 6: The Early Life of  WS-ReliableMessaging

66

Scenario #2 - Reliable One-Scenario #2 - Reliable One-way Ping with Failureway Ping with Failure• Tests a reliable Tests a reliable

message exchange in message exchange in the presence of a the presence of a simple failure model simple failure model involving involving communication communication failuresfailures

• Each message is Each message is independentindependent

• Variations: Variations: – number and timing number and timing

of Acks sent of Acks sent – Synchro vs async Synchro vs async

acksacks– Time of failureTime of failure

SENDER RECEIVER

Msg 1

Ack 1

Msg 2

Ack 2

Msg 3

Ack 3

Scenario #2 - Reliable One-way Ping with Failure

Msg 1

Page 7: The Early Life of  WS-ReliableMessaging

77

WS-RM – TeenageWS-RM – Teenage• May 2004 – Second Interop WorkshopMay 2004 – Second Interop Workshop

– 4 Implementations:4 Implementations:• BEA, IBM, Microsoft, Apache Axis - Sandesha (Virtusa / Lanka BEA, IBM, Microsoft, Apache Axis - Sandesha (Virtusa / Lanka

Software Foundation)Software Foundation)

• Interop Scenarios:Interop Scenarios:– Reliable One-way Ping Without Failure (Baseline regression Reliable One-way Ping Without Failure (Baseline regression

test)test)– Reliable One-way Ping With Failure (Baseline regression test)Reliable One-way Ping With Failure (Baseline regression test)– Resource ReclamationResource Reclamation

• Variations: Async + Synchronous AcksVariations: Async + Synchronous Acks– Request/ResponseRequest/Response

• Variations: Async + Synchronous AcksVariations: Async + Synchronous Acks– Request/Response coupled with Resource ReclamationRequest/Response coupled with Resource Reclamation– AckRequestAckRequest

Page 8: The Early Life of  WS-ReliableMessaging

88

Scenario #3 - Resource Scenario #3 - Resource ReclamationReclamation• Reliable Reliable

message message exchange exchange with explicit with explicit sequence sequence creation / creation / terminationtermination

• Variations: Variations: – number number

and and timing of timing of Acks sentAcks sent

– Synchro Synchro vs async vs async acksacks

SENDER RECEIVER

Scenario #3 - Resource Reclamation

Create Sequence Response

Create Sequence

Terminate Sequence

Ack 1

Msg 1

Msg 3

Ack 3

Ack 2

Msg 2

Page 9: The Early Life of  WS-ReliableMessaging

99

Scenario #4 - Scenario #4 - Request/ResponseRequest/Response

• Pairs of reliable Pairs of reliable request and request and response response messages messages

• Tests Tests InOrderExactlyOnInOrderExactlyOnce delivery ce delivery assurance assurance

• Variations: Variations: – Synchro vs Synchro vs

async acksasync acksCLIENT SERVER

Scenario #4 – Request / Response

Ack Msg #1

Msg #1

Ack Resp #1

Resp #1

Ack Msg #2

Msg #2

Ack Resp #2

Resp #2

Ack Msg #3

Msg #3

Ack Resp #3

Resp #3

Page 10: The Early Life of  WS-ReliableMessaging

1010

Scenario #5 - Scenario #5 - Request/Response with Request/Response with Resource ReclamationResource Reclamation• Reliable request Reliable request

/ response / response message message exchange with exchange with explicit explicit sequence sequence creation / creation / terminationtermination

• AsyncAsync acks acks SENDER RECEIVER

Scenario #5 – Request/Response with Resource Reclamation

Create Sequence 1

Terminate Sequence 1

Create Sequence 2

Msg

Resp

Terminate Sequence 2

Msg

Resp

NOTE: Acknowledgements and Sequence Responses omitted for brevity

Page 11: The Early Life of  WS-ReliableMessaging

1111

Scenario #6 - AckRequestScenario #6 - AckRequest• Basic form of Basic form of

reliable reliable message message exchange in the exchange in the normal casenormal case

• Each message is Each message is independentindependent

• Variations: Variations: – number and number and

timing of Ackstiming of Acks– Send Send

AckRequest on AckRequest on each Ping each Ping messagemessage

SENDER RECEIVER

Msg 1

Msg N

Ack

Scenario #6 - AckRequest

AckRequest

Msg N

Msg M

Ack

AckRequest

Page 12: The Early Life of  WS-ReliableMessaging

1212

WS-RM – Young AdultWS-RM – Young Adult

• April 2005 - RM + Security Composition April 2005 - RM + Security Composition WorkshopWorkshop– 4 Implementations:4 Implementations:

• IBM, Microsoft, SAP, SystinetIBM, Microsoft, SAP, Systinet

• Interop Scenarios:Interop Scenarios:– Un-secure RM One-Way Ping (Baseline Un-secure RM One-Way Ping (Baseline

regression test)regression test)– Secure RM One-Way PingSecure RM One-Way Ping

Page 13: The Early Life of  WS-ReliableMessaging

1313

Scenario #7 Scenario #7 – Secure RM– Secure RM

Signed and encrypted using SCT

CLIENT

SERVER

Scenario #7 – Secure RM

Create Sequence (SCT)

Terminate Sequence

Msg NMsg N

NOTE: RM Acknowledgements, RM Sequence Responses and SCT Cancel messages omitted for brevity

SECURITY TOKEN

SERVICE(STS)

Request Security Token Response

(RSTR)

Request Security Token (RST)

Security Context Token(SCT)

Security Context Token(SCT)

Page 14: The Early Life of  WS-ReliableMessaging

1414

WS-RM – Summary of Spec WS-RM – Summary of Spec Refinements MadeRefinements Made• NACKNACK• Resource reclamation points Resource reclamation points • Extensibility pointsExtensibility points• Absolute URI (vs. relative)Absolute URI (vs. relative)• Sequence expiration Sequence expiration • Last Message and ACK usageLast Message and ACK usage• Clarified SOAP mustUnderstand usageClarified SOAP mustUnderstand usage• Clarified FAULT handlingClarified FAULT handling• RM Policy assertionsRM Policy assertions

Page 15: The Early Life of  WS-ReliableMessaging

1515

WS-RM – Workshop LinksWS-RM – Workshop Links• WS-RM Feedback WorkshopWS-RM Feedback Workshop

– Meeting summary:Meeting summary:• http://msdn.microsoft.com/webservices/community/workshops/rmspecwsjul2003.aspxhttp://msdn.microsoft.com/webservices/community/workshops/rmspecwsjul2003.aspx• http://www-106.ibm.com/developerworks/offers/WS-Specworkshops/ws-rm1.htmlhttp://www-106.ibm.com/developerworks/offers/WS-Specworkshops/ws-rm1.html

– Presentation DecksPresentation Decks• http://download.microsoft.com/download/6/d/4/6d48120a-878e-4f0d-af20-3e900b004c3d/prhttp://download.microsoft.com/download/6/d/4/6d48120a-878e-4f0d-af20-3e900b004c3d/presentations-july2003-ws-wkshp.zipesentations-july2003-ws-wkshp.zip• ftp://www6.software.ibm.com/software/developer/library/WS-specworkshopspwrm1.zipftp://www6.software.ibm.com/software/developer/library/WS-specworkshopspwrm1.zip

• WS-RM Interop Workshop #1WS-RM Interop Workshop #1– Meeting SummaryMeeting Summary

• http://msdn.microsoft.com/webservices/community/workshops/rminteropwsOct2003.aspxhttp://msdn.microsoft.com/webservices/community/workshops/rminteropwsOct2003.aspx• http://www-106.ibm.com/developerworks/offers/WS-Specworkshops/ws-pwrmfest1.htmlhttp://www-106.ibm.com/developerworks/offers/WS-Specworkshops/ws-pwrmfest1.html

– Interop Scenarios:Interop Scenarios:• http://groups.yahoo.com/group/WS-RM-Workshops/files/Scenarios.dochttp://groups.yahoo.com/group/WS-RM-Workshops/files/Scenarios.doc

• WS-RM Interop Workshop #2WS-RM Interop Workshop #2– Meeting Summary:Meeting Summary:

• http://msdn.microsoft.com/webservices/community/workshops/rminterop052004.aspxhttp://msdn.microsoft.com/webservices/community/workshops/rminterop052004.aspx• http://www-106.ibm.com/developerworks/offers/WS-Specworkshops/ws-rm200405post.htmlhttp://www-106.ibm.com/developerworks/offers/WS-Specworkshops/ws-rm200405post.html

– Interop Scenarios:Interop Scenarios:• http://groups.yahoo.com/group/WS-RM-Workshops/files/Interop2-Scenarios.dochttp://groups.yahoo.com/group/WS-RM-Workshops/files/Interop2-Scenarios.doc

• WS-RM Interop Workshop #3WS-RM Interop Workshop #3– Meeting SummaryMeeting Summary

• http://msdn.microsoft.com/webservices/community/workshops/composability042005.aspxhttp://msdn.microsoft.com/webservices/community/workshops/composability042005.aspx• http://www-106.ibm.com/developerworks/offers/WS-Specworkshops/ws-http://www-106.ibm.com/developerworks/offers/WS-Specworkshops/ws-

rmsecon200504post.htmlrmsecon200504post.html– Interop Scenarios:Interop Scenarios:

• http://groups.yahoo.com/group/WS-RM-Workshops/files/RM%2BSC%26T%20Compositionhttp://groups.yahoo.com/group/WS-RM-Workshops/files/RM%2BSC%26T%20Composition%20Scenario-2005-02-25.doc%20Scenario-2005-02-25.doc

Page 16: The Early Life of  WS-ReliableMessaging

1616

WS-RM - Ongoing Interop WS-RM - Ongoing Interop TestingTesting• Public interop endpoints available for on-going testingPublic interop endpoints available for on-going testing

– MicrosoftMicrosoft• Secure RM:Secure RM:

http://131.107.153.195/SecureReliableMessaging/SecureReliableOneWayDuhttp://131.107.153.195/SecureReliableMessaging/SecureReliableOneWayDual.svcal.svc• Unsecured RM - One-Way: Unsecured RM - One-Way:

http://131.107.153.195/SecureReliableMessaging/ReliableOneWayDual.svchttp://131.107.153.195/SecureReliableMessaging/ReliableOneWayDual.svc• Unsecured RM - Request-Reply: Unsecured RM - Request-Reply:

http://131.107.153.195/SecureReliableMessaging/ReliableRequestReplyDual.http://131.107.153.195/SecureReliableMessaging/ReliableRequestReplyDual.svcsvc– IBMIBM

• Secure and Unsecured RM:Secure and Unsecured RM:http://wsi.alphaworks.ibm.com:8080/wsrmhttp://wsi.alphaworks.ibm.com:8080/wsrm

– SystinetSystinet• Secure RM:Secure RM:

http://soap.systinet.net/ws/wssc/Servicehttp://soap.systinet.net/ws/wssc/Service• Unsecured RM: Unsecured RM:

http://http://soap.systinet.net/interop/wsrm.htmlsoap.systinet.net/interop/wsrm.html

Page 17: The Early Life of  WS-ReliableMessaging

1717

WS-RM – Ready for Adult LifeWS-RM – Ready for Adult Life

• WS-RM is a healthy and mature spec with WS-RM is a healthy and mature spec with most of the “growing pains” now pastmost of the “growing pains” now past– Implementability has been verifiedImplementability has been verified– Interop has been verifiedInterop has been verified– Composability with other WS-* specs has been Composability with other WS-* specs has been

verifiedverified– Spec has been refined as a result of feedback Spec has been refined as a result of feedback

 and experience and experience

Page 18: The Early Life of  WS-ReliableMessaging

1818

And Finally….And Finally….

• Thank You to all the participants in Thank You to all the participants in the the WS-ReliableMessaging Workshops WS-ReliableMessaging Workshops who helped shape the WS-RM Spec who helped shape the WS-RM Spec into what it is todayinto what it is today

Page 19: The Early Life of  WS-ReliableMessaging

BackupBackup

Page 20: The Early Life of  WS-ReliableMessaging

2020

WS-* Spec Development WS-* Spec Development ProcessProcess

Step 2Broader Participation

Step 1Develop

Process achieved multiple goals• Quality of engineering• Time to market• Breadth of industry support

Step 3Standardization

Step 4Profiling

Increasing Industry ParticipationIncreasing Industry Participation

Specification Specification PublishedPublished

Feedback and Feedback and Interop Interop

WorkshopsWorkshopsRevise specRevise spec Standards OrgStandards Org WS-IWS-I

Idea

WEAREHER

E