Appendix C: Common Error Messages

Since MIMIC is an extremely complex tool, it was designed to contain extensive diagnostic information. All events of interest are logged and displayed in the log window viewable through the Lab->Troubleshoot menu item. Since we cannot display a detailed explanation with every message at runtime, they are listed here.

Information that can change from message to message is shown in BOLD.

To use the list, search it by some unique words in the message (this should stay the same across releases).

If you don't see a message explained here, please cut and paste it into an e-mail message and send it to support@gambitcomm.com. We will include it in the next rev of the documentation.

Agent Simulator

  1. ERROR DATE - agent NUMBER cannot read PDU from ADDRESS
          DATE - snmp_agent_parse failed
          DATE - unknown community: COMMUNITY

    Cause
    An SNMP request with a community string was received which differs from the configured community string for the agent instance.
    Action
    The SNMP request is ignored. To accept requests at the community, change the agent instance configuration.

  2. ERROR DATE - agent NUMBER cannot read PDU
          DATE - snmp_agent_parse failed
          DATE - Bad Version: 1

    Cause
    An unknown SNMP protocol is being used. MIMIC currently only supports SNMPv1. Some management applications (like HP/OpenView) may want to talk a different protocol, such as the newer SNMP Security Protocol, which has not been standardized), and usually first try it, then fall back to SNMPv1.
    Action
    The SNMP request is ignored.

  3. ERROR DATE - no receiver at ADDRESS

    Cause
    This message means an SNMP request was received for an address that has no agent instance running. This request could be for the host's real IP address, in which case this message happens occasionally.
    Action
    The SNMP request is ignored.

  4. WARN  DATE - cannot receive from ADDRESS. continuing...
          DATE - recvfrom: Connection refused

    WARN  DATE - cannot receive from ADDRESS. continuing...
          DATE - recvfrom: Resource temporarily unavailable

    WARN  DATE - cannot receive from ADDRESS. continuing...
          DATE - recv: No error

    ERROR DATE - agent NUMBER send failed from ADDRESS to ADDRESS
          DATE - type=NUMBER size=NUMBER
          DATE - sendto: Connection refused

    WARN  DATE - cannot accept connection from ADDRESS. continuing...
          DATE - accept: Resource temporarily unavailable

    Cause
    Any of these messages means a protocol request (SNMP, Telnet, TFTP, etc) or connection was aborted by the management application. This happens occasionally, and could be an indication of a faulty management application.
    Action
    The request is ignored.

  5. ERROR DATE - AGNT[x]: cannot start(2) agent NUMBER
          DATE - Please refer to Appendix C for more details ERROR DATE - cannot bind receive IP address
          DATE - bind: Permission denied

    Cause
    This message means that you are running without sufficient privileges to bind to the selected SNMP socket.
    Action
    You need to run the MIMIC daemon mimicd with sufficient privileges.

    On Unix, this means running mimicd as root, or with setuid-root. The installation by default installs mimicd as setuid-root.

    On Windows NT, you need to run MIMIC as a user with Administrator privileges.

  6. ERROR DATE - AGNT[x]: cannot start(2) agent NUMBER
          DATE - Please refer to Appendix C for more details
          DATE - cannot bind receive IP address ADDRESS port PORT
          DATE - bind: no error

    Cause
    This message on Windows NT means there is already another process running that uses the selected SNMP port. This is very likely an already-running instance of an SNMP agent.

    On Windows 2000 and XP it could also mean that you are trying to use an IP address that is already assigned to another node running on the network. See Windows Installation Guide for more details.
    Action
    Only one process can simultaneously use the selected SNMP port on a host.

    To verify if there is such a program, stop MIMIC with File->Terminate and use the netstat utility from the DOS command line prompt, for example:

    C> netstat -a -n | find "161"
    TCP 0.0.0.0:161 0.0.0.0:0 LISTENING
    UDP 0.0.0.0:161 *:*

    If these lines show, then start the Windows task manager and see if there is an SNMP agent process running, e.g. snmp.exe, that you need to kill.

    Otherwise, contact Technical Support on how to find any other programs using this port.

    The Windows NT SNMP service can only be killed from the Services control panel.

  7. ERROR DATE - AGNT[x]: cannot start(2) agent NUMBER
          DATE - cannot set address
          DATE - cannot add address ADDRESS
          DATE - Cannot add IPAddress ADDRESS
          DATE - Failed DhcpNotifyConfigChange.

    Cause
    You can only run MIMIC from an account with Administrator privileges. Consult the Windows Installation Instructions section for details.
    Action
    Login to an account with Administrator privileges and run MIMIC.

  8. ERROR DATE - AGNT[x]: cannot start(2) agent NUMBER
          DATE - cannot set address
          DATE - cannot add address ADDRESS
          DATE - AddIPAddress failed. Reason=A device attached to the system is not functioning.

    ERROR DATE - AGNT[x]: cannot start(2) agent NUMBER
          DATE - cannot set address
          DATE - cannot add address ADDRESS
          DATE - Cannot add IPAddress ADDRESS
          DATE - DeleteIPAddress failed. Reason=The specified network resource or device is no longer available.

    Cause
    This error means that the network interface configured for the agent is not available, and usually happens on laptop computers, where you can pull out network cards (PCMCIA, docking stations), or on newer versions of Windows, when the network is unplugged. Consult the Windows Installation Instructions section for details.
    Action
    Configure a different network interface for the agent.

  9. ERROR DATE - cannot listen on remote management socket
          DATE - listen: No error

    Cause
    On Windows, this likely means you are running a software firewall which is preventing MIMIC from running properly.
    Action
    Configure your software firewall to allow MIMIC to access the network. See also the Windows Installation Instructions.

  10. ERROR DATE - initialization failed
          DATE - Cannot read license

    ERROR DATE - initialization failed
          DATE - License expired

    ERROR DATE - initialization failed
          DATE - cannot get license
          DATE - Invalid license key

    ERROR DATE - initialization failed
          DATE - cannot get license
          DATE - License corrupt

    Cause
    The licensing information in the license file mimicd.lic is incorrect.
    Action
    MIMIC will not run without correct license keys which you can obtain from support@gambitcomm.com.
    You can copy/paste the keys when prompted by the installation program. Or, if you have already installed MIMIC, then edit the config/*.lic files to paste the correct key (also see FAQ).

  11. ERROR: oid.cc:47: assertion failed - constructor failed

    Cause
    Any assertion failure is fatal, and should be reported to support@gambitcomm.com. Any message with "constructor failed" is likely a lack of virtual memory. You need to increase your swap space as detailed in the OS-specific installation instructions.
    Action
    Send email to support@gambitcomm.com.

  12. ERROR DATE - buffer full from ADDRESS to ADDRESS

    Cause
    The "buffer full" message is displayed when the management application sends too many requests at once. MIMIC cannot service them all, and buffers them (as all real SNMP agents do). The message alerts you when the buffer overflows, and messages are discarded (as all real SNMP agents do, except they do it silently).
    Action
    This condition can be caused due to 2 reasons:

    a) MIMIC is too slow (running on a underpowered machine). If this message occurs occasionally, you can overcome this problem by either putting MIMIC in overdrive by disabling action scripts, and/or increasing the buffer size for each agent.

    If you are not using action scripts, you can disable the extra processing on every received request, resulting in significant performance gain. To disable actions, set the MIMIC_DISABLE_ACTION environment variable to any value prior to running MIMIC (if it is running, you must terminate it with File->Terminate from MIMICView).

    In the C shell, do:
    % setenv MIMIC_DISABLE_ACTION 1

    In the Bourne shell, do:
    # MIMIC_DISABLE_ACTION=1; export MIMIC_DISABLE_ACTION

    On Windows NT, use the System Control Panel to set this environment variable.

    To increase the buffer size for each agent, edit the config/mimicd.cfg file and add a line

    agent_qsize = value

    where "value" is a number larger than 10 (the default). Try 20.

    If this problem persists, you may want to run MIMIC on a more powerful machine.

    b) the management application has a performance bug, ie. it sends too many requests simultaneously (as we have seen). A real agent will never alert you to this condition, except that performance suffers, since the app will retransmit the discarded requests.

    A common bug in management applications is the issuance of too many simultaneous requests in a "burst". Performance bugs are violations of the performance requirements for managing devices. These are subtle bugs, since their only symptoms are degraded performance, which is hard to measure. MIMIC helps you detect these violations.

    An example of this condition is "agressive retransmission policy", which could trigger this effect: the app is sending a request, which may be delayed. The app times out, and retransmits. If this happens more than a certain number of times consecutively, the buffer overflows. This is independent of the overall rate.

    A short protocol analyzer session would verify this: Gambit ships a free (unsupported) protocol analyzer called tcpdump downloadable from http://www.gambitcomm.com/unsupported . If you run tcpdump as follows from root:

    # tcpdump -s 256 -n host agent-IP-address and port 161

    it will dump all SNMP packets to/from that agent IP address. Run this analyzer until the buffer full error happens. Then send us the output.

    An aggressive retransmit policy could be a bug in the application, ie. it will have performance problems interacting with any agent, whether MIMIC or anybody else's.

  13. WARN  DATE - USM Error: sending report PDU
          DATE - unknown engine id: ""

    Cause
    This warning is an indication that the management application did a discovery of the SNMPv3 engine ID from the agent: in order to detect the engine ID it sends an illegal engine ID, causing the agent to respond with an unknownEngineID REPORT PDU.
    Action
    None necessary, if your SNMPv3 management application works correctly. Otherwise, you may have to do manual configuration of the engine ID.

  14. WARN  DATE - agent NUMBER cannot remove primary alias
          DATE - no receiver thread for socket NUMBER

    WARN  DATE - cannot clear pollfd NUMBER
          DATE - T[x], socket NUMBER not registered

    WARN  DATE - cannot clear pollfd NUMBER
          DATE - T[x], socket NUMBER not found in map

    WARN  DATE - NR[x]: continuing poll on agents...
          DATE - socket NUMBER not registered

    WARN  DATE - cannot switch socket NUMBER to inactive thread, continuing...
          DATE - command buffer overflow

    Cause
    Any of these messages indicates temporary problems in the protocol dispatcher in the simulator. These messages happen occasionally, under extreme stress of the simulator.
    Action
    The messages indicate a recovery action by the simulator, and may result in dropped messages to the agents. No action is necessary, unless the messages happen frequently. If they do, please contact support@gambitcomm.com to remedy the problem.

  15. ERROR DATE - PROTOCOL [AGT=NUMBER]: cannot start server
          DATE - cannot enable IP address for
          DATE - cannot start ipalias
          DATE - cannot open socket
          DATE - Please refer to Appendix C for more details
          DATE - cannot bind receive IP address ADDRESS port PORT
          DATE - bind: Address already in use.

    Cause
    This error means that there is already a service running on the indicated port, eg. there is already a Telnet service running on port 23. Only one service can be bound to a port at a time. On Linux systems, the Telnet service is managed with xinetd.
    Action
    You have 2 options:

    1. start the MIMIC protocol server on a different port. Eg. start the telnet server on port 2423.

    2. disable the platform-native Telnet service. On Linux systems, this can be accomplished with /usr/sbin/setup, in the System Services menu, or via chkconfig.