- From: Bob Freund <bob.freund@hitachisoftware.com>
- Date: Sun, 1 Nov 2009 18:56:48 -0500
- To: "Chou, Wu \(Wu\)" <wuchou@avaya.com>
- Cc: public-ws-resource-access@w3.org, "Li, Li \(Li\)" <lli5@avaya.com>, Doug Davis <dug@us.ibm.com>
- Message-Id: <CBDC5F4B-EEE0-4C4A-9825-95FE8639B341@hitachisoftware.com>
I have thought that it was always a bit misleading, since there is not a one to one relationship between an event and a notification. Filters limit the notifications produced, any indeed multiple subscribers may subscribe to a particular event and possibly with different filter specifications. That is why I think that it is best to describe the event more abstractly. An event provides the stimulus for a notification, but I am sure that it may be possible to define an event, such as "no events have occurred in the last hour" Why is it necessary to peer under the hood? -bob On Nov 1, 2009, at 6:43 PM, Chou, Wu (Wu) wrote: > Bob, > > In WS-Eventing, the event is sent in a form of notification, and > therefore, the event is sent. WS-Eventing is about eventing, and > therefore, the spec defines the event source, and notification is > secondary, since event delivery is possible through pulling (e.g. > without Notifyto in Delivery) instead of notification. > > The event dispatcher has the similar status as subscription manager > in WS-E, and therefore, it is visible on the wire and part of the > protocol. As in current WS-E spec, the event dispatcher is the event > source (unlike subscription manager which can be separated from the > source). The subscriber subscribes to the event notifications that > are on the event source endpoint wsdl (or its notification wsdl). > Therefore, following the current WS-E spec, the case is closed and > there is nothing wrong with the spec. > > My proposal is motivated by the discussion on issue 7970. It is an > attempt to extend WS-E to handle these other use cases. It is an > extension (not constraining) the current WS-E spec. Let's have some > discussion at the upcoming F2F meeting. > > Thanks, > > - Wu Chou. > > From: Bob Freund [mailto:bob.freund@hitachisoftware.com] > Sent: Saturday, October 31, 2009 8:29 PM > To: Chou, Wu (Wu) > Cc: public-ws-resource-access@w3.org; Li, Li (Li); Doug Davis > Subject: Re: Issue 7970 (proposal version 2) > > It seems to me the term "event source" is used incorrectly. > We might consider changing its name to "Notification Source", since > events are not sent, but notifications are. > If a description of event source is required, then it might be > described as an abstraction that it not constrained by this > specification since there are an arbitrary number of potential and > irrelevant implementation organizations. Discussion of dispatchers > or other parts that are not necessary for the implementation of the > protocol and not otherwise visible on the wire is inappropriate and > overly constraining. > thanks > -bob > > On Oct 30, 2009, at 3:51 PM, Chou, Wu (Wu) wrote: > >> This is the version 2 of the proposal to Issue 7970 (text file >> below and color marked pdf file is attached), in which the last >> paragraph of the previous proposal is removed to address an issue >> with pull-model event delivery. >> >> Thanks, >> >> - Wu Chou. >> >> --------------------------------- >> A proposal to issue 7970 (changes are in RED – Wu Chou v.2) >> Section 3.4 Terminology >> >> Event Source >> >> A Web service that accepts requests to create subscriptions and sends >> >> notifications directly or through a separate event dispatcher. >> >> Event Dispatcher >> >> A SOAP endpoint that sends event notifications on behalf of the >> event source. >> >> Section 4.1 Subscribe >> >> [Action] >> >> http://www.w3.org/2009/09/ws-evt/SubscribeResponse >> >> [Body] >> >> <wse:SubscribeResponse ...> >> >> <wse:SubscriptionManager> >> >> wsa:EndpointReferenceType >> >> </wse:SubscriptionManager> >> >> <wse:EventDispatcher> >> >> wsa:EndpointReferenceType >> >> </wse:EventDispatcher> ? >> >> <wse:Expires>(xs:dateTime | xs:duration)</wse:Expires> >> >> xs:any* >> >> </wse:SubscribeResponse> >> >> (After the text of [Body]/wse:SubscribeResponse/ >> wse:SubsrciptionManager) >> >> [Body]/wse:SubscribeResponse/wse:EventDispatcher >> >> The EPR of the event dispatcher for this subscription. >> >> If the event source uses a separate event dispatcher to send >> notifications, it >> >> MUST include wse:EventDispatcher element for this subscription in its >> >> SubscribeResponse. Otherwise, the event notification is sent from >> the event >> >> source. >> >> --------------- >> From: Chou, Wu (Wu) >> Sent: Thursday, October 29, 2009 11:43 PM >> To: 'public-ws-resource-access@w3.org' >> Cc: 'Bob Freund'; Li, Li (Li); 'Doug Davis' >> Subject: RE: Issue 7970 >> >> The pdf file of this proposal to issue 7970 [1] is attached to >> retain the color marking for viewing. >> >> Thanks, >> >> - Wu Chou. >> >> [1] http://www.w3.org/Bugs/Public/show_bug.cgi?id=7970 >> >> >> From: Chou, Wu (Wu) >> Sent: Thursday, October 29, 2009 2:51 PM >> To: 'Doug Davis' >> Cc: Bob Freund; Li, Li (Li); public-ws-resource-access@w3.org >> Subject: RE: Issue 7970 >> >> Doug, >> >> After thinking about this issue again, I think we should cover the >> following use case for clustering deployment. And I attach a >> proposal for issue 7970 that can support the existing as well as >> the clustering deployment model. >> >> Use case: In some data center or high volume event processor, >> events may be delivered from a special event dispatcher or from a >> pool of high speed event dispatchers, not necessarily from the >> event source endpoint. >> >> Rationale and benefits: 1) Event dispatcher pools can be shared by >> all event sources to improve the event dispatch throughput. 2) >> These event dispatchers can be on high speed links (IP addresses) >> as part of the infrastructure. 3) There is no need to implement a >> http client event dispatch for every single event source. For >> example, there might be 10,000 individual event sources on the >> platform, but only 10 high speed event dispatchers. 4) For some >> resource limited devices, the resource hungry event dispatcher may >> reside in a separate but more resourceful environment from the >> event source. >> >> The attached proposal supports this clustering deployment model . >> In addition, by making the event dispatcher explicit, it supports >> the poll-model in event delivery and IP-blocking as in current model. >> >> Thanks, >> >> - Wu Chou. >> >> ---- A Proposal to Issue 7970 (changes are in RED) ------- >> >> Section 3.4 Terminology >> Event Source >> A Web service that accepts requests to create subscriptions and >> sends notifications directly or through a separate event dispatcher. >> Event Dispatcher >> A SOAP endpoint that sends event notifications on behalf of the >> event source. >> Section 4.1 Subscribe >> [Action] >> http://www.w3.org/2009/09/ws-evt/SubscribeResponse >> [Body] >> <wse:SubscribeResponse ...> >> <wse:SubscriptionManager> >> wsa:EndpointReferenceType >> </wse:SubscriptionManager> >> >> <wse:EventDispatcher> >> wsa:EndpointReferenceType >> </wse:EventDispatcher> ? >> <wse:Expires>(xs:dateTime | xs:duration)</wse:Expires> >> xs:any* >> </wse:SubscribeResponse> >> (After the text of [Body]/wse:SubscribeResponse/ >> wse:SubsrciptionManager) >> [Body]/wse:SubscribeResponse/wse:EventDispatcher >> The EPR of the event dispatcher for this subscription. >> If the event source uses a separate event dispatcher to send >> notifications, it MUST include wse:EventDispatcher element for this >> subscription in its SubscribeResponse. Otherwise, the event >> notification is sent from the event source. >> If the EPR of the event dispatcher cannot be determined, the >> <wsa:Address> value of wse:EventDispatcher MUST be “http:// >> www.w3.org/2005/08/addressing/anonymous” >> >> ------------------------------------------------------------- >> >> From: Doug Davis [mailto:dug@us.ibm.com] >> Sent: Monday, October 26, 2009 4:45 PM >> To: Chou, Wu (Wu) >> Cc: Bob Freund; Li, Li (Li); public-ws-resource-access@w3.org >> Subject: RE: Issue 7970 >> >> >> Wu, >> I think you're missing the point. WS-Eventing needs to allow for >> more than one deployment model - this does not mean that every >> deployment needs to support everything. Current WS-Eventing only >> works for one model and will not work in many other common models - >> like clusters. If you want to have your deployment limited to one >> where only one IP address sends notifications then that's great. >> But if WS-Eventing is designed so that that is the only model then >> it will severely limited its use in more advanced environments. >> >> If you really want to enforce the rule you have in mind then I >> suggest you open a new issue to add text to WS-Eventing that makes >> this very clear, and clearly define the scope of an Event Source - >> meaning limited to just one outbound IP address so that this can be >> an explicit statement of direction instead of informally implied - >> leading to confusion and interop issues. >> >> thanks >> -Doug >> ______________________________________________________ >> STSM | Standards Architect | IBM Software Group >> (919) 254-6905 | IBM 444-6905 | dug@us.ibm.com >> The more I'm around some people, the more I like my dog. >> >> >> "Chou, Wu (Wu)" <wuchou@avaya.com> >> 10/26/2009 03:34 PM >> >> To >> Doug Davis/Raleigh/IBM@IBMUS >> cc >> "Bob Freund" <bob.freund@hitachisoftware.com>, "Li, Li (Li)" <lli5@avaya.com >> >, <public-ws-resource-access@w3.org> >> Subject >> RE: Issue 7970 >> >> >> >> >> >> Doug, >> >> Please see the comments in line. >> >> Thanks, >> >> - Wu Chou. >> >> From: Doug Davis [mailto:dug@us.ibm.com] >> Sent: Monday, October 26, 2009 10:51 AM >> To: Chou, Wu (Wu) >> Cc: Bob Freund; Li, Li (Li); public-ws-resource-access@w3.org >> Subject: Re: Issue 7970 >> >> >> Wu, >> could you elaborate a bit on your thinking here. If we went with >> the 2nd option (which seemed to be preferred on the call): >> A Web service that accepts requests to create subscriptions for >> a certain set of notification that might be generated. >> >> what woud need to change in your implementation or what would break >> in any existing implementation? >> >> <Wu: The security and trusted event source will be affected and >> break. Since the notification source is unknown, the common IP >> blocking implementation cannot be used to protect the event sink. >> The event subscriber cannot be sure if the event notification is >> from a trusted endpoint . Moreover, the event subscriber cannot be >> sure if it can receive event notification after a successful event >> subscription, because if the notification is from some unknown >> suspicious host not permitted by firewall filter, it will be >> blocked by firewall.> >> <Wu: In WS-E, it describes a model that event source indicates >> its event notification operations in its wsdl (or its notification >> wsdl to be BP compliant). Not clear if it is appropriate that >> operations on the event source endpoint wsdl are not its own >> operations but operations from some unknown endpoint. This change >> to the fundamental concept of WS-E may take time to learn its full >> impact, and we prefer not changing it.> >> >> Also, your point #3 actually might not be true. If WS-Eventing >> doesn't define an Event Source to allow for other components >> (anything other than the _one_ event source) to send Notifications >> then an extension spec can't do it either since it would be >> contradicting the base spec. >> >> <Wu: It could work, since the base spec says the notification is >> from the event source, and the extension spec says an event source >> can be a proxy that forwards the event notification to the sink. >> >From the subscriber perspective, it is the base spec, and from >> the event source perspective, it allows an notification source to >> establish a proxy relation and allow subscribers to subscribe >> events from its proxy. In short, an extension service can allow >> introducing additional entities and in this case, an extended event >> sender does not need to correspond to any concepts in WS-E.> >> >> As it currently stands we have an inconsistency in the spec - if >> Event Sources are the only things that can send Notifications, then >> when we use a pull-style model we're broken because in those cases >> the Subscription Manager is the one that sends the Notifications. >> >> <Wu: No, in ws-eventing, subscription manager and event source >> can be the same endpoint. It should work for your case. Allowing >> the new changes as in the proposal may actually break a pull-model, >> as the event sender can be some unknown thing other than the event >> source and subscription manager. In this case, the event sink does >> not know where to pull event from.> >> >> I don't think the above proposal would break anyone, nor even >> require a coding change. Rather its just an admission that our WS- >> * specs only control what goes on the wire and we can't control >> what happens behind the scenes. How people choose to implement >> this stuff is up to them. For example, there is nothing inWS- >> Addressing that requires the sender of an async response to be the >> same entity as the one that received the request and this is no >> different. Do we really need to say that the entity that sends the >> SubscribeResponse MUST be the same one the receives the >> SubscribeRequest? >> >> <Wu: One difference is: in ws-eventing, the event source has >> notification operations in its wsdl (or its notification wsdl) and >> the subscriber subscribes to that service from that (event source) >> endpoint. It is true that WS-A does not prohibit a reply comes >> from somewhere other than the receiver, but the WS-A only specifies >> how a receiver formulates a reply message (WS-A core section 3.4). >> It seems other use cases are extensions.> >> >> And what does "same one" mean? In a clustered environment things >> get a bit complicated. >> >> thanks >> -Doug >> ______________________________________________________ >> STSM | Standards Architect | IBM Software Group >> (919) 254-6905 | IBM 444-6905 | dug@us.ibm.com >> The more I'm around some people, the more I like my dog. >> >> >> "Chou, Wu (Wu)" <wuchou@avaya.com> >> Sent by: public-ws-resource-access-request@w3.org >> 10/26/2009 10:23 AM >> >> >> To >> "Bob Freund" <bob.freund@hitachisoftware.com>, <public-ws-resource-access@w3.org >> >, <public-ws-resource-access-request@w3.org> >> cc >> "Li, Li (Li)" <lli5@avaya.com> >> Subject >> Issue 7970 >> >> >> >> >> >> >> >> Bob, >> >> We see some problems with issue 7970 [1] and we share our thoughts >> below. >> >> 1) Current WS-Eventing is based on a set of well-defined web >> services (source, sink, subscriber and subscription manager). If >> there is some entity that interacts with WS-Eventing services, it >> should be either defined in the spec, or it should be out of scope. >> This proposal involves interactions with some entity whose behavior >> is not defined in the spec. >> >> 2) By allowing an unknown third-party (instead of event source) to >> send notifications to event sink complicates security checks >> against attacks to the event sink. For example, IP blocking would >> not work since the true notification senders are unknown, even >> after the subscription. >> >> 3) Current WS-Eventing architecture can handle this use case by >> having the event source forward notifications (from other senders) >> to the sinks. Therefore, alternative approaches should be treated >> as extensions. >> >> Thanks, >> >> - Wu Chou/Li Li, >> >> [1] http://www.w3.org/Bugs/Public/show_bug.cgi?id=7970 >> >> >> >> >> >> <Event dispatcher_wu_submit_v2.pdf> >
Received on Sunday, 1 November 2009 23:56:31 UTC