INFO: Using the setsockopt() Function with IP_ADD_MEMBERSHIP Fails with Error 10055 on Windows 98 (236377)



The information in this article applies to:

  • Microsoft Windows 98

This article was previously published under Q236377

SUMMARY

On a Windows 98-based computer, when the setsockopt function is used with IP_ADD_MEMBERSHIP to join multicast groups, the function may fail with error 10055 (WSAENOBUFS) after a number of successful calls. The same problem may also occur when the WSAJoinLeaf function is used to join multicast leaf nodes into multipoint sessions.

The error is the result of a multicast implementation limitation on Windows 98.

MORE INFORMATION

Multicast is implemented differently on Microsoft Windows 95, Windows 98, Microsoft Windows NT, and Microsoft Windows 2000.

On Windows 98-based computers, multicast is implemented by using the multicast filters that are present in the NIC hardware. Once these hardware filters are used up, any subsequent membership requests will fail with error 10055.

On Windows 95 and Windows NT 4.0, Multicast is implemented by putting the NIC into promiscuous mode; the network stack looks for Internet Protocol (IP) multicast addresses that were joined. Although this is not as efficient as hardware filters, the number of groups that can be joined is only limited by the system resources.

On Windows 2000, Multicast implementation is more flexible. The hardware multicast filters are used first. When the filters are exhausted, the NIC is then put in promiscuous mode.

REFERENCES

For additional information, click the article number below to view the article in the Microsoft Knowledge Base:

131978 HOWTO: Receive/Send Multicasts Under WinNT/Win95 Using WinSock


Modification Type:MinorLast Reviewed:12/20/2004
Keywords:kbDSWNET2003Swept kbAPI kbBug kbinfo kbnetwork kbOSWin98fix kbWinsock KB236377