A Dynamic Bitmap for Huge File System in Sans
Total Page:16
File Type:pdf, Size:1020Kb
A Dynamic Bitmap for Huge File System in SANs G.B.Kim*, D.J.Kang*, C.S.Park*, Y.J.Lee*, B.J.Shin** *Computer System Department, Computer and Software Technology Labs. ETRI(Electronics and Telecommunications Research Institute) 161 Gajong-Dong, Yusong-Gu, Daejon, 305-350, South Korea ** Dept. of Computer Engineering, Miryang National University 1025-1 Naei-dong Miryang Gyeongnam, South Korea Abstract: - A storage area network (SAN) is a high-speed special-purpose network (or subnetwork) that interconnects different kinds of data storage devices with associated data servers on behalf of a larger network of users. In SAN, computers service local file requests directly from shared storage devices. Direct device access eliminates the server machines as bottlenecks to performance and availability. Communication is unnecessary between computers, since each machine views the storage as being locally attached. SAN provides us to very large physical storage up to 64-bit address space, but traditional file systems can’t adapt to the file system for SAN because they have the limitation of scalability. In this paper we propose a new mechanism for file system using dynamic bitmap assignment. While traditional file systems rely on a fixed bitmap structures for metadata such as super block, inode, and directory entries, the proposed file system allocates bitmap and allocation area depend on file system features. Our approaches give a solution of the problem that the utilization of the file system depends on the file size in the traditional file systems. We show that the dynamic bitmap mechanism this improves the efficiency of disk usage in file system when compared to the conventional file systems. Key-Words: Huge File System, Storage Area Network, Dynamic Bitmap, SANtopia, Allocation inodes, directories, and data blocks to store and access 1 Introduction file in storage devices. In those when we create file Recently, the advances of switching technology are system, those file system statically divide disk area allowed to order-of-magnitude improvements in the into boot area, super block area, inodes area, network latency and bandwidth through new directories area, and data blocks area and manage technologies like Fibre Channel[1]. Storage Area using the allocation bitmap. It has one bit per one Network (SAN)[2] is the combination of network object and the each bit set “1” when the file system attached fibre channel storage devices and computers uses the object with the fibre channel network adapters on a loop or SAN provides us to very large physical storage up fabric. Each computer accesses to all the drives to 64-bit address space. We needed a file system that effectively. SAN eliminates the bandwidth bottlenecks could manage even petabytes of storage, but all of the and the limitations of scalability imposed by the file systems we know of are limited to either a few previous SCSI-based architectures and LAN gigabytes or a few terabytes in size. These limitations connections between server and stored data. stem from the use of data structures that don't scale A file is an entity of data available to system users and the use of 32 bit block pointers throughout the including the system itself and its application on-disk structures of the file system. programs that is capable of being manipulated as an In this paper we introduce a new dynmaic bitmap entity. The growth of Internet allows increasing for a huge scalable file system, called SANtopia[6], number of users to access vast amount of files at for SAN in Linux. SANtopia is being developed at shared disks. ETRI as the global shared cluster file system for There are many researches and development for file 64-bits address space file in the SAN environment. systems such as Unix file system(s7fs)[3], Linux file The proposed bitamp mecahnism uses a new file system(ext2fs)[4], and windows file system(NTFS)[5]. system layout, which supports us to a 64-bits address Those have to manage efficiently metadata such as space for large file system and dynamcially allocates used to store the data in the file. There is space only for a few data block numbers in the inode, however, and if Super Inode TableData more are needed, more space for pointers to the data Boot blocks is allocated dynamically. These dynamically Block Blocks allocated blocks are indirect blocks; the name indicates that in order to find the data block, one has to find its number in the indirect block first. Figure. 1 Layout of the Unix file system 2.2 Linux File System(Ext2fs) Linux is a Unix-like operating system, which runs on bitmap for metada such as inodes, directories, and data PC-386 computers. It was implemented first as blocks. extension to the Minix operating system and its first While traditional file systems rely on a fixed bitmap versions included support for the Minix filesystem structures for metadata such as super block, inode, and only. The Minix file system contains two serious directory entries, the proposed file system allocates limitations: block addresses are stored in 16 bit bitmap and allocation area depend on file system integers, thus the maximal filesystem size is restricted features. Our approaches give a solution of the to 64 mega bytes, and directories contain fixed-size problem that the utilization of the file system depends entries and the maximal file name is 14 characters. We on the file size in the traditional file systems. have designed and implemented two new filesystems The rest of the paper is organized as follows: that are included in the standard Linux kernel. These Section 2 reviews related works in the area of file filesystems, called ``Extended File System'' (Ext fs) systems. Section 3 describes the problems of huge file and ``Second Extended File System'' (Ext2 fs) raise system. Section 4 describes the SANtopia architecture the limitations and add new features. Every Linux and each component. Section 5, we present the filesystem implements a basic set of common concepts techniques of dynamicbitmap. Section 6 we show the derivated from the Unix operating system files are performance result of the proposed methods. We represented by inodes, directories are simply files conclude the paper in Section 7. containing a list of entries and devices can be accessed by requesting I/O on special files. Figure 2. shows the layout of the Ext2 fils system. 2 Related Works A filesystem is the methods and data structures that an operating system uses to keep track of files on a disk or partition; that is, the way the files are organised on the disk. The word is also used to refer to a partition or disk that is used to store the files or the type of the filesystem. 2.1 Unix File System Most UNIX filesystem types have a similar general structure, although the exact details vary quite a bit. Fig 1. shows the Unix file system layout. The central concepts are superblock, inode, data block, directory block, and indirection block. The superblock contains Figure. 2 The Layout of Linux file information about the filesystem as a whole, such as system its size (the exact information here depends on the filesystem). An inode contains all information about a 2.3 Frangipani file, except its name. The name is stored in the Frangipani [7] is a new scalable distributed file system directory, together with the number of the inode. A that manages a collection of disks on multiple directory entry consists of a filename and the number machines as a single shared pool of storage. The of the inode which represents the file. The inode machines are assumed to be under a common contains the numbers of several data blocks, which are administration and to be able to communicate securely. One distinguish feature of Frangipani is that used to manage file extent maps that overflow the it has a very simple internal structure-a set of number of direct pointers kept in the inodes. Finally, cooperating machines use a common store and B+ trees are used to keep track of dynamically synchronize access to that store with locks. This allocated inodes scattered throughout the file system. simple structure enables us to handle system recovery, reconfiguration, and load balancing with very little machinery. 3 Problems of Huge File System In designing and developing file system for huge file, we focused in on the specific problems with the traditional file systems that we felt we needed to address. In this section we consider the several problems of the specific scalability addressed in the design of SANtopia and why the mechanisms used in other file systems are not sufficient. We needed a file system that could manage even petabytes of storage, but all of the file systems we know of are limited to either a few gigabytes or a few terabytes in size. Traditional file systems are limited to only 8 gigabytes in size. These limitations stem Figure. 3 The Layout of Frangipani from the use of data structures that don't scale, for example the bitmap in EFS, and from the use of 32 bit In Figure.3 Frangipani is layered on top of Petal[8], block pointers throughout the on-disk structures of the an easy-to-administer distributed storage system that file system. The 32 bit block pointers can address at provides virtual disks to its clients. Like a physical most 4 billion blocks, so even with an 8 KB block size disk, a Petal virtual disk provides storage that can be the file system is limited to a theoretical maximum of read or written in blocks. Unlike physical disk, a 32 terabytes in size virtual disk provides a sparse 264 bytes address space, While traditional file systems can theoretically with physical storage allocated only on demand.