lunes, 25 de octubre de 2010

PROTOCOLO KERMIT

Kermit es un protocolo de transferencia de ficheros, muy conocido, que se usa en numerosos paquetes de software diseñados para la comunicación a través de líneas telefónicas. Prácticamente cualquier protocolo de transferencia de ficheros que se use en microodenadores utiliza una unidad básica llamada paquete: agrupación de varios elementos o campos formados por bytes.

Las principales características de este protocolo son:
  • La longitud de los bloques es variable y se indica en el segundo carácter del bloque.
  • Existen diferentes tipos de bloques; de cabecera, de datos, de acuse de recibo, etc….
  • Ambos dispositivos no intercambian caracteres sueltos, sino que siempre mandan bloques.
La estructura de cada bloque es la siguiente: primero se manda el carácter SOH (primer carácter, el único carácter menor que 32 ; que no se modifica). A continuación la Longitud del mensaje “caracterizada” (longitud + 32). Después una carácter que indica el tipo de mensaje.
Por ejemplo:
  • La “S” indica paquete inicial.
  • La “D” indica Datos.
  • La “Y” indica acuse de recibo (ack).
  • La “N” indica No reconocimiento.
  • La “Z” indica fin de fichero.

El protocolo Kermit utiliza dos estrategias para tratar caracteres menores de 32 : caracterización y codificación.
La caracterización consiste en sumar 32 al carácter y para descaracterizarlo será por tanto preciso restar 32. Este método no se emplea con los bytes de datos, ya que para datos mayores de 223 no valdría.
Los bytes(Byte) de datos no se codifican todos, sino que sólo se codifican los menores de 32 y para ello se hace la función XOR con el dato y con 64. Para decodificarlo se hace la función XOR con 64 de nuevo. Así mismo, delante del dato codificado se inserta el carácter #. Si realmente se manda el carácter # como dato, entonces éste se manda dos veces.
El hecho de no mandar caracteres con códigos ASCII menores al 32, es debido a que en algunos sistemas estos caracteres pueden tener asignada una misión especial que perturbe el funcionamiento de la transmisión.

No hay comentarios:

Publicar un comentario