summaryrefslogtreecommitdiff
path: root/lib/snmp/doc/src/snmp_config.xml
diff options
context:
space:
mode:
Diffstat (limited to 'lib/snmp/doc/src/snmp_config.xml')
-rw-r--r--lib/snmp/doc/src/snmp_config.xml139
1 files changed, 88 insertions, 51 deletions
diff --git a/lib/snmp/doc/src/snmp_config.xml b/lib/snmp/doc/src/snmp_config.xml
index 79c6703c94..e3d74fec16 100644
--- a/lib/snmp/doc/src/snmp_config.xml
+++ b/lib/snmp/doc/src/snmp_config.xml
@@ -43,8 +43,8 @@
</list>
<p>Refer also to the chapter(s)
- <seealso marker="snmp_agent_config_files">Definition of Agent Configuration Files</seealso> and
- <seealso marker="snmp_manager_config_files">Definition of Manager Configuration Files</seealso> which contains more detailed information
+ <seeguide marker="snmp_agent_config_files">Definition of Agent Configuration Files</seeguide> and
+ <seeguide marker="snmp_manager_config_files">Definition of Manager Configuration Files</seeguide> which contains more detailed information
about the agent and manager configuration files.</p>
<section>
@@ -56,7 +56,7 @@
<item>
<p>the <em>configuration directory</em> stores all
configuration files used by the agent (refer to the chapter
- <seealso marker="snmp_agent_config_files">Definition of Agent Configuration Files</seealso> for more information). </p>
+ <seeguide marker="snmp_agent_config_files">Definition of Agent Configuration Files</seeguide> for more information). </p>
</item>
<item>the <em>database directory</em> stores the internal
database files.</item>
@@ -67,7 +67,7 @@
<item>
<p>the <em>configuration directory</em> stores all
configuration files used by the manager (refer to the chapter
- <seealso marker="snmp_manager_config_files">Definition of Manager Configuration Files</seealso> for more information). </p>
+ <seeguide marker="snmp_manager_config_files">Definition of Manager Configuration Files</seeguide> for more information). </p>
</item>
<item>
<p>the <em>database directory</em> stores the internal
@@ -184,10 +184,35 @@
</item>
<tag><marker id="agent_mt"></marker>
- <c><![CDATA[multi_threaded() = bool() <optional>]]></c></tag>
+ <c><![CDATA[multi_threaded() = bool() | extended<optional>]]></c></tag>
<item>
- <p>If <c>true</c>, the agent is multi-threaded, with one
- thread for each get request. </p>
+ <p>If <c>true</c> (or <c>extended</c>), the agent is multi-threaded,
+ with one thread for each get request. </p>
+ <p>The value <c>extended</c> means that a special 'process'
+ is also created intended to handle <em>all</em> notifications. </p>
+ <list>
+ <item>
+ <p><c>true</c> - One worker dedicated to 'set-requests' and one
+ (main) worker for all other requests ('get-request' and
+ notifications).</p>
+ <p>If the 'main' worker is busy, a temporary process is
+ spawned to handle that job ('get-request' or notification). </p>
+ </item>
+ <item>
+ <p><c>extended</c> - One worker dedicated to 'set-requests',
+ one worker dedicated to notifications and one
+ (main) worker for all 'get-requests'. </p>
+ <p>If the 'main' worker is busy, a temporary process is
+ spawned to handle that 'get-request'. </p>
+ </item>
+ </list>
+ <note>
+ <p>Even with multi-threaded set to <c>extended</c>
+ there is still a risk for 'reorder' when sending inform-requsts,
+ which require a response (and may therefor require resending). </p>
+ <p>Also, there is of course no way to guarantee order once the
+ package is on the network. </p>
+ </note>
<p>Default is <c>false</c>.</p>
</item>
@@ -248,7 +273,7 @@
<item>
<p>Module which handles the network interface part for the
SNMP agent. Must implement the
- <seealso marker="snmpa_network_interface">snmpa_network_interface</seealso> behaviour.</p>
+ <seeerl marker="snmpa_network_interface">snmpa_network_interface</seeerl> behaviour.</p>
<p>Default is <c>snmpa_net_if</c>.</p>
</item>
@@ -256,15 +281,22 @@
<c><![CDATA[agent_net_if_options() = [agent_net_if_option()] <optional>]]></c></tag>
<item>
<p><c>agent_net_if_option() = {bind_to, bind_to()} |
- {sndbuf, sndbuf()} |
- {recbuf, recbuf()} |
- {no_reuse, no_reuse()} |
- {req_limit, req_limit()} |
- {filter, agent_net_if_filter_options()} |
- {extra_sock_opts, extra_socket_options()}</c></p>
+ {sndbuf, sndbuf()} |
+ {recbuf, recbuf()} |
+ {no_reuse, no_reuse()} |
+ {req_limit, req_limit()} |
+ {filter, agent_net_if_filter_options()} |
+ {extra_sock_opts, extra_socket_options()}</c></p>
<p>These options are actually specific to the used module.
- The ones shown here are applicable to the default
- <c>agent_net_if_module()</c>.</p>
+ The ones shown here are applicable to the default
+ <c>agent_net_if_module()</c>.</p>
+ <note>
+ <p>If the user has configured transports <em>with</em> options
+ then those will take precedence over these options.
+ See
+ <seeguide marker="snmp_agent_config_files#agent_information">agent information</seeguide>
+ for more info. </p>
+ </note>
<p>For defaults see the options in <c>agent_net_if_option()</c>.</p>
</item>
@@ -290,8 +322,8 @@
<item>
<p>Module which handles the network interface filter part for the
SNMP agent. Must implement the
- <seealso marker="snmpa_network_interface_filter">snmpa_network_interface_filter
- </seealso> behaviour.</p>
+ <seeerl marker="snmpa_network_interface_filter">snmpa_network_interface_filter
+ </seeerl> behaviour.</p>
<p>Default is <c>snmpa_net_if_filter</c>.</p>
</item>
@@ -324,7 +356,7 @@
<c><![CDATA[mib_storage_module() = snmpa_mib_data_ets | snmpa_mib_data_dets | snmpa_mib_data_mnesia | module()]]></c></tag>
<item>
<p>Defines the mib storage module of the SNMP agent as defined by the
- <seealso marker="snmpa_mib_storage">snmpa_mib_storage</seealso>
+ <seeerl marker="snmpa_mib_storage">snmpa_mib_storage</seeerl>
behaviour. </p>
<p>Several entities (<c>mib-server</c> via the its data module and
the <c>symbolic-store</c>) of the snmp agent uses this for storage
@@ -495,7 +527,7 @@ in so far as it will be converted to the new format if found.
<item>
<p>Defines the backend data module of the SNMP agent mib-server as
defined by the
- <seealso marker="snmpa_mib_data">snmpa_mib_data</seealso>
+ <seeerl marker="snmpa_mib_data">snmpa_mib_data</seeerl>
behaviour. </p>
<p>At present only the default module is provided with the agent,
<c>snmpa_mib_data_tttn</c>. </p>
@@ -529,7 +561,7 @@ in so far as it will be converted to the new format if found.
<item>
<p>Defines if the mib server shall perform cache gc automatically or
leave it to the user (see
- <seealso marker="snmpa#gc_mibs_cache">gc_mibs_cache/0,1,2,3</seealso>). </p>
+ <seeerl marker="snmpa#gc_mibs_cache">gc_mibs_cache/0,1,2,3</seeerl>). </p>
<p>Default is <c>true</c>.</p>
</item>
@@ -544,21 +576,26 @@ in so far as it will be converted to the new format if found.
</item>
<tag><marker id="agent_ms_cache_gclimit"></marker>
- <c><![CDATA[mibs_cache_gclimit() = integer() > 0 | infinity <optional>]]></c></tag>
+ <c><![CDATA[mibs_cache_gclimit() = infinity | integer() > 0 <optional>]]></c></tag>
<item>
<p>When performing a GC, this is the max number of cache entries
that will be deleted from the cache. </p>
- <p>The reason for having this limit is that if the cache is
+
+ <p>The reason why its possible to set a limit, is that if the cache is
large, the GC can potentially take a long time, during which
- the agent is locked. </p>
- <p>Default is <c>100</c>.</p>
+ the agent is "busy".
+ <em>But</em> on a heavily loaded system, we also risk not removing
+ enough elements in the cache, instead causing it to grow over time.
+ This is the reason the default value is <c>infinity</c>, which will
+ ensure that <em>all</em> candidates are removed as soon as possible. </p>
+ <p>Default is <c>infinity</c>.</p>
</item>
<tag><marker id="agent_error_report_mod"></marker>
<c><![CDATA[error_report_mod() = atom() <optional>]]></c></tag>
<item>
<p>Defines an error report module, implementing the
- <seealso marker="snmpa_error_report">snmpa_error_report</seealso>
+ <seeerl marker="snmpa_error_report">snmpa_error_report</seeerl>
behaviour. Two modules are provided with the toolkit:
<c>snmpa_error_logger</c> and <c>snmpa_error_io</c>.</p>
<p>Default is <c>snmpa_error_logger</c>.</p>
@@ -631,9 +668,9 @@ in so far as it will be converted to the new format if found.
The information will have a <em>best before</em> time,
defined by the <c>Expire</c> time given when calling the
request function (see
- <seealso marker="snmpm#async_get">async_get</seealso>,
- <seealso marker="snmpm#async_get_next">async_get_next</seealso> and
- <seealso marker="snmpm#async_set">async_set</seealso>).</p>
+ <seeerl marker="snmpm#async_get2">async_get</seeerl>,
+ <seeerl marker="snmpm#async_get_next2">async_get_next</seeerl> and
+ <seeerl marker="snmpm#async_set2">async_set</seeerl>).</p>
<p>Time in milli-seconds.</p>
<p>Default is <c>30000</c>.</p>
</item>
@@ -666,7 +703,7 @@ in so far as it will be converted to the new format if found.
net-if process.
Note that this will only work if the used net-if process actually supports
the protocol. See
- <seealso marker="snmpm_network_interface">snmpm_network_interface</seealso> behaviour for more info. </p>
+ <seeerl marker="snmpm_network_interface">snmpm_network_interface</seeerl> behaviour for more info. </p>
<taglist>
<tag><marker id="manager_server_nis_none"></marker>
<c><![CDATA[none (default)]]></c></tag>
@@ -679,12 +716,12 @@ in so far as it will be converted to the new format if found.
<item>
<p>The <c>PingTO</c> time specifies the between a successful ping
(or start) and the time when a
- <seealso marker="snmp_manager_netif#im_ping">ping</seealso>
+ <seeguide marker="snmp_manager_netif#im_ping">ping</seeguide>
message is to be sent to the net-if
process (basically the time between ping:s). </p>
<p>The <c>PongTO</c> time specifies how long time the net-if process
has to respond to a ping message, with a
- <seealso marker="snmp_manager_netif#om_pong">pong</seealso>
+ <seeguide marker="snmp_manager_netif#om_pong">pong</seeguide>
message.
It starts counting when the ping message has been sent.</p>
<p>Both times are in milli seconds.</p>
@@ -742,7 +779,7 @@ in so far as it will be converted to the new format if found.
<item>
<p><c>{user, integer()}</c> - The manager will send response
(acknowledgment) to inform-request messages when the
- <seealso marker="snmpm_user#handle_inform">handle_inform</seealso>
+ <seeerl marker="snmpm_user#handle_inform">handle_inform</seeerl>
function completes. The integer is the time, in milli-seconds,
that the manager will consider the stored inform-request info
valid.</p>
@@ -753,9 +790,9 @@ in so far as it will be converted to the new format if found.
</item>
</list>
<p>See
- <seealso marker="snmpm_network_interface">snmpm_network_interface</seealso>,
- <seealso marker="snmpm_user">handle_inform</seealso> and
- <seealso marker="snmp_manager_netif">definition of the manager net if</seealso> for more info.</p>
+ <seeerl marker="snmpm_network_interface">snmpm_network_interface</seeerl>,
+ <seeerl marker="snmpm_user">handle_inform</seeerl> and
+ <seeguide marker="snmp_manager_netif">definition of the manager net if</seeguide> for more info.</p>
<p>Default is <c>auto</c>.</p>
</item>
@@ -798,7 +835,7 @@ in so far as it will be converted to the new format if found.
<item>
<p>The module which handles the network interface part for the
SNMP manager. It must implement the
- <seealso marker="snmpm_network_interface">snmpm_network_interface</seealso> behaviour. </p>
+ <seeerl marker="snmpm_network_interface">snmpm_network_interface</seeerl> behaviour. </p>
<p>Default is <c>snmpm_net_if</c>. </p>
</item>
@@ -818,7 +855,7 @@ in so far as it will be converted to the new format if found.
<item>
<p>Module which handles the network interface filter part for the
SNMP manager. Must implement the
- <seealso marker="snmpm_network_interface_filter">snmpm_network_interface_filter</seealso> behaviour.</p>
+ <seeerl marker="snmpm_network_interface_filter">snmpm_network_interface_filter</seeerl> behaviour.</p>
<p>Default is <c>snmpm_net_if_filter</c>.</p>
</item>
@@ -826,7 +863,7 @@ in so far as it will be converted to the new format if found.
<c><![CDATA[def_user_module() = atom() <optional>]]></c></tag>
<item>
<p>The module implementing the default user. See the
- <seealso marker="snmpm_user">snmpm_user</seealso> behaviour.</p>
+ <seeerl marker="snmpm_user">snmpm_user</seeerl> behaviour.</p>
<p>Default is <c>snmpm_user_default</c>.</p>
</item>
@@ -845,7 +882,7 @@ in so far as it will be converted to the new format if found.
<tag><marker id="restart_type"></marker>
<c>restart_type() = permanent | transient | temporary</c></tag>
<item>
- <p>See <seealso marker="stdlib:supervisor#child_spec">supervisor</seealso>
+ <p>See <seeerl marker="stdlib:supervisor#child_spec">supervisor</seeerl>
documentation for more info.</p>
<p>Default is <c>permanent</c> for the agent and <c>transient</c>
for the manager.</p>
@@ -1224,7 +1261,7 @@ ok
application). This is done by calling the
<c>snmpa:verbosity/2</c> and <c>snmpm:verbosity/2</c> function(s)
and/or using
- <seealso marker="#configuration_params">configuration parameters</seealso>.
+ <seeguide marker="#configuration_params">configuration parameters</seeguide>.
The verbosity itself has several <em>levels</em>: <c>silence | info | log | debug | trace</c>. For the lowest verbosity <c>silence</c>,
nothing is printed. The higher the verbosity, the more is printed.
Default value is always <c>silence</c>.</p>
@@ -1265,37 +1302,37 @@ ok
<taglist>
<tag><c><![CDATA[snmpa:info/0,1]]></c></tag>
<item>
- <p><seealso marker="snmpa#info">info</seealso> is used to retrieve a list of miscellaneous agent information.</p>
+ <p><seeerl marker="snmpa#info">info</seeerl> is used to retrieve a list of miscellaneous agent information.</p>
</item>
<tag><c><![CDATA[snmpa:which_aliasnames/0]]></c></tag>
<item>
- <p><seealso marker="snmpa#which_aliasnames">which_aliasnames</seealso> is used to retrieve a list of all alias-names known to the agent. </p>
+ <p><seeerl marker="snmpa#which_aliasnames">which_aliasnames</seeerl> is used to retrieve a list of all alias-names known to the agent. </p>
</item>
<tag><c><![CDATA[snmpa:which_tables/0]]></c></tag>
<item>
- <p><seealso marker="snmpa#which_tables">which_tables</seealso> is used to retrieve a list of all (MIB) tables known to the agent. </p>
+ <p><seeerl marker="snmpa#which_tables">which_tables</seeerl> is used to retrieve a list of all (MIB) tables known to the agent. </p>
</item>
<tag><c><![CDATA[snmpa:which_variables/0]]></c></tag>
<item>
- <p><seealso marker="snmpa#which_variables">which_variables</seealso> is used to retrieve a list of all (MIB) variables known to the agent. </p>
+ <p><seeerl marker="snmpa#which_variables">which_variables</seeerl> is used to retrieve a list of all (MIB) variables known to the agent. </p>
</item>
<tag><c><![CDATA[snmpa:which_notifications/0]]></c></tag>
<item>
- <p><seealso marker="snmpa#which_notifications">which_notifications</seealso> is used to retrieve a list of all (MIB) notifications/traps known to the agent. </p>
+ <p><seeerl marker="snmpa#which_notifications">which_notifications</seeerl> is used to retrieve a list of all (MIB) notifications/traps known to the agent. </p>
</item>
<tag><c><![CDATA[snmpa:restart_worker/0,1]]></c></tag>
<item>
- <p><seealso marker="snmpa#restart_worker">restart_worker</seealso> is used to restart the worker process of a multi-threaded agent. </p>
+ <p><seeerl marker="snmpa#restart_worker">restart_worker</seeerl> is used to restart the worker process of a multi-threaded agent. </p>
</item>
<tag><c><![CDATA[snmpa:restart_set_worker/0,1]]></c></tag>
<item>
- <p><seealso marker="snmpa#restart_set_worker">restart_set_worker</seealso> is used to restart the set-worker process of a multi-threaded agent. </p>
+ <p><seeerl marker="snmpa#restart_set_worker">restart_set_worker</seeerl> is used to restart the set-worker process of a multi-threaded agent. </p>
</item>
<tag><c><![CDATA[snmpa_local_db:print/0,1,2]]></c></tag>
@@ -1310,10 +1347,10 @@ ok
This can be done by simply calling: </p>
<p><c><![CDATA[snmpa:print_mib_info()]]></c></p>
<p>See
- <seealso marker="snmpa#print_mib_info">print_mib_info/0</seealso>,
- <seealso marker="snmpa#print_mib_tables">print_mib_tables/0</seealso>
+ <seeerl marker="snmpa#print_mib_info">print_mib_info/0</seeerl>,
+ <seeerl marker="snmpa#print_mib_tables">print_mib_tables/0</seeerl>
or
- <seealso marker="snmpa#print_mib_variables">print_mib_variables/0</seealso>
+ <seeerl marker="snmpa#print_mib_variables">print_mib_variables/0</seeerl>
for more info. </p>
</section>