DESCRIPCIÓN
PROTOCOLO ANTI-COLISIÓN CON COMUNICACIÓN UNIDIRECCIONAL
Sector de la técnica, telecomunicaciones, protocolos, Control de acceso al medio (Capa 2 de la torre OSI). Etiquetas para identificación por radiofrecuencia. Estado de la técnica
Un sistema de comunicaciones por canal común es el ALOHA que contempla una gran simplicidad en el mecanismo de contienda al medio. Los emisores envían sus tramas cuando lo desean y escuchan a posteriori el canal de retorno para recibir una confirmación de recepción correcta. Si ésta no llega en un intervalo de tiempo determinado se da la transmisión por fallida y se retransmite la trama.
Otro sistema de contienda universalmente utilizado es el CSMA-CD. Es el protocolo de acceso al medio de Ethernet. En él los emisores escuchan el canal para saber si está libre (Carrier Sense Múltiple Access) y cuando no escuchan ninguna transmisión transmiten su trama. A pesar de esta escucha se pueden producir colisiones y por tanto durante la ventana de vulnerabilidad (período de tiempo desde el comienzo de la transmisión en el que se pueden producir colisiones) el emisor escucha el canal para comprobar que lo que transmite no se ve corrompido por otra emisión simultánea. El primer caso, ALOHA, obliga a tener un canal de retorno y por tanto los emisores deben ser capaces también de recibir. En el segundo caso, Ethernet, los emisores deben disponer de algún mecanismo de escucha del canal, que es en sí mismo un receptor. Los sistemas actuales que más parecido pueden tener con este protocolo son los sistemas anticolisión utilizados en las etiquetas de radiofrecuencia. Estas etiquetas se alimentan del campo radioeléctrico de un equipo lector. Cuando reciben alimentación envían por radiofrecuencia los datos almacenados en una memoria. Los sistemas convencionales tienen problemas de colisión cuando más de una etiqueta es alimentada a la vez. Un sistema novedoso es el presentado por Arizona Microchip Technology (AMT) (www.microchip.com), MCRF250. Es una etiqueta sin contactos con sistema anticolisión. En este caso, y otros sistemas similares, el receptor informa a los emisores de la colisión mediante el apagado del campo radioeléctrico que los alimenta. El sistema que más se parece al presentado en esta patente es el descrito en la patente PCT US98/01020 propiedad de Checkpoint Systems Inc. Las comunicaciones son también unidireccionales y cada etiqueta envía su identificación de forma periódica con largos periodos de no transmisión entre dos transmisiones consecutivas. Este periodo es
HOJA DE SUSTITUCIÓN (REGLA 26)
fijo para cada etiqueta y varía entre ellas debido a tolerancias de fabricación en los componentes electrónicos que componen la etiqueta.
Las diferencias fundamentales con este invento son las siguientes:
- El resultado de la patente de Checkpoint depende de procesos tecnológicos mientras que el de esta patente no.
- En el protocolo de checkpoint, si dos etiquetas tienen un valor del tiempo entre transmisiones muy aproximado (algo perfectamente factible) y se activan a la vez, las tramas emitidas colisionarán durante mucho tiempo. En este protocolo, al estar definido el tiempo entre transmisiones por una variable seudo-aleatoria los instantes de transmisión divergen rápidamente.
- El protocolo de Checkpoint tiene unas prestaciones pobres (largos tiempos de lectura) para un número pequeño de etiquetas. El tiempo entre dos transmisiones es grande ("with large, non-trasnmission intervals between transmissions") por lo que después de la primera colisión pasa un largo periodo antes de la siguiente transmisión. En este protocolo las retransmisiones se realizan mucho más frecuentemente, ya que la varianza de la variable aleatoria "tiempo entre transmisiones" es mucho más alta.
Explicación
Este protocolo está diseñado para funcionar con señales radioeléctricas no guiadas (por el aire o espacio libre), aunque puede usarse en medios guiados y mediante la propagación de otro tipo de señales (como las acústicas).
El protocolo es por canal común porque cuando un equipo está transmitiendo ningún otro puede hacerlo y es de contienda porque no existe método para adjudicar el acceso al canal, sino que todos transmiten cuando quieren; si intentan transmitir dos o más a la vez ninguna trama es recibida correctamente. Es unidireccional porque los equipos emisores no tienen capacidad de recepción ni de escuchar el canal cuando transmiten.
Cuando los mensajes se pierden por errores de transmisión del canal o por colisión con otros mensajes no existe mecanismo de detección ni recuperación de ningún tipo.
Se produce una colisión cuando, estando transmitiendo un emisor al menos otro emisor empieza a transmitir antes de que se haya recibido el último bit de la primera trama en ser transmitida.
N emisores y M receptores comparten el canal. Los emisores envían tramas con información con intervalos de tiempo marcados por una variable aleatoria. Todos los
HOJA DE SUSTITUCIÓN REGLA 26
receptores reciben el mensaje que es procesado por el receptor determinado. Es decir, en un entorno pueden estar compitiendo por el canal de comunicaciones varios conjuntos de emisores y receptores, cada receptor controla a un conjunto disjunto de emisores (un emisor está controlado por un único receptor) y por tanto desechará cualquier trama que reciba de un emisor que no forme parte de su propio conjunto
La implementación de una variable aleatoria es harto complicada así que realmente se implementan variables seudo-aleatorias mediante algoritmos sencillos. Si todas las etiquetas tienen el mismo algoritmo generarían la misma secuencia de tiempos entre transmisiones y por tanto colisionarían siempre. Para evitarlo se inicializa cada algoritmo con un valor distinto para cada etiqueta, este valor es el propio número de serie de la etiqueta ya que éste es único.
Las tramas están compuestas, en una versión simple, de: un número de serie que identifica al emisor y un campo de control de errores. Este último campo permite, en la recepción, comprobar que no tiene errores y darlo por correctamente recibido. Con este protocolo no hay garantía de que se reciban correctamente los mensajes, pero sí se puede determinar la probabilidad de colisión y, lo que es más importante para sus aplicaciones prácticas, la probabilidad de que pase un intervalo de tiempo dado sin que se reciba al menos una trama correcta de un emisor determinado. La ventaja con respecto a los protocolos anteriores es su menor coste. Los emisores no necesitan disponer de un equipo de recepción y los receptores no necesitan disponer de un emisor. Además, al ser el protocolo tan simple su implementación en un chip es más simple lo que implica menor superficie de silicio y por tanto menor coste de la lógica de control de protocolo. Una aplicación de este protocolo es la lectura de múltiples etiquetas de identificación (RFID) en una sola lectura. Por ejemplo la lectura de sobres dentro de una saca. En este caso es más sencillo leer todas las etiquetas simultáneamente que separarlas para que pasen por el lector de una en una. En esta aplicación el parámetro fundamental es la probabilidad de NO leer una etiqueta que se encuentra dentro del radio de lectura del lector. Este parámetro es función del tiempo de lectura y decrece exponencialmente cuando éste crece. Como se expone más adelante en la descripción de una implementación real, esta probabilidad puede ser muy baja (menor de una entre un millón) para un alto número de etiquetas.
HOJA DE SUSTITUCIÓN REGLA 26
Otra de las aplicaciones es el control de los niños en espacios abiertos o masificados. El niño dispondrá de un emisor y el padre de un receptor que responda a su número de serie. Mientras el receptor reciba al menos una trama dentro de un intervalo determinado (por ejemplo cinco segundos) el padre podrá dedicarse a hacer la compra en el hipermercado o leer el periódico en el parque. Cuando no se recibe ninguna trama en esos cinco segundos el receptor dispara una alarma acústica o de otro tipo. El protocolo tiene la propiedad de poder generar falsas ausencias (el niño está cerca pero las colisiones y los errores de transmisión han impedido la recepción de al menos una trama en el intervalo establecido) pero no se generan falsas presencias. Para evitar ataques malintencionados (dejar un emisor que simule al del niño para secuestrarlo) se dota al protocolo de autentificación criptográfica. Esta técnica de autentificación no es objeto de reivindicación.
El protocolo esta diseñado para funcionar en un entorno de muchos emisores y muchos receptores como puede ser un parque o un hipermercado donde todos los padres controlan a sus hijos con el mismo equipo comercial que usa la misma frecuencia portadora.
La misma aplicación se puede realizar con las maletas u objetos transportados y con los animales de compañía. Evitando su robo por descuido en lugares concurridos como aeropuertos, puertos y estaciones de tren. Otra aplicación es la detección de acceso. En el sentido que se puede determinar el paso de un objeto o persona por la cercanía de un receptor. Una aplicación puede ser, como ejemplo, un peaje de autopista sin parada. Los vehículos llevan un emisor con su número de serie y la técnica de autenticación; cuando pasan por el peaje se detecta el paso. El sistema puede utilizar una frecuencia única para todos los equipos que se vendan. Es decir, todos los niños de un parque estarán contendiendo por transmitir por el mismo canal. Por lo tanto sólo se necesita una determinada frecuencia (con su ancho de banda correspondiente) para que se puedan fabricar y comercializar productos para el gran público. Como se ve en las aplicaciones, el parámetro fundamental del sistema es la probabilidad de que no se reciba ninguna trama en un intervalo de tiempo determinado. El otro parámetro es la potencia de emisión que determina la distancia máxima a partir de la cual no se reciben tramas.
HOJA DE SUSTITUCIÓN REGLA 26
El segundo parámetro determina qué espacio está cubierto por el receptor y, en los resultados que se mostrarán más adelante, el número de emisores significa realmente número de emisores en el volumen cubierto por el receptor. El primer parámetro es una función de la aplicación. Un padre en el parque puede activarlo a 5 segundos y en el hipermercado (donde el niño es muy difícil de descubrir entre la gente) a 1 segundo.
Para evitar los ataques malintencionados se usará una técnica de firma digital de clave secreta (aunque se pueden implementar otras técnicas). El emisor y el receptor comparten una clave secreta de tamaño adecuado (64 bits es suficiente). Se realiza un XOR (OR exclusiva entre bits) entre el mensaje y la clave y el resultado se pasa por un función HASH criptográficamente segura (MD-5 o SHA). Los bits resultantes (o una parte de ellos) se envían junto con el mensaje original. Un atacante que no conozca la clave secreta no podrá generar mensajes firmados. Pero un posible ataque es la repetición de las tramas una vez escuchada una (ataque por repetición de datagrama). Para evitar este tipo de ataques el emisor envía junto con su número de serie un número secuencial que se incrementa después de cada uso. El receptor sólo aceptará como válidas las tramas que tengan un número secuencial superior (no tiene que ser el siguiente número) al último recibido correctamente. Si el número secuencial es lo bastante grande (32 bits, por ejemplo) nunca se llegará al último valor en la vida útil del emisor.
Un modo de realización de la invención
La variable aleatoria que determina en cada emisor el tiempo que pasa entre una trama y otra es una variable seudo-aleatoria exponencial. Es suficiente con que cada emisor tenga una semilla única para que sus comportamientos sean equivalentes a una variable aleatoria auténticamente exponencial. Esta implementación es muy simple y se puede utilizar un método lineal congruencial.
Una posible implementación de la trama es: Número de serie (SN), número secuencial (RN) y firma digital (SG)
<Número de serie: 32 bits><Número secuencial:32 bits><Firma: 32 bits> Siendo la longitud del mensaje
Zm = |SN| + |RN| + |SG| = 96 Los parámetros que definen el canal:
HOJA DE SUSTITUCIÓN REGLA 26
el tiempo de ocupación del canal es
To ^ ~ (segundos)
C = velocidad de transmisión (segundos)
1 μ = — T siendo N el número de transmisores y el tiempo medio entre transmisiones de un emisor
N λ - (mensajes/ segundo)
-*/
C C con lo que la probabilidad de colisión (Pe) para una trama cualquiera es β = l-e-'(AW)
Siendo Ta el tiempo de disparo de la alarma, la probabilidad de que pase este tiempo sin que se reciba correctamente de un emisor una trama se denota por Prob(tx>ta).
Según el número de colisiones se pueden dar los siguientes casos en los que salta la alarma: caso 1 : Ninguna colisión y tiempo entre 2 tramas consecutivas mayor que Ta. caso 2: Una colisión y tiempo entre 3 tramas consecutivas mayor que Ta. caso n: n-1 colisiones y tiempo entre n+1 tramas consecutivas mayor que Ta
Por tanto Prob(tχ>ta) es la suma de las probabilidades de todos los casos anteriores multiplicados por su probabilidad de ocurrencia. Con lo que se obtiene
La figura 3 muestra el comportamiento del sistema para varios valores del número de emisores (entre 10 emisores y 90). Para este rango de emisores el modelo matemático y la simulación indican que 0.05 segundos de tiempo medio de emisión es el óptimo para valores medios y altos (en un rango de 0 a 2 segundos). El eje y muestra el número medio de falsas alarmas por hora y el eje x el tiempo de disparo de la alarma (Ta). La escala temporal está expresada en 0.02 segundos. El número medio de falsas ausencias para 90 emisores y Ta igual a dos segundos es menor de uno entre 250.000 segundos
HOJA DE SUSTITUCIÓN REGLA 26
(5,78 días). Es decir, el sistema tiene un comportamiento más que aceptable para una aplicación de control de presencia de niños, objetos o animales. La figura 4 muestra los valores útiles para una aplicación de identificación por etiquetas de radiofrecuencia. Los productos pasan por una cinta de la caja registradora y se encuentran en el área de cobertura de un receptor durante 0.5 segundos. Así que el parámetro más importante es la probabilidad de que una etiqueta no sea detectada en 0.5 segundos. Vemos que esa probabilidad es menor de 1 entre 2 millones para 10 y 20 etiquetas simultáneas y de 3.5 entre 1 millón para 30 etiquetas. Para un canal de 500 Kbits por segundo el tamaño de trama es de 200 microsegundos (algo menos pero se contemplan también los bits de sincronización del receptor). Todos los valores anteriores se han obtenido para este valor de trama. Pero son totalmente extrapolables a otros valores de trama escalando el eje de tiempos en la misma proporción que cambia el tamaño de trama. En lo que respecta a la implementación del protocolo del emisor, en la figura 1 se puede ver un diagrama de flujo. El emisor espera el tiempo ordenado por la variable aleatoria, lee el último número secuencial enviado y lo incrementa en la unidad, guarda el resultado para usarlo en el siguiente ciclo, concatena el número de serie y el número secuencial y genera la firma, concatena la firma a los dos números anteriores y lo transmite. Para el receptor se describe su funcionamiento, por cuestión de claridad, para el control de un sólo emisor, pero es equivalente para el control de varios emisores. Se muestra en la figura 2. Al arrancar se resetea un temporizador en tiempo real. Si el temporizador llega a Ta se dispara la alarma; si se recibe una trama y el número de serie es el esperado, el número secuencial es mayor que el último número secuencial recibido y la firma es correcta se resetea el contador.
HOJA DE SUSTITUCIÓN REGLA 26