<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://rs-485.com/index.php?action=history&amp;feed=atom&amp;title=Serial_Line_Internet_Protocol</id>
	<title>Serial Line Internet Protocol - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://rs-485.com/index.php?action=history&amp;feed=atom&amp;title=Serial_Line_Internet_Protocol"/>
	<link rel="alternate" type="text/html" href="https://rs-485.com/index.php?title=Serial_Line_Internet_Protocol&amp;action=history"/>
	<updated>2026-05-03T19:29:33Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.42.3</generator>
	<entry>
		<id>https://rs-485.com/index.php?title=Serial_Line_Internet_Protocol&amp;diff=1406&amp;oldid=prev</id>
		<title>RS-485: Imported from Wikipedia (overwrite)</title>
		<link rel="alternate" type="text/html" href="https://rs-485.com/index.php?title=Serial_Line_Internet_Protocol&amp;diff=1406&amp;oldid=prev"/>
		<updated>2026-05-03T12:38:52Z</updated>

		<summary type="html">&lt;p&gt;Imported from Wikipedia (overwrite)&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Short description|Internet Protocol encapsulation for serial ports and router connections}}&lt;br /&gt;
{{IPstack}}&lt;br /&gt;
&lt;br /&gt;
The &amp;#039;&amp;#039;&amp;#039;Serial Line Internet Protocol&amp;#039;&amp;#039;&amp;#039; (&amp;#039;&amp;#039;&amp;#039;SLIP&amp;#039;&amp;#039;&amp;#039;)&amp;lt;ref&amp;gt;{{cite news |newspaper=[[The New York Times]]&lt;br /&gt;
   |url=http://www.nytimes.com/library/cyber/qa/0531freed.html&lt;br /&gt;
   |title=Internet Q&amp;amp;A |date=May 31, 1996}}&amp;lt;/ref&amp;gt;&amp;lt;ref&amp;gt;{{cite news |newspaper=[[The New York Times]]&lt;br /&gt;
|url=https://www.nytimes.com/1994/05/08/business/the-executive-computer-for-befuddled-newcomers-easier-access-to-the-internet.html&lt;br /&gt;
|title=The Executive Computer; For Befuddled Newcomers, Easier Access&lt;br /&gt;
|date=May 8, 1994}}&amp;lt;/ref&amp;gt; is an [[encapsulation (networking)|encapsulation]] of the [[Internet Protocol]]{{efn|SLIP does not actually care about the internal structures of IP: any [[network layer]] protocols can be sent over the wire.}} designed to work over [[serial port]]s and [[router (computing)|router]] connections. It is documented in {{IETF RFC|1055}}. On personal computers, SLIP has largely been replaced by the [[Point-to-Point Protocol]] (PPP), which is better engineered, has more features, and does not require its IP address configuration to be set before it is established. On [[microcontrollers]], however, SLIP is still the preferred way of encapsulating [[Internet Protocol|IP packets]], due to its very small overhead.&lt;br /&gt;
&lt;br /&gt;
Some people refer to the successful and widely used RFC 1055 Serial Line Internet Protocol as &amp;quot;Rick Adams&amp;#039; SLIP&amp;quot;,&amp;lt;ref name=&amp;quot;rfc1547&amp;quot;&amp;gt;{{IETF RFC|1547}}: &amp;quot;Requirements for an Internet Standard Point-to-Point Protocol&amp;quot; &amp;lt;/ref&amp;gt; to avoid confusion with other proposed protocols named &amp;quot;SLIP&amp;quot;. Those other protocols include the much more complicated {{IETF RFC|914}} appendix D [[Serial Line Interface Protocol]].&amp;lt;ref name=&amp;quot;rfc1547&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Hex value !! Dec Value !! Oct Value !! Abbreviation !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0xC0 || 192 || 300||  END || Frame End&lt;br /&gt;
|-&lt;br /&gt;
| 0xDB || 219 || 333 || ESC || Frame Escape&lt;br /&gt;
|-&lt;br /&gt;
| 0xDC || 220 || 334 || ESC_END || Transposed Frame End&lt;br /&gt;
|-&lt;br /&gt;
| 0xDD || 221 || 335 || ESC_ESC || Transposed Frame Escape&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
SLIP modifies a standard [[TCP/IP]] [[datagram]] by:&lt;br /&gt;
&lt;br /&gt;
* appending a special &amp;quot;END&amp;quot; [[byte]] to it, which distinguishes datagram boundaries in the byte stream,&lt;br /&gt;
* if the END byte occurs in the data to be sent, the two byte sequence ESC, ESC_END is sent instead,&lt;br /&gt;
* if the ESC byte occurs in the data, the two byte sequence ESC, ESC_ESC is sent.&lt;br /&gt;
* variants of the protocol may begin, as well as end, packets with END.&lt;br /&gt;
&lt;br /&gt;
SLIP requires a serial port [[computer configuration|configuration]] of 8 [[data]] [[bit]]s, no [[parity bit|parity]], and either [[Electronic Industries Alliance|EIA]] hardware [[flow control (data)|flow control]], or CLOCAL mode (3-wire [[null-modem]]) [[UART]] operation settings.&lt;br /&gt;
&lt;br /&gt;
SLIP does not provide [[error detection]], being reliant on [[upper layer protocol]]s for this. Therefore, SLIP on its own is not satisfactory over a link which is error-prone, such as a poor quality [[dial-up]] connection.&lt;br /&gt;
&lt;br /&gt;
SLIP escape characters were also required on some modem connections to escape [[Hayes command set]], allowing therefore to pass binary data through those modems that would recognize some characters as commands.&lt;br /&gt;
&lt;br /&gt;
==CSLIP==&lt;br /&gt;
A version of SLIP with [[Header (computing)|header]] [[data compression|compression]] is called &amp;#039;&amp;#039;&amp;#039;Compressed SLIP&amp;#039;&amp;#039;&amp;#039; (&amp;#039;&amp;#039;&amp;#039;CSLIP&amp;#039;&amp;#039;&amp;#039;).&amp;lt;ref&amp;gt;{{cite book&lt;br /&gt;
   |url=https://www.oreilly.com/library/view/understanding-tcpip/9781904811718/ch04s02.html&lt;br /&gt;
   |title=Understanding TCP/IP (Chapter 4.2 Compressed SLIP)}}&amp;lt;/ref&amp;gt; The compression algorithm used in CSLIP is known as [[Van Jacobson TCP/IP Header Compression]].&amp;lt;ref&amp;gt;{{cite web |first=V. |last=Jacobson |title=Compressing TCP/IP Headers for Low-Speed Serial Links |date=February 1990 |url=http://tools.ietf.org/html/rfc1144}} — introduced the [[Van Jacobson TCP/IP Header Compression]] used by CSLIP&amp;lt;/ref&amp;gt; CSLIP has no effect on the data payload of a packet and is independent of any compression by the serial line modem used for transmission. It reduces the [[Transmission Control Protocol]] (TCP) header from twenty [[byte]]s to seven bytes. CSLIP has no effect on [[User Datagram Protocol]] (UDP) datagrams.&lt;br /&gt;
&lt;br /&gt;
== History ==&lt;br /&gt;
{{See also|History of the Internet}}&lt;br /&gt;
RFC 1055, a &amp;quot;non-standard&amp;quot; for SLIP, traces its origins to the 3COM UNET TCP/IP implementation from the 1980s. Rick Adams added SLIP to the popular [[4.2BSD]] in 1984 and it &amp;quot;quickly caught on&amp;quot;. By the time of the RFC (1988), it is described as &amp;quot;commonly used on dedicated serial links and sometimes for dialup purposes&amp;quot;.&amp;lt;ref name=rfc1055&amp;gt;{{cite web |title=RFC 1055: Nonstandard for transmission of IP datagrams over serial lines: SLIP |url=https://datatracker.ietf.org/doc/html/rfc1055 |website=IETF Datatracker |language=en |date=1 June 1988}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The last version of FreeBSD to include &amp;quot;slattach&amp;quot; (a command for connecting to slip) in the manual database is FreeBSD 7.4, released 2011. The manual claims that auto-negotiation exists for CSLIP. The FreeBSD version is inherited from 4.3BSD.&amp;lt;ref&amp;gt;{{cite web |title=slattach(8) |url=https://man.freebsd.org/cgi/man.cgi?query=slip&amp;amp;apropos=0&amp;amp;sektion=8&amp;amp;manpath=FreeBSD+7.4-RELEASE&amp;amp;arch=default&amp;amp;format=html |website=man.freebsd.org}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Linux formerly used the same code base for SLIP and [[KISS (TNC)]]. The split occurred before the start of kernel git history (Linux-2.6.12-rc2, 2005).&amp;lt;ref&amp;gt;{{cite web |last1=Torvalds |first1=Linus |title=History for mkiss.c |website=[[GitHub]] |url=https://github.com/torvalds/linux/blob/9a48d604672220545d209e9996c2a1edbb5637f6/drivers/net/hamradio/mkiss.c |access-date=13 May 2023 |date=13 May 2023}}&amp;lt;/ref&amp;gt; The SLIP driver offers a special &amp;quot;6-bit&amp;quot; escaped mode to accommodate modems incapable of handling non-ASCII characters.&amp;lt;ref&amp;gt;{{cite web |last1=Torvalds |first1=Linus |title=drivers/net/slip/Kconfig |website=[[GitHub]] |url=https://github.com/torvalds/linux/blob/master/drivers/net/slip/Kconfig |date=13 May 2023}}&amp;lt;/ref&amp;gt; The Linux slattach command (written independently) also has the ability to auto-detect CSLIP support.&amp;lt;ref&amp;gt;{{man|8|slattach|Linux}} &amp;quot;Other possible values are slip (normal SLIP), adaptive (adaptive CSLIP/SLIP)...&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
* [[Parallel Line Internet Protocol]]&lt;br /&gt;
* [[Slirp]]&lt;br /&gt;
* [[KA9Q]]&lt;br /&gt;
* [[Direct cable connection]]&lt;br /&gt;
* [[In-band signaling]]&lt;br /&gt;
* [[KISS (amateur radio protocol)]]&lt;br /&gt;
*[[Consistent Overhead Byte Stuffing]]&lt;br /&gt;
&lt;br /&gt;
==References==&lt;br /&gt;
{{notelist}}&lt;br /&gt;
{{Reflist}}&lt;br /&gt;
&lt;br /&gt;
{{Authority control}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Internet protocols]]&lt;br /&gt;
[[Category:Link protocols]]&lt;br /&gt;
[[Category:Logical link control]]&lt;/div&gt;</summary>
		<author><name>RS-485</name></author>
	</entry>
</feed>