Il Serial Line Internet Protocol, noto anche con l’acronimo SLIP, è un mezzo per inviare datagrammi del protocollo Internet su un collegamento seriale. Trasmette ogni byte di un pacchetto, aggiungendo uno o più byte marker univoci al flusso secondo necessità. SLIP può essere utilizzato da due sistemi per comunicare tramite una connessione via cavo diretta o un collegamento modem. La maggior parte dei personal computer utilizza invece il protocollo PPP (Point-to-Point Protocol), ma lo SLIP viene spesso utilizzato quando è richiesto un sovraccarico molto basso.
Quando si trasmette un datagramma, il protocollo Internet della linea seriale può inviare prima un byte marker di “fine” sul collegamento seriale. Quindi invia ogni byte del pacchetto, a meno che non sia uno dei due valori decimali: 219 o 192. Se è 192, il valore del marker di fine, SLIP invia due byte speciali al suo posto; 219 seguito da 220. Se è 219, SLIP invia un codice a due byte diverso: 219 seguito da 221. Una volta inviati tutti i byte del pacchetto del protocollo Internet, SLIP trasmette il 192 byte del marker di fine.
Quando un pacchetto viene ricevuto da SLIP, rimuove i marcatori di fine e sostituisce eventuali coppie di byte speciali con i loro valori originali. Alcune implementazioni di SLIP possono anche rimuovere i pacchetti di lunghezza zero. Il datagramma risultante, se presente, viene quindi passato al livello di rete successivo senza ulteriori analisi. Il rilevamento e la correzione degli errori sono lasciati al livello successivo, che deve richiedere una ritrasmissione del pacchetto se viene scoperto un errore.
La specifica SLIP è stata rilasciata dall’Internet Engineering Task Force (IETF) nel 1988 come Request For Comments (RFC) 1055. Identifica diverse carenze SLIP, inclusa la gestione degli errori e la mancanza di messaggi di controllo. Un altro problema comune con Serial Line Internet Protocol è l’assenza di identificazione del protocollo di pacchetto. Poiché SLIP è stato progettato solo per gestire datagrammi del protocollo Internet, questo potrebbe non essere un problema frequente. SLIP è abbastanza in grado di gestire più protocolli Internet, tuttavia, dato un mezzo per identificarli.
La mancanza di sicurezza è un’altra considerazione per l’utilizzo di Serial Line Internet Protocol. Non esiste alcun meccanismo per l’autenticazione della connessione o alcun tipo di crittografia dei dati a questo livello con SLIP. Inoltre, non è possibile rilevare gli indirizzi del protocollo Internet per l’instradamento al livello di rete successivo. Per quanto riguarda la dimensione massima del pacchetto, la specifica SLIP è vaga, suggerendo un limite utilizzato da un’altra implementazione.
Serial Line Internet Protocol non comprime alcun pacchetto di dati, anche se il modem sul collegamento seriale lo farà, se è in uso un modem. Lo SLIP compresso (CSLIP), definito nel 1990 dalla RFC 1144, fa uno sforzo in questa direzione. Riduce l’intestazione TCP (Transmission Control Protocol) di ciascun pacchetto a sette byte dai 20 originali. Tuttavia, il resto del pacchetto rimane invariato. Nel 1994, PPP, definito in RFC 1661, è stato creato come un nuovo protocollo robusto che ha risolto molti problemi SLIP.