An error occurred while releasing ENOBUFS for the buf of the vxWorks socket.

Source: Internet
Author: User
Network Problem Solving

21:53:40 | classification: vxWorks | report | font size subscription

1. Network problems, such as rpccore backend client RPC timeout, unknown network interface, muxDevLoad failure, wdbConfig WDB communication interface configuration error, can be solved using network debugging functions.
2. If the target machine can be pinged and its own socket application (or a network library such as ftp service) is run, the application will pause for a while. In this case, you need to consider the impact of configuration on network performance.
3. If the ping fails again, you need to use the debugging function on the target tShell to solve the problem (tShell can be directed to the serial port ). Use I to check whether tNetTask is still running at priority 50. If it is suspended (suspendded), use tt tNetTask to check the task stack track. In this case, the code may use a null pointer or the initialization is interrupted. If the application runs normally, the application stops as the number of sockets or packets increases.
You can call the following show functions from tShell (you must add the corresponding components ).
-> I: displays running tasks and priorities.
-> NetStackSysPoolShow: displays the [pool] status of the network stack system memory pool.
-> NetStackDataPoolShow: displays the status of the network stack data memory pool
-> InetstatShow: displays the socket and its receiving queue.
-> IpstatShow: displays IP protocol statistics.
-> TcpstatShow: displays tcp statistics.
-> UdpstatShow: displays udp protocol statistics.
-> IcmpstatShow: displays icmp protocol statistics.
-> MRouteShow displays the route table, including the shielded code.
-> RouteShow: displays the route table, excluding the shielded code.
-> IosFdShow: Display the file descriptor
-> ArpShow: displays arp tables.
-> HostShow: displays host tables.
-> IfShow: IP display interface, END and BSD4.4 driver
-> MuxShow: The END driver of MUX is successfully loaded.
The following describes the symptoms:
A. ENOBUFS (socket application error) if the network stack or driver memory pool is too small, the application may pause and resume as the resource is released. An error similar to EBOBUFS or S_netBufLib_NO_POOL_MEMORY may occur. Call netStackSysPoolShow and netStackDataPoolShow to check. If no empty buffer is available, add the default allocation and modify IP configuration parameters.
B. The target machine cannot be pinged. If the RPC backend times out and the socket buffer is not read, the driver buffer is exhausted. If the driver does not have an available buffer, it cannot accept and send packets. Ping fails, and the host cannot connect to the target machine. MuxShow only displays the END driver. If the start device is listed in muxShow, the END driver is used. IfShow displays the END and BSD4.4 drivers. Use inetstatShow to determine which socket's accept queue has data. This information can be used to determine which task has not read the socket. If ifShow and ipstatShow show that the accept queue has no data, the driver may be wrong. You can try it by using the END or BSD driver. If BSP supports multiple network card types, you can try another card type. If muxShow does not display any driver, it indicates that the BSD driver is configured. You can configure BSD in config. h or project without defining INCLUDE_END, or remove the support components for network components-> network devices-> end attach interface and END interface. If the driver version is not available, you can use the loopback driver. Run the client and server on the target machine and send it to 127.0.0.1.
C. The target can be pinged, but data cannot be transmitted. You can use inetstatShow or netstat on the host. If the sender returns data but the receiver does not, the client/server application code may experience a deadlock. Reduce the information length to less than 1460 (TCP) to check whether a deadlock has occurred.
D. View the statistical data of the show function before and after an error occurs in a protocol issue, and check for clues about the error.
E. Priority issues ensure that tNetTask tasks have a higher priority than network-dependent application tasks.
F. Replace the NIC with hardware or driver configuration problems or use different NICs. Observe the HUB lamp, which indicates the driving operation. Configure the BSD driver and call ifShow to check whether there is a conflict (this type of information is not reported by the END driver ). If the driver reports a large number of conflicts, check whether other nodes in the network work in full duplex mode.

An error occurred while releasing ENOBUFS for the buf of the vxWorks socket.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.