Abstract
WebDAV is a protocol to support collaboration among the workers in geographically distant locations through the Internet. WebDAV extends the web communication protocol HTTP/1.1 to provide a standard infrastructure for supporting asynchronous collaboration for various contents across the Internet. To provide the WebDAV functionality in legacy applications such as web-based collaborative systems or document management systems, those systems need to be implemented additionally to handle the WebDAV methods and headers information. In this paper, we developed an Apache-based WebDAV server, named DAVinci(WebDAV Is New Collaborative web-authoring Innovation)which supports the WebDAV specification. DAVinci was implemented as a form of service provider on a mod_dav Apache module. Mod_day, which is an Apache module, is an open source module to provide WebDAV capabilities in an Apache web server. We used a file system for storing resources and the PostgreSQL database for their properties. In addition, the system provides a consistency manager to guarantee that both resources and properties are maintained without inconsistency between resources and their properties.
WebDAV(Web-based Distributed Authoring and Versioning, RFC 2518)는 인터넷을 통하여 원거리에 위치한 다수의 작업자들 간의 협업을 지원하기 위한 프로토콜이다. 웹데브(WebDAV)는 웹 통신 프로토콜인 HTTP/1.1의 확장으로 인터넷을 통하여 다양한 콘텐츠의 비동기적인 협업을 지원하기 위한 프로토콜을 제공한다. 웹 기반의 협업지원 시스템이나 문서관리 시스템과 같은 기존의 응용 시스템에서 웹데브 기능을 제공 하기 위해서는 이러한 시스템들이 웹데브의 메서드(method)와 헤더(header) 정보를 다루는 추가적인 구현이 필요하다. 본 논문에서는 웹데브 명세를 지원하는 아파치 기반의 DAVinci(WebDAV Is New Collaborative web-authoring Innovation) 웹데브 서버를 개발하였다. 공개 소프트웨어 기반인 아파치(Apache) 웹 서버에는 웹데브를 지원하기 위한 mod_dav 모듈을 제공하고 있다. DAVinci는 mod_dav 모듈의 서비스 제공자 형태로 추가되어 웹데브의 자원과 속성 관리를 담당한다. 본 시스템은 자원을 파일 시스템에 저장하고 속성 정보를 PostgreSQL 데이터베이스로 관리하며 추가적으로 자원과 속성들 간에 비일관성이 발생하지 않도록 보장하는 일관성 관리자(consistency manager)를 제공한다.