# Réseaux TCP/IP/Introduction aux réseaux
## Les réseaux en entreprise

Dans la plupart des entreprises, les ordinateurs sont tous connectés entre eux par des réseaux, par exemple par des réseaux de type Ethernet. Ces réseaux coûtent très cher à administrer. Mais à quoi servent-ils donc ? Nous allons tenter ici de faire un petit tour d'horizon des différentes utilisations des réseaux.

## Centralisation des fichiers des utilisateurs
### Perte des fichiers d'un utilisateur

Une des fonctions principales des réseaux est la centralisation des fichiers des utilisateurs. Imaginons une entreprise sans réseau : chaque utilisateur possède ses propres fichiers de travail sur sa machine. Au fil du temps, le nombre de fichiers augmente et il devient impensable qu'un utilisateur perde la totalité de ses fichiers. Si un utilisateur venait à perdre ses fichiers, le temps nécessaire pour refaire ce travail serait gigantesque : du temps perdu, c'est de l'argent perdu ! De plus, les informations contenues dans ses fichiers sont peut-être importantes : si on a stocké la liste de ses clients et qu'on perd le fichier, les conséquences peuvent être dramatiques. On se persuade assez facilement qu'il est vital pour une entreprise d'avoir une vraie politique de sauvegarde centralisée des fichiers des utilisateurs.

### Responsabiliser les utilisateurs

Il est très difficile pour l'administrateur du parc de machines de gérer efficacement une bonne politique de sauvegarde si les fichiers des utilisateurs sont disséminés sur chaque poste de l'entreprise. On peut avoir comme idée de dire : "chacun est responsable de ses fichiers" et d'installer par exemple un graveur de DVD. La responsabilisation des utilisateurs est rarement une bonne solution : au début tout se passe bien et les utilisateurs sont sérieux mais rapidement, leur sérieux diminue et les sauvegardes s'espacent de plus en plus. Prétextant (à tort ou à raison) n'avoir pas le temps, les utilisateurs sont de moins en moins attentifs à ces sauvegardes et la catastrophe finit toujours par arriver.

### La notion de serveur de fichiers

Notre administrateur est donc contraint d'installer un réseau qui permet aux différentes machines de communiquer. Il va également installer un serveur de fichiers sur lequel les utilisateurs seront obligés de mettre leur données. Le contenu du serveur sera sauvegardé très régulièrement (toutes les nuits par exemple). Les données importantes seront situées à un seul endroit et leur sauvegarde reposera donc entièrement sur une procédure automatisée mise en place par l'administrateur.

### Authentification des utilisateurs

L'administrateur devra donc mettre en œuvre un mécanisme d'identification des utilisateurs : en général cela se fait par un nom de connexion et par un mot de passe. On peut aussi imaginer des mécanismes de cartes magnétiques ou encore la biométrie. Chaque utilisateur ainsi authentifié ne pourra accéder qu'à ses propres fichiers. On peut même mettre en œuvre un mécanisme plus complexe de droits : certains utilisateurs auront le droit de lire certains fichiers mais pas de les modifier. D'autres auront tous les droits sur ces fichiers.

### Qualité et serveurs de fichiers

Il convient toutefois de faire très attention : comme nous l'avons vu, ces données ont une valeur financière considérable et il est hors de question de faire ici des économies de bout de chandelles : si le serveur de fichiers n'est pas assez puissant, il sera lent et la totalité des utilisateurs travailleront plus lentement. Les coûts indirects seront égaux au manque de productivité multiplié par le nombre d'utilisateurs ! Il convient donc d'acheter du matériel performant et fiable. En effet, il devient alors impensable que le serveur tombe en panne. La moindre demi-journée de panne a alors des conséquences catastrophiques pour toute l'entreprise. Notre serveur aura donc besoin d'une fiabilité proche de 100 %. Cette fiabilité a un coût et se paye cher. Si on achète du matériel bas de gamme, cela marchera très bien au début et on peut penser avoir fait des économies : mais un jour la panne surviendra inévitablement et l'avenir de l'entreprise peut alors être compromis.

## Gestion des applications
### Un petit calcul

Imaginons une entreprise contenant 200 postes de travail. Vous êtes administrateur et vous souhaitez installer 5 logiciels différents sur chacun des 200 postes de travail. Chaque installation nécessite un quart d'heure (tests compris). Vous enchaînez les installations 8 heures par jour. Il vous faudra donc 5*200*0,25=250 heures=32 jours de travail ! Un mois n'y suffira pas. En plus, en tant qu'administrateur vous avez bien d'autres tâches à accomplir. Voilà toute la problématique du déploiement de logiciels.

### La notion de serveur d'applications

Pour résoudre ce problème majeur, il faut installer un serveur d'applications qui va permettre aux différents postes de travail d'accéder à un ensemble cohérent d'applications. Il existe de nombreuses architectures possibles pour ces serveurs et nous ne distinguerons que deux catégories :
* l'application peut être exécutée sur le serveur : ainsi le poste de travail se contente de gérer l'affichage. Ce type de solution demande une très grande puissance de calcul sur le serveur.
* l'application est exécutée sur le poste client : le serveur se contente de diffuser l'application.
Bien évidemment, on peut imaginer un mécanisme de droits complexes qui autorise ou interdit à un utilisateur donné l'accès à une application.
Remarque : assez souvent certaines personnes pensent que l'installation d'un serveur d'applications permet de n'avoir qu'une seule licence pour tout un parc de machines. La plupart des contrats de licence oblige à acheter une licence par poste de travail susceptible d'accéder à l'application. L'objectif d'un serveur d'applications n'est pas de diminuer le coût des licences.

## Accès à une base de données

* Beaucoup d'entreprises utilisent des applications spécifiques permettant de gérer leurs commandes, leurs clients, leur stocks, la paye des employés, la comptabilité, etc. Les données manipulées par ces applications ne sont plus stockées sous forme de fichiers mais sont gérées par des logiciels particuliers : les systèmes de gestion de bases de données (SGBD). Ces logiciels permettent de centraliser, sur un serveur, des données de manière fiable, performante et sécurisée. On parle généralement de système d'informations pour regrouper tous les SGBD de l'entreprise. Dès qu'il s'agit d'accéder à un SGBD, on aura besoin d'installer un réseau dans l'entreprise.
* les applications qui accèdent au SGBD sont appelées applications clientes : elles envoient des requêtes vers le SGBD, gèrent l'affichage des réponses aux requêtes et l'interaction avec l'utilisateur. Ces applications peuvent être gérées de manière simple selon le modèle client-serveur. Parfois, l'architecture logicielle peut être beaucoup plus complexe et reposer sur des modèles 3-tiers voire n-tiers.
Introduire la notion de serveur d'impression