344 lines
19 KiB
HTML
344 lines
19 KiB
HTML
|
<!DOCTYPE html>
|
|||
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="" xml:lang="">
|
|||
|
<head>
|
|||
|
<meta charset="utf-8" />
|
|||
|
<meta name="generator" content="pandoc" />
|
|||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
|
|||
|
<title>Beej's Guide to Network Programming</title>
|
|||
|
<style>
|
|||
|
html {
|
|||
|
color: #1a1a1a;
|
|||
|
background-color: #fdfdfd;
|
|||
|
}
|
|||
|
body {
|
|||
|
margin: 0 auto;
|
|||
|
max-width: 36em;
|
|||
|
padding-left: 50px;
|
|||
|
padding-right: 50px;
|
|||
|
padding-top: 50px;
|
|||
|
padding-bottom: 50px;
|
|||
|
hyphens: auto;
|
|||
|
overflow-wrap: break-word;
|
|||
|
text-rendering: optimizeLegibility;
|
|||
|
font-kerning: normal;
|
|||
|
}
|
|||
|
@media (max-width: 600px) {
|
|||
|
body {
|
|||
|
font-size: 0.9em;
|
|||
|
padding: 12px;
|
|||
|
}
|
|||
|
h1 {
|
|||
|
font-size: 1.8em;
|
|||
|
}
|
|||
|
}
|
|||
|
@media print {
|
|||
|
html {
|
|||
|
background-color: white;
|
|||
|
}
|
|||
|
body {
|
|||
|
background-color: transparent;
|
|||
|
color: black;
|
|||
|
font-size: 12pt;
|
|||
|
}
|
|||
|
p, h2, h3 {
|
|||
|
orphans: 3;
|
|||
|
widows: 3;
|
|||
|
}
|
|||
|
h2, h3, h4 {
|
|||
|
page-break-after: avoid;
|
|||
|
}
|
|||
|
}
|
|||
|
p {
|
|||
|
margin: 1em 0;
|
|||
|
}
|
|||
|
a {
|
|||
|
color: #1a1a1a;
|
|||
|
}
|
|||
|
a:visited {
|
|||
|
color: #1a1a1a;
|
|||
|
}
|
|||
|
img {
|
|||
|
max-width: 100%;
|
|||
|
}
|
|||
|
h1, h2, h3, h4, h5, h6 {
|
|||
|
margin-top: 1.4em;
|
|||
|
}
|
|||
|
h5, h6 {
|
|||
|
font-size: 1em;
|
|||
|
font-style: italic;
|
|||
|
}
|
|||
|
h6 {
|
|||
|
font-weight: normal;
|
|||
|
}
|
|||
|
ol, ul {
|
|||
|
padding-left: 1.7em;
|
|||
|
margin-top: 1em;
|
|||
|
}
|
|||
|
li > ol, li > ul {
|
|||
|
margin-top: 0;
|
|||
|
}
|
|||
|
blockquote {
|
|||
|
margin: 1em 0 1em 1.7em;
|
|||
|
padding-left: 1em;
|
|||
|
border-left: 2px solid #e6e6e6;
|
|||
|
color: #606060;
|
|||
|
}
|
|||
|
code {
|
|||
|
font-family: Menlo, Monaco, Consolas, 'Lucida Console', monospace;
|
|||
|
font-size: 85%;
|
|||
|
margin: 0;
|
|||
|
hyphens: manual;
|
|||
|
}
|
|||
|
pre {
|
|||
|
margin: 1em 0;
|
|||
|
overflow: auto;
|
|||
|
}
|
|||
|
pre code {
|
|||
|
padding: 0;
|
|||
|
overflow: visible;
|
|||
|
overflow-wrap: normal;
|
|||
|
}
|
|||
|
.sourceCode {
|
|||
|
background-color: transparent;
|
|||
|
overflow: visible;
|
|||
|
}
|
|||
|
hr {
|
|||
|
background-color: #1a1a1a;
|
|||
|
border: none;
|
|||
|
height: 1px;
|
|||
|
margin: 1em 0;
|
|||
|
}
|
|||
|
table {
|
|||
|
margin: 1em 0;
|
|||
|
border-collapse: collapse;
|
|||
|
width: 100%;
|
|||
|
overflow-x: auto;
|
|||
|
display: block;
|
|||
|
font-variant-numeric: lining-nums tabular-nums;
|
|||
|
}
|
|||
|
table caption {
|
|||
|
margin-bottom: 0.75em;
|
|||
|
}
|
|||
|
tbody {
|
|||
|
margin-top: 0.5em;
|
|||
|
border-top: 1px solid #1a1a1a;
|
|||
|
border-bottom: 1px solid #1a1a1a;
|
|||
|
}
|
|||
|
th {
|
|||
|
border-top: 1px solid #1a1a1a;
|
|||
|
padding: 0.25em 0.5em 0.25em 0.5em;
|
|||
|
}
|
|||
|
td {
|
|||
|
padding: 0.125em 0.5em 0.25em 0.5em;
|
|||
|
}
|
|||
|
header {
|
|||
|
margin-bottom: 4em;
|
|||
|
text-align: center;
|
|||
|
}
|
|||
|
#TOC li {
|
|||
|
list-style: none;
|
|||
|
}
|
|||
|
#TOC ul {
|
|||
|
padding-left: 1.3em;
|
|||
|
}
|
|||
|
#TOC > ul {
|
|||
|
padding-left: 0;
|
|||
|
}
|
|||
|
#TOC a:not(:hover) {
|
|||
|
text-decoration: none;
|
|||
|
}
|
|||
|
code{white-space: pre-wrap;}
|
|||
|
span.smallcaps{font-variant: small-caps;}
|
|||
|
div.columns{display: flex; gap: min(4vw, 1.5em);}
|
|||
|
div.column{flex: auto; overflow-x: auto;}
|
|||
|
div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;}
|
|||
|
ul.task-list{list-style: none;}
|
|||
|
ul.task-list li input[type="checkbox"] {
|
|||
|
width: 0.8em;
|
|||
|
margin: 0 0.8em 0.2em -1.6em;
|
|||
|
vertical-align: middle;
|
|||
|
}
|
|||
|
/* CSS for syntax highlighting */
|
|||
|
pre > code.sourceCode { white-space: pre; position: relative; }
|
|||
|
pre > code.sourceCode > span { display: inline-block; line-height: 1.25; }
|
|||
|
pre > code.sourceCode > span:empty { height: 1.2em; }
|
|||
|
.sourceCode { overflow: visible; }
|
|||
|
code.sourceCode > span { color: inherit; text-decoration: inherit; }
|
|||
|
div.sourceCode { margin: 1em 0; }
|
|||
|
pre.sourceCode { margin: 0; }
|
|||
|
@media screen {
|
|||
|
div.sourceCode { overflow: auto; }
|
|||
|
}
|
|||
|
@media print {
|
|||
|
pre > code.sourceCode { white-space: pre-wrap; }
|
|||
|
pre > code.sourceCode > span { text-indent: -5em; padding-left: 5em; }
|
|||
|
}
|
|||
|
pre.numberSource code
|
|||
|
{ counter-reset: source-line 0; }
|
|||
|
pre.numberSource code > span
|
|||
|
{ position: relative; left: -4em; counter-increment: source-line; }
|
|||
|
pre.numberSource code > span > a:first-child::before
|
|||
|
{ content: counter(source-line);
|
|||
|
position: relative; left: -1em; text-align: right; vertical-align: baseline;
|
|||
|
border: none; display: inline-block;
|
|||
|
-webkit-touch-callout: none; -webkit-user-select: none;
|
|||
|
-khtml-user-select: none; -moz-user-select: none;
|
|||
|
-ms-user-select: none; user-select: none;
|
|||
|
padding: 0 4px; width: 4em;
|
|||
|
color: #aaaaaa;
|
|||
|
}
|
|||
|
pre.numberSource { margin-left: 3em; border-left: 1px solid #aaaaaa; padding-left: 4px; }
|
|||
|
div.sourceCode
|
|||
|
{ }
|
|||
|
@media screen {
|
|||
|
pre > code.sourceCode > span > a:first-child::before { text-decoration: underline; }
|
|||
|
}
|
|||
|
code span.al { color: #ff0000; font-weight: bold; } /* Alert */
|
|||
|
code span.an { color: #60a0b0; font-weight: bold; font-style: italic; } /* Annotation */
|
|||
|
code span.at { color: #7d9029; } /* Attribute */
|
|||
|
code span.bn { color: #40a070; } /* BaseN */
|
|||
|
code span.bu { color: #008000; } /* BuiltIn */
|
|||
|
code span.cf { color: #007020; font-weight: bold; } /* ControlFlow */
|
|||
|
code span.ch { color: #4070a0; } /* Char */
|
|||
|
code span.cn { color: #880000; } /* Constant */
|
|||
|
code span.co { color: #60a0b0; font-style: italic; } /* Comment */
|
|||
|
code span.cv { color: #60a0b0; font-weight: bold; font-style: italic; } /* CommentVar */
|
|||
|
code span.do { color: #ba2121; font-style: italic; } /* Documentation */
|
|||
|
code span.dt { color: #902000; } /* DataType */
|
|||
|
code span.dv { color: #40a070; } /* DecVal */
|
|||
|
code span.er { color: #ff0000; font-weight: bold; } /* Error */
|
|||
|
code span.ex { } /* Extension */
|
|||
|
code span.fl { color: #40a070; } /* Float */
|
|||
|
code span.fu { color: #06287e; } /* Function */
|
|||
|
code span.im { color: #008000; font-weight: bold; } /* Import */
|
|||
|
code span.in { color: #60a0b0; font-weight: bold; font-style: italic; } /* Information */
|
|||
|
code span.kw { color: #007020; font-weight: bold; } /* Keyword */
|
|||
|
code span.op { color: #666666; } /* Operator */
|
|||
|
code span.ot { color: #007020; } /* Other */
|
|||
|
code span.pp { color: #bc7a00; } /* Preprocessor */
|
|||
|
code span.sc { color: #4070a0; } /* SpecialChar */
|
|||
|
code span.ss { color: #bb6688; } /* SpecialString */
|
|||
|
code span.st { color: #4070a0; } /* String */
|
|||
|
code span.va { color: #19177c; } /* Variable */
|
|||
|
code span.vs { color: #4070a0; } /* VerbatimString */
|
|||
|
code span.wa { color: #60a0b0; font-weight: bold; font-style: italic; } /* Warning */
|
|||
|
</style>
|
|||
|
<link href="https://fonts.googleapis.com/css?family=Roboto|Roboto+Mono&display=swap" rel="stylesheet">
|
|||
|
|
|||
|
<!-- BG custom styling -->
|
|||
|
<style type="text/css">
|
|||
|
/* Fix for line numbers not visible */
|
|||
|
pre.numberSource code > span {
|
|||
|
left: -1em;
|
|||
|
}
|
|||
|
pre.numberSource {
|
|||
|
margin-left: initial;
|
|||
|
}
|
|||
|
|
|||
|
/* Put some space after the section numbers */
|
|||
|
span.toc-section-number::after {
|
|||
|
content: "\a0\a0\a0"; /* non-breaking whitespace */
|
|||
|
}
|
|||
|
|
|||
|
/* Hide underlines on code number links */
|
|||
|
pre > code.sourceCode > span > a:first-child::before {
|
|||
|
text-decoration: none;
|
|||
|
}
|
|||
|
|
|||
|
/* Color the source blocks */
|
|||
|
div.sourceCode {
|
|||
|
background-color: #f0f0f0;
|
|||
|
}
|
|||
|
|
|||
|
/* Fix iOS big text rendering issue */
|
|||
|
pre > code.sourceCode > span {
|
|||
|
display: initial;
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
/* Color the inline code */
|
|||
|
code:not(.sourceCode) {
|
|||
|
background: #f0f0f0;
|
|||
|
padding-left: 0.2em;
|
|||
|
padding-right: 0.2em;
|
|||
|
border-radius: 0.2em;
|
|||
|
}
|
|||
|
|
|||
|
/* Keep code tags from wrapping in tables */
|
|||
|
tbody code {
|
|||
|
white-space: nowrap;
|
|||
|
}
|
|||
|
|
|||
|
td {
|
|||
|
vertical-align: top;
|
|||
|
}
|
|||
|
|
|||
|
body {
|
|||
|
font-size: 12pt;
|
|||
|
max-width: 43em;
|
|||
|
}
|
|||
|
|
|||
|
figure {
|
|||
|
text-align: center;
|
|||
|
}
|
|||
|
</style>
|
|||
|
<!--[if lt IE 9]>
|
|||
|
<script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv-printshiv.min.js"></script>
|
|||
|
<![endif]-->
|
|||
|
</head>
|
|||
|
<body>
|
|||
|
<div style="text-align:center"><span><a href="man-pages.html">Prev</a> | </span><a href="index.html">Contents</a><span> | <a href="footnotes.html">Next</a></span></div><hr>
|
|||
|
<h1 data-number="10" id="more-references"><span class="header-section-number">10</span> More References</h1>
|
|||
|
<p>You’ve come this far, and now you’re screaming for more! Where else can you go to learn more about all this stuff?</p>
|
|||
|
<h2 data-number="10.1" id="books"><span class="header-section-number">10.1</span> Books</h2>
|
|||
|
<p></p>
|
|||
|
<p>For old-school actual hold-it-in-your-hand pulp paper books, try some of the following excellent books. These redirect to affiliate links with a popular bookseller, giving me nice kickbacks. If you’re merely feeling generous, you can paypal a donation to <a href="mailto:beej@beej.us"><code>beej@beej.us</code></a>. <code>:-)</code></p>
|
|||
|
<p><strong>Unix Network Programming, volumes 1-2</strong> by W. Richard Stevens. Published by Addison-Wesley Professional and Prentice Hall. ISBNs for volumes 1-2: <a href="https://beej.us/guide/url/unixnet1">978-0131411555</a><a href="footnotes.html#fn49" class="footnote-ref" id="fnref49" role="doc-noteref"><sup>49</sup></a>, <a href="https://beej.us/guide/url/unixnet2">978-0130810816</a><a href="footnotes.html#fn50" class="footnote-ref" id="fnref50" role="doc-noteref"><sup>50</sup></a>.</p>
|
|||
|
<p><strong>Internetworking with TCP/IP, volume I</strong> by Douglas E. Comer. Published by Pearson. ISBN <a href="https://beej.us/guide/url/intertcp1">978-0136085300</a><a href="footnotes.html#fn51" class="footnote-ref" id="fnref51" role="doc-noteref"><sup>51</sup></a>.</p>
|
|||
|
<p><strong>TCP/IP Illustrated, volumes 1-3</strong> by W. Richard Stevens and Gary R. Wright. Published by Addison Wesley. ISBNs for volumes 1, 2, and 3 (and a 3-volume set): <a href="https://beej.us/guide/url/tcpi1">978-0201633467</a><a href="footnotes.html#fn52" class="footnote-ref" id="fnref52" role="doc-noteref"><sup>52</sup></a>, <a href="https://beej.us/guide/url/tcpi2">978-0201633542</a><a href="footnotes.html#fn53" class="footnote-ref" id="fnref53" role="doc-noteref"><sup>53</sup></a>, <a href="https://beej.us/guide/url/tcpi3">978-0201634952</a><a href="footnotes.html#fn54" class="footnote-ref" id="fnref54" role="doc-noteref"><sup>54</sup></a>, (<a href="https://beej.us/guide/url/tcpi123">978-0201776317</a><a href="footnotes.html#fn55" class="footnote-ref" id="fnref55" role="doc-noteref"><sup>55</sup></a>).</p>
|
|||
|
<p><strong>TCP/IP Network Administration</strong> by Craig Hunt. Published by O’Reilly & Associates, Inc. ISBN <a href="https://beej.us/guide/url/tcpna">978-0596002978</a><a href="footnotes.html#fn56" class="footnote-ref" id="fnref56" role="doc-noteref"><sup>56</sup></a>.</p>
|
|||
|
<p><strong>Advanced Programming in the UNIX Environment</strong> by W. Richard Stevens. Published by Addison Wesley. ISBN <a href="https://beej.us/guide/url/advunix">978-0321637734</a><a href="footnotes.html#fn57" class="footnote-ref" id="fnref57" role="doc-noteref"><sup>57</sup></a>.</p>
|
|||
|
<p></p>
|
|||
|
<h2 data-number="10.2" id="web-references"><span class="header-section-number">10.2</span> Web References</h2>
|
|||
|
<p></p>
|
|||
|
<p>On the web:</p>
|
|||
|
<p><strong><a href="https://cis.temple.edu/~giorgio/old/cis307s96/readings/docs/sockets.html">BSD Sockets: A Quick And Dirty Primer</a><a href="footnotes.html#fn58" class="footnote-ref" id="fnref58" role="doc-noteref"><sup>58</sup></a></strong> (Unix system programming info, too!)</p>
|
|||
|
<p><strong><a href="https://developerweb.net/?f=70">The Unix Socket FAQ</a><a href="footnotes.html#fn59" class="footnote-ref" id="fnref59" role="doc-noteref"><sup>59</sup></a></strong></p>
|
|||
|
<p><strong><a href="http://www.faqs.org/faqs/internet/tcp-ip/tcp-ip-faq/part1/">TCP/IP FAQ</a><a href="footnotes.html#fn60" class="footnote-ref" id="fnref60" role="doc-noteref"><sup>60</sup></a></strong></p>
|
|||
|
<p><strong><a href="https://tangentsoft.net/wskfaq/">The Winsock FAQ</a><a href="footnotes.html#fn61" class="footnote-ref" id="fnref61" role="doc-noteref"><sup>61</sup></a></strong></p>
|
|||
|
<p>And here are some relevant Wikipedia pages:</p>
|
|||
|
<p><strong><a href="https://en.wikipedia.org/wiki/Berkeley_sockets">Berkeley Sockets</a><a href="footnotes.html#fn62" class="footnote-ref" id="fnref62" role="doc-noteref"><sup>62</sup></a></strong></p>
|
|||
|
<p><strong><a href="https://en.wikipedia.org/wiki/Internet_Protocol">Internet Protocol (IP)</a><a href="footnotes.html#fn63" class="footnote-ref" id="fnref63" role="doc-noteref"><sup>63</sup></a></strong></p>
|
|||
|
<p><strong><a href="https://en.wikipedia.org/wiki/Transmission_Control_Protocol">Transmission Control Protocol (TCP)</a><a href="footnotes.html#fn64" class="footnote-ref" id="fnref64" role="doc-noteref"><sup>64</sup></a></strong></p>
|
|||
|
<p><strong><a href="https://en.wikipedia.org/wiki/User_Datagram_Protocol">User Datagram Protocol (UDP)</a><a href="footnotes.html#fn65" class="footnote-ref" id="fnref65" role="doc-noteref"><sup>65</sup></a></strong></p>
|
|||
|
<p><strong><a href="https://en.wikipedia.org/wiki/Client-server">Client-Server</a><a href="footnotes.html#fn66" class="footnote-ref" id="fnref66" role="doc-noteref"><sup>66</sup></a></strong></p>
|
|||
|
<p><strong><a href="https://en.wikipedia.org/wiki/Serialization">Serialization</a><a href="footnotes.html#fn67" class="footnote-ref" id="fnref67" role="doc-noteref"><sup>67</sup></a></strong> (packing and unpacking data)</p>
|
|||
|
<p></p>
|
|||
|
<h2 data-number="10.3" id="rfcs"><span class="header-section-number">10.3</span> RFCs</h2>
|
|||
|
<p> </p>
|
|||
|
<p><a href="https://www.rfc-editor.org/">RFCs</a><a href="footnotes.html#fn68" class="footnote-ref" id="fnref68" role="doc-noteref"><sup>68</sup></a>—the real dirt! These are documents that describe assigned numbers, programming APIs, and protocols that are used on the Internet. I’ve included links to a few of them here for your enjoyment, so grab a bucket of popcorn and put on your thinking cap:</p>
|
|||
|
<p><strong><a href="https://tools.ietf.org/html/rfc1">RFC 1</a><a href="footnotes.html#fn69" class="footnote-ref" id="fnref69" role="doc-noteref"><sup>69</sup></a></strong> —The First RFC; this gives you an idea of what the “Internet” was like just as it was coming to life, and an insight into how it was being designed from the ground up. (This RFC is completely obsolete, obviously!)</p>
|
|||
|
<p> <strong><a href="https://tools.ietf.org/html/rfc768">RFC 768</a><a href="footnotes.html#fn70" class="footnote-ref" id="fnref70" role="doc-noteref"><sup>70</sup></a></strong> —The User Datagram Protocol (UDP)</p>
|
|||
|
<p> <strong><a href="https://tools.ietf.org/html/rfc791">RFC 791</a><a href="footnotes.html#fn71" class="footnote-ref" id="fnref71" role="doc-noteref"><sup>71</sup></a></strong> —The Internet Protocol (IP)</p>
|
|||
|
<p> <strong><a href="https://tools.ietf.org/html/rfc793">RFC 793</a><a href="footnotes.html#fn72" class="footnote-ref" id="fnref72" role="doc-noteref"><sup>72</sup></a></strong> —The Transmission Control Protocol (TCP)</p>
|
|||
|
<p> <strong><a href="https://tools.ietf.org/html/rfc854">RFC 854</a><a href="footnotes.html#fn73" class="footnote-ref" id="fnref73" role="doc-noteref"><sup>73</sup></a></strong> —The Telnet Protocol</p>
|
|||
|
<p> <strong><a href="https://tools.ietf.org/html/rfc959">RFC 959</a><a href="footnotes.html#fn74" class="footnote-ref" id="fnref74" role="doc-noteref"><sup>74</sup></a></strong> —File Transfer Protocol (FTP)</p>
|
|||
|
<p> <strong><a href="https://tools.ietf.org/html/rfc1350">RFC 1350</a><a href="footnotes.html#fn75" class="footnote-ref" id="fnref75" role="doc-noteref"><sup>75</sup></a></strong> —The Trivial File Transfer Protocol (TFTP)</p>
|
|||
|
<p> <strong><a href="https://tools.ietf.org/html/rfc1459">RFC 1459</a><a href="footnotes.html#fn76" class="footnote-ref" id="fnref76" role="doc-noteref"><sup>76</sup></a></strong> —Internet Relay Chat Protocol (IRC)</p>
|
|||
|
<p><strong><a href="https://tools.ietf.org/html/rfc1918">RFC 1918</a><a href="footnotes.html#fn77" class="footnote-ref" id="fnref77" role="doc-noteref"><sup>77</sup></a></strong> —Address Allocation for Private Internets</p>
|
|||
|
<p> <strong><a href="https://tools.ietf.org/html/rfc2131">RFC 2131</a><a href="footnotes.html#fn78" class="footnote-ref" id="fnref78" role="doc-noteref"><sup>78</sup></a></strong> —Dynamic Host Configuration Protocol (DHCP)</p>
|
|||
|
<p> <strong><a href="https://tools.ietf.org/html/rfc2616">RFC 2616</a><a href="footnotes.html#fn79" class="footnote-ref" id="fnref79" role="doc-noteref"><sup>79</sup></a></strong> —Hypertext Transfer Protocol (HTTP)</p>
|
|||
|
<p> <strong><a href="https://tools.ietf.org/html/rfc2821">RFC 2821</a><a href="footnotes.html#fn80" class="footnote-ref" id="fnref80" role="doc-noteref"><sup>80</sup></a></strong> —Simple Mail Transfer Protocol (SMTP)</p>
|
|||
|
<p><strong><a href="https://tools.ietf.org/html/rfc3330">RFC 3330</a><a href="footnotes.html#fn81" class="footnote-ref" id="fnref81" role="doc-noteref"><sup>81</sup></a></strong> —Special-Use IPv4 Addresses</p>
|
|||
|
<p><strong><a href="https://tools.ietf.org/html/rfc3493">RFC 3493</a><a href="footnotes.html#fn82" class="footnote-ref" id="fnref82" role="doc-noteref"><sup>82</sup></a></strong> —Basic Socket Interface Extensions for IPv6</p>
|
|||
|
<p><strong><a href="https://tools.ietf.org/html/rfc3542">RFC 3542</a><a href="footnotes.html#fn83" class="footnote-ref" id="fnref83" role="doc-noteref"><sup>83</sup></a></strong> —Advanced Sockets Application Program Interface (API) for IPv6</p>
|
|||
|
<p><strong><a href="https://tools.ietf.org/html/rfc3849">RFC 3849</a><a href="footnotes.html#fn84" class="footnote-ref" id="fnref84" role="doc-noteref"><sup>84</sup></a></strong> —IPv6 Address Prefix Reserved for Documentation</p>
|
|||
|
<p> <strong><a href="https://tools.ietf.org/html/rfc3920">RFC 3920</a><a href="footnotes.html#fn85" class="footnote-ref" id="fnref85" role="doc-noteref"><sup>85</sup></a></strong> —Extensible Messaging and Presence Protocol (XMPP)</p>
|
|||
|
<p> <strong><a href="https://tools.ietf.org/html/rfc3977">RFC 3977</a><a href="footnotes.html#fn86" class="footnote-ref" id="fnref86" role="doc-noteref"><sup>86</sup></a></strong> —Network News Transfer Protocol (NNTP)</p>
|
|||
|
<p><strong><a href="https://tools.ietf.org/html/rfc4193">RFC 4193</a><a href="footnotes.html#fn87" class="footnote-ref" id="fnref87" role="doc-noteref"><sup>87</sup></a></strong> —Unique Local IPv6 Unicast Addresses</p>
|
|||
|
<p> <strong><a href="https://tools.ietf.org/html/rfc4506">RFC 4506</a><a href="footnotes.html#fn88" class="footnote-ref" id="fnref88" role="doc-noteref"><sup>88</sup></a></strong> —External Data Representation Standard (XDR)</p>
|
|||
|
<p>The IETF has a nice online tool for <a href="https://tools.ietf.org/rfc/">searching and browsing RFCs</a><a href="footnotes.html#fn89" class="footnote-ref" id="fnref89" role="doc-noteref"><sup>89</sup></a>.</p>
|
|||
|
<p> </p>
|
|||
|
<hr><div style="text-align:center"><span><a href="man-pages.html">Prev</a> | </span><a href="index.html">Contents</a><span> | <a href="footnotes.html">Next</a></span></div></body>
|
|||
|
</html>
|