- From: Jim Whitehead <ejw@cse.ucsc.edu>
- Date: Fri, 4 Jan 2002 13:11:03 -0800
- To: "WebDAV" <w3c-dist-auth@w3.org>
Long message follows. Executive summary: Exchange 2000 introduces a set of "Batch" methods. I'm interested in the sense of the working group as to whether we should work to provide a complete specification and advance it to Proposed Standard. ----------- As many of you know, Microsoft's Exchange 2000 email server provides WebDAV access into its repository. Outlook Web Access uses WebDAV as its on-the-wire protocol for remotely accessing an Exchange store. The following white paper provides technical details on Outlook Web Access: http://www.microsoft.com/exchange/techinfo/outlook/2000/E2K_OWA.doc Outlook Web Access is among the most sophisticated uses of WebDAV to date, a significant engineering accomplishment. It is my understanding, based on discussions with some of the key developers of Outlook Web Access, that several WebDAV-related performance issues were encountered during development. In general, the problem was that it took too long to perform operations such as "delete 50 messages from my inbox" or "change the status of these 100 messages to 'read'". Since the typical hierarchical organization would make each folder a WebDAV collection, and each email a Web resource, these operations translated into "issue 50 separate DELETE commands" and "issue 100 separate PROPPATCH commands". Depth operations could not be used, since the operations were being performed on a subset of a collection. To address these performance issues, several "Batch" methods were developed as relatively simple extensions to existing WebDAV methods. Switching Outlook Web Access to use these methods resulted in approximately an order of magnitude performance increase (obviously, the performance benefit of going from N round-trips to 1 round trip depends on N). From the user perspective, the observed elapsed time for executing an operation went from multiple seconds down to close to a second (depending on latency, of course). It was a signficant performance improvement. The batch methods are: * BCOPY - batch COPY * BMOVE - batch MOVE * BDELETE - batch DELETE * BPROPFIND - batch PROPFIND * BPROPPATCH - batch PROPPATCH Documentation on these methods can be found on the MSDN site, at: http://msdn.microsoft.com/library/en-us/wss/wss/_webdav_methods.asp You'll also see some methods listed which pertain to receiving event notifications from the Exchange server. These are based on Josh Cohen's GENA proposal, which was submitted to the IETF as an Internet-Draft, but was never advanced to a Proposed Standard (in large part due to the absence of a working group in the IETF charged with developing an event notification standard). http://www.cs.colorado.edu/~grunwald/MobileComputing/Papers/draft-cohen-gena -p-base-00.txt As Co-Chair, I certainly do not approve of the fielding of new, unstandardized methods, since this leads to poor interoperability. I also do not approve of how these are labeled as "WebDAV Methods" on the MSDN site, since it lends these methods an aura of standardization that they do not, in fact, possess. But, as a pragmatist, I also recognize that in the time it took me to write these words, several new Exchange 2000 servers came online. The genie is out of the bottle. The fact remains that the batch methods work, and they scale. They provide a significant performance increase for an significant application of WebDAV. The specificationof these methods, as provided on the MSDN site, is pretty good (though they omit issues such as how to handle partial success/failure). It would not surprise me if, in time, other applications of WebDAV encountered the same performance problem, and desired a similar solution. As a result, I am interested in whether the working group has an interest in working to fully flesh-out the specification of the batch methods, and advance this specification to Proposed Standard. - Jim
Received on Friday, 4 January 2002 16:11:59 UTC