Estoy trabajando en el diseño de un enlace de comunicaciones punto a punto para un cubesat . Solo quiero confirmar algo de mi comprensión.
En mi opinión, solo es necesario tener la capa física y la funcionalidad de capa de enlace de datos. ¿Por qué necesitaríamos una dirección IP o una capa de transporte para un enlace punto a punto único? Pero tal vez hay problemas que no conozco. Entiendo que debemos poder realizar un seguimiento de los paquetes que llegan desordenados o que no llegan a todos. Obviamente, este es un problema extremadamente difícil para una red grande como Internet, pero para un enlace punto a punto único, parece razonable implementar un esquema simple de reensamblado de paquetes para nosotros mismos.
Nuestra misión es monitorear el hielo marino ártico usando datos de reflectometría GNSS de señales GPS reflejadas desde la superficie de la tierra. Cuantos más datos podamos bajar, mejor. Por lo tanto, estamos motivados a usar protocolos con la menor sobrecarga posible.
Nuestro transceptor es un transceptor microhard n290 , que ha sido lanzado en satélites en el pasado. No es compatible con las estaciones satelitales amateurs existentes, no tuvimos la intención de interactuar con estas redes existentes. Proporciona FEC en hardware y una velocidad de hasta 1.2 Mbps de enlace ascendente o descendente.
Sabemos que necesitamos un protocolo que nos exponga una "interfaz de paquete". Es decir, necesitamos un protocolo de capa de enlace para empaquetar el flujo de datos en serie.
Como no tenemos ningún tipo de red, no necesitamos una capa IP. En cuanto a una capa de transporte, necesitamos poder reensamblar los paquetes de datos en el orden correcto y solicitar retransmisiones. ¿Es posible poner algo como TCP directamente en la parte superior de la capa de enlace y cortar la IP? Aunque esto todavía me parece una exageración. Nuestros datos de telemetría y estado se ajustarán a un solo paquete. En cuanto a los datos de carga útil, AFAICT todo lo que necesitamos hacer es dividirlos, etiquetarlos y proporcionar un campo de pedido. ¿Hay alguna razón para no hacer esto nosotros mismos? No parece una tarea difícil. Lo he hecho en Python utilizando búferes de protocolo de Google: puedo serializar un archivo, mezclar el orden y luego volver a ensamblarlo. Debería poner solicitudes repetidas sobre esto, pero todo lo demás debe ser manejado por la capa de enlace.
He estado buscando en el protocolo Saratoga ( enlace ), pero es la capa de transporte. Por lo tanto, no parece ser una buena opción.
Elprotocolo punto a punto ( enlace ) parece ser la manera más sensata de hacerlo. ¿Derecha? Es tan ligero como se obtiene.
Gracias por cualquier orientación :)