[PATCH] nsswitch extensions + caching

Michael Bushkov bushman at rsu.ru
Tue Dec 6 11:45:09 PST 2005

I haven't seen much fuss, actually :)
Here are some points:
1. Nsswitch makes caching easy. As nsswitch-related calls are done quite 
often, caching can be very useful. With nsswitch we can organize caching of 
different types of data (passwd, groups, services, etc) in the quite simple 
uniform manner. In other OSes caching is usually organized via nscd. The 
caching daemon (it's implementation is in the patch) is the analogue of the 
nscd in some way. It has different approach for caching, but can work in the 
way, the nscd usually works.
2. Nsswitch implementation is not yet completed. There's a number of 
databases, which can be supported, but their support is not yet implemented. 
Their support in nsswitch will give us: a) uniform way to configure the data 
sources to use (via nsswitch.conf) 2) the ability to cache their data
3. More concrete example is /etc/services file. The services database didn't 
utilize nsswitch/nsdispatch. If it uses nsdispatch, it will be able to cache 
data from the file - and we'll be able to make it as big as we want. Of 
course, first "uncached" requests will take some time, but all subsequent 
requests for the information, that is already in the cache will be extremely 
fast - they won't event open the /etc/services file.
4. Another concrete example is OpenSSH authroization keys. If we use 
nsswitch to retrieve them, we can easily use NIS or LDAP as their storage, 
which is a good thing.

I hope, this will satisfy you :)

With best regards,

----- Original Message ----- 
From: "Julian Elischer" <julian at elischer.org>
To: "Michael Bushkov" <bushman at rsu.ru>
Cc: <freebsd-hackers at freebsd.org>; <freebsd-current at freebsd.org>
Sent: Tuesday, December 06, 2005 9:46 PM
Subject: Re: [PATCH] nsswitch extensions + caching

> Michael Bushkov wrote:
> [...]
> so, I've been wonderring.. what's all the fuss about nsswitch?
> what does it get us?
> (Not saying it doesn't, just hoping someone will explain)

More information about the freebsd-current mailing list