Wat gebeurt er tijdens een query?
In deze sectie wordt beschreven hoe het netwerk de query verwerkt wanneer een 32-bits client zoekt naar een naam in een eigen domein.
Wanneer uw clienttoepassing RpcNsBindingImportBeginaanroept, probeert de locator die zich op uw clientcomputer bevindt, aan deze aanvraag te voldoen. Als er niets in de cache staat, wordt de aanvraag door RPC doorgestuurd naar een hoofdzoeker. Als de hoofdzoeker niets in de cache vindt, wordt de aanvraag verzonden naar alle computers in het domein met behulp van een mail-slot broadcast. Als er een overeenstemming is, reageert de locator op elke computer via een gerichte postvak. (Als een proces op die computer bijvoorbeeld de interface heeft geƫxporteerd.) De antwoorden worden gesorteerd en de RPC wordt voltooid vanuit de proceszoeker van de client, die het clientproces zelf beantwoordt.
In een domein zoekt de clientlocator op de volgende locaties naar een masterlocator:
- Op de primaire domeincontroller
- Op elke back-up-domeincontroller
Als er geen overeenkomst wordt gevonden, verklaart de clientlokalisator zichzelf als de hoofdlokalisator. Daarom zal het zoekopdrachten uitzenden als ze niet lokaal kunnen worden voldaan.
In een werkgroep beheert de client locator een cache van de computers waarvan de locators een signaal hebben uitgezonden. Het gebruikt degene die het het langst draait als master locator. Als die computer niet beschikbaar is, wordt de volgende, langste uitzendcomputer gebruikt, enzovoort. Als de client een master locator nodig heeft en de cache leeg is, wordt de cache aangevuld door een speciale mail-slot-uitzending te verzenden die master locators vraagt om te reageren. Als er geen antwoorden zijn, declareert de clientzoeker zichzelf als hoofdzoeker en worden query's uitgezonden als ze niet lokaal kunnen worden voldaan.
Dit verandert als uw clienttoepassing een 16-bits of MS-DOS-programma is. In dit geval draait er geen locator op de clientcomputer, en Rpcns1.dll of Rpcnslm.rpc bevat de code om een master locator te vinden. Alle aanvragen worden rechtstreeks doorgestuurd naar de hoofdzoeker.
Deze richtlijnen zijn geldig voor namen in het domein van de client, zoals namen voor /.:/entryname. Als de client een naam van een ander domein aanvraagt via het gebruik van '/.../DOMAIN/entryname;', stuurt de clientzoeker de aanvraag door naar het opgegeven domein dat deze uitzendt als het antwoord niet beschikbaar is. Als het domein niet beschikbaar is of daadwerkelijk een werkgroep is, mislukt de aanvraag.
Notitie
Onthoud het volgende wanneer u met vermeldingen in de naamservice werkt:
- Een client kan de syntaxis '/.../DOMAIN/entryname' niet gebruiken om een vermelding in een eigen domein te vinden. Gebruik de syntaxis '/.:/entryname'. U kunt echter '/.../DOMAIN/entryname' gebruiken om een vermelding in een ander domein te vinden.
- De domeinnaam in '/.../DOMAIN/entryname' moet hoofdletters bevatten. Wanneer u een overeenkomende zoekt, is de locator hoofdlettergevoelig.
- Namen van locatorvermeldingen zijn ook hoofdlettergevoelig, maar hoeven niet in hoofdletters te staan.
- Wanneer de client de syntaxis /.:/entryname gebruikt, zoekt de locator niet naar vermeldingen in andere domeinen, zelfs niet als ze een vertrouwensrelatie hebben met het aanmeldingsdomein.
- Broadcasts maken geen deel uit van LAN-segmenten (bijvoorbeeld subnetten). De bruikbaarheid van de locator is dus beperkt in een organisatie met meerdere subnetten.