13 votos

Corrección de errores códigos que se usan en la vida real

Estoy muy interesado en la teoría de la codificación y me pregunto si hay una clase particular de los códigos que se utilizan en la práctica. Por ejemplo he leído que Reed-Solomon códigos se utilizan a menudo para la codificación de datos en un disco compacto.

En particular, me gustaría saber qué tipo de código se utiliza principalmente en la vida real y en la que concurso. Sé que no es una cuestión específica, pero estoy muy curioso de saber cómo la teoría de la codificación se utiliza en la tecnología actual.

Por otra parte también estoy interesado en saber que es más o menos la duración habitual de un código que se utiliza en la práctica.

Muchas gracias por la respuesta

9voto

patricksweeney Puntos 1642

He aquí unas cuantas:

  • La 10GBASE-T estándar de 10 Gbit/s Ethernet sobre cobre utiliza un $[2048,1723]_2$ código LDPC construido a partir de una generalización de código Reed-Solomon.

  • RAID 6 implementaciones a menudo el uso generalizado de Reed-Solomon códigos para corregir borraduras causado por error discos. Creo que la implementación de Linux RAID 6 utiliza códigos como $[n,k]_{2^8}$ donde $0 \le k < n \le 255$; normalmente algo como $k \approx 3$$n \approx 5$.

  • El objeto del sistema de almacenamiento Ceph admite una generalización de código Reed-Solomon para que los datos son accesibles incluso si varios de los nodos de almacenamiento no está disponible (borrado de codificación). No he estudiado cuidadosamente, pero creo que los parámetros se encuentran alrededor del mismo orden que los de RAID 6.

  • Corrección de errores de la memoria a menudo se utiliza una versión modificada de un código Hamming. De acuerdo a un desconocido Wikipedia contribuyente, $[72,64]_2$ $[127,120]_2$ son populares entre los parámetros.

  • El McEliece criptosistema se basa en un $[1632,1269,69]_2$ Goppa código. Supuestamente, este criptosistema es un candidato para el post-cuántica de la criptografía (criptografía que no está roto por las computadoras cuánticas).

  • UIT OTN utiliza un $[255,239]_{2^8}$ código Reed-Solomon para la corrección de errores en redes de fibra óptica.

  • En el aprendizaje de máquina, BCH y (más comúnmente) 1-de-n de los códigos se utilizan para implementar la no clasificación binaria de los datos utilizando una máquina de soporte vectorial. Hay una amplia gama de parámetros, dependiendo de la aplicación, pero calculo que es por lo general alrededor de la longitud de 10 a 1000.

  • En criptografía, Shamir secreto de compartir esquema es un caso especial de Reed-Solomon borrado de codificación. Yo no sé qué secreto compartido se utiliza normalmente, así que no sé lo que los parámetros típicos sería.

Véase también Jyrki la respuesta a mi pregunta de hace un rato. Él cubre varias aplicaciones de telecomunicaciones y sus parámetros característicos.

5voto

Markus Scheuer Puntos 16133

Ejemplo en la práctica: En la Ferroviaria Europea de Negocios (Señalización) tenemos que seguir las Normas específicas de Seguridad (según CENELEC). Un aspecto importante es la transferencia de datos en cerrada de sistemas de transmisión. Uno de los muchos y técnicas/medidas para evitar fallos resp. la detección de fallos en el fin de mitigar las consecuencias es el uso de códigos CRC.

El desafío era encontrar CRC códigos que son con respecto a su error de detección de propiedades adecuadas para la aplicación específica y que también siga los requisitos de la Norma (EN 50159-1), es decir, una adecuada resp. buen código CRC.

Nota: UN código CRC es correcto si el error no detectado probabilidad de $P_{ud}(C,\varepsilon)$ del Código es una función creciente de la bit-probabilidad de error $\varepsilon$ $\varepsilon \in [0,\frac{1}{2}]$ . Por lo tanto, puede ser estimado por

$$P_{ud}(C,\varepsilon)\leq P_{ud}(C,\frac{1}{2})$$

lo que lo hace adecuado para los cálculos posteriores. La bondad de un CRC es un poco más débil de la propiedad.

Algunos aspectos importantes:

  • Mensaje de datos longitud: La longitud del bloque de datos de entrada en el que el CRC se calcula es crucial para la calidad de la detección de error de capacidades. Resulta que el mínimo Hammingdistance $d_{min}(n)$ de los datos con la longitud del bloque de $n$ debe ser maximizada (ver, por ejemplo, el Óptimo de Redundancia Cíclica-los Códigos de Verificación de 16 Bits de Redundancia (1990) de Castagnoli et al.

  • Propio, la Bondad: son las propiedades de la CRC código que también dependen de los datos del mensaje de longitud

  • Uso de la Norma Crc es que no siempre la mejor opción.

Algunos de los Ccr fueron diseñados para un uso específico y por lo tanto apropiado para una pequeña gama de aplicaciones sólo. La comunidad de internet, a veces, ha adoptado un CRC y así se convirtió en un estándar o norma de facto. La investigación a partir de la $90$s ha revelado algunas de las mejores alternativas. Esto también fue posible debido a la creciente de energía de la computadora. Ver, por ejemplo, el papel no detectado probabilidad de error rendimiento de redundancia cíclica-los códigos de verificación de 16 bits de redundancia (2000) de Baicheva, et al.

Koopman presenta algunos interesantes artículos (por ejemplo, Código de Redundancia Cíclica (CRC) Polinomio de Selección Para Redes Embebidas (2004).

Aquí un buen tutorial de Técnicas para la aviación a partir de Koopman ($2012$) con respecto a este tema.

Nota: En el hecho de que hemos estudiado muchos papeles (y otras fuentes) con el fin de hacer finalmente una elección adecuada.


Nota: hace Algún tiempo he publicado una diferente de la suma de comprobación problema. Pero, tal vez es demasiado simple y no el tipo de cifrado de la información que están buscando.

3voto

Hagen von Eitzen Puntos 171160

Para dar una totalmente diferente ejemplo, los códigos también se han utilizado para sistemas de apuestas que garantiza que al menos una apuesta con muchos partidos, mientras que la colocación relativamente pocas apuestas

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X