Microsoft et les réseaux, historique

 

 

Réseaux Microsoft :

intro en cours de traduction !

Extrait traduit de http://www.math.temple.edu/computing/samba.html

"Il y a bien longtemps, il y avait un mot clé désigné sous le nom de DCE/RPC. Cela pour des appels de procédés de l'informatique répartie Environment/Remote et était conceptuellement une bonne idée. Elle a été à l'origine développée par Apollo/HP pendant que NCA 1,0 (architecture de calcul de réseau) et couvrait seulement UDP. Quand arriva le besoin pour TCP de le rendre compatible avec DECnet 3,0, il a été remodelé, soumis au groupe ouvert, et est officiellement devenu DCE/rpc.

 

 Microsoft est alors arrivé et a décidé, plutôt que payé $20 par siège pour autoriser cette technologie, de réimplanter DCE/rpc eux-mêmes comme MSRPC. De ceci, le concept a continué sous forme de SMB (bloc de message de serveur, ou le "quoi") employant la couche de compatibilité de NetBIOS (système de base d'entrée-sortie de réseau, ou le "comment"). Vous pouvez exécuter SMB (= le transport) au-dessus de plusieurs différents protocoles; beaucoup de différentes réalisations ont surgi en conséquence, y compris NBIPX (IPX fini de NetBIOS, NwLnkNb, ou NWNBLink) et NBT (NetBIOS TCP/ip fini, ou NetBT).

 

 Pendant que les années passaient, NBT est devenu la forme la plus commune d'exécution jusqu'à ce que l'avance de "TCP hôte à hôte"  limite les ventes de Microsoft et élimine NetBIOS entièrement, et MS développa SMB lui-même à travers le port 445 de TCP seulement. A ce jour, le "TCP hôte à hôte" se propage encore partout. C'est ce qu'on raconte..."

 

 

 

Les faits :
Au tout début des années 80, le logiciel NetBIOS fut co-développé par Sytek pour IBM qui avait besoin de logiciel pour relier ses premiers PC ! Il fut livré en 1983 exactement.
Et l'ensemble de ce système a été baptisé PC-Network. Pour 80 nœuds maximum, c'était déjà énorme !
IBM PC-Network était un réseau local, large bande, constitué de cartes, de câbles, et un petit pilote connu sous le nom de NetBIOS !
 

Le matériel propriétaire IBM fut ensuite remplacé par les produits standards Ethernet et Token Ring.
Mais de nombreux logiciels avaient déjà été écrits pour le réseau et l'API NetBIOS. Cette API persista donc en produit bien vivant ! Des fournisseurs implémentèrent alors NetBIOS sur d'autres réseaux comme DECnet, IPX/SPX, SNA, TCP/IP, ...
NetBIOS sur TCP/IP = NBT est décrit dans les RFC 1001 et 1002 de l'IETF.
 

Détails historique de NetBIOS à ma page http://duffet.com/technique/1980-1984.html
 

 

Remarquons que, NetBIOS fournit une interface généralisée pour des communications de programme à programme. NetBIOS, cependant, ne fournit pas des services spécifiques pour faciliter le partage de dossiers, la copie de fichiers, et d'autres services pour utilisateurs dans un réseau pair-à-pair ou un LAN client/server.

Cette mission reposera sur les épaules des blocs de message de serveur (SMB, Server Message Block) inventé par IBM en 1985, puis repris et publié par Intel et Microsoft en 1987 !

http://www.supinfo-projects.com/cn/2003/protocole_smb/0/

Comme NetBIOS, SMB est un système d'interface. Mais où NetBIOS est un système d'interface généralisé, SMB est un système d'interface spécifique qui permet le partage de fichiers et d'imprimantes, la copie de fichiers, et la transmission de messages orientés utilisateurs.


SMB fut créé par IBM au dessus de NetBIOS. Microsoft l'a adopté, puis modifié pour l'améliorer.

Un client, ou un serveur SMB, s'attend à une interface NetBIOS en dessous de lui.


Microsoft et Intel avaient adapté SMB/NetBIOS à MS-DOS, puis à Windows dans les années 82-90.
Microsoft a aussi travaillé avec 3Com, fameux fabricant de cartes réseau Ethernet pour aboutir à leur premier gestionnaire réseau : MS-Net en 1985. Leur collaboration continua, et aboutit à l'évolution logique de MS-Net : LAN Manager basé sur OS/2, en 1988.

Dans un réseau Microsoft, quand on tape un "net use", on fait appel, en fait, à une fonction SMB !
 

Très tôt, Microsoft avait marqué son attachement à l'interface NetBIOS, qui permet d'écrire des applications réseaux indépendants du protocole de communication sous-jacent.
Il sera ainsi possible d'effectuer, des appels NetBIOS, sur NetBEUI (qui n'est qu'une généralisation de l'interface NetBIOS améliorée et scindée en 2 couches !), puis IPX, ou TCP/IP.
 

 

En 1985, Microsoft avait décidé de diffuser en OEM, le progiciel de gestion de réseau local, nommé MS-Net. De nombreuses sociétés vont acquérir une licence et transformer MS-Net  pour l'intégrer dans leurs propres solutions en matière de réseaux locaux.

MS-Net fournit un protocole de dialogue entre le serveur et les stations, identique quelque soit le réseau. Ce protocole est communément appelé SMB pour Server Message block. En outre, le redirecteur livré avec MS-Net intercepte les entrées sorties pour les rediriger vers le DOS s'il s'agit d'une requête locale, ou vers le serveur dans le cas contraire.

MS-Net eut une large diffusion.
3Com 3+ Share, dans les années 85-90, utilisait SMB de MS-Net, donc supportait tout programme fonctionnant sur ce système.

 

 

 

Un client ou le serveur SMB peut communiquer avec n'importe quel autre programme semblable qui adhère à cette norme SMB comprenant

chez IBM : OS/2 et Warp Connect, Warp 4, LAN Server, Lan Server/400, IBM PC Lan, Warp Server,

chez Artisoft : LANtastic in SMB mode.

chez Microsoft :  MS-Client sur MS-DOS, Windows for Workgroups, Windows 95-98-ME, LAN Manager, Windows NT Workstation & Server, Win 200x

et les DEC Pathworks, LM/UX, AS/UX, Syntax et Samba !


SMB, le partage de fichiers et d'imprimante en réseau, a donc été conçu pour fonctionner avec l'API NetBIOS. Et cela ne changea pas dans les SE Microsoft jusqu'à Win 2000. Celui-ci est le premier Windows a géré le transport des paquets SMB, sur TCP/IP sans encapsulation NetBIOS.
NetBIOS est donc quelque chose qui a vieilli, après 20 ans de service !
D'ailleurs à partir de Win 2000, le nom de machine Windows est un nom d'hôte natif. Le même nom limité à 15 caractères est proposé en nom NetBIOS pour la compatibilité avec des veilles applications et les connexions réseau avec des vieux Win 9x ou NT4.

 

 

 


En 1996, Microsoft renomma SMB en CIFS pour le futur Win 2000, et le proposa en norme en 1997 à l'
Internet Engineering Task Force (IETF). Mais cela ne s'est pas fait rapidement !

 

" En 2002, Microsoft qui tentait de trouver une solution négociée avec la Commission Européenne vient de consentir à celle-ci des concessions concernant l’ouverture de certaines de ses technologies, offrant ainsi une interopérabilité facilitée aux produits de ses partenaires et concurrents avec Windows.
Les technologies concernées sont Common Internet File System (CIFS) et Server Message Block (SMB), utilisées par les serveurs et les postes de travail Windows pour communiquer.
Microsoft propose ainsi d’offrir CIFS comme un standard Internet, et de fournir sous licence les améliorations qu‘elle a apportées à SMB."

 

Et je ne sais toujours pas en cette année 2004, si CIFS a été accepté en norme. A cause de son origine MS, la suite CIFS peut-être un peu gênante pour certains ! Mais les industriels du stockage ont suivi, car on voit dans la plupart des serveurs NAS, le protocole CIFS bien reconnu, à coté du vieillissant NFS pour Unix.

Les noeuds d'un réseau partage de fichiers CIFS sont connectés à un fil imaginaire sur un adaptateur réseau imaginaire ! C'est toute la feinte !

SMB sur le port TCP 445 remplace l'héritage NetBIOS au dessus de TCP/IP dans les Windows 5.x (2000 à 2003 au moins). C'est l'accès à un partage d'un Windows hôte, NetBIOS désactivé. 

 
Concepts de NetBIOS sur TCP/IP

 

http://hackoolique.tripod.com/textes/netbios.htm

http://www.itpro.fr/index1.asp?IdArticle=1294&rub=2

http://www.bellamyjc.net/fr/reseau.html

 

Pour voir les réseaux vus en couches, par exemple ma page à :

http://bruno.duffet.free.fr/technique/cours/couches.htm

 

http://www.linux-mag.com/2001-05/smb_01.html

 

 


 

- Résumé chronologique historique des SE réseaux de Microsoft basé sur NetBIOS et SMB : MS-Net, LAN Manager, NTx, 200x.
MS-Net et LAN Manager sont une couche au-dessus des SE de l'époque, années 80 : DOS et OS/2.

 

 

 

Pour aller plus loin dans l'histoire des réseaux MS et IBM :

http://www.microsoft.com/windows2000/en/server/help/default.asp?url=/windows2000/en/server/help/sag_WINS_und_NetbtBackground.htm

 

http://ourworld.compuserve.com/homepages/timothydevans/intro.htm

http://samba.org/cifs/docs/smb-history.html

http://docs.rinet.ru/MuNet/ch09/ch09.htm

 

http://www-mice.cs.ucl.ac.uk/multimedia/misc/tcp_ip/8812.mm.www/0131.html

 

 

 

 

 

 

 

Microsoft, et TCP/IP, et Internet :

Microsoft a acquis la licence de la pile TCP/IP auprès de BSD en 1990.
Microsoft, TCP/IP, Open Source, and Licensing || kuro5hin.org

La première version Microsoft du protocole TCP/IP est apparue en 1991 avec LAN Manager 2.1.
Plusieurs améliorations, notamment en routage, avaient été ajoutées dans LAN Man 2.2 en 1992.

En 1993, TCP/IP est fourni dans WpW 3.1, Win NT WS et AS. Des outils de connexion de base étaient fournis comme ftp, tftp, telenet, commandes r*, arp, route et finger.
 

Mais, hélas au début des années 90, Microsoft n'a pas vu arrivé le grand virage avec Internet et son TCP/IP qui poussera au musée les autres protocoles transports et réseaux des LAN de l'époque (NetBEUI et IPX/SPX) !

Le protocole transport réseau Microsoft était NetBEUI, , dans les années 80 pour les groupes de travail, sans inter réseaux car non routable.

Le protocole réseau, et inter réseaux,  IPX était fourni par les disquettes de Novell pour se connecter à un serveur sous Netware, ou pour relier deux réseaux. IPX était routable, et ressemble à IP, car il a une adresse de réseau. Il était plus facile à configurer que TCP/IP.

Sachez que TCP/IP était aussi géré en option sur les SE Microsoft DOS+Win 3.x par des piles TCP/IP de Microsoft ou d'autres éditeurs dans les années 90. Des éditeurs comme FTP Software apportaient leur propre pile TCP/IP ...
 

Notez que le système d'exploitation réseau de Microsoft était LAN Manager (Ce NOS a été commercialisé entre 1988 et 1995 environ, NT lui a succédé dès 93).
 

En 1993, à la sortie de NT 3.1, le protocole privilégié chez Microsoft était IPX/SPX de Novell ! Imposé par la domination des Novell Netware sur les réseaux et serveurs PC !
Mais en 93, Microsoft fournissait aussi bien TCP/IP dans Windows pour Workgroups 3.1, Win NT.
La diversité des réseaux et protocoles étaient le témoin d'une grande activité de création à l'époque !

En 93, Microsoft a installé son propre serveur d'information FTP sur Internet. Il tournait sous Win NT Advanced Server et voyait en moyenne 25 000 utilisateurs se connecter par semaine pour un total de 75 000 fichiers téléchargés.
 
 

Lorsque que Netscape a annoncé que son Navigator deviendrait l'interface universelle pour accéder aux ressources n'importe où dans l'entreprise ou dans le monde, Microsoft a eu très peur ! En effet, le navigateur allait rendre l'OS insignifiant, comme un produit sans marque. Les clients risquaient de se détacher de Microsoft en ne se souciant alors que du navigateur non Microsoft ! Un cauchemar pour Bill et son équipe dirigeante !

Les réactions de la division blindée Microsoft :

- NT4 a les 2 protocoles proposés au choix : NWLink (compatible IPX) et TCP/IP.

- TCP/IP devient le protocole favori de Microsoft et évince définitivement IPX/SPX, après avoir poussé dehors les serveurs Netware.

- Internet Explorer est fourni gratuitement et le serveur HTTP+FTP aussi !

Netscape en est assommé, fin de la bataille par KO :((

 

http://oldversion.com/program.php?n=msie

 

 

Sur Unix, une Socket est une prise logique de connexion pour communication.
Une Socket est adressable par : 1 adresse IP, un type de protocole de transport TCP ou UDP, son numéro de port. Socket = douille (ou prise, orbite).

Deux processus indépendants sur deux machines distinctes, communiquent entre eux via les Sockets.

Microsoft a été un des leaders dans la mise en place de l'interface publique Sockets pour Windows.
 

Sur les SE Microsoft, les Sockets sont également supportées, mais deviennent dans le contexte Microsoft, indépendantes du protocole sous-jacent, contrairement aux Sockets Berkeley qui demeurent très attachées à Unix et TCP/IP.
Elles restent très proches cependant dans leur philosophie d'appel du standard Berkeley . On retrouvera chez Microsoft la notion de Socket de type Stream, ouverte en mode fiable et connectée sur TCP. Et la notion de Socket datagramme, basés sur UDP.

 

Socket devenue Winsok dans l'OS Windows a évolué en une véritable API !

+ à http://www.frameip.com/winsock/

 

Winsocks : Abréviation anglaise pour "Windows Sockets". "Winsocks" est une série de spécifications et de standards pour les programmeurs concevant des applications "TCP/IP" sous l'environnement Windows.
Windows Socket est donc une spécification ouverte définissant une interface de programmation pour les applications réseaux. C'est aussi une partie de l'architecture WOSA (Windows Open System Architecture).

 


Les solutions de Microsoft pour TCP/IP et pour Internet sont véritablement arrivées et propagées entre 1995 et 98 (avec la pile TCP/IP dans Win 9X, et avec le serveur Web IIS 4 dans l'option pack pour NT4). Le succès de Win 95 et 98, et les connexions faciles à Internet sont les 2 moteurs de la révolution IP chez les utilisateurs.

Il faut se souvenir qu'avant 96 environ, la connexion à Internet était une galère quasi certaine !
 


 

Dans Win 9X et NT4, on pouvait choisir un nom NetBIOS et un nom d'hôte différent pour son système. C'est une période où les 2 univers se côtoient.
 C'était bien pratique aussi pour faire des tests : voir quelle commande s'appuie sur un nom d'hôte par exemple (sans l'activation des systèmes de résolution de noms en adresse IP, de Microsoft).
 

Depuis Win 2000, le protocole favori est TCP/IP. Le nom du système est unique (NetBIOS pour compatibilité, ou hôte sur TCP/IP). Microsoft prépare l'abandon de NetBIOS, déjà possible si on a un réseau tout en Win 2000, ou supérieurs XP et serveur 2003, ...

 

Ainsi, depuis Windows 2000, l'API de nommage NetBIOS peut être supprimée, dans un réseau totalement Win 2000-2003 et applications compatibles (et sa logique associée de méthodes de résolutions de noms, LMHOSTS et WINS, peut être évitée aussi). Ainsi le réseau 200x fonctionnera totalement avec DNS/TCP-IP.
Le protocole SMB de partage de fichiers et d'imprimante a évolué en CIFS (Commun Internet File System). Il ne s'appuie pas sur NetBIOS, et travaille avec TCP/IP directement. MS a proposé CIFS aux organismes de normalisation. 

 

MS et son virage Internet :

http://www.netline.be/presse/archives/webzoneNov96.htm

 

http://www.microsoft.com/france/internet/default.asp

 

 

A partir de Windows Server 2000, en contrôleur de domaine sous Active Directory, les réseaux Microsoft sont donc totalement natifs TCP/IP, noms d'hôtes et DNS.
L'annuaire Active Directory s'appuie sur les normes DNS. Il est interrogeable par le protocole LDAP.
Si tous les postes et serveurs membres du domaine 200x, sont au moins sous Win 2000, Win XP, on désactivera NetBI0S sur TCP/IP partout ! Et plus besoin du service serveur de noms, WINS.

 

 

 

 retour au sommaire chronologie des  OS