Serial Line Internet Protocol

from Wikipedia, the free encyclopedia

Serial Line Internet Protocol ( SLIP ) is a network protocol of the data link layer .

SLIP with TCP / IP protocol stack
application FTP SMTP HTTP DNS ...
transport TCP UDP
Mediation IPv4
Network access SLIP PPP
Serial line ...

It is used to establish an IP network connection between two computers that are connected via a serial interface. The Point-to-Point Protocol (PPP) is now mostly used for this.

SLIP takes the simplest possible route for such a connection, by simply sending the bytes of an IP packet over the serial cable. The end of the packet is marked with the special END number 192 (octal code 300). If this character occurs within the packet to be sent, the sequence 219/220 (octal 333+ 334) and for the character No. 219 itself the sequence 219/221 (octal 333+ 335) is transmitted instead . The character number 219 is called the ESC character.

A modification of the protocol also sends the END character at the beginning of each packet. This makes the transmission more robust against low line noise between the packets.

SLIP has no addressing and no error detection. These must be made available by the higher-level protocols:

  • SLIP: no error detection and addressing
  • IP: checksum for IP header data, 32-bit addresses
  • UDP: checksum over UDP headers and data, 16-bit ports
  • TCP: checksum over TCP headers and data, 16-bit ports

Differences to PPP

The PPP protocol is much more complex than SLIP. First of all, SLIP requires that all bytes can be sent unchanged over the serial cable. This is often not possible because terminal drivers interpret some octets specifically, for example interpret CTRL-Q and CTRL-S as start / stop characters or insert a line feed before a carriage return. Certain characters can be forbidden via PPP. These are then replaced by character sequences.

PPP also allows the transmission of network parameters ( IP address , gateway address) and authentication, as is required by many Internet service providers today.

Other parameters such as B. a compression can be negotiated between the parties via PPP when establishing the connection, which is not possible with SLIP.

SLIP can and is therefore only used in very simple cases; In the past, often with callback modems for the purpose of external dialing into workstations in a secure intranet (→ extranet ). Towards the end of the 1990s, this type of Internet connection was one of the most secure of all: an unwanted intruder would at least have had to have access to the secure server rooms in order to reprogram the telephone numbers in the modems to which the callback was set. Because "telephone number spoofing" (analogous to IP spoofing ) would not have been easy to accomplish without interfering with the telephone provider's hardware.

Van Jacobson Compression and CSLIP

Since serial connections are often quite slow, the transmission of the IP headers with each packet leads to a reduced data throughput. Each TCP / IP header has 40 characters. On a 19200 baud line , each character takes about ½ ms, so the TCP / IP header alone takes about 20 ms. This limits the transfer rate to less than 50 packets / second, which is often not enough even for quick tippers when one packet is transferred per keystroke.

Van Jacobson therefore proposed a compression that only transmits the differences in the TCP headers between two packets. This increases the throughput significantly, as only 7 characters are usually required instead of 40. Van Jacobson compression is often used on SLIP connections. The protocol with active Van Jacobson compression is also CSLIP protocol ( compressed SLIP called = compressed SLIP).


The draft (RFC) for SLIP dates from 1988, the one for CSLIP from 1990. Today, SLIP has been largely or completely replaced by PPP in practice.

Web links