El Protocolo de Internet de línea serie ( SLIP ) [1] [2] es una encapsulación del Protocolo de Internet [a] diseñado para funcionar a través de puertos serie y conexiones de enrutador . Está documentado en RFC 1055. En las computadoras personales, SLIP ha sido reemplazado en gran medida por el protocolo punto a punto (PPP), que está mejor diseñado, tiene más funciones y no requiere que se establezca la configuración de su dirección IP antes de está establecido. En los microcontroladores , sin embargo, SLIP sigue siendo la forma preferida de encapsular paquetes IP , debido a su muy pequeña sobrecarga.
Algunas personas se refieren al exitoso y ampliamente utilizado protocolo de Internet de línea serie RFC 1055 como "SLIP de Rick Adams", [3] para evitar confusiones con otros protocolos propuestos denominados "SLIP". Esos otros protocolos incluyen el protocolo de interfaz de línea serie RFC 914, apéndice D, mucho más complicado . [3]
SLIP modifica un datagrama TCP/IP estándar mediante:
SLIP requiere una configuración de puerto serie de 8 bits de datos , sin paridad y control de flujo de hardware EIA o configuración de operación UART en modo CLOCAL ( módem nulo de 3 cables ) .
SLIP no proporciona detección de errores , ya que depende de protocolos de capa superior para ello. Por lo tanto, SLIP por sí solo no es satisfactorio en un enlace que es propenso a errores, como una conexión de acceso telefónico de mala calidad .
Los caracteres de escape SLIP también eran necesarios en algunas conexiones de módem para escapar del conjunto de comandos de Hayes , permitiendo así pasar datos binarios a través de aquellos módems que reconocieran algunos caracteres como comandos.
Una versión de SLIP con compresión de encabezado se llama SLIP comprimido ( CSLIP ). [4] El algoritmo de compresión utilizado en CSLIP se conoce como compresión de encabezado TCP/IP de Van Jacobson . [5] CSLIP no tiene ningún efecto sobre la carga útil de datos de un paquete y es independiente de cualquier compresión realizada por el módem de línea serie utilizado para la transmisión. Reduce el encabezado del Protocolo de control de transmisión (TCP) de veinte bytes a siete bytes. CSLIP no tiene ningún efecto en los datagramas del Protocolo de datagramas de usuario (UDP).
RFC 1055, un "no estándar" para SLIP, tiene sus orígenes en la implementación 3COM UNET TCP/IP de la década de 1980. Rick Adams añadió SLIP al popular 4.2BSD en 1984 y "rápidamente se puso de moda". En el momento del RFC (1988), se describe como "comúnmente utilizado en enlaces serie dedicados y, a veces, con fines de acceso telefónico". [6]
La última versión de FreeBSD que incluye "slattach" (un comando para conectarse a slip) en la base de datos manual es FreeBSD 7.4, lanzada en 2011. El manual afirma que existe negociación automática para CSLIP. La versión FreeBSD se hereda de 4.3BSD. [7]
Linux anteriormente usaba la misma base de código para SLIP y KISS (TNC) . La división ocurrió antes del inicio del historial de git del kernel (Linux-2.6.12-rc2, 2005). [8] El controlador SLIP ofrece un modo de escape especial de "6 bits" para adaptarse a módems incapaces de manejar caracteres que no sean ASCII. [9] El comando slattach de Linux (escrito de forma independiente) también tiene la capacidad de detectar automáticamente la compatibilidad con CSLIP. [10]