[SNMP4J] Code for ----RE: SNMPv3_USM_UNKNOWN_SECURITY_NAME

Frank Fock fock at agentpp.com
Fri Oct 26 19:14:45 CEST 2007


Hi,

I do not think that this is related to SNMP4J. It seems
rather a synchronization problem in the application
code, but I have to few details to provide more help.

Best regards,
Frank

Lin, Dongliang wrote:
> Here is more details about my code and my problem.
> Any help is deeply appreciated.
> 
> I have following code to run on two separate threads to send SNMPv3
> request to two separate agents with different security name
> It works fine if I just run one thread to either of Agents.
> However, with two threads, I got about 10% of response PDU is null and
> error code as: 
> 	"org.snmp4j.MessageException: Message processing model 3
> returned error: 1404"
> 
> setup_once() ///  init once
>         {
>           OctetString securityName = new OctetString("securityname"); //
> different names for each agent
>           int securityLevel = SecurityLevel.AUTH_NOPRIV
>           OID authProtocol =  AuthMD5.ID
>           OID privProtocol  = PrivAES256.ID;
>           OctetString authPassphrase =  new OctetString("authPassphrase
> "); // different phrasefor each agent
>           OctetString privPassphrase = new OctetString("privPassphrase
> "); ;  // different phrase for each agent
> 
>           transport = new DefaultUdpTransportMapping();   
>           snmp = new Snmp(transport);  
>  
>           usm = new USM(SecurityProtocols.getInstance(), new
> OctetString(MPv3.createLocalEngineID()), 0);        
>           SecurityModels.getInstance().addSecurityModel(usm);
>    
>           snmp.getUSM().addUser(securityName, new UsmUser(securityName,
> authProtocol, authPassphrase, privProtocol, privPassphrase));
> 
>           UserTarget target = (UserTarget)tgt;    
>           target.setAddress(targetAddress);
>           target.setRetries(requestMsg.targ.retries);
>           target.setTimeout(requestMsg.targ.timeout);
>           target.setVersion(target.getVersion());
>           target.setSecurityName(securityName);
>           target.setSecurityModel(SecurityModel.SECURITY_MODEL_USM);
>           target.setSecurityLevel(securityLevel);
>    
>           snmp.listen();	 
> 	 }
>         
> SendRequest() // send out pdu to each agent per request  
>         {
>          ScopedPDU pdu = new ScopedPDU(); // prepare pdu content ....
>          snmp.send(pdu, target, reqObject, this);            
>           }
> 
> Thanks in advance.
> 
> Don at boeing
> 
>> _____________________________________________ 
>> From: 	Lin, Dongliang  
>> Sent:	Wednesday, October 24, 2007 5:23 PM
>> To:	'snmp4j at agentpp.org'
>> Subject:	SNMPv3_USM_UNKNOWN_SECURITY_NAME  
>>
>>
>> Hello,
>>
>> Within one process, I  can reliably poll  individual SNMP/V3 agents.
>>
>> However with the same configuration, if I polling two different V3
>> agents at the same time through same process, I got about 10% error
>> response from those agents indicating PDUs  are null.
>> The ResponseEvent shows the return error message as 
>> 	"org.snmp4j.MessageException: Message processing model 3
>> returned error: 1404"
>>
>> In USM.java,  return SnmpConstants.SNMPv3_USM_UNKNOWN_SECURITY_NAME
>> which is  1404 
>>
>> Any help are much appreciated.
>>
>>
>> Thanks.
>>
>> Don
>>
> _______________________________________________
> SNMP4J mailing list
> SNMP4J at agentpp.org
> http://lists.agentpp.org/mailman/listinfo/snmp4j

-- 
AGENT++
http://www.agentpp.com
http://www.mibexplorer.com
http://www.mibdesigner.com




More information about the SNMP4J mailing list