mirror of
https://gitlab.labs.nic.cz/labs/bird.git
synced 2024-05-11 16:54:54 +00:00
Many changes in I/O and OSPF sockets and packet handling.
I/O: - BSD: specify src addr on IP sockets by IP_HDRINCL - BSD: specify src addr on UDP sockets by IP_SENDSRCADDR - Linux: specify src addr on IP/UDP sockets by IP_PKTINFO - IPv6: specify src addr on IP/UDP sockets by IPV6_PKTINFO - Alternative SKF_BIND flag for binding to IP address - Allows IP/UDP sockets without tx_hook, on these sockets a packet is discarded when TX queue is full - Use consistently SOL_ for socket layer values. OSPF: - Packet src addr is always explicitly set - Support for secondary addresses in BSD - Dynamic RX/TX buffers - Fixes some minor buffer overruns - Interface option 'tx length' - Names for vlink pseudoifaces (vlinkX) - Vlinks use separate socket for TX - Vlinks do not use fixed associated iface - Fixes TTL for direct unicast packets - Fixes DONTROUTE for OSPF sockets - Use ifa->ifname instead of ifa->iface->name
This commit is contained in:
@@ -2212,7 +2212,9 @@ protocol ospf <name> {
|
||||
wait <num>;
|
||||
dead count <num>;
|
||||
dead <num>;
|
||||
secondary <switch>;
|
||||
rx buffer [normal|large|<num>];
|
||||
tx length <num>;
|
||||
type [broadcast|bcast|pointopoint|ptp|
|
||||
nonbroadcast|nbma|pointomultipoint|ptmp];
|
||||
strict nonbroadcast <switch>;
|
||||
@@ -2419,12 +2421,32 @@ protocol ospf <name> {
|
||||
<tag>dead <M>num</M></tag>
|
||||
When the router does not receive any messages from a neighbor in
|
||||
<m/dead/ seconds, it will consider the neighbor down. If both directives
|
||||
<m/dead count/ and <m/dead/ are used, <m/dead/ has precendence.
|
||||
<cf/dead count/ and <cf/dead/ are used, <cf/dead/ has precendence.
|
||||
|
||||
<tag>secondary <M>switch</M></tag>
|
||||
On BSD systems, older versions of BIRD supported OSPFv2 only for the
|
||||
primary IP address of an interface, other IP ranges on the interface
|
||||
were handled as stub networks. Since v1.4.1, regular operation on
|
||||
secondary IP addresses is supported, but disabled by default for
|
||||
compatibility. This option allows to enable it. The option is a
|
||||
transitional measure, will be removed in the next major release as the
|
||||
behavior will be changed. On Linux systems, the option is irrelevant, as
|
||||
operation on non-primary addresses is already the regular behavior.
|
||||
|
||||
<tag>rx buffer <M>num</M></tag>
|
||||
This sets the size of buffer used for receiving packets. The buffer should
|
||||
be bigger than maximal size of any packets. Value NORMAL (default)
|
||||
means 2*MTU, value LARGE means maximal allowed packet - 65535.
|
||||
This option allows to specify the size of buffers used for packet
|
||||
processing. The buffer size should be bigger than maximal size of any
|
||||
packets. By default, buffers are dynamically resized as needed, but a
|
||||
fixed value could be specified. Value <cf/large/ means maximal allowed
|
||||
packet size - 65535.
|
||||
|
||||
<tag>tx length <M>num</M></tag>
|
||||
Transmitted OSPF messages that contain large amount of information are
|
||||
segmented to separate OSPF packets to avoid IP fragmentation. This
|
||||
option specifies the soft ceiling for the length of generated OSPF
|
||||
packets. Default value is the MTU of the network interface. Note that
|
||||
larger OSPF packets may still be generated if underlying OSPF messages
|
||||
cannot be splitted (e.g. when one large LSA is propagated).
|
||||
|
||||
<tag>type broadcast|bcast</tag>
|
||||
BIRD detects a type of a connected network automatically, but
|
||||
|
||||
Reference in New Issue
Block a user