File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / bird / doc / prog.html
Revision 1.1.1.2 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Wed Mar 17 19:50:23 2021 UTC (3 years, 2 months ago) by misho
Branches: bird, MAIN
CVS tags: v1_6_8p3, HEAD
bird 1.6.8

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
 <META NAME="GENERATOR" CONTENT="LinuxDoc-Tools 1.0.9">
 <TITLE>BIRD Programmer's Documentation</TITLE>
 <LINK HREF="prog-1.html" REL=next>


</HEAD>
<BODY>
<A HREF="prog-1.html">Next</A>
Previous
Contents
<HR>
<H1>BIRD Programmer's Documentation</H1>

<H2>Ondrej Filip <I>&lt;feela@network.cz&gt;</I>,
Pavel Machek <I>&lt;pavel@ucw.cz&gt;</I>,
Martin Mares <I>&lt;mj@ucw.cz&gt;</I>,
Ondrej Zajicek <I>&lt;santiago@crfreenet.org&gt;</I></H2>
<P><HR>
<EM>This document contains programmer's documentation for the BIRD Internet Routing Daemon project.</EM>
<HR>
<P>
<H2><A NAME="toc1">1.</A> <A HREF="prog-1.html">BIRD Design</A></H2>

<UL>
<LI><A NAME="toc1.1">1.1</A> <A HREF="prog-1.html#ss1.1">Introduction</A>
<LI><A NAME="toc1.2">1.2</A> <A HREF="prog-1.html#ss1.2">Design goals</A>
<LI><A NAME="toc1.3">1.3</A> <A HREF="prog-1.html#ss1.3">Architecture</A>
<LI><A NAME="toc1.4">1.4</A> <A HREF="prog-1.html#ss1.4">Implementation</A>
</UL>
<P>
<H2><A NAME="toc2">2.</A> <A HREF="prog-2.html">Core</A></H2>

<UL>
<LI><A NAME="toc2.1">2.1</A> <A HREF="prog-2.html#ss2.1">Forwarding Information Base</A>
<LI><A NAME="toc2.2">2.2</A> <A HREF="prog-2.html#ss2.2">Routing tables</A>
<LI><A NAME="toc2.3">2.3</A> <A HREF="prog-2.html#ss2.3">Route attribute cache</A>
<LI><A NAME="toc2.4">2.4</A> <A HREF="prog-2.html#ss2.4">Routing protocols</A>
<LI><A NAME="toc2.5">2.5</A> <A HREF="prog-2.html#ss2.5">Graceful restart recovery</A>
<LI><A NAME="toc2.6">2.6</A> <A HREF="prog-2.html#ss2.6">Protocol hooks</A>
<LI><A NAME="toc2.7">2.7</A> <A HREF="prog-2.html#ss2.7">Interfaces</A>
<LI><A NAME="toc2.8">2.8</A> <A HREF="prog-2.html#ss2.8">Neighbor cache</A>
<LI><A NAME="toc2.9">2.9</A> <A HREF="prog-2.html#ss2.9">Command line interface</A>
<LI><A NAME="toc2.10">2.10</A> <A HREF="prog-2.html#ss2.10">Object locks</A>
</UL>
<P>
<H2><A NAME="toc3">3.</A> <A HREF="prog-3.html">Configuration</A></H2>

<UL>
<LI><A NAME="toc3.1">3.1</A> <A HREF="prog-3.html#ss3.1">Configuration manager</A>
<LI><A NAME="toc3.2">3.2</A> <A HREF="prog-3.html#ss3.2">Lexical analyzer</A>
<LI><A NAME="toc3.3">3.3</A> <A HREF="prog-3.html#ss3.3">Parser</A>
</UL>
<P>
<H2><A NAME="toc4">4.</A> <A HREF="prog-4.html">Filters</A></H2>

<UL>
<LI><A NAME="toc4.1">4.1</A> <A HREF="prog-4.html#ss4.1">Filters</A>
<LI><A NAME="toc4.2">4.2</A> <A HREF="prog-4.html#ss4.2">Trie for prefix sets</A>
</UL>
<P>
<H2><A NAME="toc5">5.</A> <A HREF="prog-5.html">Protocols</A></H2>

<UL>
<LI><A NAME="toc5.1">5.1</A> <A HREF="prog-5.html#ss5.1">The Babel protocol</A>
<LI><A NAME="toc5.2">5.2</A> <A HREF="prog-5.html#ss5.2">Bidirectional Forwarding Detection</A>
<LI><A NAME="toc5.3">5.3</A> <A HREF="prog-5.html#ss5.3">Border Gateway Protocol</A>
<LI><A NAME="toc5.4">5.4</A> <A HREF="prog-5.html#ss5.4">Multi-Threaded Routing Toolkit (MRT) protocol</A>
<LI><A NAME="toc5.5">5.5</A> <A HREF="prog-5.html#ss5.5">Open Shortest Path First (OSPF)</A>
<LI><A NAME="toc5.6">5.6</A> <A HREF="prog-5.html#ss5.6">Pipe</A>
<LI><A NAME="toc5.7">5.7</A> <A HREF="prog-5.html#ss5.7">Routing Information Protocol (RIP)</A>
<LI><A NAME="toc5.8">5.8</A> <A HREF="prog-5.html#ss5.8">Router Advertisements</A>
<LI><A NAME="toc5.9">5.9</A> <A HREF="prog-5.html#ss5.9">Static</A>
<LI><A NAME="toc5.10">5.10</A> <A HREF="prog-5.html#ss5.10">Direct</A>
</UL>
<P>
<H2><A NAME="toc6">6.</A> <A HREF="prog-6.html">System dependent parts</A></H2>

<UL>
<LI><A NAME="toc6.1">6.1</A> <A HREF="prog-6.html#ss6.1">Introduction</A>
<LI><A NAME="toc6.2">6.2</A> <A HREF="prog-6.html#ss6.2">Logging</A>
<LI><A NAME="toc6.3">6.3</A> <A HREF="prog-6.html#ss6.3">Kernel synchronization</A>
</UL>
<P>
<H2><A NAME="toc7">7.</A> <A HREF="prog-7.html">Library functions</A></H2>

<UL>
<LI><A NAME="toc7.1">7.1</A> <A HREF="prog-7.html#ss7.1">IP addresses</A>
<LI><A NAME="toc7.2">7.2</A> <A HREF="prog-7.html#ss7.2">Linked lists</A>
<LI><A NAME="toc7.3">7.3</A> <A HREF="prog-7.html#ss7.3">Miscellaneous functions.</A>
<LI><A NAME="toc7.4">7.4</A> <A HREF="prog-7.html#ss7.4">Message authentication codes</A>
</UL>
<P>
<H2><A NAME="toc8">8.</A> <A HREF="prog-8.html">Resources</A></H2>

<UL>
<LI><A NAME="toc8.1">8.1</A> <A HREF="prog-8.html#ss8.1">Introduction</A>
<LI><A NAME="toc8.2">8.2</A> <A HREF="prog-8.html#ss8.2">Resource pools</A>
<LI><A NAME="toc8.3">8.3</A> <A HREF="prog-8.html#ss8.3">Memory blocks</A>
<LI><A NAME="toc8.4">8.4</A> <A HREF="prog-8.html#ss8.4">Linear memory pools</A>
<LI><A NAME="toc8.5">8.5</A> <A HREF="prog-8.html#ss8.5">Slabs</A>
<LI><A NAME="toc8.6">8.6</A> <A HREF="prog-8.html#ss8.6">Events</A>
<LI><A NAME="toc8.7">8.7</A> <A HREF="prog-8.html#ss8.7">Timers</A>
<LI><A NAME="toc8.8">8.8</A> <A HREF="prog-8.html#ss8.8">Sockets</A>
</UL>
<HR>
<A HREF="prog-1.html">Next</A>
Previous
Contents
</BODY>
</HTML>

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>