WINS
WINS, or Windows Internet Name Server, is a network based service created (somewhat unsurprisingly, given the name) by Microsoft and is their implementation of the NBNS, or NetBIOS Name Server, service.
The WINS service shares similarities to the ubiquitous DNS in that it is a form of hostname-to-IP resolution. It is only capable of resolving NetBIOS based hostnames like LABPC012 and not FQDN based internet hostnames like www.freebsdwiki.net. It is also limited to the network subnet it is hosted within due to its inability to cross routers which is unlike DNS that spans the entire internet. Despite this limitation it can communicate to other WINS services on other subnets to replicate information using a push / pull arrangement.
Origins
Early network implementations that had their origins in mainframes and as such network hosts were few in number. This permitted the use of hostname resolution through localhost text-based files to be used since changes were few and far between.
With the advent of newer technology it soon became possible to buy cheap personal computers to replace large expensive mainframe systems. Maintaining localhost files became impossible with the vast number of hosts on the network which resulted in hosts broadcasting queries to the network to find other hosts. These broadcasts resulted in saturating the network and every host had to take note of a query to determine whether it had to reply or not, thereby causing computers to run slowly.
It soon became apparent that a service was required that would reduce the network load while making hostname resolution more efficient and quicker. This is where NBNS, and later WINS, came into existence.
Features
The WINS service works within a network subnet and provides name resolution based on host NetBIOS names and their associated IP address. It can be thought of as a kind of Dynamic-DNS style service but instead of internet-based hosts it deals with workgroup-based hosts. As such it is tied into the LAN-Manager style network infrastructure, nowadays more commonly referred to as SMB (latterly CIFS) on Microsoft platforms or Samba on UNIX and Unix-like platforms. The server operating as the primary WINS service is often referred to as the local master browser or domain master browser in NT-based domains.
The service differs from DNS in that it cannot span across networks via routers on IP based networks, therefore it is limited to the network subnet it resides within. To work around this limitation a push/pull replication setup can be implemented and often in a spoke/hub topological configuration. Without this arrangement a host on the network subnet can only query the local WINS service and not know about hosts on other subnets. However with this arrangement a host can determine another host's IP address from another network subnet and then rely on TCP/IP routing to communicate to it which makes it similar to DNS.
With DNS it is possible to have the same hostname several times but under different sub-domains. A typical example would be www.us.domain.net and www.uk.domain.net where the hostname www exists twice but one under the us and the other under the uk sub-domain. This is possible because DNS is hierarchical in operation. With WINS there is no hierarchical system and as such duplicate hostnames cannot exist, especially across different network subnets, when the push/pull system is used. This is not necessarily a limitation of WINS since a flat-domain setup would not permit more then one hostname to be used.
The WINS service has a function that does not exist in DNS: the ability to have a host on the network assume the role of a WINS service should the official WINS service become unavailable (for example, if it had crashed). This system is known as having an election where each host broadcasts its credentials and the "highest" level is granted the rights to become the local browser master. The levels are determined on a weighted system as follows:
- Primary Domain Controller (PDC, used of NT based networks);
- Windows NT, Windows 2000, Windows XP or Windows Server NT, 2000 (non-PDC systems);
- Windows 95 or Windows 98;
- Windows for Workgroups 3.11;
See Also
The Samba documentation project has a good description of the WINS service.