diff options
Diffstat (limited to 'doc/bird.sgml')
-rw-r--r-- | doc/bird.sgml | 153 |
1 files changed, 78 insertions, 75 deletions
diff --git a/doc/bird.sgml b/doc/bird.sgml index 7099ffba..25cc2d58 100644 --- a/doc/bird.sgml +++ b/doc/bird.sgml @@ -879,34 +879,38 @@ protocol kernel { # Secondary routing table <sect1>Introduction -<p>Open Shortest Path First (OSPF) is quite complex interior gateway -protocol. Today's version for IPv4 is 2 and it's defined in RFC 2328<htmlurl -url="ftp://ftp.rfc-editor.org/in-notes/rfc2328.txt">. It's based on -link-state of SPF technology. Each router maintains a database -describing the Autonomous System's topology. Each participating router has -has an identical database and all routers run the exact same algorithm -calculatin shortest path tree with themselves as roots, in parallel. -OSPF chooses the least cost path as the best path. In OSPF, the -Autonomous System can be splitted into more areas. Topology -of such area is hidden to the rest of the Autonomous System. This enables -a reduction in routing traffic as well as protection other areas from bad -routing data. Unfortunatelly multiple OSPF areas are not fully supported -in this version of BIRD. Another very important feature of OSPF is that -it can keep routing information from other protocols (like static or BGP) -in it's link-state database as external routes. Each external route can -be tagged by the advertising router, enabling the passing of additional -information between routers on the boundary of the Autonomous System. - -<p>OSPF quickly detects topological changes in the Autonomous System (such +<p>Open Shortest Path First (OSPF) is a quite complex interior gateway +protocol. The current IPv4 version (OSPFv2) is defined in RFC 2328 +<htmlurl url="ftp://ftp.rfc-editor.org/in-notes/rfc2328.txt">. It's a link +state (a.k.a. shortest path first) protocol -- Each router maintains a database +describing the autonomous system's topology. Each participating router +has an identical copy of the database and all routers run the same algorithm +calculating a shortest path tree with themselves as a root. +OSPF choses the least cost path as the best path. + +<p>In OSPF, the autonomous system can be split to several areas in order +to reduce the amount of resources consumed for exchanging the routing +information and to protect the other areas from incorrect routing data. +Topology of the area is hidden to the rest of the autonomous system. +Unfortunatelly multiple OSPF areas are not yet fully supported +by this version of BIRD and neither is the IPv6 version (OSPFv3). + +<p>Another very important feature of OSPF is that +it can keep routing information from other protocols (like Static or BGP) +in its link state database as external routes. Each external route can +be tagged by the advertising router, making possible to pass additional +information between routers on the boundary of the autonomous system. + +<p>OSPF quickly detects topological changes in the autonomous system (such as router interface failures) and calculates new loop-free routes after a -period of convergence. This period of convergence is short and involves -a minimum of routing traffic. +period of convergence. This period is short and involves only minimal +routing traffic. -<p>Each router joined in OSPF periodically sends hello messages out -all its interfaces. This allows neighbors to be discovered dynamically. -Then the neighbors exchange theirs parts of database. And keep it -identical flooding updates. Flooding proces is reliable and ensures -that each routes detects the change. +<p>Each router participating in OSPF routing periodically sends Hello messages +to all its interfaces. This allows neighbors to be discovered dynamically. +Then the neighbors exchange theirs parts of the link state database and keep it +identical by flooding updates. The flooding process is reliable and ensures +that each router detects all changes. <sect1>Configuration @@ -914,11 +918,11 @@ that each routes detects the change. <code> protocol ospf <name> { - rfc1583compat bool; + rfc1583compat <bool>; area <id> { stub <bool>; tick <num>; - interface <interface> + interface <interface pattern> { cost <num>; hello <num>; @@ -939,93 +943,92 @@ protocol ospf <name> { <descrip> <tag>rfc1583compat <M>bool</M></tag> - This option can disable or enable compatibility of routing table + This option controls compatibility of routing table calculation with RFC 1583<htmlurl url="ftp://ftp.rfc-editor.org/in-notes/rfc1583.txt">. Default value is no. <tag>area <M>id</M></tag> - This specifies area id of configured OSPF area. It can be written - as a number or as an IPv4 number. The most important area is - the backbone (area id 0) to which every other area must be connected. + This defines an OSPF area with given area ID (an integer or an IPv4 + address, similarly to a router ID). + The most important area is + the backbone (ID 0) to which every other area must be connected. <tag>stub <M>bool</M></tag> - No external routes are flooded into stub area. Default value is no. + No external routes are flooded into stub areas. Default value is no. <tag>tick <M>num</M></tag> - The routing table calculation is not processed when any single - change comes. To lower the CPU utilization it's processed late - in periodical interval. The default value is 7. + The routing table calculation is not performed when a single link state + change arrives. To lower the CPU utilization, it's processed later + at periodical intervals of <m/num/ seconds. The default value is 7. - <tag>interface <M>interface</M></tag> - This mean that specified interface (or interface pattern) belongs - to actual area. + <tag>interface <M>pattern</M></tag> + Defines that the specified interfaces belong to the area being defined. <tag>cost <M>num</M></tag> - Specifies output cost of interface. Default value is 10. + Specifies output cost (metric) of an interface. Default value is 10. <tag>hello <M>num</M></tag> - Specifies interval between sending hello messages. Beware, all - router on the same network has to have the same hello interval. + Specifies interval in seconds between sending of Hello messages. Beware, all + routers on the same network need to have the same hello interval. Default value is 10. <tag>retransmit <M>num</M></tag> - Specifies interval between retransmiting unacknoledged update. + Specifies interval in seconds between retransmissions of unacknoledged updates. Default value is 5. <tag>priority <M>num</M></tag> - On every multiple access network (like e.g ethernet) Designed - and Backup Designed router is elected. These routers have some - special functions in flooding process. Higher priority rices - preferences in elections. Routers with priority 0 are not + On every multiple access network (e.g., the Ethernet) Designed Router + and Backup Designed router are elected. These routers have some + special functions in the flooding process. Higher priority increases + preferences in this election. Routers with priority 0 are not eligible. Default value is 1. <tag>wait <M>num</M></tag> - After start, router waits specified interval between starting + After start, router waits for the specified number of seconds between starting election and building adjacency. Default value is 40. <tag>dead count <M>num</M></tag> - When router does not receive any message from neighbor in - <m/dead count/*<m/hello/ seconds, it will declare neighbor down. + When the router does not receive any messages from a neighbor in + <m/dead count/*<m/hello/ seconds, it will consider the neighbor down. - <tag>type <M>broadcast</M></tag> - BIRD detects a type of connected network. However, sometimes is - necessary to change it. On broadcast networks are flooding - and hello messages sent using multicasting. (Single - packet to all neighbors.) + <tag>type broadcast</tag> + BIRD detects a type of a connected network automatically, but sometimes it's + convenient to force use of a different type manually. + On broadcast networks, flooding and Hello messages are sent using multicasts (a single packet for all the neighbors). - <tag>type <M>nonbroadcast</M></tag> - On nonbroadcast network are packets sent to each neighbor - separately because of lack of multicast messages. + <tag>type nonbroadcast</tag> + On nonbroadcast networks, the packets are sent to each neighbor + separately because of lack of multicast capabilities. - <tag>type <M>pointopoint</M></tag> - Pointopoint network connects just 2 routers together. No election - is provided there, this reduces a number of sent messages. + <tag>type pointopoint</tag> + Point-to-point networks connect just 2 routers together. No election + is performed there which reduces the number of messages sent. - <tag>authetication <M>none</M></tag> - No passwords are sent in OSPF's packets. This is default value. + <tag>authetication none</tag> + No passwords are sent in OSPF packets. This is the default value. - <tag>authetication <M>simple</M></tag> - In every packet is sent an 8 bytes long password. Received packets - without this password are ignored. This autentication mechanism is + <tag>authetication simple</tag> + Every packet carries 8 bytes of password. Received packets + lacking this password are ignored. This autentication mechanism is very weak. <tag>password <M>text</M></tag> - An 8 bytes long password used for authentication. + An 8-byte password used for authentication. <tag>neighbors</tag> - A set of neighbors to which hello messages on nonbroadcast networks - are sent. + A set of neighbors to which Hello messages on nonbroadcast networks + are to be sent. </descrip> <sect1>Attributes -<p>OSPF defines 3 route attributes. Each internal route has a metric. External -routes uses metric type 1 or metric type 2. Metric type one is comparable -with internal metric. Metric type 2 is always longer then metric type 1 -or internal metric. Each external route can also carry a tag. Tag is -32 bits long number and it's used for exporting routes to other protocols -in link-state it has no funtion. +<p>OSPF defines three route attributes. Each internal route has a metric. External +routes use metric type 1 or metric type 2. A metric of type 1 is comparable +with internal metrics, a metric of type 2 is always longer than any metric of type 1 +or any internal metric. Each external route can also carry a tag which is +a 32-bit integer which is used when exporting routes to other protocols; otherwise, +it doesn't affect routing inside the OSPF domain at all. <sect1>Example |