Senior Fitness - Exercise and Nutrition for Aging Men and Women
FREE Article Feed for your website.
Home Ownership Magazine
Party Planning Information
Article Marketing Resources
Bio-Medical Research Article Database
Informative Articles on Life, Love and Happiness
Tutorials on Business to Writing
Famous Quotes from Famous People
Song Lyric Information
New US Patent Information
Comprehensive List of Content by Category
Online Auctions and Shopping Related Articles
Article Search
Most Recent Articles
Title: Isolation of subterranean zones
Patent Number: 7,121,352 Issued on 10/17/2006 to Cook,   et al.

Title: Method for the production of trioxime derivatives
Patent Number: 6,906,223 Issued on 06/14/2005 to Kramer,   et al.

Title: Frequency synthesizer with on-chip inductor
Patent Number: 6,806,779 Issued on 10/19/2004 to Kim,   et al.

Title: Covered dual concentric dome mold
Patent Number: 6,789,466 Issued on 09/14/2004 to Morgan

Title: Method, apparatus and media for displaying information
Patent Number: 7,118,838 Issued on 10/10/2006 to Fletcher,   et al.

Title: Forming partial-depth features in polymer film
Patent Number: 7,118,833 Issued on 10/10/2006 to Elenius,   et al.

Title: Color-balanced brightness enhancement for display systems
Patent Number: 7,116,378 Issued on 10/03/2006 to McDonald

Title: Magnetic recording medium
Patent Number: 7,118,816 Issued on 10/10/2006 to Waki,   et al.

Title: Disc driving apparatus with a disk having a center plane positioned above half height of the cartridge
Patent Number: 6,766,522 Issued on 07/20/2004 to Song,   et al.

Title: Securing apparatus of adjustable wrench to prevent movable jaw from trembling
Patent Number: 6,789,451 Issued on 09/14/2004 to Wu

Title: System and method for updating BIOS for a multiple-node computer system
Patent Number: 7,000,101 Issued on 02/14/2006 to Wu,   et al.

Title: All optical data selection element
Patent Number: 6,999,646 Issued on 02/14/2006 to Shahar

Title: Sliding bearing material
Patent Number: 7,118,808 Issued on 10/10/2006 to Wolki,   et al.

Title: Apparatus and method of driving liquid crystal display device
Patent Number: 7,116,303 Issued on 10/03/2006 to Park

Title: Systems and methods for user interfaces designed for rotary input devices
Patent Number: 7,116,317 Issued on 10/03/2006 to Gregorio,   et al.

Title: Colloidal solution comprising silver metal particles and a silane derivative
Patent Number: 7,116,381 Issued on 10/03/2006 to Boehmer,   et al.

Title: Dataflow algorithm for symbolic computation of lowest upper bound type
Patent Number: 6,766,521 Issued on 07/20/2004 to Bracha,   et al.

Title: Mask/wafer control structure and algorithm for placement
Patent Number: 6,766,507 Issued on 07/20/2004 to Bruce,   et al.

Title: Solid oxide fuel cell system
Patent Number: 7,118,818 Issued on 10/10/2006 to Agnew,   et al.

Title: Badge, such as campaign button
Patent Number: 6,907,683 Issued on 06/21/2005 to Kronblad

Title: TV card and computer system having the same
Patent Number: 7,116,376 Issued on 10/03/2006 to Yun

Title: Method for manufacturing toner, toner, fixing device, and image forming apparatus
Patent Number: 7,118,843 Issued on 10/10/2006 to Teshima

Title: Ball grid array module
Patent Number: 6,806,122 Issued on 10/19/2004 to Oggioni,   et al.

Title: Method of balanced coefficient of thermal expansion for flip chip ball grid array
Patent Number: 6,806,119 Issued on 10/19/2004 to Nagarajan,   et al.

Title: Integration scheme for enhancing capacitance of trench capacitors
Patent Number: 6,806,138 Issued on 10/19/2004 to Cheng,   et al.

Title: Methods of testing/stressing a charge trapping device
Patent Number: 6,806,117 Issued on 10/19/2004 to King

Title: Substrate and method for anaerobic remediation
Patent Number: 6,806,078 Issued on 10/19/2004 to Newman

Title: Arrangement at a press tool for breaking the piston/piston rod of a gas spring
Patent Number: 7,121,538 Issued on 10/17/2006 to Runesson,   et al.

Title: Reinforcing bar coupling
Patent Number: 6,860,672 Issued on 03/01/2005 to Kim

Title: Position detection apparatus, alignment apparatus and methods therefor, and exposure apparatus and device manufacturing method
Patent Number: 6,870,623 Issued on 03/22/2005 to Tanaka,   et al.

Title: System and method for transaction-selective rollback reconstruction of database objects
Patent Number: 6,769,074 Issued on 07/27/2004 to Vaitzblit

Title: METHOD FOR REDUCING THE CONTACT RESISTANCE IN ORGANIC FIELD-EFFECT TRANSISTORS BY APPLYING A REACTIVE INTERMEDIATE LAYER WHICH DOPES THE ORGANIC SEMICONDUCTOR LAYER REGION-SELECTIVELY IN THE C
Patent Number: 6,806,124 Issued on 10/19/2004 to Klauk,   et al.

Title: Steam generator
Patent Number: 6,868,807 Issued on 03/22/2005 to Franke,   et al.

Title: Monolithic multi-wavelength vertical-cavity surface emitting laser array and method of manufacture therefor
Patent Number: 6,806,110 Issued on 10/19/2004 to Lester,   et al.

Title: Protective circuit for protecting hard disk data
Patent Number: 6,766,478 Issued on 07/20/2004 to Leung

Title: Method and apparatus for improving the performance of microanalytic and microsynthetic procedures
Patent Number: 6,806,088 Issued on 10/19/2004 to Howard

Title: Systems and methods for overcoming stiction
Patent Number: 6,949,866 Issued on 09/27/2005 to Miller,   et al.

Title: Ink jet imaging via coagulation on an intermediate member
Patent Number: 6,767,092 Issued on 07/27/2004 to May,   et al.

Title: Method and apparatus for scheduling of requests to dynamic random access memory device
Patent Number: 6,961,834 Issued on 11/01/2005 to Weber

Title: Camera docking solution provides a user interface for printers, CD writers and other devices
Patent Number: 7,119,835 Issued on 10/10/2006 to Gennetten,   et al.

Title: Matrix switch method and device
Patent Number: 6,775,275 Issued on 08/10/2004 to Suzaki

Title: Double hung window having combined pushdown surface and keeper
Patent Number: 6,938,377 Issued on 09/06/2005 to Gorman

Title: Nucleotide sequences which encode the pfk gene
Patent Number: 6,806,068 Issued on 10/19/2004 to Mockel,   et al.

Title: Binary compatible software objects
Patent Number: 6,971,087 Issued on 11/29/2005 to Knapton, III

Title: Fuel pump, in particular for an internal combustion engine with direct injection
Patent Number: 6,889,662 Issued on 05/10/2005 to Hess

Title: Apparatus for selective removal of material from wafer alignment marks
Patent Number: 6,889,698 Issued on 05/10/2005 to Zahorik,   et al.

Title: HIV envelopolype peptides
Patent Number: 6,806,055 Issued on 10/19/2004 to Berman,   et al.

Title: Methods and processes for the treatment of digitally printed media
Patent Number: 6,767,091 Issued on 07/27/2004 to Kornfeld

Title: Fixing device
Patent Number: 7,105,784 Issued on 09/12/2006 to Kikuchi,   et al.

Title: Adaptive interface for a software development environment
Patent Number: 6,769,115 Issued on 07/27/2004 to Oldman

Title: Data format for a streaming information appliance
Patent Number: 7,139,869 Issued on 11/21/2006 to Parry,   et al.

Title: Binder with end pocket
Patent Number: 6,767,152 Issued on 07/27/2004 to Wehmeyer,   et al.

Title: Process for controlling molecular weight of polymer
Patent Number: 6,767,485 Issued on 07/27/2004 to Steiner

Title: Plastic expulsion process
Patent Number: 6,767,487 Issued on 07/27/2004 to Pearson

Title: PCI-E retention
Patent Number: 7,140,900 Issued on 11/28/2006 to Villanueva

Title: Methods and systems for alerting a user to clean appliance
Patent Number: 6,789,463 Issued on 09/14/2004 to Lile

Title: Brake hose
Patent Number: 7,140,395 Issued on 11/28/2006 to Furui,   et al.

Title: Acoustical heat shield
Patent Number: 6,966,402 Issued on 11/22/2005 to Matias,   et al.

Title: Tilting pad bearing arrangement
Patent Number: 6,767,133 Issued on 07/27/2004 to New

Title: Method and structure for contacting an overlying electrode for a magnetoelectronics element
Patent Number: 6,806,127 Issued on 10/19/2004 to Butcher,   et al.

Title: Method for modifying a bit sequence in an ARQ restransmission, receiver and transmitter therefor
Patent Number: 6,769,085 Issued on 07/27/2004 to Von Elbwart,   et al.

Title: Differential input circuit
Patent Number: 6,982,597 Issued on 01/03/2006 to Mitarashi

Title: Sampling device for thermal analysis
Patent Number: 6,767,130 Issued on 07/27/2004 to Popelar,   et al.

Title: Method and system for releasing a voice response unit from a protocol session
Patent Number: 6,816,579 Issued on 11/09/2004 to Donovan,   et al.

Title: Apparatus and methods for a coding scheme selection
Patent Number: 6,769,086 Issued on 07/27/2004 to Western,   et al.

Title: Triazolo-epothilones
Patent Number: 6,900,160 Issued on 05/31/2005 to Hoefle,   et al.

Title: Bicycle wheel rims
Patent Number: 6,767,070 Issued on 07/27/2004 to Chiang,   et al.

Title: System and method for providing personalized storm warnings
Patent Number: 7,139,664 Issued on 11/21/2006 to Kelly,   et al.

Title: Dynamic intelligent discovery applied to topographic networks
Patent Number: 7,139,823 Issued on 11/21/2006 to Benfield,   et al.

Title: Process of parallel sample preparation
Patent Number: 6,806,093 Issued on 10/19/2004 to Wendelbo,   et al.

Title: Systems and methods for managing faults in a network
Patent Number: 7,139,819 Issued on 11/21/2006 to Luo,   et al.

Title: Retractable multiband radiator with switching contact for wireless communication devices
Patent Number: 7,006,801 Issued on 02/28/2006 to Lang

Title: Monitoring arrangement for compartment air contamination
Patent Number: 6,991,674 Issued on 01/31/2006 to Dietrich

Title: Method and apparatus for making a thixotropic metal slurry
Patent Number: 6,991,670 Issued on 01/31/2006 to Norville,   et al.

Title: Applicator plate for an adhesive applicator of a core-making machine
Patent Number: 6,991,682 Issued on 01/31/2006 to Moss,   et al.

Storage control system and method for storing block level data in internal or external storage control system based on control information via networks Number:7,143,228 from the United States Patent and Trademark Office (PTO) owispatent

Home    Author Login    Submit Article    Article Search    Add Your Link    Edit Your Link    Contact Us    Advertising    Disclaimer

   

 
Web LinkGrinder.com

Top Breaking News
     Greek, Cypriot Leaders Resume Unification Talks in Nicosia by Nathan Morley
     Indonesia Tobacco Sales Grow, Raising Health Fears
     South Korea Allows Top Defector to Travel Overseas by VOA News

Title: Storage control system and method for storing block level data in internal or external storage control system based on control information via networks

Abstract: A first storage control system comprises a CHN connected to a LAN CN. The CHN comprises a NAS processor and I/O processor. The I/O processor judges whether all or a portion of block level data is to be stored in either a first storage control system or a second storage control system, on the basis of an I/O allocation control data which indicates which of either the first storage control system or the second storage control system the block level data is to be stored in. On the basis of the result of this judgment, the I/O processor transfers the block level data from the NAS processor, to at least one of the DKA and the CHF connected to the second storage control system.

Patent Number: 7,143,228 Issued on 11/28/2006 to Iida,   et al.


Inventors: Iida; Junichi (Odawara, JP), Kanai; Hiroki (Odawara, JP), Tamura; Keishi (Odawara, JP)
Assignee: Hitachi, Ltd. (Tokyo, JP)
Appl. No.: 10/842,490
Filed: May 11, 2004


Foreign Application Priority Data

Mar 05, 2004 [JP] 2004-061934

Current U.S. Class: 711/4 ; 709/217; 710/74; 711/154
Current International Class: G06F 12/00 (20060101); G06F 13/00 (20060101)
Field of Search: 709/213,217 710/74,33 711/112,154,4,114,111,170,203


References Cited [Referenced By]

U.S. Patent Documents
6421753 July 2002 Hoese et al.
6950914 September 2005 Iwami et al.
6959344 October 2005 Murotani et al.
6981094 December 2005 Nonaka et al.
6990553 January 2006 Nakayama et al.
7047388 May 2006 Kaneko
7051121 May 2006 Ohno et al.
2001/0001870 May 2001 Ofek et al.
2002/0004890 January 2002 Ofek et al.
2002/0152339 October 2002 Yamamoto
2002/0178143 November 2002 Fujimoto
2003/0105767 June 2003 Jang et al.
2003/0221077 November 2003 Ohno et al.
2004/0123026 June 2004 Kaneko
2004/0139168 July 2004 Tanaka et al.
2004/0172510 September 2004 Nagashima et al.
2005/0071546 March 2005 Delaney et al.
2005/0114615 May 2005 Ogasawara et al.
2005/0138287 June 2005 Ogasawara et al.
2006/0075190 April 2006 Higaki et al.
Foreign Patent Documents
1357476 Oct., 2003 EP
10-508967 Sep., 1998 JP
01433368 Jun., 2001 WO

Other References

G Gilder, "The Case for Storage Virtualization Using Intelligent Routers", 2001 CROSSROADS Systems, pp. 1-12. cited by other.

Primary Examiner: Kim; Hong
Attorney, Agent or Firm: Mattingly, Stanger, Malur & Brundidge, P.C.

Claims



What is claimed is:

1. A storage control system for controlling storage of data in storage devices, comprising: a plurality of storage devices for storing data; a storage device control section for controlling the storage of received data in said plurality of storage devices; a connecting section connected to said storage device control section; a first channel control section connected to at least one of a local area network and a storage area network located externally to said storage control system, and to said connecting section; a second channel control section for transferring data sent from said first channel control section via said connecting section, to an external storage control system, via at least one of said local area network and said storage area network, or a separate network; a shared memory wherein first control information exchanged by said first channel control section, said second channel control section, and said storage device control section, is stored; and a cache memory for temporarily saving data exchanged between said first channel control section or said second channel control section and said storage device control section; wherein said first channel control section comprises a second processor for receiving block level data from a first processor which converts file level data received via said local area network into said block level data; at least one of said first processor and said second processor judges whether all or a portion of said block level data is to be stored in either said storage control system or said external storage control system, on the basis of second control information indicating whether said block level data is to be stored in either said storage control system or said external storage control system; and said second processor transfers said block level data received from said first processor, to at least one of said storage device control section and said second channel control section, on the basis of the result of said judgment.

2. The storage control system according to claim 1, wherein said first processor receives said file level data from a host computer, via at least one of said local area network and said storage area network; and said second processor transfers a portion of said block level data based on the file level data received from said host computer, to said second channel control section, so as to be stored in an external storage region belonging to said external storage control system, on the basis of the result of said judgment, and transfers the remaining portion of said block level data to said storage device control section, so as to be stored in an internal storage region belonging to said plurality of storage devices.

3. The storage control system according to claim 1, wherein said first channel control section sets a storage region combining the external storage region belonging to said external storage control system and an internal storage region belonging to said storage control system, as a logical unit, to be an access object of the host computer transmitting said file level data.

4. The storage control system according to claim 1, further comprising: a second control information storage region in which said second control information is stored; wherein said first processor is provided in said first channel control section; and at least one of said first processor and said second processor judges whether all or a portion of said block level data is to be stored in either said storage control system or said external storage control system, on the basis of said second control information stored in said second control information storage region.

5. The storage control system according to claim 1, wherein a plurality of address information elements, and information indicating which of either said storage control system or said external storage control system each of said plurality of address information elements corresponds to, are recorded in said second control information; and at least one of said first processor and said second processor refers to said second control information and judges which of either said storage control system or said external storage control system the address information contained in said block level data corresponds to.

6. The storage control system according to claim 1, wherein said second control information contains file metadata relating to files managed by said first processor; said file metadata contains a plurality of file identification information elements and save destination address information elements corresponding respectively to the plurality of files; said first processor identifies the save destination address information corresponding to the file identification information contained in the received file level data, from said file metadata; and at least one of said first processor and said second processor refers to said second control information and judges which of either said storage control system or said external storage control system the save destination address information thus identified corresponds to.

7. The storage control system according to claim 1, comprising: a virtual intermediate storage device provided between the internal storage region belonging to said storage control system and said storage devices, wherein said virtual intermediate storage device associates said internal storage region with said external storage region belonging to said external storage control system.

8. A storage control method for controlling storage of data in a plurality of storage devices, comprising: a step in which a first processor converts file level data received via a local area network, into block level data; a step in which at least one of said first processor and a second processor belonging to a first channel control section connected to a communications network external to a storage control system judges whether all or a portion of said block level data is to be stored in either said storage control system or an external storage control system, on the basis of second control information indicating which of said storage control system and said external storage control system said block level data is to be stored in; a step in which said second processor transfers said block level data received from said first processor, to at least one of a storage device control section controlling the storage of data in the plurality of storage devices provided by said storage control system, and a second channel control section connected to the external storage control system via a storage network; a step in which said storage device control section stores received said block level data in at least one of said plurality of storage devices, if said block level data is received from said second processor; and a step in which, if said block level data is received from said second processor, said second channel control section transfers said received block level data to said external storage control system.

9. The method according to claim 8, further comprising: a step in which said first processor receives said file level data from a host computer, via said external local area network; and in the step in which said second processor performs said transfer, said second processor transfers a portion of said block level data based on the file level data received from said host computer, to said second channel control section, so as to be stored in an external storage region belonging to said external storage control system, on the basis of the result of said judgment, and transfers the remaining portion of said block level data to said storage device control section, so as to be stored in an internal storage region belonging to said plurality of storage devices.

10. The method according to claim 8, further comprising a step in which said first channel control section sets a storage region combining the external storage region belonging to said external storage control system and an internal storage region belonging to said storage control system, as a logical unit, to be an access object of the host computer transmitting said file level data.

11. The method according to claim 8, further comprising a step in which said second control information is stored in a second control information storage region; wherein said first processor is provided in said first channel control section; and in said judging step, at least one of said first processor and said second processor judges whether all or a portion of said block level data is to be stored in either said storage control system or said external storage control system, on the basis of said second control information stored in said second control information storage region.

12. The method according to claim 8, wherein a plurality of address information elements, and information indicating which of either said storage control system or said external storage control system each of said plurality of address information elements corresponds to, are recorded in said second control information; and in said judging step, at least one of said first processor and said second processor refers to said second control information and judges which of either said storage control system or said external storage control system the address information contained in said block level data corresponds to.

13. The method according to claim 8, wherein said second control information contains file metadata relating to files managed by said first processor; said file metadata contains a plurality of file identification information elements and save destination address information elements corresponding respectively to the plurality of files; said control method further comprises a step in which said first processor identifies the save destination address information corresponding to the file identification information contained in the received file level data, from said file metadata; and in said judging step, at least one of said first processor and said second processor refers to said second control information and judges which of either said storage control system or said external storage control system the save destination address information thus identified corresponds to.

14. The method according to claim 8, further comprising a step in which the internal storage region belonging to said storage control system is associated with the external storage region belonging to said external storage control system, via a virtual intermediate storage device provided between said internal storage region and said storage devices.

15. A storage control system receiving file level data via a local area network, comprising: a memory for storing the file level data thus received; and a first processor for converting the file level data stored in said memory into block level data; wherein at least one of said first processor and a second processor belonging to a first channel control section connected to a communications network external to said storage control system judges whether all or a portion of said block level data is to be stored in either said storage control system or an external storage control system, on the basis of second control information indicating which of either said storage control system or said external storage control system said block level data is to be stored in, wherein said second processor transfers said block level data received from said first processor to at least one of a storage device control section controlling storage of data in a plurality of storage devices provided by said storage control system, and a second channel control section connected to said external storage control system via a storage network; wherein said storage device control section stores received said block level data in at least one of said plurality of storage devices, if said block level data is received from said second processor; and wherein, if said block level data is received from said second processor, said second channel control section transfers said received block level data to said external storage control system.
Description



CROSS-REFERENCE TO PRIOR APPLICATION

This application relates to and claims priority from Japanese Patent Application No. 2004-61934, filed on Mar. 5, 2004, the entire disclosure of which is incorporated herein by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a storage control system and method.

2. Description of the Related Art

For example, in a database system for handling large volumes of data, such as that in a data centre, or the like, data is managed by using a storage control system constituted separately from the host computer. This storage control sub-system comprises, for example, a RAID (Redundant Array of Independent Inexpensive Disks) constituted by providing a plurality of disk type storage devices in an array fashion.

With the advance of the information-based society, the amount of data to be managed in databases is expanding all the time. Therefore, storage control systems having higher reliability and higher capacity are being demanded, and novel storage control systems have been developed in order to respond these market demands. As a method for introducing a new storage control system into a storage system, there is, for example, a method as disclosed in Japanese Laid-Open Patent No. (Hei)10-508967, whereby the old storage control system is replaced completely by a new storage control system, and the storage system is constituted entirely by the new storage control system.

If transferring completely from an old storage control system to a new storage control system, it is possible to use the functions and characteristics of the new storage control system, but it is not possible to use the old storage control system effectively, and the costs of introducing the new system are also increased.

SUMMARY OF THE INVENTION

Therefore, it is an object of the present invention to provide a storage control system and method whereby an old storage control system can be used effectively.

Further objects of the present invention will become apparent from the following description.

The storage control system according to a first aspect of the present invention comprises: a plurality of storage devices for storing data (for example, disk type storage devices); a storage device control section for controlling the storage of received data in the plurality of storage devices (for example, a disk adapter); a connecting section connected to the storage device control section; a first channel control section (for example, a CHN as described hereinafter) connected to at least one of a local area network and a first storage network external to the storage control system and to the connecting section; a second channel control section (for example, a CHF as described hereinafter), for transferring data sent by the first channel control section via the connecting section, to an external storage control system via a second storage network external to the storage control system; a shared memory wherein first control information (for example, messages between processors) exchanged by the first channel control section, the second channel control section, and the storage device control section, is stored; and a cache memory for temporarily saving data exchanged between the first channel control section or the second channel control section and the storage device control section. The first channel control section comprises a second processor for receiving block level data from a first processor which converts file level data received via the local area network into the block level data. At least one of the first processor and the second processor judges whether all or a portion of the block level data is to be stored in either the storage control system or the external storage control system, on the basis of second control information indicating whether the data is to be stored in either the storage control system or the external storage control system. The second processor transfers the block level data received from the first processor, to at least one of the storage device control section and the second channel control section, on the basis of the result of the judgment.

This storage control system can be representing in more abstract terms as described below, for example.

A storage control system comprising: an allocation control data storage region for storing allocation control data; and a processor for processing at least one of file level data and block level data received via an external communications network; wherein the allocation control data contains address information indicating the storage destination of file identification information contained in block level data, or address information contained in block level data, and address location information associated with the address information; and the processor refers to the allocation control data, identifies the address location information corresponding to the address information indicating the storage destination of the file identification information contained in the received block level data, or the address information contained in the received block level data, and determines whether the block level data converted from the file level, or the received block level data, is to be stored in either a storage device belonging to the storage control system, or a storage device belonging to the second storage control system.

In this case, the first storage control system may be the aforementioned storage control system itself.

In the first embodiment of a storage control system according to the first aspect of the present invention, the first processor receives the file level data from a host computer, via the external local area network. The second processor transfers a portion of the block level data based on the file level data received from the host computer, to the second channel control section, so as to be stored in an external storage region belonging to the external storage control system, on the basis of the result of the judgment, and transfers the remaining portion of the block level data to the storage device control section, so as to be stored in an internal storage region belonging to the plurality of storage devices. According to this first embodiment, block level data based on data from the host computer is stored in a storage region combining the external storage region and the internal storage region.

In the second embodiment of a storage control system according to the first aspect of the present invention, the first channel control section sets a storage region combining an external storage region belonging to the external storage control system and an internal storage region belonging to the storage control system, as a logical unit, to be an access object of the host computer transmitting the file level data.

In the third embodiment of a storage control system according to the first aspect of the present invention, the storage control system further comprises a second control information storage region in which the second control information is stored. The first processor is provided in the first channel control section. At least one of the first processor and the second processor judges whether all or a portion of the block level data is to be stored in either the storage control system or the external storage control system, on the basis of the second control information stored in the second control information storage region. The second control information storage region is provided in a cache memory, for example.

In the fourth embodiment of a storage control system according to the first aspect of the present invention, a plurality of address information elements, and information indicating which of either the storage control system or the external storage control system each of the plurality of address information elements corresponds to, are recorded in the second control information. At least one of the first processor and the second processor refers to the second control information and judges which of either the storage control system or the external storage control system the address information contained in the block level data corresponds to.

In the fifth embodiment of a storage control system according to the first aspect of the present invention, the second control information contains file metadata relating to files managed by the first processor. The file metadata contains a plurality of file identification information elements and save destination address information elements corresponding respectively to the plurality of files. The first processor identifies the save destination address information corresponding to the file identification information contained in the received file level data, from the file metadata. At least one of the first processor and the second processor refers to the second control information and judges which of either the storage control system or the external storage control system the save destination address information thus identified corresponds to.

In the sixth embodiment of a storage control system according to the first aspect of the present invention, a virtual intermediate storage device provided between the internal storage region belonging to the storage control system and the storage devices. The virtual intermediate storage device associates the internal storage region with the external storage region belonging to the external storage control system.

The storage control method according to a second aspect of the present invention comprises: a converting step, a judging step, a first transfer step, a storing step and a second transfer step. In the converting step, a first processor converts file level data received via a local area network, into block level data. In the judging step, at least one of the first processor and a second processor belonging to a first channel control section connected to a communications network external to the storage control system judges whether all or a portion of the block level data is to be stored in either the storage control system or the external storage control system, on the basis of second control information indicating which of the storage control system and the external storage control system the data is to be stored in. In the first transfer step, the second processor transfers the block level data received from the first processor, to at least one of a storage device control section controlling the storage of data in the plurality of storage devices provided by the storage control system, and a second channel control section connected to the external storage control system via a storage network. In the storing step, the storage device control section stores received data in at least one of the plurality of storage devices, if data is received from the second processor. In the second transfer step, if data is received from the second processor, the second channel control section transfers the received data to the external storage control system.

In a first embodiment of a storage control method according to the second aspect of the present invention, the first processor receives the file level data from a host computer, via the external local area network. In the first transfer step, the second processor transfers a portion of the block level data based on the file level data received from the host computer, to the second channel control section, so as to be stored in an external storage region belonging to the external storage control system, on the basis of the result of the judgment, and transfers the remaining portion of the block level data to the storage device control section, so as to be stored in an internal storage region belonging to the plurality of storage devices.

In a second embodiment of a storage control method according to the second aspect of the present invention, a further step is provided in which the first channel control section sets a storage region combining the external storage region belonging to the external storage control system and an internal storage region belonging to the storage control system, as a logical unit, to be an access object of the host computer transmitting the file level data.

In a third embodiment of a storage control method according to the second aspect of the present invention, a further step is provided in which the second control information is stored in a second control information storage region. The first processor is provided in the first channel control section. In the judging step, at least one of the first processor and the second processor judges whether all or a portion of the block level data is to be stored in either the storage control system or the external storage control system, on the basis of the second control information stored in the second control information storage region.

In a fourth embodiment of a storage control method according to the second aspect of the present invention, a plurality of address information elements, and information indicating which of either the storage control system or the external storage control system each of the plurality of address information elements corresponds to, are recorded in the second control information. In the judging step, at least one of the first processor and the second processor refers to the second control information and judges which of either the storage control system or the external storage control system the address information contained in the block level data corresponds to.

In a fifth embodiment of a storage control method according to the third aspect of the present invention, the second control information contains file metadata relating to files managed by the first processor. The file metadata contains a plurality of file identification information elements and save destination address information elements corresponding respectively to the plurality of files. The storage control method further comprises a step in which the first processor identifies the save destination address information corresponding to the file identification information contained in the received file level data, from the file metadata. In the judging step, at least one of the first processor and the second processor refers to the second control information and judges which of either the storage control system or the external storage control system the save destination address information thus identified corresponds to.

In a sixth embodiment of a storage control method according to the second aspect of the present invention, an internal storage region belonging to the storage control system is associated with the external storage region belonging to the external storage control system, via a virtual intermediate storage device provided between the internal storage region and the storage devices.

The storage control system according to a third aspect of the present invention is a storage control system which receives file level data via a local area network, comprising: a memory for storing received file level data, and a processor for converting the file level data stored in the memory, into block level data. The processor judges whether all or a portion of the block level data is to be stored in either a first storage control system located externally to the storage control system or a second storage control system located externally to the first storage control system, on the basis of second control information indicating which of either the storage control system or the external storage control system, the data is to be stored in, and transfers the result of the judgment and the block level data, to the first storage control system, via a storage network.

The storage control system according to the third aspect of the present invention may be, for example, a NAS (Network Area Storage) head, or it may be a NAS itself.

Moreover, at least one of the first storage control system and the second storage control system is a RAID system, for example. More specifically, for example, the first storage control system comprises: a plurality of storage devices for storing data; a storage control sub-system for transferring data received via at least one of a local area network and storage network, external to the first storage control system, to an external storage control system, via the same storage network as the storage network, or a separate storage network to same; and a memory for temporarily saving data received via at least one of the local area network and the storage network. The storage control sub-system comprises a separate processor for receiving block level data from the processor provided in the storage control system (for example, the NAS head). This separate processor transfers the block-level data received from the processor, to at least one of the storage device control section and the second channel control section, on the basis of the result of the judgment.

The storage control sub-system of the first storage control system may comprise, for example, the processor which receives file level data via a local area network and converts the file level data thus received into block level data. Moreover, in this case, for example, at least one of the processor and the separate processor judges whether all or a portion of the block level data is to be stored in either the first storage control system or the second storage control system, on the basis of control information indicating whether the data is to be stored in either the first storage control system or the second storage control system.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows a general view of the external appearance of a storage control system relating to one embodiment of the present invention;

FIG. 2 is a block diagram showing the composition of a storage system relating to the present embodiment;

FIG. 3 is a schematic diagram showing the logical connection structure between the first storage control system 600 and the second storage control system 40;

FIG. 4 is an illustrative diagram showing an overview of a mapping table Tm;

FIG. 5 is a block diagram showing an example of the composition of a CHN 21A;

FIG. 6 is a block diagram showing an example of the composition of the CHF 21B;

FIGS. 7(A) and 7(B) show the processing sequence relating to transmission and reception of an I/O allocation control data 820;

FIG. 8 shows the processing sequence implemented when a file I/O command received from the host device 10A is converted to a block I/O command and output;

FIG. 9 shows the example of the composition of the address management data 853 and file metadata 854 contained in the allocation control data 820, together with the detailed processing sequence of I/O allocation processing carried out on the basis of that allocation control data 820;

FIGS. 10(A) and 10(B) show the processing sequence implemented when the file metadata 854 is updated;

FIG. 11 shows a processing sequence carried out in a case where the CHF 21B of the first storage control system 600 creates a mapping table Tm;

FIGS. 12(A) and 12(B) are schematic diagram showing processing in the case of data writing;

FIG. 13 is an illustrative diagram showing the sequence of processing in FIG. 12, in relation to the respective tables;

FIGS. 14(A) and 14(B) are conceptual diagram of a case where data is read out from an external LDEV;

FIG. 15 shows an example of the composition of a CHN 21A relating to a first modification example of the present embodiment;

FIG. 16 shows one example of a processing sequence relating to the first modification example of the present embodiment;

FIG. 17 shows an example of the composition of a CHN 21A relating to a second modification example of the present embodiment;

FIG. 18 shows one example of a processing sequence relating to the second modification example of the present embodiment;

FIG. 19 is a block diagram showing the composition of a storage system relating to a third modification of the present embodiment;

FIG. 20 shows an example of the composition of the integrated CHF/CHN adapter 21D.

FIG. 21 is a block diagram showing the composition of a storage system relating to a fourth modification of the present embodiment;

FIG. 22 shows an example of the composition of a NAS head 950 and a CHA 21C;

FIGS. 23(A) and 23(B) show a processing sequence according to the fourth modification example of the present embodiment, in a case where a I/O allocation control data 820 is exchanged; and

FIG. 24 shows an example of a processing sequence according to the fourth modification example of the present embodiment, carried out in a case there a file I/O command output by the host device 10A is transferred as a block I/O command.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

An overview of one embodiment of the present invention is now described.

In the present embodiment, the storage control system, such as a RAID system, or the like, is connected to a host terminal, by means of a first communications network (for example, a LAN) through which file-level data is exchanged. Moreover, the storage control system is connected to an external storage control system via a second communications network through which block-level data is exchanged (for example, a SAN (Storage Area Network)). Both the storage control system and the external storage control system are provided with logical storage devices for storing data (hereinafter, referred to as "LDEV", being an abbreviation for "Logical Device"). The LDEVs are provided in one or a plurality of disk type storage devices. The storage control system and the external storage control system are provided with a disk control section for controlling the storage of data in the disk type storage devices. The storage control system comprises a first and a second channel control section. The first channel control section comprises a first processor for receiving file-level data via the first communications network and converting same into block-level data, and a second processor for receiving block-level data from the first processor. The second channel control section transfers the block-level data received from the first channel control section, to the external storage control system, via the second communications network. At least one of the first and second processors judges whether to store all or a portion of the block-level data, in either the storage control system or the external storage control system, on the basis of I/O (Input/Output) allocation control data which indicates which of the storage control system or external storage control system the data is to be stored in. The second processor transfers the block-level data received from the first processor, to at least one of the disk control section and the second channel control section, on the basis of this judgment result.

Below, the present embodiment is described in detail with reference to the drawings.

FIG. 1 shows a general view of the external appearance of a storage control system relating to one embodiment of the present invention.

The storage control system 600 may be constituted by a base frame unit 10, and a plurality of add-on frame units 12 (although it may also be constituted by a base frame unit 11 only.).

The base frame unit 10 is the smallest composition unit of the storage control system 600. Provided respectively in a detachable manner in this base frame unit 10 are, for example, a plurality of disk type storage devices (for example, hard disk drives (HDD)) 300, a plurality of control packages (for example, channel control sections or display control sections) 105, a plurality of power units 400, and a plurality of parity units 500. Furthermore, a plurality of cooling fans 13 are also provided in the base frame unit 10.

Each add-on frame 12 is an optional storage control system 600, for example, a maximum of four add-on frames 12 can be connected to any one base frame unit 10. Furthermore, a plurality of cooling fans 13 are also provided in each add-on frame unit 12. A plurality of disk type storage devices 300, a plurality of power supply units 400, and a plurality of parity units 500 are provided in a respectively detachable fashion, in each of the add-on frame units 12, these respective elements each being controlled by means of a control function of a control package 105 provided in the base frame unit 10.

FIG. 2 is a block diagram showing the composition of a storage system relating to the present embodiment.

One or a plurality of host devices, for example, two host devices 10A, 10B are respective computer devices provided with information processing resources, such as a CPU (Central Processing Unit), memory, and the like, and they are constituted in the form of a personal computer, workstation, main frame computer, or the like. The host devices 10A, 10B respectively comprise, for example, information input devices (not illustrated), such as keyboard switches, pointing device, microphone, or the like, and information output devices (not illustrated), such as a monitor display, speakers, and the like, for example. Moreover, each of the host devices 10A, 10B is provided with, for example, an application program 11, such as database software using storage region provided by a first storage control system 600, and adapters 12A or 12B for accessing the first storage control system 600 via a communications network CN1.

The host device 10A is connected to the first storage control system 600 via a first communications network CN1. The communications network CN1 is a communications network for exchanging data at file level, and according to circumstances, a LAN, the Internet, a dedicated circuit, a public circuit, or the like, could be used for same (hereinafter, it is supposed that the first communications network is a "LAN"). Data communications via the LAN are conducted in accordance with a TCP/IP (Transmission Control Protocol/Internet Protocol), for example. The host device 10A requests data input and output in file units, to the first storage control system 600, by specifying a file name. The adapter 12A connected to the LAN CN1 is a network card (illustrated as "PORT") which is compatible with a LAN, for example.

The host device 10B is connected to the first storage control system 600 via a third communications network CN3. The third communications network CN3 is a communications network for exchanging data at block level, and is constituted by a SAN (Storage Area Network), for example, (hereinafter, it is supposed that the third communications network is a "SAN"). The host device 10B requests data input and output, to the first storage control system 600, in units of blocks which is the data management unit in the storage region provided by a plurality of disk storage device (for example, hard disk drives), in accordance with a fiber channel protocol. The adapter 12 connected to the SAN CN3 is a host bus adapter (illustrated as "HBA") for example.

In the diagrams, the host device 10A or 10B is connected only to the first storage control system 600 via the LAN CN1 or SAN CN3, but it is also possible for at least one of the host devices 10A and 10B to be connected to a second storage control system 40, by means of the second communications network CN2. The second communications network CN2 may be constituted, for example, by a SAN, LAN, Internet, dedicated circuit, public circuit, or the like, but in the present embodiment, it is supposed that it is constituted by a fiber channel switch (hereinafter, abbreviated to "FC-SW").

The first storage control system 600 is, for example, a RAID system comprising a plurality of disk storage device arranged in an array fashion. The first storage control system 600 is not limited to this, and it may also be constituted by an intelligent-type fiber channel switch providing high functionality. As described hereinafter, the first storage control system 600 may also not be provided with a local storage device that it controls directly itself, since the storage resources of the second storage control system 40 are provided to the host devices 10 as individual logical volumes (Logical Units).

The first storage control system 600 may be divided broadly into a storage control sub-system 20 and a disk unit 30. The storage control sub-system 20 comprises, for example, a channel control section 21, a disk control section 800, an SVP (Service Processor) 23, a cache memory 24, a shared memory 25 and a connecting section 26. The channel control section 21 comprises, for example, one or more channel adapters NAS (CHN) 21A, one or more channel adapters (CHA) 21C, and one or more fiber channel adapters (CHF) 21B. The disk control section 800 comprises a plurality of disk adapters (DKA) 22.

The CHN 21A conducts data communications with the host device 10A. The CHN 21A is provided with a communications port 207A for performing communications with the host device 10A. Moreover, the CHN 21A is constituted, for example, by a microcomputer system comprising a CPU, memory, and the like, and it interprets and executes various commands received from the host device 10A. The CHN 21A is assigned with a network address (for example, an IP address or WWN), for identifying that CHN 21A. The CHA 21N is able to receive an I/O command for a file unit from a host device 10, via the LAN CN1, (for example, a command containing a file name, and a command for reading or writing a file having that file name, hereinafter, referred to as a "file I/O command"), and behave as a NAS (Network Attached Storage) for processing that file I/O command. The composition and functions of the CHN 21A are described in detail hereinafter.

The CHA 21C conducts data communications with the host device 10B. The CHA 21C is provided with a communications port 207C for performing communications with the host device 10B. Moreover, the CHA 21C is constituted, for example, by a microcomputer system comprising a CPU, memory, and the like, and it interprets and executes various commands received from the host device 10B. The CHA 21C is assigned with a network address (for example, an IP address or WWN), for identifying that CHA 21C. The CHA 21C is able to receive I/O commands in block units (hereinafter, called "block I/O commands), from the host device 10B, via the SAN CN3, and to process those block I/O commands. A block unit is the management unit for data in the storage region in the disk storage device 400 described hereinafter.

The CHF 21B is connected via a communications port 207B to the FC-SW 2. The CHF 21B is constituted, for example, in the form of a microcomputer having a CPU, memory and the like, which is able to exchange data with the second storage control system 40, by means of the FC-SW 2. The composition and functions of the CHF 21B are described in detail hereinafter.

The respective DKAs 22 perform data exchange with the logical storage devices (hereinafter, LDEVs) 31, 32 in the disk unit 30. Each DKA 22 is provided with a communications port for connecting to the disk type storage device 400 which provides the LDEVs 31, 32. Moreover, each DKA 22 is constituted in the form of a microcomputer having a CPU, a memory, and the like. Each DKA 22 writes data received from the CHN 21A or the CHA 21C, to the LDEVs 31, 32, or transmits data read out from the LDEVs 31, 32, to the CHN 21A or CHA 21C. Each DKA 22 converts the logical address to a physical address, when it inputs data to or outputs data from the LDEVs 31, 32.

The cache memory (hereinafter, referred to also as "CM") 24 is, for example, a volatile or non-volatile memory, which temporarily stores data received from the host devices 10 and data read out from the LDEVs 31, 32. Moreover, the cache memory 24 is also capable of storing I/O allocation control data 820, described hereinafter, and instead of same, or in addition to same, the I/O allocation control data 820 may also be stored in the LDEV 31.

The shared memory (hereinafter, also referred to as "SM") 25 is, for example, a non-volatile shared memory, which stores control information relating to the data exchanged with the host devices (for example, information indicating which of the cache regions reserved on the CM 24, the data is to be stored in), and the like. Moreover, the shared memory 25, as well as being established as a work region (for example, a region in which messages exchanged between the CPUs of the CHN 21A, CHA 21C, CHF 21B and DKA 22 are stored temporarily), is also used to store various types of data, such as a mapping table group TG, and the like. It is also possible to use any one or a plurality of the LDEVs 31, 32 as a disk for caching.

The connecting section 26 provides a mutual connection between the CHN 21A, CHA 21C, CHF 21B, the respective DKAs 22, the cache memory 24 and the shared memory 25. The connecting section 26 may be constituted by a high-speed bus, such as an ultra-high-speed crossbar switch, or the like, which performs data transfer by means of a high-speed switching operation.

The disk unit 30 comprises a plurality of disk storage devices 400 arranged in an array fashion. For the disk storage devices 400, it is possible to use, for example, devices such a hard disk, flexible disk, magnetic tape, semiconductor memory, optical disk, or the like. The LDEVs 31, 32 are provided in a storage region of the disk storage device 400. The LDEVs 31 (or 32) is able to store I/O allocation control data, which is described hereinafter. The LDEV 32 indicated by the dotted line indicates a state where an LDEV 42 belonging to the second storage control system 40 is incorporated into the first storage control system 600. In other words, an LDEV situated externally from the viewpoint of the first storage control system 600, (hereinafter, called "external LDEV") 42 is provided to the host device 10 in the form of an internal LDEV 32 of the first storage control system 600.

The SVP 23 is an information processing terminals for maintaining or managing the first storage control system 600 (for example, a notebook-type personal computer). The SVP 23 is connected to the processors (for example, the CPU) in the CHN 21A, CHA 21C, CHF 21B and the respective DKAs 22, for example, by means of an internal LAN 410. The SVP 23 monitors the occurrence of faults in the first storage control system 600, displaying same on a display screen, and is used to instruct shut off processing, and the like, relating to the disk storage device 400.

The second storage control system 40 may have a similar composition of the first storage control system 600, or it may have a simpler composition than the first storage control system 600. For example, the second storage control system 40 comprises a CHF 217 having a communications port 41, and one or a plurality of disk storage devices 401. The LDEV 42 is provided in a storage region of the disk storage device 401. The second storage control system 40 is connected to the first storage control system 600 via the FC-SW 2, in such a manner that the LDEV of the second storage control system 40 (in other words, the external LDEV) 42 is treated as an internal LDEV 32 of the first storage control system 600.

At least one of the internal LDEV 31 (or the internal LDEV 32) and the CM 24 is able to store I/O allocation control data 820 used in controlling which of the first storage control system 600 or the second storage control system 40 block I/O data is allocated to (for example, at the address management data 853 of the address management data 853 and file metadata 854 described below). This I/O allocation control data 820 (for example, address management data 853) may, for example, be input by the SVP 23 to at least one of the CHN 21A, CHA 21C, CHF21B and the respective DKAs 22, and this I/O allocation control data 820 may be stored in at least one of the CM 24 and the internal LDEV 31 (or internal LDEV 32).

Above, a general description of a storage system 1 relating to the present embodiment was given.

FIG. 3 is a schematic view showing the logical connection structure between the first storage control system 600 and the second storage control system 40.

As shown in this diagram, the first storage control system 600 comprises three storage layers, consisting of VDEVs 101, LDEVs 31, and LUNs 103, in ascending order.

The VDEV 101s are virtual devices situated in the bottommost position of the logical storage layers. The VDEVs 101 are virtual representations of physical storage resources, and can be applied to a RAID structure. More specifically, it is possible to form a plurality of VDEVs 101 from a single disk storage device 400 ("slicing"), and it is also possible to form a single VDEV 101 from a plurality of disk storage devices 400 ("striping"). The VDEV 101 shown on the left-hand side in FIG. 3 is a virtual representation of a disk storage device 400 according to a prescribed RAID structure, for example.

On the other hand, the VDEV 101 shown on the right-hand side in FIG. 3 may be used as an internal LDEV 32 of the first storage control system 600, by mapping external LDEVs 42 provided by the disk storage device 401 of the second storage control system 40, to the VDEV 101, by means of the mapping table group TG (for example, the mapping table Tm in this group). In the example illustrated in this diagram, the VDEV 101 is constituted by striping of four external LDEVs 42A 42D existing respectively in four second storage control systems 40A 40D. Each of the external LDEVs 42A 42D can be accessed respectively and independently via respective communications ports 41A 41D, by identifying respective LUNs (Logical Unit Numbers) 43A 43D. Each communications port 41A 41D is assigned with a WWN (World Wide Name), which is unique identification information. Therefore, by specifying a combination of a WWN and LUN to the FC-SW 2, the first storage control system 600 is able to view an external LDEV 42 belonging to the LUN contained in that combination, via the FC-SW 2. If there are a plurality of LDEVs belonging to the LUN, then the plurality of LDEVs are provided to the host device 10, by the first storage control system 600, as a single logical storage device.

The mapping table group TG comprises a mapping table Tm, and a first conversion table T1 and a second table T2 prepared on the basis of this mapping table Tm. These respective tables Tm, T1 and T2 are described in detail below.

Internal LDEVs 32 are provided above the VDEVs 101. The internal LDEVs 32 are logical devices which are virtual representations of the virtual devices (VDEVs). It is possible to connect two internal LDEVs 32 to one VDEV 101, or to connect one internal LDEV 32 to a plurality of VDEVs 101. The internal LDEVs 32 can be accessed via respective LUNs 103. In this way, in the present embodiment, it is possible to use external LDEVs 42 as a single internal LDEV 32 of the first storage control system 600, by connecting the externals LDEVs 42 to an intermediate storage layer (VDEV 101 and internal LDEV 32) situated between the LUNs 103 and the external LDEVs 42.

As shown in the diagram, the first storage control system 600 comprises a mixture of internal LDEVs 32 which are connected to the external LDEVs 42, and internal LDEVs 31 which are not connected to external LDEVs 42. In the example illustrated in this diagram, an internal LDEV 31 and an internal LDEV 32 are associated with the LUN "1". Therefore, if the first storage control system 600 has received an LUN specification of "1" from the host device 10A, then it is able to provide a single logical unit (LU) comprising the storage region of the internal LDEV 32 and the storage region of the external LDEV 42 associated with that internal LDEV 32, as an accessible object, to the host device 10A.

FIG. 4 shows an overview of a mapping table Tm.

In the mapping table Tm, VDEV identification information for identifying the respective VDEVs 101 (hereinafter, referred to as "VDEV#") and information relating to the external LDEVs 42 (hereinafter, referred to as "external device information") are mutually associated. The external device information contains, for example, system identification information, the storage capacity of the external LDEV 42, information indicating the device type (for instance, whether it is a tape type device or disk type device, or the like), and information on the path to the external LDEV 42. The system identification information is, for example, information containing the vendor ID, model and serial number of the second storage control system 40. The path information may be constituted by comprising unique identification information (WWN), and a LUN 4, for each communications port 41. The system identification information and WWN, and the like, illustrated in FIG. 4 are values used for the sake of the description, and do not have any particular meaning. Moreover, the VDEV 101 having VDEV number "3" shown at the bottom of FIG. 4 is associated with three path information elements. More specifically, the external LDEV 42 mapped to this VDEV 101 (#3) has an internal alternative path structure comprising three paths, and it is mapped to the VDEV 101 (#3) by recognizing this alternative path structure. Since it is recognized that the same storage region can be accessed by passing via any one of these three paths, then even if a fault, or the like, occurs in any


Free Web Sudoku Puzzles.
Solve with your browser.
1 2 3   6       4
    9     1     8
  4     3     5  
  1   6          
6               3
          8   2  
  5     8     4  
7     1     9    
4       9   3 8 1
What is it?



Add Your Site · Terms Of Service · Privacy Policy


DISCLAIMER
Linkgrinder is a free service that searches the Internet and indexes all files found so that you may search quickly and easily for shared files. These files are created and made available individually by users whose identity we are not aware of and who we have no control over. In essence we function like a search engine tool; these files ARE NOT STORED OR SERVED BY OUR NETWORK. We are not responsible for any materials obtained by using our service. We do not monitor any of the contents of these files. These files may contain viruses, illegal materials, materials inappropriate for minors, offensive files and the like. BY USING OUR SERVICE, YOU ASSUME FULL RESPONSIBILITY FOR DOWNLOADING THESE MATERIALS AND WILL INDEMNIFY US FOR ANY DAMAGES THAT MAY BE INCURRED.

For More Specific Information VIEW OUR TERMS OF SERVICE.

Thank you and Enjoy!