Sintaxis de un archivo de descripción de configuración de RAID

 

Top  Previous  Next

Es posible crear y almacenar sus propios parámetros de configuración de RAID. La sintaxis de esos archivos es similar a la del lenguaje XML. Se almacenan en archivos .xml

En el tema Archivos de descripción de configuración de RAID se muestran unos ejemplos de archivos.

Ejemplo de archivo de configuración de RAID

<RAIDList>

  <RAID name="RAID6Complex" parents="5" rows="6" blocksize="16777216">

    <Table>

      <Block id="A1">ReedSolomon</Block>

      <Block id="B1">1</Block>

      <Block id="C1">2</Block>

      <Block id="D1">3</Block>

      <Block id="E1">XorOfData</Block>

      <Block id="A2">4</Block>

      <Block id="B2">5</Block>

      <Block id="C2">6</Block>

      <Block id="D2">XorOfData</Block>

      <Block id="E2">ReedSolomon</Block>

      <Block id="A3">8</Block>

      <Block id="B3">9</Block>

      <Block id="C3">XorOfData</Block>

      <Block id="D3">ReedSolomon</Block>

      <Block id="E3">7</Block>

      <Block id="A4">12</Block>

      <Block id="B4">XorOfData</Block>

      <Block id="C4">ReedSolomon</Block>

      <Block id="D4">10</Block>

      <Block id="E4">11</Block>

      <Block id="A5">XorOfData</Block>

      <Block id="B5">ReedSolomon</Block>

      <Block id="C5">13</Block>

      <Block id="D5">14</Block>

      <Block id="E5">15</Block>

      <Block id="A6" sequence="1">XorOfAll</Block>

      <Block id="B6" sequence="2">XorOfAll</Block>

      <Block id="C6" sequence="3">XorOfAll</Block>

      <Block id="D6" sequence="4">XorOfAll</Block>

      <Block id="E6" sequence="5">XorOfAll</Block>

    </Table>

    <Sequences>

      <Sequence id="1">A1 A2 A3 A4 A5 A6</Sequence>

      <Sequence id="2">B1 B2 B3 B4 B5 B6</Sequence>

      <Sequence id="3">C1 C2 C3 C4 C5 C6</Sequence>

      <Sequence id="4">D1 D2 D3 D4 D5 D6</Sequence>

      <Sequence id="5">E1 E2 E3 E4 E5 E6</Sequence>

    </Sequences>

  </RAID>

</RAIDList>

Estructura de archivo

Encabezado de archivo

El archivo comienza con un encabezado XML estándar:

<?xml version="1.0" encoding="utf-8"?>

Sección RAIDList

<RAIDList>

Puede contener cualquier número de secciones <RAID> y requiere un elemento de cierre </FileTypeList>.

Ejemplo de estructura de sección:

  <RAIDList>

    <RAID [attributes]>

      ...

    </RAID>

    ...

    <RAID [attributes]>

      ...

    </RAID>

Sección RAID

Esta sección describe cada diseño de RAID.

Debe incluir al menos una sección <Table> y puede tener un bloque <Sequences> y un bloque <Offsets>.

Atributos:

name

<string>

Opcional

El nombre del diseño de RAID.

parents

<u16>

Obligatorio

El nombre de objetos primarios.

rows

<u16>

Obligatorio

El número de filas en la tabla de diseño de RAID.

blocksize

<u32>

Obligatorio

El tamaño de bloques del RAID en bytes.

Ejemplo de estructura de sección:

  <RAIDList>

    <RAID name="example" parents="2" rows="2" blocksize="16777216">

      <Table>

        ...

      </Table>

      <Sequences>

        ...

      </Sequences>

      <Offsets>

        ...

      </Offsets>

    </RAID>

  </RAIDList>

Sección Table

Esta sección describe la tabla de diseño de RAID. Contiene los elementos <Block> cuyo número es el producto de dos atributos en la sección <RAID>: <parents> x <rows>.

Ejemplo de estructura de sección:

  <RAIDList>

    <RAID name="example" parents="2" rows="2" blocksize="16777216">

      <Table>

        <Block [attributes]> ... </Block>

        <Block [attributes]> ... </Block>

        <Block [attributes]> ... </Block>

        <Block [attributes]> ... </Block>

      </Table>

    </RAID>

  </RAIDList>

Elemento Block

Este elemento especifica el número de bloque en la tabla de diseño de RAID (un número entero positivo) o un bloque de corrección de errores de los siguientes tipos:

PD o ParityOfData (paridad de datos)
PA o ParityOfAll (paridad de todos)
RS o ReedSolomon
U o Unknown (desconocido)
I o Ignore (omitir)

Cualquier otro valor se procesa como Unknown.

Atributos:

id

<string>

Obligatorio

El identificador alfanumérico del bloque en la tabla de diseño de RAID. El elemento en la 3.ª columna de la 2.ª línea se designa como C2. Después de letra Z se utiliza AA , etc.

sequence

<u16> or row

Opcional

El identificador de la secuencia. El atributo debe estar especificado sólo para bloques de suma de comprobación de las secuencias descritas en la sección <Sequences>. Por defecto: row (omitir).

Sección Sequences

Esta sección describe las secuencias de suma de comprobación de datos utilizadas para conservar la integridad de datos. Puede contener cualquier número de los elementos <Sequence>.

Ejemplo de estructura de sección:

  <RAIDList>

    <RAID name="example" parents="4" rows="4" blocksize="16777216">

      <Table>

        ...

      </Table>

      <Sequences>

        <Sequence [attributes]> ... </Sequence>

        ...

        <Sequence [attributes]> ... </Sequence>

      </Sequences>

    </RAID>

  </RAIDList>

Elemento Sequence

El elemento contiene la lista de bloques de RAID separados por un espacio que pertenece a esa secuencia.

Atributos:

id

<u16>

Obligatorio

El identificador de secuencia.

Ejemplo de elemento:

Vea el ejemplo de archivo de configuración de RAID.

Sección Offsets

Esta sección describe los desplazamientos para cada objeto primario. Contiene los elementos <Offset> cuyo número no debe superar el valor del atributo parents (elementos primarios) de la sección <RAID>. Si la sección <Offsets> está ausente, los desplazamientos se procesarán como cero.

Ejemplo de estructura de sección:

  <RAIDList>

    <RAID name="example" parents="4" rows="4" blocksize="16777216">

      <Table>

        ...

      </Table>

      <Offsets>

        <Offset [attributes]> ... </Offset>

        <Offset [attributes]> ... </Offset>

        <Offset [attributes]> ... </Offset>

        <Offset [attributes]> ... </Offset>

      </Offsets>

    </RAID>

  </RAIDList>

Elemento Offset

Este elemento especifica el desplazamiento de un elemento primario de RAID en bytes.

Atributos:

id

<u16>

Obligatorio

El identificador del elemento primario de RAID (de 1 al atributo parents de la sección <RAID>).

Ejemplo de elemento:

  <RAIDList>

    <RAID name="example" parents="4" rows="4" blocksize="16777216">

      <Table>

        ...

      </Table>

      <Offsets>

        <Offset id="1"> 0x00100</Offset>

        <Offset id="3"> 0x01000</Offset>

      </Offsets>

    </RAID>

  </RAIDList>

Comentarios

<!-- Cadena de comentarios -->

Una cadena XML estándar para un comentario.