KR20010041762A - 매우 유용한 파일서버 - Google Patents
매우 유용한 파일서버 Download PDFInfo
- Publication number
- KR20010041762A KR20010041762A KR1020007010007A KR20007010007A KR20010041762A KR 20010041762 A KR20010041762 A KR 20010041762A KR 1020007010007 A KR1020007010007 A KR 1020007010007A KR 20007010007 A KR20007010007 A KR 20007010007A KR 20010041762 A KR20010041762 A KR 20010041762A
- Authority
- KR
- South Korea
- Prior art keywords
- file server
- file
- server
- mass storage
- switch
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2035—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant without idle spare hardware
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2097—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements maintaining the standby controller/processing unit updated
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2046—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant where the redundant components share persistent storage
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Hardware Redundancy (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Debugging And Monitoring (AREA)
Abstract
본 발명은 기억장치 시스템의 일부에 기능장애가 발생한 경우에도 매우 유용하게 사용할 수 있는 기억장치 시스템 및 그 기억장치 시스템을 작동시키는 방법을 제공한다. 제1 및 제2 파일서버는 입력되는 파일서버 리퀘스트를 저장하기 위한 파일서버 리퀘스트 로그를 각각 포함한다. 상기 제1 및 제2 파일서버는 모두 대용량 기억장치 요소의 공통된 세트에 액세스를 갖는다. 각각의 입력되는 파일서버 리퀘스트는 상기 제1 및 제2 파일서버에 복사된다; 제1 파일서버는 파일서버 리퀘스트를 포함하고, 동시에 제2 파일서버는 그 파일서버 리퀘스트 로그에 사본을 유지한다. 각각의 파일서버는, 각각의 파일서버 리퀘스트 후, 일치된 상태를 유지하는 파일시스템을 이용하여 작동한다. 페일오버시, 제2 파일서버는, 가장 최근의 일치된 상태 이후 그 파일서버 리퀘스트 로그에 있는 파일서버 리퀘스트를 실행할 수 있다. 임의의 각각의 대용량 기억장치 요소에 대한 액세스를 방해하는 단일점 기능장애는 없다.
Description
서비스를 제공 가능한 상태로 유지하는 기억장치 시스템을 제공하기 위하여 알려진 기술 중 하나는, 제1 기억장치의 기능장애시 제2 기억장치가 서비스 및 데이터를 제공할 수 있도록 하고, 그렇지 않은 경우 제1 시스템을 사용할 수 있는 특성을 구비한 여분의 복수 기억장치를 제공하는 것이다. 서비스를 제공하는 기능을 제1 기억장치로부터 제2 기억장치로 전환하는 것을 페일오버(failover)라 한다. 실질적인 작업중단 없이 페일오버가 진행할 수 있도록, 제2 기억장치는 제1 기억장치에 의해 유지되는 데이터의 복사본을 유지한다.
페일오버를 위해 알려진 제1의 기술은, 제2 기억장치가 제1 기억장치의 모든 작업을 복사하는 것이다. 따라서, 제1 기억장치에 의해 이루어진 각각의 작업은 제2 기억장치에 의해서도 이루어진다. 상기 알려진 기술은 다음과 같은 단점이 있다. (1) 이 기술은 제2 기억장치가 제1 기억장치의 작업을 복사하는데 상당한 양의 프로세스(process)를 사용하는데, 그 대부분은 낭비다. (2) 제1 기억장치는 제2 기억장치가 동일 작업을 완료할 때까지 대기해야 하므로, 작업을 완료하는 제1 기억장치의 속도가 느리다.
페일오버를 위한 제2의 기술은, 제1 기억장치가 일정한 알려진 상태에 있는 일련의 체크포인트(checkpoint)를 확인하는 것이다. 페일오버시, 제2 기억장치는 가장 최근의 체크포인트로부터 작업을 계속할 수 있다. 예컨대, NFS(Network File System) 프로토콜은, 확인작업(confirm)이 이루어지기 전에 모든 기록 동작을 디스크에 저장해야 하므로, 기록 동작의 확인 작업은 안정된 파일시스템 구성을 필요로 한다. 상기 알려진 기술은 다음과 같은 단점이 있다. (1) 제1의 기억 장치는 기록 동작이 완전히 디스크에 저장될 때까지 대기해야 하므로, 기록 동작을 행하는데 있어서 제1 기억장치의 속도가 느리다. (2) 제2의 기억장치는 확인된 체크포인트 사이의 제1 기억장치의 기능장애로 인해 남겨진 자료의 불일치를 확인해야 하므로 페일오버의 회복이 느리다.
따라서, 모든 기억장치 시스템의 구성요소를 효율적으로 사용하고, 동작을 신속히 완료 및 확인하며, 임의의 기억장치 요소의 기능장애로부터 신속히 복구되는 기억장치 시스템 및 그 작동 방법을 제공하는 것은 장점이 있다. 이 장점은, 시간 간격이 짧고 신속한 체크포인트를 구현하는 본 발명의 실시예에서 이루어지며, 상기 기억장치 시스템은 그 구성요소들 중의 체크포인트 사이에 이루어지는 상기 동작들을 위한 중복된 명령어들을 신속히 분배한다.
본 발명은 기억장치 시스템에 관한 것이다.
컴퓨터 기억장치 시스템은 데이터를 기록하거나 독출하는데 사용된다. 일부 컴퓨터 시스템에서, 기억장치 시스템은 일련의 클라이언트 디바이스들과 연결되어 있으며, 이들 클라이언트 디바이스들에 자료를 기록하거나 독출하는 서비스를 제공한다. 자료기억장치는 많은 응용프로그램(application)에 중요하므로, 기억장치에 의해 제공되는 서비스 및 자료는 가능한 한 최대의 서비스를 제공할 수 있도록 하는 것이 바람직하다. 따라서, 기억장치 시스템 일부의 기능장애에도 불구하고 서비스를 제공할 수 있는 상태를 유지하는 기억장치 시스템을 제공하는 것이 바람직하다.
도1은 매우 유용한 파일서버 시스템의 블록도를 나타낸다.
도2는 상기 파일서버 시스템에 있는 하나의 파일서버에 대한 블록도를 나타낸다.
도3은 상기 파일서버 시스템의 작동 과정을 나타낸 흐름도이다.
본 발명은 기억장치 시스템의 기능장애가 있는 경우에도 사용할 수 있는 기억장치 시스템 및 이를 작동시키는 방법을 제공한다. 제1 및 제2 파일서버는 입력되는 파일서버 리퀘스트(request)를 저장하는 파일서버 리퀘스트 로그를 각각 포함한다. 제1 및 제2 파일서버는 공통의 대용량 기억장치에 대한 액세스 권한을 갖는다. 입력되는 각각의 파일서버 리퀘스트는 모두 제1 및 제2 파일서버에 복사된다. 제1 파일서버는 상기 파일서버 리퀘스트를 처리하는 반면, 제2 파일서버는 그 파일서버 리퀘스트 로그에 복사본을 유지한다. 각각의 파일서버는, 각각의 파일서버 리퀘스트후 일정한 상태를 유지하는 파일시스템을 이용하여 작동한다. 페일오버시, 제2 파일서버는 가장 최근의 자료가 일치하는 상태 이후, 파일서버 리퀘스트 로그에 있는 파일서버 리퀘스트를 실행할 수 있다.
본 발명의 제2 특징에서, 파일서버 시스템은 하나 이상의 대용량 기억 장치의 미러링(mirroring)을 제공한다. 입력되는 각각의 파일서버 리퀘스트는 모두 제1 파일서버 및 제2 파일서버에 복사된다. 제1 파일서버는 대용량 기억장치 요소들의 프라이머리 세트(primary set)를 수정하기 위해 파일서버 리퀘스트를 실행하고, 또한 대용량 기억장치 요소들의 미러 세트(mirror set)를 수정하기 위해 상기 파일서버 리퀘스트를 실행한다. 미러 대용량 기억장치 요소들은, 다른 사이트(site)와 같이, 프라이머리 대용량 기억장치 요소들과 물리적으로 분리되도록 배치되고, 대용량 기억장치 요소들의 전체 프라이머리 세트가 복구될 때 리소스(resource)를 제공한다.
이하 기술에서, 본 발명의 바람직한 실시예는 바람직한 처리 단계 및 자료구조를 기술한다. 그러나, 당업자는, 본 발명의 숙독 후, 본 발명의 실시예가 프로그램 제어 하에 작동되는 하나 이상의 범용 프로세서(또는 특정의 프로세스 스텝 또는 자료 구조에 맞도록 채택된 특수 목적의 프로세서)를 사용하여 구현될 수 있고, 상기 장치를 사용하여 이하 기술된 바람직한 프로세스 스텝 및 데이터 구조의 구현은 과도한 실험 또는 더 낳은 발명을 요구하지 않음을 알게된다.
(파일서버 쌍 및 페일오버 동작)
도1은 매우 유용한 파일서버 시스템의 블록도를 나타낸다.
파일서버 시스템(100)은, 대용량 기억 장치(120)의 공통 세트에 모두 연결된 한 쌍의 파일서버(110)를 포함한다. 상기 파일서버(110) 중 첫 번째 것은, 대용량 기억장치(120)의 첫 번째 선택된 서브셋(subset)을 제어하는 제1 I/O 버스(130)에 연결된다. 마찬가지로, 상기 파일서버(110)의 두 번째 것은 상기 대용량 기억장치(120)의 제2 선택된 서브셋을 제어하는 제2 I/O 버스(130)에 연결된다.
상기 두 개의 파일서버(110)가 모든 공통의 대용량 기억장치(120)에 연결될지라도, 단지 하나의 파일서버(110)만이 어떤 특정된 시간에 어떤 하나의 대용량 기억장치(120)만을 제어한다. 따라서, 비록 대용량 기억장치(120)가 한번에 단지 하나의 파일서버(10)에 의해 각각 제어될 수 있을지라도, 각각의 대용량 기억장치(120)는 연결된 두 개의 파일서버(110) 중 하나가 장애를 일으키는 경우에도 사용 가능하다.
바람직한 실시예에서, 파일서버 시스템(100)은 한 쌍의 상기 파일서버(110)를 포함한다. 그러나, 다른 실시예에서, 2개 이상의 상기 파일서버(110)가 단일 파일서버 시스템(100)에 포함될 수 있다.
바람직한 실시예에서, 제1 I/O 버스(130) 및 제2 I/O 버스(130) 각각은 PCI 버스 구조(architecture)와 같은 중이층 버스(mezzanine bus)를 각각 포함한다.
바람직한 실시예에서, 대용량 기억장치(120)는 자기 디스크 드라이브, 광 디스크 드라이브, 또는 자기-광 디스크 드라이브를 포함한다. 그러나, 다른 실시예에서, 버블 메모리, 플래시 메모리, 또는 다른 기억장치 기술을 사용하는 시스템 등과 같은, 다른 기억장치 시스템이 사용될 수 있다. 비록 다른 형태 또는 모양을 포함하더라도, 대용량 기억장치(120)의 구성요소를 이하 "디스크"라 한다.
각각의 대용량 기억장치(120)는 단일 디스크 또는 복수의 디스크를 포함할 수 있다. 바람직한 실시예에서, 각각의 대용량 기억장치(120)는 복수의 디스크를 포함하고, RAID 기억장치 시스템으로 구성되고 동작된다.
바람직한 실시예에서, 제1 파일서버(110)는 공통 접속을 이용하여 제2 파일서버(110)와 연결된다. 공통 접속은 각각의 파일서버(110)에 원격 메모리 액세스 능력을 제공하여, 원격 데이터는 각각의 파일서버(110)에 저장될 수 있다. 바람직한 실시예에서, 공통 접속은 탠덤(Tandem) "서버넷(ServerNet)" 접속을 포함한다. 상기 공통 접속은 각각의 파일서버(110)에 대해 I/O 버스와 연결된 디바이스 콘트롤러를 사용하여 각각의 파일서버(110)와 연결된다.
제1 파일서버(110)는, 네트워크(150)로부터 파일서버 리퀘스트(151)를 수신하도록 배치된 제1 네트워크 인터페이스(140)와 연결된다. 마찬가지로, 제2 파일서버(110)는, 네트워크(150)로부터 파일서버 리퀘스트(151)를 수신하도록 또한 배치된 제2 네트워크 인터페이스(140)와 연결된다.
제1 파일서버(110)는 파일서버 리퀘스트(151)들을 수신하고 기록하는 제1 서버 리퀘스트 메모리(160)를 포함한다. 제1 파일서버(110)가 전원 중단 또는 다른 서비스 장애로부터 회복될 경우, 제1 서버 리퀘스트 메모리(160)에서의 미해결된 파일서버 리퀘스트(151)들은, 이들이 제1 파일서버(110)에 의해 유지된 파일시스템의 다음 일치된 상태와 일체가 되도록 재실행된다.
마찬가지로, 제2 파일서버(110)는 파일서버 리퀘스트(151)들을 수신하고 기록하는 제2 서버 리퀘스트 메모리(160)를 포함한다. 제2 파일서버(110)가 전원 중단 또는 다른 서비스 장애로부터 회복될 경우, 제2 서버 리퀘스트 메모리(160)에서의 미해결된 파일서버 리퀘스트(151)들은, 이들이 제2 파일서버(110)에 의해 유지된 파일시스템의 다음 일치된 상태와 일체가 되도록 재실행된다.
제1 파일서버(110)가 네트워크(150)로부터 파일서버 리퀘스트(151)를 수신할 때, 그 파일서버 리퀘스트(151)는 제1 서버 리퀘스트 메모리(160)에 복사된다. 상기 파일서버 리퀘스트(151) 또한 공통 접속상태의 원격 메모리 액세스를 이용하여 제2 서버 리퀘스트 메모리(160)에 복사된다. 마찬가지로, 제2 파일서버(110)가 네트워크(150)로부터 파일서버 리퀘스트(151)를 수신할 때, 그 파일서버 리퀘스트(151)는 제2 서버 리퀘스트 메모리(160)에 복사된다. 상기 파일서버 리퀘스트(151) 또한 공통 접속상태의 원격 메모리 액세스를 이용하여 제1 서버 리퀘스트 메모리(160)에 복사된다. 원격 메모리 액세스를 이용하는 것이 네트워크 프로토콜을 이용하는 것보다 상대적으로 보다 빠르고 통신 오버헤드가 적다.
어느 한 파일서버(110)에 장애가 발생할 경우, 다른 파일서버(110)는 자신의 서버 리퀘스트 메모리(160)에 저장된 파일서버 리퀘스트(151)를 이용하여 작업을 계속할 수 있다.
바람직한 실시예에서, 각각의 서버 리퀘스트 메모리(160)는 비휘발성 메모리를 포함하고, 따라서 어느 한 서버 리퀘스트 메모리(160)에 저장된 상기 파일서버 리퀘스트는 전원 장애 또는 다른 서비스 중단으로 인해 손실되지 않는다.
응답하는 파일서버(110)는 파일서버 리퀘스트(151)를 처리하고 대용량 기억장치(120) 중 하나에 저장된 파일들을 수정할 수도 있다. 응답하는 파일서버(110)의 파트너인, 응답하지 않는 파일서버(110)는, 서버 리퀘스트 메모리(160)에 저장된 파일서버 리퀘스트(151)를 유지하여, 응답하는 파일서버(110)의 기능장애가 발생할 가능성에 대비한다. 응답하는 파일서버(110)의 기능장애가 발생할 경우, 응답하지 않는 파일서버(110)는 페일오버 기술의 일부로서 파일서버 리퀘스트(151)를 처리한다.
바람직한 실시예에서, 각각의 파일서버(110)는, 다음 특허출원에 기술된 발명을 이용하여 RAID 기억장치 시스템과 같은 여분의 어레이(array)를 형성하도록, 연결된 대용량 기억장치(120)를 제어한다:
미국 출원번호 제08-471218호(출원일: 1995년 6월 5일, 발명자: 데이비드 히츠(David Hitz) 외, 발명의 명칭: "비휘발성 메모리를 이용한 Raid 서브-시스템에서 패리티를 제공하는 방법"(A Method for Providing Parity in a Raid Sub-system Using Non-Volatile Memory));
미국 출원번호 제08-454921호(출원일: 1995년 3월 31일, 발명자: 데이비드 히츠 외, 발명의 명칭: "임의 기록 파일시스템 레이아웃"(Write Anywhere File-System Layout));
미국 출원번호 제08-464591호(출원일: 1995년 5월 31일, 발명자: 데이비드 히츠 외, 발명의 명칭: "Raid 디스크 서브-시스템과 통합된 파일시스템에서 파일을 할당하는 방법"(Method for Allocating Files in a File System Integrated with a Raid Disk Sub-System)).
상기 출원 모두는 이하 본 명세서에 충분히 기술된 것으로 간주하여 참조된다. 이들은 총체적으로 "WAFL 명세서"로서 참조된다.
WAFL 명세서에 나타난 기술의 일부로서, 각각의 파일서버(110)는 파일서버 리퀘스트(151)들에 개별적으로 응답하여 그와 연결된 대용량 기억장치(120)를 제어한다. 임의의 파일서버 리퀘스트(151)의 최종 기능은 가장 최근의 서로 일치된 상태를 파일시스템(121)에 보내는 것이다. 따라서, 대용량 기억장치(120)를 포함하는 파일시스템(121)은, 어느 파일서버(110)가 상기 대용량 기억장치(120)를 제어하는지의 여부에 관계없이 내부적으로는 서로 일치된 상태를 유지한다. 내부적으로 일치된 상태의 예외적인 상황은 가장 최근의 파일서버 리퀘스트(151)의 극히 일부만을 포함하게 되며, 이는 양측의 파일서버(110)의 서버 리퀘스트 메모리(160)에 저장된다. 상기 가장 최근의 파일서버 리퀘스트(151)는 가장 최근의 일치된 상태에 대해 리퀘스트를 실행함으로써 하나의 새로운 일치된 상태로 통합된다.
임의의 파일서버 리퀘스트(151)에 있어서, 그 파일서버 리퀘스트(151)에 정상적으로 응답하는 파일서버(110)에 기능장애가 발생한 경우에, 다른 파일서버(110)는, 그 기능장애를 인식하고 그 기능장애를 일으킨 파일서버(110)에 미리 할당된 대용량 기억장치(120)를 제어하기 위해 페일오버 방법을 실행한다. 상기 페일오버된 파일서버(110)는, 내부적으로 일치된 상태에서 그들의 파일시스템(121)으로 상기 대용량 기억장치를 찾게 되지만, 일부 가장 최근의 파일서버 리퀘스트(151)는 아직 실행되지 않는다. 상기 페일오버 파일서버(110)는, 그 서버 리퀘스트 메모리(160)에서 이들 가장 최근의 파일서버 리퀘스트(151)의 복사본을 가지고 있으며, 이들 복사본에 응답하는 파일서버 리퀘스트(151)를 실행한다.
(파일서버 노드)
도2는 파일서버 시스템에 있는 파일서버의 블록도를 나타낸다.
각각의 파일서버(110)는, 적어도 하나의 프로세서(111), 하나의 프로그램 및 데이터 메모리(112), 서버 리퀘스트 메모리(160)(비휘발성 RAM 포함), 네트워크 인터페이스 요소(element)(114) 및 디스크 인터페이스 요소(115)를 포함한다. 이들 요소는, 프로세서, 메모리 및 주변장치간의 통신을 위해 버스(117) 또는 다른 알려진 시스템 아키텍처를 이용하여 서로 연결된다.
바람직한 실시예에서, 네트워크 인터페이스 요소(114)는 네트워크(150)와 함께 동작하는 알려진 네트워크 인터페이스를 포함한다. 예컨대, 네트워크 인터페이스 요소(114)는 FDDI 인터페이스 스탠더드 또는 100BaseT 인터페이스 스탠더드와 함께 동작하는 인터페이스를 포함한다.
페일오버 후, 파일서버(110)는, 그 자신 또는 (기능장애가 발생한) 상대방 파일서버(110) 중 어느 하나에 입력되는 파일서버 리퀘스트에 응답한다. 따라서, 각각의 파일서버(110)는 페일오버 시, 하나는 자신을 위하여, 다른 하나는 기능장애가 발생한 상대방 파일서버(110)를 위한 부가적인 네트워크를 갖는다. 바람직한 실시예에서, 각각의 파일서버(110)에 대한 네트워크 인터페이스 요소(114)는, 파일서버(110)에 의한 인스트럭션에 다라 두 개의 독립된 어드레스에 응답할 수 있는 네트워크 어댑터를 포함한다. 다른 실시예에서, 각각의 파일서버(110)는 두 개의 상기 네트워크 어댑터를 갖는다.
바람직한 실시예에서, 디스크 인터페이스 요소(115)는, 각각의 포트가 FC-AL 인터페이스와 같은 분리된 파일서버(110)에 연결된 두 개의 독립된 포트를 갖는, 자기, 광 또는 자기-광 디스크와 함께 동작하는 알려진 디스크 인터페이스를 포함한다. 이로써, 한 파일서버(110)의 기능장애가 다른 파일서버(110)의 로우-레벨 (low-level) 동작에 영향을 주는 것이 방지된다.
바람직한 실시예에서, 버스(117)는 적어도 하나의 메모리 버스(171) 및 중이층 버스(mezzanine bus)(130)를 포함한다. 메모리 버스(171)는 프로세서(111)와 프로그램 및 데이터 메모리(112)를 연결한다. 중이층 버스(130)는 네트워크 인터페이스 요소(114)와 디스크 인터페이스 요소(115)를 연결한다. 메모리 버스(171)는 I/O 콘트롤러(173) 또는 다른 알려진 버스 어댑터 기술을 이용하여 중이층 버스(130)에 연결된다.
바람직한 실시예에서, 대용량 기억장치(120)에 있는 각각의 디스크는, 그 디스크가 제1 파일서버(110) 또는 제2 파일서버(110) 중 어느 것에 의해 프라이머리 콘트롤에 접속되는지에 따라, 제1 파일서버(110) 또는 제2 파일서버(110)에 정적으로 할당된다.
각각의 디스크는 2개의 콘트롤 포트(A,B)를 갖는다. 포트(A)에 접속된 파일서버(110)는 그 디스크의 프라이머리 콘트롤을 갖는 반면, 다른 파일서버(110)는 기능장애가 발생할 때에만 그 디스크의 콘트롤을 갖는다.
(동작 처리 흐름)
도3은 파일서버 시스템 동작의 프로세스 흐름도이다.
방법(300)은 파일서버(100)의 구성요소에 의해 실행되며, 이에 기술된 바와 같이 일련의 플로우 포인트 및 프로세스 스텝을 포함한다.
플로우 포인트(310)에서, 네트워크(150)와 연결된 장치는 파일시스템 리퀘스트(151)를 생성한다.
스텝(311)에서, 장치는 파일시스템 리퀘스트(151)를 네트워크(150)로 송출한다.
스텝(312)에서, 네트워크(150)는 파일시스템 리퀘스트(151)를 파일서버(110)로 송출한다.
스텝(313)에서, 파일서버 시스템(100)에 있는 제1 파일서버(110)는 파일서버 리퀘스트(151)를 수신한다. 제1 파일서버(110)는 파일서버 리퀘스트(151)를 제1 서버 리퀘스트 메모리(160)에 복사하고, 또한, 공통 접속을 이용하여 파일서버 리퀘스트(151)를 제2 서버 리퀘스트 메모리(160)에 복사한다. 제2 서버 리퀘스트 메모리(160)에서 복사 작업의 표적은 본 목적을 위해 남겨진 영역이다. 복사 작업은 제2 파일서버(110)에 의한 추가 프로세스를 요구하지 않으며, 제2 파일서버(110)는 통상 파일서버 리퀘스트(151)에 응답하거나 처리하지 않는다.
스텝(314)에서, 제1 파일서버(110)는 파일서버 리퀘스트(151)에 응답한다.
플로우 포인트(320)에서, 파일서버 리퀘스트는 성공적으로 처리되었다.
본 발명의 제2 특징에 있어서, 제1 파일서버(110)는 하나 또는 그 이상의 대용량 기억장치(120)의 미러링(mirroring)을 제공한다.
본 발명의 제1 특징과 같이, 각각의 입력 파일서버 리퀘스트는 제1 파일서버(110) 및 제2 파일서버(110)에 복사된다. 제1 파일서버(110)는 파일서버 리퀘스트를 실행하여 그 제어 하에 있는 하나 또는 그 이상의 프라이머리 대용량 기억장치(120)를 수정한다. 제1 파일서버(110)는 또한 파일서버 리퀘스트를 실행하여, 그 제어 하에 있지만 프라이머리 대용량 기억장치(120)와는 멀리 떨어져 있는 미러(mirror) 대용량 기억장치 세트를 수정한다. 따라서, 미러 대용량 기억장치(120)는 프라이머리 대용량 기억장치(120)의 실질적인 복사본이 된다.
대용량 기억장치(120)의 미러 세트는, 대용량 기억장치(120)의 프라이머리 세트의 기능장애가 있는 경우와 같은, 대용량 기억장치(120)의 전체 프라이머리 세트가 복구되어야 하는 경우에도 자원을 제공하다.
플로우 포인트(330)에서, 파일서버 시스템(100)에 있는 제1 파일서버(110)의 기능장애가 발생한다.
스텝(331)에서, 파일서버 시스템(100)에 있는 제2 파일서버(110)는 제1 파일서버(110)의 기능장애를 인식한다.
바람직한 실시예에서, 제2 파일서버(110)는 다음과 같은 스텝(331)을 실행한다:
각각의 파일서버(110)는, 파일서버(110)에 대한 상태정보를 기록하기 위해 2개의 디스크를 가진 대용량 기억장치(120)를 유지한다(따라서, 2개의 파일서버(110)를 위해 총 4개의 디스크가 있다). 하나는 프라이머리 기억장치로 사용되고 하나는 백업(backup) 기억장치로 사용될 수 있도록 상기 2개의 디스크("메일박스 디스크"라 함)가 있다. 2개의 메일박스 디스크 중 하나가 기능장애를 일으키면, 그 메일박스 디스크를 사용하는 파일서버(110)는 다른 디스크를 그 2개의 메일박스 디스크 중 하나로 지정한다.
각각의 파일서버(110)는 각각의 메일박스 디스크에 적어도 하나의 섹터를 유지하고, 그 위에 상기 파일서버(110)는 상태정보를 주기적으로 기록한다. 각각의 파일서버(110)는 또한 원격 메모리 액세스를 이용한 상호접속을 이용하여 다른 파일서버(110)에 상태정보를 보낸다. 각각의 파일서버(110)에 의해 메일박스 디스크에 기록된 상태정보는 각각의 업데이트에 의해 수정된다.
각각의 파일서버(110)는 다른 파일서버(110)를 위한 적어도 하나의 메일박스 디스크로부터 상태정보를 주기적으로 읽는다. 각각의 파일서버(110)는 또한 원격 메모리 액세스를 이용한 상호접속을 이용하여 다른 파일서버(110)의 상태정보를 수신한다.
각각의 파일서버(110)는, 다른 파일서버(110)를 위한 메일박스 디스크의 상태정보에 관한 업데이트가 없음을 인식함으로써 다른 파일서버(110)가 기능장애 상태에 있는지를 확인한다.
바람직한 실시예에서, 제2 파일서버(110)는 제1 파일서버의 기능장애가 하드웨어 에러인지 아니면 소프트웨어 에러인지를 결정하고, 제1 파일서버(110)의 하드웨어적인 기능장애만을 인식한다. 다른 실시예에서, 제2 파일서버(110)는 제1 파일서버의 소프트웨어적인 기능장애도 또한 인식한다.
스텝(332)에서, 제2 파일서버(110)는 제1 파일서버(110)에 미리 할당된 모든 대용량 기억장치(120)를 제어한다. WAFL 명세서에 나타난 기술의 특성으로 인해, 상기 대용량 기억장치(120)를 통해서 정의되는 파일시스템(121)은 내부적으로 일치된 상태에 있다. 표기가 완료된 상기 모든 파일서버 리퀘스트(151)의 처리는 계속 진행되어, 그 결과는 대용량 기억장치(120)의 기억장치 블록으로 통합된다.
정상적인 동작에서, 파일서버(110)의 어느 것도 상기 대용량 기억장치(120)를 제한하지 않는다. 스텝(332)에서(페일오버 시에만), 제2 파일서버(110)는 제1 파일서버(110)에 의해 미리 제어된 대용량 기억장치(120)를 제어하고, 제1 파일서버(110)가 복구될 때까지 상기 대용량 기억장치(120)의 제어를 유지한다.
제1 파일서버가 복구되면, 복구 메시지를 제2 파일서버(110)로 보낸다. 바람직한 실시예에서, 제2 파일서버(110)는 오퍼레이터 명령어에 의해 대용량 기억장치(120)의 제어를 해제한다. 그러나, 다른 실시예에서, 제2 파일서버(110)는 제1 파일서버(110)로부터 복구 메시지를 인식하고, 이에 응답하여 대용량 기억장치(120)의 제어를 해제한다.
스텝(333)에서, 제2 파일서버(110)는 제1 파일서버(110)에 의해 복사된 서버 리퀘스트 메모리(160) 영역에 있는 모든 파일서버 리퀘스트(151)를 인식한다. 그 결과가 이미 기억장치(120)의 기억장치 블록에 통합된 상기 파일서버 리퀘스트(151)는 버려진다.
스텝(334)에서, 제2 파일서버(110)가 각각의 파일서버 리퀘스트(151)의 복사본에 접근할 때, 제2 파일서버(110)는 파일서버 리퀘스트(151)를 정상적으로 처리한다.
플로우 포인트(340)에서, 제1 파일서버(110)로부터 제2 파일서버(110)로의 페일오버는 성공적으로 처리되었다.
(다른 실시예들)
바람직한 실시예가 본 명세서에 개시되었지만, 본 발명의 개념, 범위 및 정신 내에서 많은 변경이 가능하고, 이들 변경은 본 출원을 숙독한 당업자에게는 자명하다.
본 발명은 컴퓨터 기억장치 시스템에 관한 것이며, 특히 기억장치의 기능장애 발생시 이에 효과적으로 대응할 수 있는 매우 유용한 파일서버를 제공한다.
Claims (75)
- 파일서버 전환 메모리를 포함하는 제1 파일서버;파일서버 전환 메모리를 포함하는 제2 파일서버;대용량 기억장치 요소;상기 대용량 기억장치 요소와 결합되는 상기 제1 파일서버 및 상기 제2 파일서버;상기 제2 파일서버가 파일서버 전환 메모리에서 상기 디스크립터의 복사본을 유지하는 동안 상기 제1 파일서버가 상기 파일시스템 전환을 실행하도록, 파일시스템 전환 디스크립터(descriptor)를 상기 제1 및 제2 파일서버에 복사하는 수단; 및상기 제2 파일서버가 상기 제1 파일서버에 의한 서비스 중단에 응답하여 파일서버 전환 메모리에서 파일시스템 전환을 실행하는 수단을 포함하는, 파일서버 시스템.
- 제1항에 있어서,각각의 파일서버에 대해 적어도 하나의 상기 대용량 기억장치 요소를 포함하는 파일서버 시스템.
- 제1항에 있어서,제1 파일서버는 상기 파일시스템 전환을 개별적으로 처리하도록 구성되고, 이에 의해, 페일오버 시, 상기 제2 파일서버가 상기 제1 파일서버에 의해 아직 처리되지 않은 파일시스템 전환을 정확히 처리할 수 있는 파일서버 시스템.
- 제1항에 있어서,상기 제1 파일서버는 그 자신 및 상기 제2 파일서버의 서비스 중단에 동등하게 응답하도록 구성된 파일서버 시스템.
- 제1항에 있어서,상기 적어도 하나의 파일서버는, 파일시스템 전환에 대한 응답을 지연시키지 않고 상기 대용량 기억장치 요소에 대한 출력을 지연시키도록 구성된 파일서버 시스템.
- 제1항에 있어서,상기 파일시스템 전환 결과를 대용량 기억장치에 기록하기 전에 상기 적어도 하나의 파일서버가 파일시스템 전환에 응답하는 파일서버 시스템.
- 제1항에 있어서,상기 각각의 파일서버 중 하나는 로컬 메모리 액세스를 이용하여 상기 파일서버 전환 메모리의 적어도 일부에 결합되고,상기 각각의 파일서버 중 하나는 원격 메모리 액세스를 이용하여 상기 파일서버 전환 메모리의 적어도 일부에 결합되는, 파일서버 시스템.
- 제1항에 있어서,상기 디스크립터는 파일서버 리퀘스트를 포함하는 파일서버 시스템.
- 제1항에 있어서,상기 파일서버 전환 메모리는 디스크 블록을 포함하는 파일서버 시스템.
- 제1항에 있어서,상기 파일서버 전환 메모리는 파일서버 리퀘스트를 포함하는 파일서버 시스템.
- 제1항에 있어서,상기 파일서버 전환 메모리는, 파일서버 리퀘스트의 응답을 지연시키지 않고 상기 대용량 기억장치 요소에 대한 출력을 지연시키도록 구성된 파일서버 시스템.
- 제1항에 있어서,상기 대용량 기억장치 요소는, 파일 기억장치 시스템을 포함하고;상기 각각의 파일서버는, 파일시스템 전환 처리 후 상기 파일 기억장치 시스템이 내부적으로 일치된 상태를 유지하도록 구성되고;상기 내부적으로 일치된 상태는, 일련의 완료된 파일시스템 전환과 연결되고;상기 일련의 완료된 파일시스템 전환은, 상기 각각의 파일서버에 의해 확인 가능한, 파일서버 시스템.
- 제1항에 있어서,상기 대용량 기억장치 요소는 파일기억 시스템을 포함하고;상기 각각의 파일서버는, 상기 각각의 파일시스템 전환을 처리한 후 상기 파일기억 시스템이 내부적으로 일치된 상태를 유지하도록 구성된, 파일서버 시스템.
- 제1항에 있어서,상기 대용량 기억장치 요소는, 프라이머리 대용량 기억장치 요소 및 미러 대용량 요소를 포함하고;상기 제1 파일서버는 상기 프라이머리 대용량 기억장치 요소 및 상기 미러 대용량 기억장치 요소를 위한 상기 파일시스템 전환을 처리하는, 파일서버 시스템.
- 제1항에 있어서,상기 복사 수단은 NUMA 네트워크를 이용한 상기 제1 및 제2 파일서버 전환 메모리 중 적어도 하나에 대한 액세스를 포함하는 파일서버 시스템.
- 제1항에 있어서,상기 복사 수단은 상기 제1 및 제2 파일서버 전환 메모리 중 적어도 하나에 대한 원격 메모리 액세스를 포함하는 파일서버 시스템.
- 제1항에 있어서,파일서버 전환 메모리에서 파일서버 리퀘스트를 실행하는 상기 제2 파일서버를 위한 수단은 또한, 상기 제2 파일서버에 의한 서비스 인터럽트에 응답하여 동작하는, 파일서버 시스템.
- 제1 세트의 대용량 기억장치에 결합된 제1 파일서버;제2 세트의 대용량 기억장치에 결합된 제2 파일서버;서버 전환 메모리;파일서버 리퀘스트를 수신하고 이에 응답하여 파일시스템 전환 디스크립터를 상기 서버 전환 메모리에 복사하기 위해 구성된 상기 제1 파일서버; 및상기 제1 세트의 대용량 기억장치 및 상기 제2 세트에 있는 적어도 하나의 상기 대용량 기억장치에 대해 상기 파일시스템 전환을 처리하도록 구성된 상기 제1 파일서버를 포함하는, 파일서버 시스템.
- 제18항에 있어서,상기 제2 파일서버는 파일서버 리퀘스트를 수신하고 이에 응답하여 파일시스템 전환 디스크립터를 상기 서버 전환 메모리에 복사하도록 구성되고;상기 제2 파일서버는 상기 제2 세트의 대용량 기억장치 및 상기 제1 세트에 있는 적어도 하나의 상기 대용량 기억장치에 대해 상기 파일시스템 전환을 처리하도록 구성된, 파일서버 시스템.
- 제18항에 있어서,상기 서버 전환 메모리는 디스크 블록을 포함하는 파일서버 시스템.
- 제18항에 있어서,상기 서버 전환 메모리는 파일서버 리퀘스트를 포함하는 파일서버 시스템.
- 제18항에 있어서,상기 서버 전환 메모리는, 상기 제1 파일서버에 구성된 하나의 제1 부분(portion) 및 상기 제2 파일서버에 구성된 하나의 제2 부분을 포함하는 파일서버 시스템.
- 제18항에 있어서,상기 서버 전환 메모리는, 상기 제1 파일서버에 구성된 하나의 제1 부분 및 상기 제2 파일서버에 구성된 하나의 제2 부분을 포함하고,상기 제1 파일서버는, 상기 디스크립터를 상기 제1 부분 및 제2 부분으로 복사하도록 구성된, 파일서버 시스템.
- 제18항에 있어서,상기 서버 전환 메모리는, 상기 제1 파일서버에 구성된 하나의 제1 부분 및 상기 제2 파일서버에 구성된 하나의 제2 부분을 포함하고,상기 제1 파일서버 및 제2 파일서버는, 상기 디스크립터를 상기 제1 부분 및 제2 부분으로 각각 복사하도록 구성된, 파일서버 시스템.
- 제18항에 있어서,상기 서버 전환 메모리는, 파일서버 리퀘스트에 대한 응답을 지연시키지 않고, 상기 대용량 기억장치 요소에 대한 출력을 지연시키도록 구성된 파일서버 시스템.
- 복수의 파일서버로서, 대용량 기억장치 요소 및 적어도 하나의 파일서버 전환 메모리에 연결된 상기 복수의 파일서버;파일서버 리퀘스트를 수신하고, 이에 응답하여 파일시스템 전환 디스크립터를 상기 파일서버 전환 메모리에 복사하는 상기 각각의 파일서버; 및상기 파일서버 전환 메모리에서 파일시스템 전환을 실행함으로써 서비스 인터럽트에 응답하도록 구성된 상기 각각의 파일서버를 포함하는, 파일서버 시스템.
- 제26항에 있어서,상기 각각의 파일서버에 대해 적어도 하나의 상기 대용량 기억장치 요소를 포함하는 파일서버 시스템.
- 제26항에 있어서,상기 각각의 파일서버에 대해 적어도 하나의 상기 서버 전환 메모리를 포함하는 파일서버 시스템.
- 제26항에 있어서,상기 제1 파일서버는 상기 파일시스템 전환을 자동으로 실행하도록 구성되고, 이에 의해 상기 제2 파일서버는, 페일오버(failover)시, 상기 제1 파일서버에 의해 아직 실행되지 않은 파일시스템 전환을 정확히 실행할 수 있는, 파일서버 시스템.
- 제26항에 있어서,상기 제1 파일서버는, 그 자신 및 상기 제2 파일서버에 대한 서비스 인터럽트에 동등하게 응답하도록 구성된 파일서버 시스템.
- 제26항에 있어서,상기 적어도 하나의 파일서버는 파일서버 리퀘스트에 대한 응답을 지연시키지 않고 상기 대용량 기억장치 요소에 대한 출력을 지연시키는 파일서버 시스템.
- 제26항에 있어서,상기 적어도 하나의 파일서버는 상기 파일시스템 전환을 대용량 기억장치에 기입(commit)하기 전에 파일시스템 전환에 응답하는 파일서버 시스템.
- 제26항에 있어서,상기 각각의 파일서버는, 로컬 메모리 액세스를 이용하여 상기 파일서버 전환 메모리의 적어도 일부에 결합되고;상기 각각의 파일서버는, 원격 메모리 액세스를 이용하여 상기 파일서버 전환 메모리의 적어도 일부에 결합되는, 파일서버 시스템.
- 제26항에 있어서,상기 각각의 파일서버는 NUMA 네트워크를 이용하여 상기 디스크립터를 복사하도록 구성된 파일서버 시스템.
- 제26항에 있어서,상기 각각의 파일서버는 원격 메모리 액세스를 이용하여 상기 디스크립터를 복사하도록 구성된 파일서버 시스템.
- 제26항에 있어서,상기 파일서버 전환 메모리는 디스크 블록을 포함하는 파일서버 시스템.
- 제26항에 있어서,상기 파일서버 전환 메모리는 파일서버 리퀘스트를 포함하는 파일서버 시스템.
- 제26항에 있어서,상기 파일서버 전환 메모리는 파일서버 리퀘스트에 대한 응답을 지연시키지 않고 상기 대용량 기억장치 요소에 대한 출력을 지연시키도록 구성된 파일서버 시스템.
- 제26항에 있어서,상기 대용량 기억장치 요소는 파일 기억장치 시스템을 포함하고, 상기 각각의 파일서버는, 상기 각각의 파일시스템 전환 처리 후, 상기 파일 기억장치 시스템이 내부적으로 일치된 상태를 유지하도록 구성된 파일서버 시스템.
- 제26항에 있어서,상기 대용량 기억장치 요소는 파일 기억장치 시스템을 포함하고;상기 각각의 파일서버는, 파일시스템 전환 처리 후, 상기 파일 기억장치 시스템이 내부적으로 일치된 상태를 유지하도록 구성되고;상기 내부적으로 일치된 상태는 일련의 완료된 파일시스템 전환과 연결되고;상기 일련의 완료된 파일시스템 전환은 상기 각각의 파일서버에 의해 확인 가능한, 파일서버 시스템.
- 제26항에 있어서,상기 대용량 기억장치 요소는 프라이머리 대용량 기억장치 요소 및 미러 대용량 기억장치 요소를 포함하고;상기 제1 파일서버는, 상기 프라이머리 대용량 기억장치 요소 및 상기 미러 대용량 기억장치 요소에 대해 상기 파일시스템 전환을 처리하는, 파일서버 시스템.
- 파일시스템 전환 디스크립터를 제1 파일서버 및 제2 파일서버에 복사하여 입력되는 파일서버 리퀘스트에 응답하는 단계;상기 제2 파일서버에서 상기 디스크립터 사본을 유지하는 동안, 상기 제1 파일서버에서 상기 파일시스템 전환을 처리하는 단계; 및상기 제2 파일서버에서, 상기 제1 파일서버에 의한 서비스 인터럽트 및 복사된 디스크립터에 응답하여 파일시스템 전환을 처리하는 단계를 포함하는, 파일서버 시스템 작동방법.
- 제42항에 있어서,제1 파일서버 및 제2 파일서버를 대용량 기억장치 요소에 연결시키는 단계를 포함하는 파일서버 시스템 작동방법.
- 제42항에 있어서,파일시스템 전환에 대한 응답을 지연시키지 않고 상기 적어도 하나의 파일서버에 의한 상기 대용량 기억장치 시스템으로의 출력을 지연시키는 단계를 포함하는 파일서버 시스템 작동방법.
- 제42항에 있어서,상기 제1 파일서버는 상기 파일시스템 전환을 자동으로 처리하도록 구성되고, 이에 의해 상기 제2 파일서버가, 페일오버시, 상기 제1 파일서버에 의해 아직 처리되지 않은 파일시스템 전환을 정확히 처리할 수 있는 파일서버 시스템 작동방법.
- 제42항에 있어서,상기 제1 파일서버는, 그 자신 및 상기 제2 파일서버에 대한 서비스 인터럽트에 동등하게 응답하도록 구성된 파일서버 시스템 작동방법.
- 제42항에 있어서,상기 적어도 하나의 파일서버는, 상기 파일시스템 전환의 결과를 대용량 기억장치에 기입하기 전에 파일시스템 전환에 응답하는 파일서버 시스템 작동방법.
- 제42항에 있어서,상기 각각의 파일서버는 파일서버 전환 메모리를 포함하고,상기 각각의 파일서버 중 하나는 로컬 메모리 액세스를 이용하여 상기 파일서버 전환 메모리의 적어도 한 부분에 결합되고,상기 각각의 파일서버 중 하나는 원격 메모리 액세스를 이용하여 상기 파일서버 리퀘스트 메모리의 적어도 한 부분에 결합되는, 파일서버 시스템 작동방법.
- 제42항에 있어서,상기 파일서버 전환 메모리는 디스크 블록을 포함하는 파일서버 시스템 작동방법.
- 제42항에 있어서,상기 파일서버 전환 메모리는 파일서버 리퀘스트를 포함하는 파일서버 시스템 작동방법.
- 제42항에 있어서,상기 파일서버 전환 메모리는 파일서버 리퀘스트에 대한 응답을 지연시키지 않고 상기 대용량 기억장치 요소에 대한 출력을 지연시키도록 구성된 파일서버 시스템 작동방법.
- 제42항에 있어서,상기 대용량 기억장치 요소는 파일 기억장치 시스템을 포함하고, 상기 각각의 파일서버는 상기 각각의 파일시스템 전환 처리 후 상기 파일 기억장치 시스템이 내부적으로 일치된 상태를 유지하도록 구성된 파일서버 시스템 작동방법.
- 제42항에 있어서,복사된 디스크립터에 응답하여 파일시스템 전환을 실행하는 상기 단계들은 또한, 상기 제2 파일서버에 의한 서비스 인터럽트에 응답하여 동작하는, 파일서버 시스템 작동방법.
- 제42항에 있어서,상기 처리 단계들은, 프라이머리 대용량 기억장치 요소 및 미러 대용량 기억장치 요소에서, 상기 파일시스템 전환을 처리하는 단계를 포함하는, 파일서버 시스템 작동방법.
- 복수의 파일서버 중 하나에서 파일서버 리퀘스트를 수신하고 이에 응답하여 파일시스템 전환 디스크립터를 서버 전환 메모리에 복사하는 단계; 및상기 하나의 제1 파일서버에 결합된 제1 세트의 대용량 기억장치와, 상기 하나의 제2 파일서버에 결합된 제2 세트의 대용량 기억장치에 있는 상기 적어도 하나의 대용량 기억장치 모두에 대해 상기 파일시스템 전환을 처리하는 단계를 포함하는, 파일서버 시스템 작동방법.
- 제56항에 있어서,상기 디스크립터는 파일서버 리퀘스트를 포함하는 파일서버 시스템 작동방법.
- 제56항에 있어서,상기 서버 전환 메모리는 디스크 블록을 포함하는 파일서버 시스템 작동방법.
- 제56항에 있어서,상기 서버 전환 메모리는 파일서버 리퀘스트를 포함하는 파일서버 시스템 작동방법.
- 제56항에 있어서,상기 서버 전환 메모리는 상기 제1 파일서버에 구성된 제1 부분 및 상기 제2 파일서버에 구성된 제2 부분을 포함하는 파일서버 시스템 작동방법.
- 제56항에 있어서,상기 서버 전환 메모리는 상기 제1 파일서버에 구성된 제1 부분 및 상기 제2 파일서버에 구성된 제2 부분을 포함하고;상기 복사 단계는 상기 디스크립터를 상기 제1 부분과 상기 제2 부분으로 복사하는 단계를 포함하는, 파일서버 시스템 작동방법.
- 제56항에 있어서,상기 서버 전환 메모리는 상기 제1 파일서버에 구성된 제1 부분 및 상기 제2 파일서버에 구성된 제2 부분을 포함하고;상기 복사 단계는 상기 제1 파일서버 또는 상기 제2 파일서버 중 어느 하나에 의해 상기 디스크립터를 상기 제1 부분과 상기 제2 부분으로 복사하는 단계를 포함하는, 파일서버 시스템 작동방법.
- 제56항에 있어서,상기 서버 전환 메모리는, 파일서버 리퀘스트에 대한 응답을 지연시키지 않고 상기 대용량 기억장치 요소에 대한 출력을 지연시키도록 구성된 파일서버 시스템 작동방법.
- 제56항에 있어서,상기 수신 단계는 상기 제1 파일서버 또는 상기 제2 파일서버 중 어느 하나에서 파일서버 리퀘스트를 수신하고, 상기 디스크립터를 복사하는 단계는 상기 제1 파일서버 또는 상기 제2 파일서버 중 어느 하나에 의한 복사를 포함하고;상기 제2 세트의 대용량 기억장치와 상기 제1 세트에 있는 적어도 하나의 대용량 기억장치 모두에 대해 상기 파일시스템 전환을 처리하는 단계를 포함하는, 파일서버 시스템 작동방법.
- 복수의 파일서버 중 하나에서 파일서버 리퀘스트를 수신하고 이에 응답하여 파일시스템 전환의 디스크립터를 파일서버 전환 메모리에 복사하는 단계; 및상기 파일서버 전환 메모리에 있는 디스크립터에 응답하여 파일시스템 전환을 실행함으로써 서비스 인터럽트에 응답하는 단계를 포함하는, 파일서버 시스템 작동방법.
- 제65항에 있어서,복수의 파일서버를 적어도 하나의 대용량 기억장치 요소와 적어도 하나의 파일서버 전환 메모리에 연결하는 단계를 포함하는 파일서버 시스템 작동방법.
- 제65항에 있어서,파일서버 리퀘스트에 대한 응답을 지연시키지 않고 대용량 기억장치 요소에 대한 출력을 지연시키는 단계를 포함하는 파일서버 시스템 작동방법.
- 제65항에 있어서,상기 각각의 파일시스템 전환을 처리한 후 상기 대용량 기억장치 요소에 있는 파일 기억장치 시스템을 내부적으로 일치된 상태로 유지시키는 단계를 포함하는 파일서버 시스템 작동방법.
- 제65항에 있어서,파일시스템 전환 처리 후 상기 대용량 기억장치 요소에 있는 파일 기억장치 시스템을 내부적으로 일치된 상태로 유지시키는 단계;상기 내부적으로 일치된 상태를 일련의 완료된 파일시스템 전환에 연결시키는 단계; 및상기 적어도 하나의 파일서버로 상기 일련의 완료된 파일시스템 전환을 확인하는 단계를 포함하는, 파일서버 시스템 작동방법.
- 제65항에 있어서,프라이머리 대용량 기억장치 요소 및 미러 대용량 기억장치 요소 모두에서 상기 수신된 파일서버 리퀘스트를 실행하는 단계를 포함하는 파일서버 시스템 작동방법.
- 제65항에 있어서,상기 제1 파일서버에서 상기 파일시스템 전환을 자동으로 처리하는 단계; 및페일오버시 상기 제1 파일서버에 의해 아직 처리되지 않은 파일시스템 전환을 정확히 실행하는 단계를 포함하는, 파일서버 시스템 작동방법.
- 제65항에 있어서,상기 제1 파일서버에서, 그 자신 및 상기 제2 파일서버에 대한 서비스 인터럽트에 동등하게 응답하는 단계를 포함하는 파일서버 시스템 작동방법.
- 제65항에 있어서,상기 파일서버 전환 메모리는 디스크 블록을 포함하는 파일서버 시스템 작동방법.
- 제65항에 있어서,상기 파일서버 전환 메모리는 파일서버 리퀘스트를 포함하는 파일서버 시스템 작동방법.
- 제65항에 있어서,상기 파일서버 전환 메모리는, 파일서버 리퀘스트에 대한 응답을 지연시키지 않고 상기 대용량 기억장치 요소에 대한 출력을 지연시키도록 구성된 파일서버 시스템 작동방법.
- 제65항에 있어서,상기 하나의 파일서버에서 상기 파일시스템 전환 결과를 대용량 기억장치에 기입하기 전에 파일시스템 전환에 응답하는 단계를 포함하는 파일서버 시스템 작동방법.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/037,652 US6317844B1 (en) | 1998-03-10 | 1998-03-10 | File server storage arrangement |
US09/037,652 | 1998-03-10 | ||
US9/037,652 | 1998-03-10 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20010041762A true KR20010041762A (ko) | 2001-05-25 |
KR100604242B1 KR100604242B1 (ko) | 2006-07-24 |
Family
ID=21895532
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020007010007A KR100604242B1 (ko) | 1998-03-10 | 1999-03-08 | 파일서버 기억장치 |
Country Status (10)
Country | Link |
---|---|
US (2) | US6317844B1 (ko) |
EP (1) | EP1062581B1 (ko) |
JP (1) | JP2003517651A (ko) |
KR (1) | KR100604242B1 (ko) |
CN (1) | CN1149480C (ko) |
AT (1) | ATE251778T1 (ko) |
CA (1) | CA2323106C (ko) |
DE (1) | DE69911930T2 (ko) |
TW (1) | TW452686B (ko) |
WO (1) | WO1999046680A1 (ko) |
Families Citing this family (92)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6138126A (en) | 1995-05-31 | 2000-10-24 | Network Appliance, Inc. | Method for allocating files in a file system integrated with a raid disk sub-system |
US7389312B2 (en) | 1997-04-28 | 2008-06-17 | Emc Corporation | Mirroring network data to establish virtual storage area network |
US6477663B1 (en) * | 1998-04-09 | 2002-11-05 | Compaq Computer Corporation | Method and apparatus for providing process pair protection for complex applications |
US6119244A (en) | 1998-08-25 | 2000-09-12 | Network Appliance, Inc. | Coordinating persistent status information with multiple file servers |
US6308284B1 (en) * | 1998-08-28 | 2001-10-23 | Emc Corporation | Method and apparatus for maintaining data coherency |
US6961749B1 (en) | 1999-08-25 | 2005-11-01 | Network Appliance, Inc. | Scalable file server with highly available pairs |
ATE390788T1 (de) | 1999-10-14 | 2008-04-15 | Bluearc Uk Ltd | Vorrichtung und verfahren zur hardware-ausführung oder hardware-beschleunigung von betriebssystemfunktionen |
US6546504B1 (en) * | 2000-01-19 | 2003-04-08 | Microsoft Corporation | System and method for providing streaming recording and playback of audio-video data |
US6874027B1 (en) * | 2000-04-07 | 2005-03-29 | Network Appliance, Inc. | Low-overhead threads in a high-concurrency system |
US6728897B1 (en) | 2000-07-25 | 2004-04-27 | Network Appliance, Inc. | Negotiating takeover in high availability cluster |
JP3992427B2 (ja) * | 2000-08-01 | 2007-10-17 | 株式会社日立製作所 | ファイルシステム |
US6751635B1 (en) * | 2000-08-18 | 2004-06-15 | Network Appliance, Inc. | File deletion and truncation using a zombie file space |
US7072916B1 (en) * | 2000-08-18 | 2006-07-04 | Network Appliance, Inc. | Instant snapshot |
US7296073B1 (en) | 2000-09-13 | 2007-11-13 | Network Appliance, Inc. | Mechanism to survive server failures when using the CIFS protocol |
US6952797B1 (en) | 2000-10-25 | 2005-10-04 | Andy Kahn | Block-appended checksums |
US6889228B1 (en) * | 2001-03-29 | 2005-05-03 | Network Appliance, Inc. | Cascading support for mirrored volumes |
US7219122B1 (en) * | 2001-04-23 | 2007-05-15 | Massachusetts Institute Of Technology | Software service handoff mechanism with a performance reliability improvement mechanism (PRIM) for a collaborative client-server system |
TWI220821B (en) * | 2001-04-26 | 2004-09-01 | Accton Technology Corp | Zero-loss web service system and method |
US6920579B1 (en) | 2001-08-20 | 2005-07-19 | Network Appliance, Inc. | Operator initiated graceful takeover in a node cluster |
US6910098B2 (en) * | 2001-10-16 | 2005-06-21 | Emc Corporation | Method and apparatus for maintaining data coherency |
JP2003162439A (ja) * | 2001-11-22 | 2003-06-06 | Hitachi Ltd | ストレージシステム及びその制御方法 |
US7730153B1 (en) | 2001-12-04 | 2010-06-01 | Netapp, Inc. | Efficient use of NVRAM during takeover in a node cluster |
US7159080B1 (en) * | 2001-12-20 | 2007-01-02 | Network Appliance, Inc. | System and method for storing storage operating system data in switch ports |
US7146522B1 (en) * | 2001-12-21 | 2006-12-05 | Network Appliance, Inc. | System and method for allocating spare disks in networked storage |
US7650412B2 (en) * | 2001-12-21 | 2010-01-19 | Netapp, Inc. | Systems and method of implementing disk ownership in networked storage |
US7296068B1 (en) | 2001-12-21 | 2007-11-13 | Network Appliance, Inc. | System and method for transfering volume ownership in net-worked storage |
JP2003248605A (ja) * | 2002-02-26 | 2003-09-05 | Hitachi Ltd | ストレージシステム、主記憶システム、副記憶システム、及びそのデータ複写方法 |
US6934878B2 (en) * | 2002-03-22 | 2005-08-23 | Intel Corporation | Failure detection and failure handling in cluster controller networks |
US6976146B1 (en) | 2002-05-21 | 2005-12-13 | Network Appliance, Inc. | System and method for emulating block appended checksums on storage devices by sector stealing |
US7448077B2 (en) | 2002-05-23 | 2008-11-04 | International Business Machines Corporation | File level security for a metadata controller in a storage area network |
US6857001B2 (en) * | 2002-06-07 | 2005-02-15 | Network Appliance, Inc. | Multiple concurrent active file systems |
US7024586B2 (en) * | 2002-06-24 | 2006-04-04 | Network Appliance, Inc. | Using file system information in raid data reconstruction and migration |
US8612404B2 (en) * | 2002-07-30 | 2013-12-17 | Stored Iq, Inc. | Harvesting file system metsdata |
WO2004012379A2 (en) * | 2002-07-30 | 2004-02-05 | Deepfile Corporation | Method and apparatus for managing file systems and file-based data storage |
US8417678B2 (en) | 2002-07-30 | 2013-04-09 | Storediq, Inc. | System, method and apparatus for enterprise policy management |
US7805449B1 (en) | 2004-10-28 | 2010-09-28 | Stored IQ | System, method and apparatus for enterprise policy management |
US7457822B1 (en) | 2002-11-01 | 2008-11-25 | Bluearc Uk Limited | Apparatus and method for hardware-based file system |
US8041735B1 (en) | 2002-11-01 | 2011-10-18 | Bluearc Uk Limited | Distributed file system and method |
JP2004213435A (ja) * | 2003-01-07 | 2004-07-29 | Hitachi Ltd | 記憶装置システム |
JP2004302512A (ja) * | 2003-03-28 | 2004-10-28 | Hitachi Ltd | クラスタコンピューティングシステム、および、そのフェールオーバー方法 |
US8069255B2 (en) | 2003-06-18 | 2011-11-29 | AT&T Intellectual Property I, .L.P. | Apparatus and method for aggregating disparate storage on consumer electronics devices |
US7373640B1 (en) | 2003-07-31 | 2008-05-13 | Network Appliance, Inc. | Technique for dynamically restricting thread concurrency without rewriting thread code |
FI20031628A0 (fi) * | 2003-11-10 | 2003-11-10 | Nokia Corp | Tietokoneryväs, tietokoneyksikkö ja menetelmä muistisaannin ohjaukseen tietokoneyksiköiden välillä |
US7428691B2 (en) * | 2003-11-12 | 2008-09-23 | Norman Ken Ouchi | Data recovery from multiple failed data blocks and storage units |
US20070297349A1 (en) * | 2003-11-28 | 2007-12-27 | Ofir Arkin | Method and System for Collecting Information Relating to a Communication Network |
JP2007528525A (ja) * | 2004-01-08 | 2007-10-11 | 松下電器産業株式会社 | コンテンツ管理装置 |
JP4448719B2 (ja) | 2004-03-19 | 2010-04-14 | 株式会社日立製作所 | ストレージシステム |
US7594075B2 (en) * | 2004-10-20 | 2009-09-22 | Seagate Technology Llc | Metadata for a grid based data storage system |
US8510331B1 (en) | 2004-10-28 | 2013-08-13 | Storediq, Inc. | System and method for a desktop agent for use in managing file systems |
US7844582B1 (en) | 2004-10-28 | 2010-11-30 | Stored IQ | System and method for involving users in object management |
US20060106796A1 (en) * | 2004-11-17 | 2006-05-18 | Honeywell International Inc. | Knowledge stores for interactive diagnostics |
US20060129666A1 (en) * | 2004-12-09 | 2006-06-15 | International Business Machines Corporation | Selective device reset method for device sharing with fail-over |
JP2006189963A (ja) * | 2004-12-28 | 2006-07-20 | Hitachi Ltd | ストレージアクセス制御方法、クラスタシステム、パス接続スイッチおよびストレージアクセス制御プログラム |
JP4457019B2 (ja) * | 2005-01-05 | 2010-04-28 | 富士通株式会社 | 情報処理システム及び一次ストレージ装置 |
US20060182050A1 (en) * | 2005-01-28 | 2006-08-17 | Hewlett-Packard Development Company, L.P. | Storage replication system with data tracking |
US20060218200A1 (en) * | 2005-03-24 | 2006-09-28 | International Business Machines Corporation | Application of log records by storage servers |
CN100407158C (zh) * | 2005-04-21 | 2008-07-30 | 中兴通讯股份有限公司 | 一种在通信设备中保存数据文件的方法 |
US8332526B2 (en) | 2005-05-25 | 2012-12-11 | Microsoft Corporation | Data communication protocol including negotiation and command compounding |
US8621275B1 (en) | 2010-08-06 | 2013-12-31 | Open Invention Network, Llc | System and method for event-driven live migration of multi-process applications |
US8301700B1 (en) | 2010-08-06 | 2012-10-30 | Open Invention Network Llc | System and method for event-driven live migration of multi-process applications |
US8589953B1 (en) | 2010-08-06 | 2013-11-19 | Open Invention Network, Llc | System and method for transparent consistent application-replication of multi-process multi-threaded applications |
US9043640B1 (en) * | 2005-08-26 | 2015-05-26 | Open Invention Network, LLP | System and method for event-driven live migration of multi-process applications |
US8584145B1 (en) | 2010-08-06 | 2013-11-12 | Open Invention Network, Llc | System and method for dynamic transparent consistent application-replication of multi-process multi-threaded applications |
US9141481B1 (en) | 2010-08-06 | 2015-09-22 | Open Invention Network, Llc | System and method for reliable non-blocking messaging for multi-process application replication |
US8281184B1 (en) | 2010-08-06 | 2012-10-02 | Open Invention Network Llc | System and method for reliable non-blocking messaging for multi-process application replication |
US7558913B2 (en) * | 2006-06-20 | 2009-07-07 | Microsoft Corporation | Atomic commit of cache transfer with staging area |
CN100452046C (zh) * | 2006-06-23 | 2009-01-14 | 腾讯科技(深圳)有限公司 | 一种海量文件的存储方法及系统 |
US7725764B2 (en) * | 2006-08-04 | 2010-05-25 | Tsx Inc. | Failover system and method |
JP4359609B2 (ja) * | 2006-11-15 | 2009-11-04 | 株式会社日立製作所 | 計算機システム、システムソフトウェア更新方法及び第1サーバ装置 |
US8112593B2 (en) * | 2007-03-29 | 2012-02-07 | Netapp, Inc. | System and method for improving cluster performance |
US8245083B2 (en) | 2009-12-24 | 2012-08-14 | At&T Intellectual Property I, L.P. | Systems, methods, and apparatus to debug a network application |
US8276018B2 (en) | 2010-04-30 | 2012-09-25 | International Business Machines Corporation | Non-volatile memory based reliability and availability mechanisms for a computing device |
US8386859B2 (en) | 2010-04-30 | 2013-02-26 | International Business Machines Corporation | On-chip non-volatile storage of a test-time profile for efficiency and performance control |
US9135127B1 (en) | 2010-08-06 | 2015-09-15 | Open Invention Network, Llc | System and method for dynamic transparent consistent application-replication of multi-process multi-threaded applications |
US8631277B2 (en) | 2010-12-10 | 2014-01-14 | Microsoft Corporation | Providing transparent failover in a file system |
US9331955B2 (en) | 2011-06-29 | 2016-05-03 | Microsoft Technology Licensing, Llc | Transporting operations of arbitrary size over remote direct memory access |
US8856582B2 (en) | 2011-06-30 | 2014-10-07 | Microsoft Corporation | Transparent failover |
US8788579B2 (en) * | 2011-09-09 | 2014-07-22 | Microsoft Corporation | Clustered client failover |
US20130067095A1 (en) | 2011-09-09 | 2013-03-14 | Microsoft Corporation | Smb2 scaleout |
US9742676B2 (en) | 2012-06-06 | 2017-08-22 | International Business Machines Corporation | Highly available servers |
US11544049B2 (en) | 2016-02-12 | 2023-01-03 | Nutanix, Inc. | Virtualized file server disaster recovery |
US11218418B2 (en) | 2016-05-20 | 2022-01-04 | Nutanix, Inc. | Scalable leadership election in a multi-processing computing environment |
US11562034B2 (en) | 2016-12-02 | 2023-01-24 | Nutanix, Inc. | Transparent referrals for distributed file servers |
US11568073B2 (en) | 2016-12-02 | 2023-01-31 | Nutanix, Inc. | Handling permissions for virtualized file servers |
US11294777B2 (en) | 2016-12-05 | 2022-04-05 | Nutanix, Inc. | Disaster recovery for distributed file servers, including metadata fixers |
US11288239B2 (en) | 2016-12-06 | 2022-03-29 | Nutanix, Inc. | Cloning virtualized file servers |
US11281484B2 (en) | 2016-12-06 | 2022-03-22 | Nutanix, Inc. | Virtualized server systems and methods including scaling of file system virtual machines |
US11086826B2 (en) | 2018-04-30 | 2021-08-10 | Nutanix, Inc. | Virtualized server systems and methods including domain joining techniques |
US11770447B2 (en) | 2018-10-31 | 2023-09-26 | Nutanix, Inc. | Managing high-availability file servers |
US11768809B2 (en) | 2020-05-08 | 2023-09-26 | Nutanix, Inc. | Managing incremental snapshots for fast leader node bring-up |
US12072770B2 (en) | 2021-08-19 | 2024-08-27 | Nutanix, Inc. | Share-based file server replication for disaster recovery |
US12117972B2 (en) | 2021-08-19 | 2024-10-15 | Nutanix, Inc. | File server managers and systems for managing virtualized file servers |
Family Cites Families (155)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3813529A (en) | 1972-10-25 | 1974-05-28 | Singer Co | Digital high order interpolator |
US3893024A (en) | 1973-11-15 | 1975-07-01 | Itt | Method and apparatus for fault testing multiple stage networks |
US4075691A (en) | 1975-11-06 | 1978-02-21 | Bunker Ramo Corporation | Communication control unit |
US4075704A (en) | 1976-07-02 | 1978-02-21 | Floating Point Systems, Inc. | Floating point data processor for high speech operation |
US4156907A (en) | 1977-03-02 | 1979-05-29 | Burroughs Corporation | Data communications subsystem |
US4399503A (en) | 1978-06-30 | 1983-08-16 | Bunker Ramo Corporation | Dynamic disk buffer control unit |
US4377843A (en) | 1979-04-19 | 1983-03-22 | Wescom Switching, Inc. | Data distribution interface |
US4333144A (en) | 1980-02-05 | 1982-06-01 | The Bendix Corporation | Task communicator for multiple computer system |
US4351023A (en) | 1980-04-11 | 1982-09-21 | The Foxboro Company | Process control system with improved system security features |
US4488231A (en) | 1980-09-29 | 1984-12-11 | Honeywell Information Systems Inc. | Communication multiplexer having dual microprocessors |
JPS5776634A (en) | 1980-10-31 | 1982-05-13 | Hitachi Ltd | Digital signal processor |
FR2500659B1 (fr) | 1981-02-25 | 1986-02-28 | Philips Ind Commerciale | Dispositif pour l'allocation dynamique des taches d'un ordinateur multiprocesseur |
JPS57164340A (en) | 1981-04-03 | 1982-10-08 | Hitachi Ltd | Information processing method |
US4456957A (en) | 1981-09-28 | 1984-06-26 | Ncr Corporation | Apparatus using a decision table for routing data among terminals and a host system |
US4685125A (en) | 1982-06-28 | 1987-08-04 | American Telephone And Telegraph Company | Computer system with tasking |
US4527232A (en) | 1982-07-02 | 1985-07-02 | Sun Microsystems, Inc. | High-speed memory and memory management system |
US4550368A (en) | 1982-07-02 | 1985-10-29 | Sun Microsystems, Inc. | High-speed memory and memory management system |
US4589067A (en) | 1983-05-27 | 1986-05-13 | Analogic Corporation | Full floating point vector processor with dynamically configurable multifunction pipelined ALU |
US4710868A (en) | 1984-06-29 | 1987-12-01 | International Business Machines Corporation | Interconnect scheme for shared memory local networks |
US4814971A (en) | 1985-09-11 | 1989-03-21 | Texas Instruments Incorporated | Virtual memory recovery system using persistent roots for selective garbage collection and sibling page timestamping for defining checkpoint state |
US4719569A (en) | 1985-10-11 | 1988-01-12 | Sun Microsystems, Inc. | Arbitrator for allocating access to data processing resources |
US4825354A (en) | 1985-11-12 | 1989-04-25 | American Telephone And Telegraph Company, At&T Bell Laboratories | Method of file access in a distributed processing computer network |
US4761737A (en) | 1986-01-16 | 1988-08-02 | International Business Machines Corporation | Method to automatically increase the segment size of unix files in a page segmented virtual memory data processing system |
US4742447A (en) | 1986-01-16 | 1988-05-03 | International Business Machines Corporation | Method to control I/O accesses in a multi-tasking virtual memory virtual machine type data processing system |
US4742450A (en) | 1986-01-16 | 1988-05-03 | International Business Machines Corporation | Method to share copy on write segment for mapped files |
US5043871A (en) | 1986-03-26 | 1991-08-27 | Hitachi, Ltd. | Method and apparatus for database update/recovery |
US4761785B1 (en) | 1986-06-12 | 1996-03-12 | Ibm | Parity spreading to enhance storage access |
US4803621A (en) | 1986-07-24 | 1989-02-07 | Sun Microsystems, Inc. | Memory access system |
US4845609A (en) | 1986-07-25 | 1989-07-04 | Systech Corporation | Computer communications subsystem using an embedded token-passing network |
US4780821A (en) | 1986-07-29 | 1988-10-25 | International Business Machines Corp. | Method for multiple programs management within a network having a server computer and a plurality of remote computers |
US4819159A (en) | 1986-08-29 | 1989-04-04 | Tolerant Systems, Inc. | Distributed multiprocess transaction processing system and method |
US4783730A (en) | 1986-09-19 | 1988-11-08 | Datapoint Corporation | Input/output control technique utilizing multilevel memory structure for processor and I/O communication |
US4766534A (en) | 1986-10-16 | 1988-08-23 | American Telephone And Telegraph Company, At&T Bell Laboratories | Parallel processing network and method |
US4887204A (en) | 1987-02-13 | 1989-12-12 | International Business Machines Corporation | System and method for accessing remote files in a distributed networking environment |
US4897781A (en) | 1987-02-13 | 1990-01-30 | International Business Machines Corporation | System and method for using cached data at a local node after re-opening a file at a remote node in a distributed networking environment |
US5001628A (en) | 1987-02-13 | 1991-03-19 | International Business Machines Corporation | Single system image uniquely defining an environment for each user in a data processing system |
US4965772A (en) | 1987-06-15 | 1990-10-23 | International Business Machines Corporation | Method and apparatus for communication network alert message construction |
US4827411A (en) | 1987-06-15 | 1989-05-02 | International Business Machines Corporation | Method of maintaining a topology database |
NZ226733A (en) | 1987-12-21 | 1990-05-28 | Honeywell Bull | Coupling incompatible cpu to data processing system |
US5251308A (en) | 1987-12-22 | 1993-10-05 | Kendall Square Research Corporation | Shared memory multiprocessor with data hiding and post-store |
US4875159A (en) | 1987-12-22 | 1989-10-17 | Amdahl Corporation | Version management system using plural control fields for synchronizing two versions of files in a multiprocessor system |
US5055999A (en) | 1987-12-22 | 1991-10-08 | Kendall Square Research Corporation | Multiprocessor digital data processing system |
US5049873A (en) | 1988-01-29 | 1991-09-17 | Network Equipment Technologies, Inc. | Communications network state and topology monitor |
US4914583A (en) | 1988-04-13 | 1990-04-03 | Motorola, Inc. | Method of indicating processes resident within a cell of a data processing system |
JP2547069B2 (ja) | 1988-04-20 | 1996-10-23 | 富士通株式会社 | 故障診断方式 |
US5043876A (en) | 1988-05-27 | 1991-08-27 | International Business Machines Corporation | N-level file shadowing and recovery in a shared file system |
US5001712A (en) | 1988-10-17 | 1991-03-19 | Unisys Corporation | Diagnostic error injection for a synchronous bus system |
US4984272A (en) | 1988-11-30 | 1991-01-08 | At&T Bell Laboratories | Secure file handling in a computer operating system |
JPH02165241A (ja) | 1988-12-19 | 1990-06-26 | Toshiba Corp | ファイルアクセス方式 |
US4969118A (en) | 1989-01-13 | 1990-11-06 | International Business Machines Corporation | Floating point unit for calculating A=XY+Z having simultaneous multiply and add |
US5222217A (en) | 1989-01-18 | 1993-06-22 | International Business Machines Corporation | System and method for implementing operating system message queues with recoverable shared virtual storage |
CA1323448C (en) | 1989-02-24 | 1993-10-19 | Terrence C. Miller | Method and apparatus for translucent file system |
US5113442A (en) | 1989-03-06 | 1992-05-12 | Lachman Associates, Inc. | Method and apparatus for providing access control in a secure operating system |
US5144659A (en) | 1989-04-19 | 1992-09-01 | Richard P. Jones | Computer file protection system |
US5018144A (en) | 1989-04-28 | 1991-05-21 | International Business Machines Corporation | Logic performance verification and transition fault detection |
US5182805A (en) | 1989-07-14 | 1993-01-26 | Ncr Corporation | Method and system for determining copy-on-write condition |
US5218696A (en) | 1989-07-24 | 1993-06-08 | International Business Machines Corporation | Method for dynamically expanding and rapidly accessing file directories |
US5163148A (en) | 1989-08-11 | 1992-11-10 | Digital Equipment Corporation | File backup system for producing a backup copy of a file which may be updated during backup |
US5261051A (en) | 1989-08-14 | 1993-11-09 | Microsoft Corporation | Method and system for open file caching in a networked computer system |
US5163131A (en) | 1989-09-08 | 1992-11-10 | Auspex Systems, Inc. | Parallel i/o network file server architecture |
US5276867A (en) | 1989-12-19 | 1994-01-04 | Epoch Systems, Inc. | Digital data storage system with improved data migration |
US5218695A (en) | 1990-02-05 | 1993-06-08 | Epoch Systems, Inc. | File server system having high-speed write execution |
EP0444376B1 (en) | 1990-02-27 | 1996-11-06 | International Business Machines Corporation | Mechanism for passing messages between several processors coupled through a shared intelligent memory |
US5134619A (en) | 1990-04-06 | 1992-07-28 | Sf2 Corporation | Failure-tolerant mass storage system |
US5195100A (en) | 1990-03-02 | 1993-03-16 | Micro Technology, Inc. | Non-volatile memory storage of write operation identifier in data sotrage device |
JP2875598B2 (ja) | 1990-06-27 | 1999-03-31 | 富士通株式会社 | ノードにおけるネットワーク経路設定方式 |
US5261044A (en) | 1990-09-17 | 1993-11-09 | Cabletron Systems, Inc. | Network management system using multifunction icons for information display |
US5208813A (en) | 1990-10-23 | 1993-05-04 | Array Technology Corporation | On-line reconstruction of a failed redundant array system |
US5274807A (en) | 1990-11-01 | 1993-12-28 | At&T Bell Laboratories | Method for reducing magnetic storage volume for computer disk image backup |
US5633999A (en) | 1990-11-07 | 1997-05-27 | Nonstop Networks Limited | Workstation-implemented data storage re-routing for server fault-tolerance on computer networks |
US5255270A (en) | 1990-11-07 | 1993-10-19 | Emc Corporation | Method of assuring data write integrity on a data storage device |
DE69131551T2 (de) | 1990-11-09 | 2000-02-17 | Emc Corp., Hopkinton | Logische Aufteilung eines Speichersystems mit redundanter Matrix |
US5155835A (en) | 1990-11-19 | 1992-10-13 | Storage Technology Corporation | Multilevel, hierarchical, dynamically mapped data storage subsystem |
US5146588A (en) | 1990-11-26 | 1992-09-08 | Storage Technology Corporation | Redundancy accumulator for disk drive array memory |
JP2603757B2 (ja) | 1990-11-30 | 1997-04-23 | 富士通株式会社 | アレ−ディスク装置の制御方法 |
US5235601A (en) | 1990-12-21 | 1993-08-10 | Array Technology Corporation | On-line restoration of redundancy information in a redundant array system |
US5274799A (en) | 1991-01-04 | 1993-12-28 | Array Technology Corporation | Storage device array architecture with copyback cache |
DE4129809C2 (de) | 1991-01-28 | 2000-08-17 | Bosch Gmbh Robert | Mehrrechnersystem |
US5239640A (en) | 1991-02-01 | 1993-08-24 | International Business Machines Corporation | Data storage system and method including data and checksum write staging storage |
US5317731A (en) | 1991-02-25 | 1994-05-31 | International Business Machines Corporation | Intelligent page store for concurrent and consistent access to a database by a transaction processor and a query processor |
DE69225822T2 (de) | 1991-03-12 | 1998-10-08 | Hewlett Packard Co | Auf Hypothesen und Schlussfolgerungen basiertes Diagnoseverfahren von Datenkommunikationsnetzwerken |
US5276840A (en) | 1991-03-22 | 1994-01-04 | Acer Incorporated | Disk caching method for writing data from computer memory including a step of writing a plurality of physically adjacent blocks in a single I/O operation |
JP2923702B2 (ja) | 1991-04-01 | 1999-07-26 | 株式会社日立製作所 | 記憶装置及びそのデータ修復方法 |
US5574843A (en) | 1991-04-26 | 1996-11-12 | Escom Ag | Methods and apparatus providing for a presentation system for multimedia applications |
SE470031B (sv) | 1991-06-20 | 1993-10-25 | Icl Systems Ab | System och metod för övervakning och förändring av driften av ett datorsystem |
US5313647A (en) | 1991-09-20 | 1994-05-17 | Kendall Square Research Corporation | Digital data processor with improved checkpointing and forking |
US5502836A (en) | 1991-11-21 | 1996-03-26 | Ast Research, Inc. | Method for disk restriping during system operation |
US5379417A (en) | 1991-11-25 | 1995-01-03 | Tandem Computers Incorporated | System and method for ensuring write data integrity in a redundant array data storage system |
US5313626A (en) | 1991-12-17 | 1994-05-17 | Jones Craig S | Disk drive array with efficient background rebuilding |
GB9126779D0 (en) | 1991-12-17 | 1992-02-12 | Int Computers Ltd | Security mechanism for a computer system |
US5333305A (en) | 1991-12-27 | 1994-07-26 | Compaq Computer Corporation | Method for improving partial stripe write performance in disk array subsystems |
US5305326A (en) | 1992-03-06 | 1994-04-19 | Data General Corporation | High availability disk arrays |
AU4279893A (en) | 1992-04-10 | 1993-11-18 | Avid Technology, Inc. | A method and apparatus for representing and editing multimedia compositions |
JPH0619771A (ja) | 1992-04-20 | 1994-01-28 | Internatl Business Mach Corp <Ibm> | 異種のクライアントによる共用ファイルのファイル管理機構 |
US5708668A (en) | 1992-05-06 | 1998-01-13 | International Business Machines Corporation | Method and apparatus for operating an array of storage devices |
US5335235A (en) | 1992-07-07 | 1994-08-02 | Digital Equipment Corporation | FIFO based parity generator |
US5315602A (en) | 1992-08-12 | 1994-05-24 | Digital Equipment Corporation | Optimized stripe detection for redundant arrays of disk drives |
JPH06319005A (ja) | 1993-01-13 | 1994-11-15 | Canon Inf Syst Inc | メッセージ配信方法及び装置 |
US5627842A (en) | 1993-01-21 | 1997-05-06 | Digital Equipment Corporation | Architecture for system-wide standardized intra-module and inter-module fault testing |
US5504883A (en) | 1993-02-01 | 1996-04-02 | Lsc, Inc. | Method and apparatus for insuring recovery of file control information for secondary storage systems |
EP0612015A1 (en) | 1993-02-16 | 1994-08-24 | International Business Machines Corporation | Improved disk array system having special parity groups for data blocks with high update activity |
ATE195825T1 (de) | 1993-06-03 | 2000-09-15 | Network Appliance Inc | Anordnung eines dateisystems zum beschreiben beliebiger bereiche |
US5963962A (en) | 1995-05-31 | 1999-10-05 | Network Appliance, Inc. | Write anywhere file-system layout |
US5463642A (en) | 1993-06-29 | 1995-10-31 | Mitsubishi Semiconductor America, Inc. | Method and apparatus for determining error location |
WO1995001599A1 (en) * | 1993-07-01 | 1995-01-12 | Legent Corporation | System and method for distributed storage management on networked computer systems |
US5497343A (en) | 1993-08-05 | 1996-03-05 | Hyundai Electronics America | Reducing the number of carry-look-ahead adder stages in high-speed arithmetic units, structure and method |
US5572711A (en) | 1993-09-28 | 1996-11-05 | Bull Hn Information Systems Inc. | Mechanism for linking together the files of emulated and host system for access by emulated system users |
US5689641A (en) | 1993-10-01 | 1997-11-18 | Vicor, Inc. | Multimedia collaboration system arrangement for routing compressed AV signal through a participant site without decompressing the AV signal |
US5485455A (en) | 1994-01-28 | 1996-01-16 | Cabletron Systems, Inc. | Network having secure fast packet switching and guaranteed quality of service |
US5430729A (en) | 1994-04-04 | 1995-07-04 | Motorola, Inc. | Method and apparatus for adaptive directed route randomization and distribution in a richly connected communication network |
US5555244A (en) | 1994-05-19 | 1996-09-10 | Integrated Network Corporation | Scalable multimedia network |
US5642501A (en) | 1994-07-26 | 1997-06-24 | Novell, Inc. | Computer method and apparatus for asynchronous ordered operations |
CA2200987A1 (en) | 1994-09-26 | 1996-04-04 | James Hayden Bradley | Re-usable breakaway safety joint |
US5649152A (en) * | 1994-10-13 | 1997-07-15 | Vinca Corporation | Method and system for providing a static snapshot of data stored on a mass storage system |
US5634010A (en) | 1994-10-21 | 1997-05-27 | Modulus Technologies, Inc. | Managing and distributing data objects of different types between computers connected to a network |
US5644718A (en) | 1994-11-10 | 1997-07-01 | At&T Corporation | Apparatus using circuit manager to associate a single circuit with each host application where the circuit is shared by a plurality of client applications |
EP0713183A3 (en) * | 1994-11-18 | 1996-10-02 | Microsoft Corp | Network-independent shadow files |
US5678007A (en) | 1994-11-22 | 1997-10-14 | Microsoft Corporation | Method and apparatus for supporting multiple outstanding network requests on a single connection |
US5689701A (en) | 1994-12-14 | 1997-11-18 | International Business Machines Corporation | System and method for providing compatibility between distributed file system namespaces and operating system pathname syntax |
US5617568A (en) | 1994-12-14 | 1997-04-01 | International Business Machines Corporation | System and method for supporting file attributes on a distributed file system without native support therefor |
US5826102A (en) | 1994-12-22 | 1998-10-20 | Bell Atlantic Network Services, Inc. | Network arrangement for development delivery and presentation of multimedia applications using timelines to integrate multimedia objects and program objects |
US5666353A (en) | 1995-03-21 | 1997-09-09 | Cisco Systems, Inc. | Frame based traffic policing for a digital switch |
US5696486A (en) | 1995-03-29 | 1997-12-09 | Cabletron Systems, Inc. | Method and apparatus for policy-based alarm notification in a distributed network management environment |
US5678006A (en) | 1995-04-27 | 1997-10-14 | Cisco Systems, Inc. | Network switch having network management agent functions distributed among multiple trunk and service modules |
US5761669A (en) | 1995-06-06 | 1998-06-02 | Microsoft Corporation | Controlling access to objects on multiple operating systems |
US5675782A (en) | 1995-06-06 | 1997-10-07 | Microsoft Corporation | Controlling access to objects on multiple operating systems |
US5628005A (en) | 1995-06-07 | 1997-05-06 | Microsoft Corporation | System and method for providing opportunistic file access in a network environment |
US5956712A (en) | 1995-06-07 | 1999-09-21 | International Business Machines Corporation | Byte range locking in a distributed environment |
US5768582A (en) | 1995-06-07 | 1998-06-16 | International Business Machines Corporation | Computer program product for domained incremental changes storage and retrieval |
US5720029A (en) | 1995-07-25 | 1998-02-17 | International Business Machines Corporation | Asynchronously shadowing record updates in a remote copy session using track arrays |
US5668958A (en) | 1995-09-12 | 1997-09-16 | International Business Machines Corporation | Heterogeneous filing system with common API and reconciled file management rules |
US5694163A (en) | 1995-09-28 | 1997-12-02 | Intel Corporation | Method and apparatus for viewing of on-line information service chat data incorporated in a broadcast television program |
US5819020A (en) * | 1995-10-16 | 1998-10-06 | Network Specialists, Inc. | Real time backup system |
US5854903A (en) | 1995-11-07 | 1998-12-29 | Lucent Technologies Inc. | Optimization method for routing and logical network design in multi-service networks |
US5737523A (en) | 1996-03-04 | 1998-04-07 | Sun Microsystems, Inc. | Methods and apparatus for providing dynamic network file system client authentication |
US5956491A (en) | 1996-04-01 | 1999-09-21 | Marks; Daniel L. | Group communications multiplexing system |
US5825877A (en) | 1996-06-11 | 1998-10-20 | International Business Machines Corporation | Support for portable trusted software |
US5828839A (en) | 1996-11-14 | 1998-10-27 | Interactive Broadcaster Services Corp. | Computer network chat room based on channel broadcast in real time |
US5915087A (en) | 1996-12-12 | 1999-06-22 | Secure Computing Corporation | Transparent security proxy for unreliable message exchange protocols |
US5996106A (en) | 1997-02-04 | 1999-11-30 | Micron Technology, Inc. | Multi bank test mode for memory devices |
US5950225A (en) | 1997-02-28 | 1999-09-07 | Network Appliance, Inc. | Fly-by XOR for generating parity for data gleaned from a bus |
US6192389B1 (en) * | 1997-03-28 | 2001-02-20 | International Business Machines Corporation | Method and apparatus for transferring file descriptors in a multiprocess, multithreaded client/server system |
JP3088331B2 (ja) | 1997-04-10 | 2000-09-18 | 北陸日本電気ソフトウェア株式会社 | 故障シミュレーション方法 |
US5931935A (en) | 1997-04-15 | 1999-08-03 | Microsoft Corporation | File system primitive allowing reprocessing of I/O requests by multiple drivers in a layered driver I/O system |
US5983364A (en) | 1997-05-12 | 1999-11-09 | System Soft Corporation | System and method for diagnosing computer faults |
US6163853A (en) | 1997-05-13 | 2000-12-19 | Micron Electronics, Inc. | Method for communicating a software-generated pulse waveform between two servers in a network |
US5856981A (en) | 1997-05-15 | 1999-01-05 | Lucent Technologies Inc. | Reliable connection oriented networks |
US5876278A (en) | 1997-05-29 | 1999-03-02 | Cheng; Henry | Cooling device |
USH1860H (en) | 1997-09-26 | 2000-09-05 | Dsc/Celcore, Inc. | Fault testing in a telecommunications switching platform |
US5996086A (en) * | 1997-10-14 | 1999-11-30 | Lsi Logic Corporation | Context-based failover architecture for redundant servers |
US6073089A (en) | 1997-10-22 | 2000-06-06 | Baker; Michelle | Systems and methods for adaptive profiling, fault detection, and alert generation in a changing environment which is measurable by at least two different measures of state |
US6101585A (en) | 1997-11-04 | 2000-08-08 | Adaptec, Inc. | Mechanism for incremental backup of on-line files |
US6076148A (en) | 1997-12-26 | 2000-06-13 | Emc Corporation | Mass storage subsystem and backup arrangement for digital data processing system which permits information to be backed up while host computer(s) continue(s) operating in connection with information stored on mass storage subsystem |
US5890959A (en) | 1998-03-31 | 1999-04-06 | Digital Equipment Corporation | High efficiency blower system with integral backflow preventor |
US6119244A (en) | 1998-08-25 | 2000-09-12 | Network Appliance, Inc. | Coordinating persistent status information with multiple file servers |
-
1998
- 1998-03-10 US US09/037,652 patent/US6317844B1/en not_active Expired - Lifetime
-
1999
- 1999-03-08 AT AT99912331T patent/ATE251778T1/de not_active IP Right Cessation
- 1999-03-08 EP EP99912331A patent/EP1062581B1/en not_active Expired - Lifetime
- 1999-03-08 JP JP2000535998A patent/JP2003517651A/ja active Pending
- 1999-03-08 KR KR1020007010007A patent/KR100604242B1/ko not_active IP Right Cessation
- 1999-03-08 TW TW088103519A patent/TW452686B/zh not_active IP Right Cessation
- 1999-03-08 DE DE69911930T patent/DE69911930T2/de not_active Expired - Lifetime
- 1999-03-08 CN CNB998058807A patent/CN1149480C/zh not_active Expired - Fee Related
- 1999-03-08 WO PCT/US1999/005071 patent/WO1999046680A1/en active IP Right Grant
- 1999-03-08 CA CA002323106A patent/CA2323106C/en not_active Expired - Fee Related
-
2001
- 2001-09-21 US US09/960,592 patent/US6915447B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CA2323106A1 (en) | 1999-09-16 |
WO1999046680A1 (en) | 1999-09-16 |
US6317844B1 (en) | 2001-11-13 |
US6915447B2 (en) | 2005-07-05 |
TW452686B (en) | 2001-09-01 |
CA2323106C (en) | 2005-11-15 |
CN1299484A (zh) | 2001-06-13 |
EP1062581A1 (en) | 2000-12-27 |
DE69911930T2 (de) | 2004-08-12 |
KR100604242B1 (ko) | 2006-07-24 |
DE69911930D1 (de) | 2003-11-13 |
ATE251778T1 (de) | 2003-10-15 |
JP2003517651A (ja) | 2003-05-27 |
EP1062581B1 (en) | 2003-10-08 |
US20020007470A1 (en) | 2002-01-17 |
CN1149480C (zh) | 2004-05-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100604242B1 (ko) | 파일서버 기억장치 | |
US6363462B1 (en) | Storage controller providing automatic retention and deletion of synchronous back-up data | |
US7020669B2 (en) | Apparatus, method and system for writing data to network accessible file system while minimizing risk of cache data loss/ data corruption | |
US9256605B1 (en) | Reading and writing to an unexposed device | |
US8832399B1 (en) | Virtualized consistency group using an enhanced splitter | |
US7788453B2 (en) | Redirection of storage access requests based on determining whether write caching is enabled | |
US7043665B2 (en) | Method, system, and program for handling a failover to a remote storage location | |
JP3938475B2 (ja) | バックアップ処理方法及びその実施システム並びにその処理プログラム | |
US7577867B2 (en) | Cross tagging to data for consistent recovery | |
US8392680B1 (en) | Accessing a volume in a distributed environment | |
US8478955B1 (en) | Virtualized consistency group using more than one data protection appliance | |
US8027952B2 (en) | System and article of manufacture for mirroring data at storage locations | |
EP0902923B1 (en) | Method for independent and simultaneous access to a common data set | |
US7668876B1 (en) | Snapshot-based replication infrastructure for efficient logging with minimal performance effect | |
US10185583B1 (en) | Leveraging snapshots | |
US20030065780A1 (en) | Data storage system having data restore by swapping logical units | |
EP3179359A1 (en) | Data sending method, data receiving method, and storage device | |
JP2004252686A (ja) | 情報処理システム | |
US7376859B2 (en) | Method, system, and article of manufacture for data replication | |
US7555674B1 (en) | Replication machine and method of disaster recovery for computers | |
US20040010490A1 (en) | Data transfer method | |
US10185503B1 (en) | Consistency group fault tolerance | |
KR102695840B1 (ko) | 서버 이중화 시스템 및 그 동작 방법 | |
CN115033423A (zh) | 双机热备drbd初始化同步方法、装置及设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20130705 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20140708 Year of fee payment: 9 |
|
LAPS | Lapse due to unpaid annual fee |