Srv.sys allocates a shared memory section to temporarily hold the TRANSACTION structures and associated buffer data that will be passed (using the LPC port) to XACTSRV in resolving the Transact SMB requests that carry remoted down-level calls. Note that the size of this shared memory section is configurable by using the XactMemSize parameter. The "STATUS_INSUFF_SERVER_RESOURCES" error message is typically returned when the server cannot allocate memory from this shared memory section.
For example, this error message could occur if many Local Segment Master Browsers (LBS == BDC on each segment) try to collect the browsing list from the Domain Master Browser (DMB == PDC) at the same time.
The Local Master Browser obtains the browsing list from the DMB by using a function that is similar to the NetServerEnum function. By default, this function implies a "SMB Transact Remote API (remote api code = 68)" frame in which the Transact MaxDataBytes parameter is set to 0x1068=4200 bytes. If the size of the browsing list is larger than 4,200 bytes (this value seems to be related to sizreqbuf), a second "SMB Transact Remote API : 68" is sent by the SMB, but this time with MaxDataBytes=0xFFFF=65535 bytes. In some configurations, this second SMB Transact request can return "STATUS_INSUFF_SERVER_RESOURCES."
You can set the XactMemSize parameter in the registry to a maximum allocation of 16 Megs. To do so, perform the following steps:
- Open Regedit.
- Navigate to the following registry key:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
- Add a REG_DWORD value with a name of "XactMemSize".
- Give it a Hex value of 1000000 (1 million = 16 meg).
- Restart the server.
ID articol: 307257 - Ultima examinare: 30 oct. 2006 - Revizie: 1