ES2632558T3 - Arbitración de propiedad de disco en un grupo de almacenamiento - Google Patents
Arbitración de propiedad de disco en un grupo de almacenamiento Download PDFInfo
- Publication number
- ES2632558T3 ES2632558T3 ES13755733.6T ES13755733T ES2632558T3 ES 2632558 T3 ES2632558 T3 ES 2632558T3 ES 13755733 T ES13755733 T ES 13755733T ES 2632558 T3 ES2632558 T3 ES 2632558T3
- Authority
- ES
- Spain
- Prior art keywords
- node
- key
- registration
- storage device
- cluster
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/13—File access structures, e.g. distributed indices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0617—Improving the reliability of storage systems in relation to availability
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0631—Configuration or reconfiguration of storage systems by allocating resources to storage systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
Abstract
Un primer nodo de un clúster, teniendo propiedad el primer nodo de una reserva persistente en un dispositivo de almacenamiento compartido por nodos del clúster, un procedimiento para que el primer nodo se defienda contra el intento de otro nodo para adelantarse a la reserva persistente del primer nodo, comprendiendo el procedimiento: después de que una partición de red que evita que el primer nodo comunique con otro nodo en el clúster, y antes de que se notifique al primer nodo de la partición de red, detectar el primer nodo que otro nodo en el clúster ha intentado reservar el dispositivo de almacenamiento compartido por los nodos del clúster, comprendiendo la detección identificar que el otro nodo ha cambiado la clave de registro del otro nodo en una estructura de datos de registro; y cambiar el primer nodo la clave de registro del primer nodo, registrar la clave de registro cambiada en la estructura de datos de registro, y reservar la clave de registro cambiada en una estructura de datos de reserva.
Description
5
10
15
20
25
30
35
40
45
50
55
como un medio de transmisión. Medio de transmisión puede incluir una red y/o enlaces de datos que pueden usarse para llevar o medios de código de programa deseados en forma de instrucciones o estructuras de datos ejecutables por ordenador y que pueden accederse por un ordenador de fin general o de fin especial. Deberían incluirse también combinaciones de lo anterior dentro del alcance de medio legible por ordenador.
Además, tras alcanzar diversos componentes de sistema informático, los medios de código de programa en forma de instrucciones o estructuras de datos ejecutables por ordenador pueden transferirse automáticamente de medio de transmisión a medio de almacenamiento informático (dispositivos) (o viceversa). Por ejemplo, instrucciones o estructuras de datos ejecutables por ordenador recibidas a través de una red o enlace de datos pueden almacenarse en memoria intermedia en RAM dentro de un módulo de interfaz de red (por ejemplo, un “NIC”), y a continuación transferirse eventualmente a RAM de sistema informático y/o a medio de almacenamiento informático menos volátil (dispositivos) en un sistema informático. Por lo tanto, debería entenderse que medio de almacenamiento informático (dispositivos) pueden incluirse en componentes de sistema informático que también (o incluso principalmente) utilizan medios de transmisión.
Instrucciones ejecutables por ordenador comprenden, por ejemplo, instrucciones y datos que, cuando se ejecutan en un procesador, provocan que un ordenador de fin general, ordenador de fin especial, o dispositivo de procesamiento de fin especial realice una cierta función o grupo de funciones. Las instrucciones ejecutables por ordenador pueden ser, por ejemplo, binarios, instrucciones de formato intermedio tal como lenguaje ensamblador o incluso código fuente. Aunque se ha descrito la materia objeto en lenguaje específico a características estructurales y/o actos metodológicos, se ha de entender que la materia objeto definida en las reivindicaciones adjuntas no está necesariamente limitada a las características descritas o actos descritos anteriormente. En su lugar, las características y actos descritos se desvelan como formas ejemplares para implementar las reivindicaciones.
Los expertos en la materia apreciarán que la invención puede ponerse en práctica en entornos informáticos de red con muchos tipos de configuraciones de sistemas informáticos, incluyendo, ordenadores personales, ordenadores de sobremesa, ordenadores portátiles, procesadores de mensajes, dispositivos portátiles, sistemas multiprocesador, electrónica de consumo basada en microprocesador o programable, PC de red, miniordenadores, ordenadores centrales, teléfonos móviles, PDA, tabletas, buscapersonas, encaminadores, conmutadores y similares. La invención puede ponerse también en práctica en entornos de sistemas distribuidos donde sistemas informáticos locales y remotos, que están enlazados (ya sean enlaces de datos alámbricos, enlaces de datos inalámbricos o mediante una combinación de enlaces de datos alámbricos e inalámbricos) a través de una red, ambos realizan tareas. En un entorno de sistema distribuido, los módulos de programa pueden localizarse tanto en dispositivos de almacenamiento de memoria locales como remotos.
Aunque se describe la presente invención como se implementa en el clúster 400 mostrado en la Figura 4, se ha de entender que las técnicas PR pueden implementarse también en otras arquitecturas informáticas que incluyen múltiples nodos. El clúster 400 incluye cuatro nodos interconectados (nodos 401-404). Cada nodo está conectado a cada uno de los dispositivos 410-412 de almacenamiento. Los dispositivos 410-412 de almacenamiento comprenden el grupo 420 de almacenamiento a partir del cual se han credo múltiples discos virtuales (o espacios) 430a-430n. Por consiguiente, las aplicaciones en cada nodo pueden acceder a cada uno de los discos 430a-430n virtuales. Se supone que se determina quórum en el clúster 400 usando un esquema de voto de nodos + almacenamiento. Por consiguiente, cada uno de los nodos 401-404 y el grupo 420 tiene un voto. Un único nodo tiene propiedad de cada dispositivo de almacenamiento en el grupo 420 en un tiempo dado.
Adicionalmente, las Figuras 5A-5F ilustran diversos estados de una tabla 501 de registro y una tabla 502 de reserva que pueden mantenerse para implementar las técnicas PR de la presente invención. Un conjunto separado de tabla de registro y de reserva se mantiene para cada uno de los dispositivos 410-412 de almacenamiento. En la siguiente descripción, se supondrá que la tabla 501 de registro y la tabla 502 de reserva pertenecen al dispositivo 410 de almacenamiento, pero debería entenderse que podría seguirse un procedimiento similar para determinar la propiedad de cada dispositivo de almacenamiento. También, incluso aunque se muestran dos tablas, la presente invención puede implementarse usando una única tabla o cualquier número de otras estructuras de datos. Por consiguiente, la estructura de datos usada para almacenar las claves no es esencial para la invención.
Las Figuras 5A-5F también incluyen los nodos 401 y 404 para ilustrar cómo los nodos almacenan claves actualmente reservadas durante el procedimiento PR de la presente invención. Por supuesto, aunque no se muestra, cada nodo también almacena su clave de registro.
La Figura 5A representa el estado de las dos tablas antes de la aparición de la partición 405 de red. En la Figura 5A, la tabla 501 de registro incluye cuatro claves de registro, una para cada uno de los nodos 401-404 que indican que cada nodo en el clúster puede escribir en el dispositivo 410 de almacenamiento. La tabla 502 de reserva también incluye la clave de registro del nodo 401 que indica que el nodo 401 tiene una reserva en el dispositivo 410 de almacenamiento (es decir el nodo 401 es el propietario actual del disco físico).
Cuando tiene lugar la partición 405 de red, cada nodo en el clúster se notificará de la partición. Sin embargo, no se notificará necesariamente a cada nodo al mismo tiempo. En este ejemplo, el nodo 404 se ha notificado de la partición 405 de red y por consiguiente ha comenzado un desafío para la propiedad de cada dispositivo de
7
5
10
15
20
25
30
35
40
45
50
55
La Figura 5F, por lo tanto, representa el estado de las dos tablas después de que se ha notificado al nodo 401 de la partición 405 de red y después de que el nodo 401 se ha defendido contra el desafío del nodo 404. Como se muestra, la tabla 501 de registro no incluye la clave de registro del nodo 404. Aunque se muestra el nodo 404 almacenando aún la clave de reserva actual, un intento de adelanto por el nodo 404 fallaría puesto que la clave de registro del nodo 404 no está en la tabla 501 de registro.
Aunque la descripción anterior usa el ejemplo de incrementar una clave, la presente invención puede implementarse también cambiando una clave de cualquier otra manera para notificar a otro nodo de un desafío. Por ejemplo, en lugar de incrementar su clave, el nodo 404 podría cambiar un bit. En esencia, el cambio de la clave de registro actúa como una manera para que los nodos continúen comunicando incluso aunque la partición de red haya evitado que los nodos comuniquen directamente. Por consiguiente, cualquier medio de modificación de la clave de registro para comunicar un desafío de un nodo puede usarse en la presente invención.
Se observa que la clave de registro del nodo 404 puede eliminarse también incluso sin que el nodo 404 comience un desafío. En cualquier momento que un nodo 401 se reactiva para defender la propiedad, comprueba en primer lugar cualesquiera claves de registro de nodos que no reconoce como que son parte de la misma partición. Por ejemplo, si el nodo 401 se reactiva después de la partición 405 de red y antes de que el nodo 404 comience un desafío, el nodo 401 eliminará la clave del nodo 404 (así como la clave del nodo 403) de la tabla 501 de registro puesto que los nodos 404 y 403 ya no están en la misma partición.
Por consiguiente, un nodo propietario no elimina la clave de registro del otro nodo hasta que el nodo propietario tiene conocimiento de que el otro nodo no está en la misma partición que el nodo propietario. De esta manera, un nodo propietario no eliminará la clave del otro nodo cuando tiene lugar una partición de red hasta que el nodo propietario tiene conocimiento acerca de la partición de red y puede responder en consecuencia (por ejemplo defendiendo o no defendiendo su propiedad).
Por supuesto, durante cualquier defensa dada, el nodo propietario puede eliminar ambas claves de registro de cualquier nodo que no reconoce como que es parte de la misma partición, así como incrementar, registrar y reservar su clave de registro en respuesta a un desafío desde un nodo que no tiene conocimiento aún que está en otra partición. Usando el mismo ejemplo de las Figuras 5A-5F, si los nodos 403 y 404 se desafiaron al mismo tiempo, pero el nodo 401 había únicamente notificado de que el nodo 404 ya no estaba más en la misma partición, el nodo 401 eliminaría la clave del nodo 404, mientras deja la clave del nodo 403 y aumenta su propia clave.
De manera similar, si en cualquier momento, el nodo 401 tiene conocimiento de que estaba en una partición que no tenía quórum (por ejemplo si la partición 405 de red separó el nodo 401 de los nodos 402-404), el nodo 401 no defendería su propiedad permitiendo de esta manera que uno de los nodos en la otra partición se adelantara satisfactoriamente a la propiedad del nodo 401.
Como se ha mencionado anteriormente, el procedimiento descrito con respecto a las Figuras 5A-5F se realiza para cada dispositivo de almacenamiento en un grupo de almacenamiento. Por ejemplo, el nodo 404 desafiaría la propiedad de los dispositivos 411 y 412 de almacenamiento de la misma manera. Un único nodo, sin embargo, debería tener en general la propiedad de cada dispositivo de almacenamiento en el grupo. Para asegurar que un único nodo obtiene y mantiene la propiedad de cada dispositivo de almacenamiento, el procedimiento descrito anteriormente se lleva a cabo en cada dispositivo de almacenamiento es un orden predefinido.
En otras palabras, cada nodo tiene conocimiento de un orden en el cual debería desafiarse cada dispositivo de almacenamiento. Este orden puede determinarse, por ejemplo, basándose en un identificador asociado con el dispositivo de almacenamiento (por ejemplo identificador único global de grupo). Por ejemplo, cuando el nodo 404 se reactiva para emitir los comandos previos, puede emitir los comandos previos en un orden especificado (tal como adelantándose en el dispositivo 410 de almacenamiento, a continuación dispositivo 411 de almacenamiento, a continuación el dispositivo 412 de almacenamiento).
Si cualquier comando previo falla, el nodo desafiante dejará de desafiar la propiedad. Por ejemplo, si el comando previo del nodo 404 falló en el dispositivo 410 de almacenamiento, el nodo 404 no intentaría adelantarse a la propiedad de los dispositivos 411 y 412 de almacenamiento. Emitiendo los comandos previos en un orden especificado, la situación puede evitarse donde un nodo gana la propiedad de algunos dispositivos de almacenamiento en el grupo, mientras uno más otros nodos ganan la propiedad de otros dispositivos de almacenamiento en el grupo.
Además de asegurar que un nodo propietario o nodo desafiante es parte de una partición que tiene quórum (o podría tener quórum obteniendo la propiedad del grupo), un nodo puede verificar también que un quórum de discos en el grupo son accesibles antes de comenzar una defensa de o desafío para los dispositivos de almacenamiento del grupo. Por ejemplo, cuando el nodo 401 se reactiva para defender su propiedad, puede enumerar en primer lugar todos los dispositivos de almacenamiento en el grupo 420. Si el número de dispositivos de almacenamiento enumerado es menor que una mayoría de los dispositivos de almacenamiento en el grupo (por ejemplo menor que 2 de los dispositivos 410-412 de almacenamiento), el nodo 401 puede dejar su defensa. De manera similar, cuando el nodo 404 intenta un desafío, puede enumerar también los dispositivos de almacenamiento y dejar el desafío si un
9 5
10
15
20
25
30
35
40
45
quórum de los dispositivos de almacenamiento no es accesible. Un dispositivo de almacenamiento puede ser inaccesible si el dispositivo de almacenamiento falla o deja de otra manera de operar correctamente.
La Figura 6 ilustra un formato ejemplar para una clave 600 de registro. La clave 600 de registro incluye cuatro secciones: una sección 601 de identificador, una sección 602 de revisión, una sección 603 de identificador de nodo y una sección 604 de firma. La sección 601 de identificador incluye un identificador del dispositivo de almacenamiento para el que se usa la clave de registro. La sección 602 de revisión es la porción de la clave que se incrementa como se ha descrito anteriormente. La sección 603 de identificador de nodo incluye un identificador del nodo al cual pertenece la clave. La porción 604 de firma incluye una firma única generada mediante el correspondiente nodo.
La Figura 7 ilustra un diagrama de flujo de un procedimiento 700 de ejemplo para que un primer nodo se defienda contra el intento de otro nodo de adelantarse a la reserva persistente del primer nodo en un dispositivo de almacenamiento. El procedimiento 700 se describirá con respecto a las Figuras 4 y 5A-5F.
El procedimiento 700 incluye un acto 701 de, después de que una partición de red que evita que el primer nodo comunique con otro nodo en el clúster, y antes de que se notifique al primer nodo de la partición de red, el primer nodo detectar que otro nodo en el clúster ha intentado reservar el dispositivo de almacenamiento compartido por los nodos del clúster. La detección comprende identificar que el otro nodo ha cambiado la clave de registro del otro nodo en una estructura de datos de registro. Por ejemplo, el nodo 401 puede detectar que el nodo 404 ha cambiado su clave de registro en la tabla 501 de registro que pertenece al dispositivo 410 de almacenamiento mientras que el nodo 401 tiene una reserva persistente en dispositivo 410 de almacenamiento.
El procedimiento 700 incluye un acto 702 de, el primer nodo cambiar la clave de registro del primer nodo, registrar la clave de registro cambiada en la estructura de datos de registro y reservar la clave de registro cambiada en la estructura de datos de reserva. Por ejemplo, el nodo 401 puede cambiar (por ejemplo incrementar) su clave de registro, registrar la clave de registro cambiada en la tabla 501 de registro, y reservar la clave de registro cambiada en la tabla 502 de reserva.
La Figura 8 ilustra un diagrama de flujo de un procedimiento 800 de ejemplo para que un segundo nodo intente eliminar una reserva persistente del primer nodo en un dispositivo de almacenamiento para obtener una reserva persistente para el segundo nodo. El procedimiento 800 se describirá con respecto a las Figuras 4 y 5A-5F.
El procedimiento 800 incluye un acto 801 de recibir el segundo nodo una notificación de que ha tenido lugar una partición de red que evita que el segundo nodo comunique con el primer nodo. Por ejemplo, el nodo 404 puede recibir la notificación de que ha tenido lugar la partición 405 de red.
El procedimiento 800 incluye un acto 802 del segundo nodo intentar reservar la clave de registro del segundo nodo para obtener una reserva persistente en el dispositivo de almacenamiento. El acto 802 incluye los subactos 802a802c.
El subacto 802a incluye que el segundo nodo lea la clave de registro del primer nodo que se almacena en una estructura de datos de reserva y almacenar la clave del primer nodo. Por ejemplo, el nodo 404 puede leer la clave de registro del nodo 401 en la tabla 502 de reserva.
El subacto 802b incluye cambiar el segundo nodo la clave de registro del segundo nodo y registrar la clave de registro cambiada. Por ejemplo, el nodo 404 puede cambiar su clave de registro y registrar la clave de registro cambiada en la tabla 501 de registro.
El subacto 802c incluye entrar en inactividad el segundo nodo durante una duración de tiempo especificada antes de emitir un comando previo para eliminar la reserva persistente del primer nodo. Por ejemplo, el nodo 404 puede entrar en inactividad durante al menos dos veces la duración que el nodo defensor entra en inactividad (por ejemplo seis segundos si el nodo 401 entra en inactividad durante tres segundos) antes de reactivar y emitir un comando previo para eliminar la reserva del nodo 401 en el dispositivo 410 de almacenamiento.
La presente invención puede realizarse en otras formas específicas sin alejarse de sus características esenciales. Las realizaciones descritas se han de considerar en todos los aspectos únicamente como ilustrativas y no restrictivas. El alcance de la invención se indica, por lo tanto, mediante las reivindicaciones adjuntas en lugar de mediante la descripción anterior. Todos los cambios que entran dentro del significado y rango de equivalencia de las reivindicaciones se han de abarcar dentro de su alcance.
10
Claims (1)
-
imagen1 imagen2
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/407,428 US8738701B2 (en) | 2012-02-28 | 2012-02-28 | Arbitration of disk ownership in a storage pool |
US201213407428 | 2012-02-28 | ||
PCT/US2013/025798 WO2013130262A1 (en) | 2012-02-28 | 2013-02-13 | Arbitration of disk ownership in a storage pool |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2632558T3 true ES2632558T3 (es) | 2017-09-14 |
Family
ID=49004471
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES13755733.6T Active ES2632558T3 (es) | 2012-02-28 | 2013-02-13 | Arbitración de propiedad de disco en un grupo de almacenamiento |
Country Status (7)
Country | Link |
---|---|
US (1) | US8738701B2 (es) |
EP (1) | EP2820549B1 (es) |
JP (1) | JP6170512B2 (es) |
KR (1) | KR102008042B1 (es) |
CN (1) | CN104160380B (es) |
ES (1) | ES2632558T3 (es) |
WO (1) | WO2013130262A1 (es) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9652030B2 (en) | 2009-01-30 | 2017-05-16 | Microsoft Technology Licensing, Llc | Navigation of a virtual plane using a zone of restriction for canceling noise |
US9641614B2 (en) | 2013-05-29 | 2017-05-02 | Microsoft Technology Licensing, Llc | Distributed storage defense in a cluster |
US10404520B2 (en) | 2013-05-29 | 2019-09-03 | Microsoft Technology Licensing, Llc | Efficient programmatic memory access over network file access protocols |
US9389968B2 (en) * | 2014-04-30 | 2016-07-12 | Netapp, Inc. | Preventing non-detectable data loss during site switchover |
US10270735B2 (en) * | 2014-10-10 | 2019-04-23 | Microsoft Technology Licensing, Llc | Distributed components in computing clusters |
WO2016106682A1 (zh) | 2014-12-31 | 2016-07-07 | 华为技术有限公司 | 一种集群脑裂后仲裁处理方法、仲裁存储装置以及系统 |
JP6472508B2 (ja) * | 2015-04-06 | 2019-02-20 | 株式会社日立製作所 | 管理計算機およびリソース管理方法 |
US9923965B2 (en) | 2015-06-05 | 2018-03-20 | International Business Machines Corporation | Storage mirroring over wide area network circuits with dynamic on-demand capacity |
US9930140B2 (en) * | 2015-09-15 | 2018-03-27 | International Business Machines Corporation | Tie-breaking for high availability clusters |
US10341252B2 (en) * | 2015-09-30 | 2019-07-02 | Veritas Technologies Llc | Partition arbitration optimization |
US9843453B2 (en) * | 2015-10-23 | 2017-12-12 | Pure Storage, Inc. | Authorizing I/O commands with I/O tokens |
US10581680B2 (en) | 2015-11-25 | 2020-03-03 | International Business Machines Corporation | Dynamic configuration of network features |
US9923839B2 (en) | 2015-11-25 | 2018-03-20 | International Business Machines Corporation | Configuring resources to exploit elastic network capability |
US9923784B2 (en) | 2015-11-25 | 2018-03-20 | International Business Machines Corporation | Data transfer using flexible dynamic elastic network service provider relationships |
US10057327B2 (en) | 2015-11-25 | 2018-08-21 | International Business Machines Corporation | Controlled transfer of data over an elastic network |
US10216441B2 (en) | 2015-11-25 | 2019-02-26 | International Business Machines Corporation | Dynamic quality of service for storage I/O port allocation |
US10177993B2 (en) | 2015-11-25 | 2019-01-08 | International Business Machines Corporation | Event-based data transfer scheduling using elastic network optimization criteria |
US10158743B2 (en) * | 2016-06-12 | 2018-12-18 | International Business Machines Corporation | Compute node cluster management |
US11397545B1 (en) | 2021-01-20 | 2022-07-26 | Pure Storage, Inc. | Emulating persistent reservations in a cloud-based storage system |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6178529B1 (en) | 1997-11-03 | 2001-01-23 | Microsoft Corporation | Method and system for resource monitoring of disparate resources in a server cluster |
US6279032B1 (en) | 1997-11-03 | 2001-08-21 | Microsoft Corporation | Method and system for quorum resource arbitration in a server cluster |
US7774469B2 (en) | 1999-03-26 | 2010-08-10 | Massa Michael T | Consistent cluster operational data in a server cluster using a quorum of replicas |
US6845395B1 (en) * | 1999-06-30 | 2005-01-18 | Emc Corporation | Method and apparatus for identifying network devices on a storage network |
US6990606B2 (en) * | 2000-07-28 | 2006-01-24 | International Business Machines Corporation | Cascading failover of a data management application for shared disk file systems in loosely coupled node clusters |
US6954881B1 (en) | 2000-10-13 | 2005-10-11 | International Business Machines Corporation | Method and apparatus for providing multi-path I/O in non-concurrent clustering environment using SCSI-3 persistent reserve |
US6965936B1 (en) | 2000-12-06 | 2005-11-15 | Novell, Inc. | Method for detecting and resolving a partition condition in a cluster |
US7127565B2 (en) * | 2001-08-20 | 2006-10-24 | Spinnaker Networks, Inc. | Method and system for safely arbitrating disk drive ownership using a timestamp voting algorithm |
US7277952B2 (en) * | 2001-09-28 | 2007-10-02 | Microsoft Corporation | Distributed system resource protection via arbitration and ownership |
US7631066B1 (en) | 2002-03-25 | 2009-12-08 | Symantec Operating Corporation | System and method for preventing data corruption in computer system clusters |
US20050132154A1 (en) | 2003-10-03 | 2005-06-16 | International Business Machines Corporation | Reliable leader election in storage area network |
US7260678B1 (en) * | 2004-10-13 | 2007-08-21 | Network Appliance, Inc. | System and method for determining disk ownership model |
US8719473B2 (en) | 2008-09-19 | 2014-05-06 | Microsoft Corporation | Resource arbitration for shared-write access via persistent reservation |
US7840730B2 (en) * | 2008-06-27 | 2010-11-23 | Microsoft Corporation | Cluster shared volumes |
US8046467B2 (en) | 2008-08-29 | 2011-10-25 | Microsoft Corporation | Maintaining client affinity in network load balancing systems |
US8417899B2 (en) | 2010-01-21 | 2013-04-09 | Oracle America, Inc. | System and method for controlling access to shared storage device |
US8443231B2 (en) | 2010-04-12 | 2013-05-14 | Symantec Corporation | Updating a list of quorum disks |
-
2012
- 2012-02-28 US US13/407,428 patent/US8738701B2/en not_active Expired - Fee Related
-
2013
- 2013-02-13 CN CN201380011496.6A patent/CN104160380B/zh not_active Expired - Fee Related
- 2013-02-13 WO PCT/US2013/025798 patent/WO2013130262A1/en active Application Filing
- 2013-02-13 EP EP13755733.6A patent/EP2820549B1/en not_active Not-in-force
- 2013-02-13 JP JP2014558762A patent/JP6170512B2/ja not_active Expired - Fee Related
- 2013-02-13 KR KR1020147025714A patent/KR102008042B1/ko active IP Right Grant
- 2013-02-13 ES ES13755733.6T patent/ES2632558T3/es active Active
Also Published As
Publication number | Publication date |
---|---|
EP2820549B1 (en) | 2017-04-19 |
JP6170512B2 (ja) | 2017-07-26 |
CN104160380A (zh) | 2014-11-19 |
US20130227009A1 (en) | 2013-08-29 |
CN104160380B (zh) | 2017-08-15 |
EP2820549A1 (en) | 2015-01-07 |
WO2013130262A1 (en) | 2013-09-06 |
KR102008042B1 (ko) | 2019-10-21 |
KR20140131961A (ko) | 2014-11-14 |
JP2015508213A (ja) | 2015-03-16 |
EP2820549A4 (en) | 2016-03-30 |
US8738701B2 (en) | 2014-05-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2632558T3 (es) | Arbitración de propiedad de disco en un grupo de almacenamiento | |
ES2882599T3 (es) | Distribución de eventos en dispositivos de borde | |
KR102660768B1 (ko) | Iot 프로비저닝 서비스 | |
US8099479B2 (en) | Distributed mesh network | |
ES2659835T3 (es) | Comunicación y procesamiento de datos de credenciales | |
EP3204869B1 (en) | Systems and methods to manage file access | |
JP2019536144A (ja) | Iotセキュリティーサービス | |
US8307085B2 (en) | Storing state of distributed architecture in external store | |
CN107273415B (zh) | 通过基于即时消息接发的主题索引的可搜索对等系统 | |
Girau et al. | Implementation of an experimental platform for the social internet of things | |
JP2006508470A5 (es) | ||
US20120284354A1 (en) | Method and system for dynamically creating and servicing master-slave pairs within and across switch fabrics of a portable computing device | |
JP2012503249A5 (es) | ||
BR112015029220B1 (pt) | Método para permitir acesso a um dispositivo de armazenamento e meio de armazenamento legível por computador | |
US10942798B2 (en) | Watchdog timer hierarchy | |
US12073260B2 (en) | Multi-phase distributed task coordination | |
ATE459928T1 (de) | Verteiltes computersystem | |
Biswas et al. | A novel leader election algorithm based on resources for ring networks | |
ES2812771T3 (es) | Método y aparato de almacenamiento de datos para terminal móvil | |
US9596131B2 (en) | Method for transiting operation mode of routing processor | |
Docking et al. | UNISON: Towards a middleware architecture for autonomous cyber defence | |
JP2009217688A (ja) | 情報処理システム、情報処理装置およびデータ管理方法 | |
MacIntosh et al. | Coevolution of hosts and parasites | |
EP3764599B1 (en) | Monitoring smart devices in a network | |
CN102932227A (zh) | 一种实现vlan网桥桥接技术的方法 |