[AGENT++] can get from subnet netaddress. A bug of SNMP++ or SNMP Protocol fault?
Bob Natale
Bob.Natale at AppliedSNMP.com
Fri Apr 1 02:14:24 CEST 2005
Hi Jochen,
I don't disagree with your answer at all, but I do think that the case
for *not* sending or responding to SNMP messages on the broadcast
address is much stronger than one might infer from your text.
First, putting such traffic on the broadcast address is potentially
abusive.
Second, SNMP is clearly a request/response protocol (ignoring traps,
which are more like a publish/subscribe model). Normal SNMP
application and middleware behavior is (thankfully) optimized around
that principle. Resource- and performance-efficient retransmission
policies, dispatching algorithms, etc., all build off the one-
request/one-response principle.
Third, sure it can be done. But implementations like the
SNMP++ "broadcast-discovery()" method generally come with some
appreciable caveats...some stated, some implicit. (SNMP discovery is
much more effectively handled on an overall basis, IMHO, using a more
deterministic approach.)
Cheers,
BobN
---- Original message ----
>Date: Thu, 31 Mar 2005 21:02:43 +0200
>From: Jochen Katz <katz at agentpp.com>
>Subject: Re: [AGENT++] can get from subnet netaddress. A bug of SNMP++
or SNMP Protocol fault?
>To: agentpp <agentpp at agentpp.org>
>
>Hi,
>
>> There is a subnet 192.168.0.104/255.255.255.252 where my routers
>> resides. Router A has a IP address 192.168.0.105 and Router B
>> 192.168.0.106
>>
>> But when I provide the subnet netaddress 192.168.0.104 or subnet
>> broadcast address 192.168.0.107 ,it will both get a response from
>> 192.168.0.105. I use the SNMP++v3.2.16 package. Is this phenomenon
>> caused by SNMP++ package or SNMP protocol?
>
>snmp++ does not expect to receive two responses for one request, so
only
>the first that is received is returned. Possibly router A is faster
than
>router B or B just does not answer broadcast requests (you can use a
>sniffer to check this).
>
>As the SNMP standard does not define what agents should do if they
>receive a request on a broadcast address, some agents answer them and
>some don't.
>
>snmp++ has a function Snmp::broadcast_discovery() that waits for
>multiple answers.
>
>Regards,
> Jochen
>
>_______________________________________________
>AGENTPP mailing list
>AGENTPP at agentpp.org
>http://lists.agentpp.org/mailman/listinfo/agentpp
More information about the AGENTPP
mailing list