Protocol Driver Selection and Caching

Clients can use the OLE DB Provider for Internet Publishing to access data that resides on HTTP servers supporting the FrontPage Web Extender Client (WEC) or Web Distributed Authoring and Versioning (WebDAV) protocol extensions. The OLE DB Provider for Internet Publishing contains modules that know how to emit and parse both the WEC and the WebDAV protocols (called protocol drivers) for communicating with HTTP servers.

If a client does not explicitly indicate to the OLE DB Provider for Internet Publishing which kind of Web server is hosting the data it is trying to access, the OLE DB Provider will make the determination automatically. However, there is a performance cost associated with this determination. To mitigate this cost over repeated binds, the OLE DB Provider maintains an in-memory cache of associations between URLs to which it has bound and the protocol drivers used to administer them.

The following example illustrates how the caching works:

  1. A client binds to https://myserver/myfolder.
  2. The OLE DB Provider decides to use the WEC protocol driver.
  3. The OLE DB Provider caches the association between https://myserver/myfolder and the WEC protocol driver.
  4. Some time later, the client binds to https://myserver/myfolder/myotherfolder.
  5. The OLE DB Provider discovers that the existing cache entry for https://myserver/myfolder is a prefix of the current URL, and thus decides to use the WEC protocol driver for this URL as well.
  6. The OLE DB Provider issues a WEC request, but the Web server indicates that there is no "myotherfolder" folder.
  7. The OLE DB Provider renegotiates with the server for https://myserver/myfolder/myotherfolder specifically and discovers it should use the WebDAV protocol driver.
  8. The OLE DB Provider saves a new cache entry with the association between https://myserver/myfolder/myotherfolder and the WebDAV procotol driver.

For more information see: