An Efficient Disk Sharing Technique supporting Single Disk I/O Space in Linux Cluster Systems

리눅스 클러스터 시스템에서 단일 디스크 입출력 공간을 지원하는 효율적 디스크 공유 기법

  • 김태호 (㈜티컴앤디티비로 부설연구소) ;
  • 이종우 (아이닉스소프트㈜) ;
  • 이재원 (성신여자대학교 컴퓨터정보학부) ;
  • 김성동 (한성대학교 컴퓨터공학부) ;
  • 채진석 (인천대학교 컴퓨터공학과)
  • Published : 2003.12.01

Abstract

One of very important features that are necessarily supported by clustered parallel computer systems is a single I/O system image in which users can access both the local and remote I/O resources transparently. In this paper, we propose an efficient disk sharing technique supporting a single disk I/O system image architecture. The design separates the I/O subsystem of a cluster into the file system and a set of virtual hard disk drivers. The virtual hard disk driver deals with a hard disk in the remote node as a local hard disk. All services provided by it are performed in the device driver level without any modification of file systems. Users can, therefore, access all the disks in the cluster regardless of their locations. Our virtual hard disk driver is implemented under the linux, and also tested in a linux cluster system. We find by experiments that it can successfully support a single disk I/O space, and at the same time it shows better performance than NFS. We are sure that this paper can be a guideline for single I/O space of other devices to be easily constructed.

가격 대 성능비가 좋다는 장점으로 인해 많이 사용되고 있는 클러스터 병렬 컴퓨터 시스템에서는 여러 노드에 산재해 있는 자원들을 사용자들이 투명하게 사용할 수 있도록 지원하는 것이 필수적이다. 본 논문에서는 클러스터 시스템에서 단일 디스크 입출력 공간을 지원하는 효율적인 디스크 공유 기법을 제안한다. 응용 수준이 아닌 운영 체제 내의 블록 장치 드라이버 수준에서 디스크 공유를 지원함으로써 사용자들은 로컬 및 원격 디스크를 구분할 필요 없이 클러스터 시스템 내의 모든 디스크들을 마치 로컬 디스크 인 것처럼 투명하게 사용할 수 있다. 기반 운영체제로는 리눅스를 사용하였으며, 실험 결과 단일 디스크 입출력 공간을 성공적으로 지원함과 동시에 비교적 단순한 전역 캐쉬 일관성 정책을 사용했음에도 성능 면에서 NFS에 비해 읽기 성능은 유사, 쓰기 성능은 월등히 향상됨을 확인할 수 있었다. 본 논문이 기여하는 바는 블록 장치 드라이버 수준에서 단일 디스크 입출력 공간을 지원하는 기법을 제안함으로써 블록 장치 드라이버에 비해 비교적 구현이 쉬운 기타 입출력 장치 드라이버에 대해서도 유사한 방식으로 단일 입출력 공간을 지원할 수 있도록 도움을 줄 수 있다는 점이다.

Keywords

References

  1. Roy S. C. Ho, K. Hwang, and H. Jin, Single I/O Space for Scalable Cluster Computing, Proceedings of the 1st IEEE Computer Society International Workshop on Cluster Computing, pp.158-166, 1999 https://doi.org/10.1109/IWCC.1999.810821
  2. E. K. Lee and C. A. Thekkath, Petal: Distributed Virtual Disks, Proceedings of the 7th International Conference on Architectural Support for Programming Languages and Operating Systems, pp.84-92, 1992 https://doi.org/10.1145/237090.237157
  3. G. F. Pfister, In Search of Clusters, 2nd Ed., Prentice Hall, 1998
  4. P. H. Carns, W. B. Ligon III, R. B. Ross, and R. Thakur, PVFS: A Parallel File System For Linux Clusters, Proceedings of the 4th Annual Linux Showcase and Onference, pp.317-327, 2000
  5. I. Foster, D. Kohr Jr., R. Krishnaiyer, and J. Mogill, Remote I/O: Fast Access to Distant Storage, Proceedings of the 5th Annual Workshop on I/O in Parallel and Distributed Systems, pp.14-25, 1997 https://doi.org/10.1145/266220.266222
  6. T. Anderson, M. Dahlin, J. Neefe, D. Patterson, D. Roselli, and R. Wang, Serverless Network File Systems, ACM Transaction on Computer Systems, Vol.14, No.1, pp.41-79, 1996 https://doi.org/10.1145/225535.225537
  7. B. Callaghan, NFS Illustrated 1st Ed., Addison Wesley, 2000
  8. R. Sharpe, Just what is SMB?, http://samba.anu.edu.au/cifs/docs/what-is-smb.html
  9. The $NFS^{TM}$ Distributed File ServiceSun Microsystems, Inc., 1995
  10. 박재호, 인터넷에서 파일을 공유하자!, WWW-KR 워크샵, 1997
  11. 분산 파일시스템의 이용, http://dpnm.postech.ac.kr/posco-project/dfs-intro.html
  12. File Systems in a Distributed Computing Environment, Open Software Foudation, 1991
  13. W. D. Norcott and D. Capps, Iozone Filesystem Benchmark