© 2000-2015 LHERBAUDIERE

4 pages à l'impression

dernière mise à jour
27 février 2013

Le monde d'internet

avertissement pourquoi cette page
vocabulaire quelques définitions
principe du codage numériser l'info
internet le réseau international
connexion via le fournisseur
transmission d'un paquet découpage du site
l'affichage la carte graphique
affichage d'un caractère un caractère sur l'écran
une collection d'icônes
pour visiter tout le site

Avertissement
Ce module va tenter de vous expliquer clairement le fonctionnement d'Internet. En effet beaucoup d'utilisateurs d'internet constatent à l'usage des événements qui leur paraissent bizarres, voire complètement invraisemblables : souvent on me demande pourquoi certains sites s'ouvrent instantanément alors que d'autres mettent plusieurs minutes à s'afficher, ou pourquoi lorsqu'on ouvre deux jours de suite le même site il arrive que ça ne se passe pas de la même façon. Ainsi un jour on voit le texte s'afficher puis les images dans l'ordre en partant du haut vers le bas de la page, tandis que le lendemain c'est la deuxième image qui va s'afficher avant la première tandis que la troisième ne s'affiche qu'à moitié alors que la veille elle s'était affichée en entier directement, puis quelques minutes plus tard la deuxième moitié de l'image s'affiche enfin, etc... Nous allons donc tenter de décrypter ce qui se passe réellement.

vocabulaire

Après de nombreux dépannages ou "nettoyages de PC" chez divers amis et relations, j'ai pris conscience que plus de 90% des utilisateurs ont de graves difficultés d'utilisation de leur machine, d'abord parce qu'ils ne maitrisent pas le vocabulaire des "Zinformaticiens" et qu'il s'ensuit une incommunicabilité à peu près totale entre ceux qui savent (ou croient savoir) et ceux qui savent qu'ils ne savent pas. Ce chapitre va donc commencer par quelques courtes définitions que j'espère compréhensibles par tous. Ce lexique ne fait pas double emploi avec les sous-chapitres suivants qui ont pour but de vous apprendre à mieux utiliser et éventuellement comprendre le fonctionnement des outils informatiques définis ici, il ne fait non plus double emploi avec le glossaire qui présente scientifiquement et souvent longuement divers éléments que nous n'avons pu placer ailleurs. Ce lexique ne prétend pas à l'exhaustivité, il est classé par ordre alphabétique par souci de simplicité bien que ce ne soit pas l'idéal absolu.
archive : Dans la terminologie propre aux logiciels de compression, c'est un fichier qui en contient d'autres, le plus souvent sous forme compressée, mais pas obligatoirement. Notons que les outils de compression ne sont pas forcément très efficaces, tout dépendant de l'organisation du fichier avant compression.

BIOS : Basic Input Output System : Ensemble d'instructions de base qui s'intercalent entre le matériel et le système d'exploitation. Elles servent, notamment, au démarrage du PC.

Bus : réseau normalisé de conducteurs permettant la transmission d'une information binaire entre deux dispositifs. (voir les compléments dans le glossaire).

DLL : Dynamic Link Library: Bibliothèque de liens dynamiques: module qui seconde une application Windows pour des tâches bien précises. Par exemple, CTL3D.DLL crée les effets 3D dans les boites de dialogue. Pratiquement toutes les applications windows font appel à des fichiers DLL. Certains sont spécifiques d'une seule application alors que d'autres sont partagés par plusieurs voire de nombreuses applications. Et leur nombre augmente considérablement à chaque nouvelle version de windows et en fonction des logiciels commerciaux que vous installerez.

email ou courriel : courrier électronique, c'est à dire procédé de transmission quasi instantané de texte et d'images entre deux utilisateurs, identifiés par une adresse dite adresse électronique, qui utilise le réseau internet comme support de transmission

fichier : un fichier c'est un document unitaire (donc qui forme un tout monobloc) de type texte, logiciel, image ou son. Un fichier comporte 2 parties essentielles : un entête dans lequel figurent diverses informations dont le format, le langage, les polices de caractères utilisées, la longueur du fichier et la seconde partie c'est le fichier lui-même qui sans son entête ne peut être interprété (et donc affiché sur votre écran) par la machine. Dans le répertoire de votre machine un fichier est identifié par son nom, lequel comporte 2 parties séparées par un point : à gauche un nom qui se veut significatif (pour vous ou pour le programmeur qui l'a écrit) et à droite 3 caractères (extension) qui précisent le format du fichier.

format : de même qu'il existe nombre de langages informatiques, il existe de très nombreux formats d'enregistrement des fichiers (plusieurs centaines ont été répertoriés par les services de la gendarmerie. Il existe des formats réservés au texte, d'autres aux images fixes, d'autres aux images vidéo, d'autres au son. Certains formats sont universellement connus, tandis que d'autres ont été définis par une entreprise bien précise pour se démarquer des autres, voire éventuellement conserver une certaine propriété. On a repéré 4218 extensions différentes pour les noms de fichiers ...et ce n'est peut-être pas du tout exhaustif. Parmi les plus connues on citera txt et doc pour les textes, jpg (jpg ou jpeg Joint Photographic Expert Group ), bmp et gif pour les images, wma, mp3 pour les sons, htm et php pour les fichiers web et exe pour les fichiers exécutables (programmes).

forum : un forum c'est le summum de cette interactivité. C'est un site dédié à une thématique bien définie en général et auquel chacun des utilisateurs va pouvoir accéder et lire ce que les autres ont écrit dans le formulaire à leur disposition, et s'ils en ont l'autorisation y répondre éventuellement. L'expérience montre que ces lieux de discussion entre internautes qui ne se connaissent pas a priori sont souvent monopolisés par des gens de peu d'intérêt qui passent beaucoup de temps à s'échanger des invectives plus ou moins désagréables.

Formatage : Opération qui permet de préparer un support magnétique à recevoir des données (disque dur, DVD ou CD, disquette, cartouche, etc.).

Formatage bas niveau : Ce niveau, dit physique, prépare notamment la surface du disque et détermine certains paramètres techniques. L'utilisateur n'a théoriquement pas besoin de le pratiquer. Il est même assez dangereux de le faire. (Risque de détruire le disque dur). Le formatage physique est suivi d'un formatage logique qui lui peut être pratiqué en cas de nécessité sans problème (mais à ne faire que si nécessaire car cela détruit les données précédemment enregistrées sur le support)

interactivité : il peut arriver qu'un site web dispose de la possibilité d'une certaine interactivité avec ses utilisateurs. En pratique cela signifie qu'il dispose d'un ou plusieurs "formulaires", plus ou moins complexes, que l'utilisateur peut alors "remplir" à distance. Deux possibilités existent, soit ce formulaire peut-être rempli par tout utilisateur d'internet, soit il est réservé aux membres d'une communauté et il faut disposer d'une autorisation pour accéder à ce formulaire et aux fonctions avancées qui lui sont liées. Cette autorisation est généralement liée à ce qu'on appelle un mot de passe personnel.

internaute : utilisateur d'internet. L'analogie marine est poussée à l'extrême puisqu'on dit que l'internaute "surfe sur le web" lorsqu'il passe son temps à visiter de nombreux sites successivement.

internet : mise en commun des ressources du réseau téléphonique mondial pour transmettre des informations sous une forme numérique selon un codage commun à l'ensemble de la planète.

langage : la machine que vous utilisez ne connait que l'électronique, et pour lui faire accomplir des fonctions très sophistiquées on a imaginé d'utiliser des langages simplifiés pour lesquels on sait construire des "traducteurs matériels ultra-rapides". Ainsi la réalisation d'une fonction sera définie par le biais d'une suite d'instructions élémentaires (ce qu'on appelle un algorithme) écrites dans ce langage simplifié ce qu'on appelle un programme (ou un logiciel). Les langages utilisés en informatique sont nombreux, mais dans le contexte d'internet ils sont en nombre limité. Le plus employé est celui qu'on appelle HTML (HyperText Markup Language ) . C'est celui dans lequel est écrit ce site web. Ainsi ce qui est enregistré sur le disque dur du serveur n'est pas ce que vous voyez et quand vous vous connectez sur ce site votre machine récupère le document en HTML et c'est votre navigateur qui va l'interpréter pour vous restituer ce que vous avez sous les yeux en ce moment. Il existe plusieurs navigateurs concurrents sur le marché, certains sont plus rapides à l'affichage, d'autres restitueront mieux les sites web (en effet le créateur du site a déterminé une certaine présentation, mais il arrive fréquemment que le résultat sur votre machine soit sensiblement différent. En particulier il arrive que la police de caractères préconisée par le créateur du site ne figure pas dans la liste des polices disponibles dans votre machine, elle sera alors remplacée par une autre sans doute moins satisfaisante. De même certaines commandes plutôt rares peuvent ne pas être correctement reconnues par votre navigateur et donc mal exécutées. A titre d'exemple il m'arrive fréquemment de permettre l'affichage d'une image sous deux formats : une miniature et une version plein écran qui normalement s'ouvre dans une autre fenêtre de taille adaptée, mais les versions anciennes du navigateur Internet Explorer ne respectaient pas totalement la norme HTML et affichaient la grande image non dans une fenêtre adaptée mais dans un nouveau navigateur qui comportait plusieurs barres de fonction et réduisait d'autant la place pour l'image, alors que j'avais spécifié une fenêtre maximale sans fioriture).

LPT : Line Printer: Communément appelé "port parallèle", il est dédié le plus souvent à la connexion des imprimantes et quelquefois aux scanners ou aux lecteurs de bandes externes. De plus en plus fréquemment il est abandonné au profit du port série USB sensiblement plus rapide.

Mémoire tampon (Buffer) : Mémoire cache intégrée à certains périphériques (imprimantes, disques durs, lecteurs et graveurs de CD-Rom, etc.) afin d'accélérer les transmissions de données.

navigateur : logiciel de présentation graphique spécialisé qui permet de visualiser le contenu d'un site web tel que le concepteur du site a souhaité que vous puissiez le voir. Ces navigateurs disposent de nombreuses fonctions pour vous aider à naviguer sur le web. Notez que tous ne sont pas équivalents et parfois certains ne disposent pas de certaines fonctions pourtant essentielles. Ainsi les versions récentes de Firefox ne savent plus interpréter la police de caractères symbol (ainsi si un caractère grec a été employé par le concepteur d'un site, il ne sera pas affiché par ce navigateur), Google Chrome ne sait pas interpréter certaines commandes du langage javascript et cela se traduit soit par la disparition pure et simple de certains menus soit par leur disfonctionnement. Actuellement seuls Windows Internet Explorer 7 (ou 8) et Safari 4 (ou 5) comprennent correctement l'ensemble des commandes.

Numériser : Transformer un signal analogique (vidéo ou audio) ou une image en données numériques utilisables par l'ordinateur.

Octet : Groupe de 8 bits. En informatique chaque caractère d'imprimerie est codé en binaire (selon une suite de bits de valeur 0 ou 1) selon un code unique comportant 8 bits. On exprimera donc la taille d'un programme en Kilooctets, voire en mégaoctets et par extension celle des moyens de stockage en Gigaoctets (c'est à dire en milliards d'octets).

Partition : Partage d'un disque en plusieurs unités indépendantes apparaissant sur le bureau comme autant de volumes (disques) distincts. la partition ne se justifie actuellement que pour l'installation de plusieurs systèmes d'exploitation différents sur la même machine (répondant à des applications ou des besoins bien spécifiques) lorsqu'on ne dispose que d'un seul disque dur. Notons que pour des raisons strictement commerciales la majorité des assembleurs de micro-ordinateurs (en particulier portables) partagent le disque dur en 2 unités (C: et D:) afin de faire croire à l'acheteur peu averti qu'il y a deux disques sur la machine. Précisons que si le disque se scratche ce sont évidemment les deux unités qui sont perdues. Il est donc peu fiable de recopier par sécurité vos données sensibles sur le disque D. Il vaut mieux équiper votre PC d'un disque de sauvegarde extérieur qui vous servira exclusivement à assurer une sauvegarde hebdomadaire de vos données sensibles et qui donc la plupart du temps ne sera pas allumé et donc ne s'usera pas inutilement.

PCI (Peripherical Component Interconnect ) : Format de bus d'extension développé par Intel et largement répandu aujourd'hui dans l'industrie informatique, y compris dans le monde Apple, où il a remplacé le NuBus. Il est progressivement remplacé par son dernier avatar le bus PCI-express plus efficace.

Périphérique : Terme générique désignant tous les éléments autres que la carte mère, le processeur, la mémoire vive ou les cartes d'extension. Les imprimantes, les moniteurs, les scanners, les modems mais aussi les disques durs (internes ou externes), les lecteurs de disquettes ou de CD-Rom, les clés USB sont des périphériques.

Pilote (ou driver) : Logiciel chargé de gérer le fonctionnement d'un élément périphérique.

programme (ou encore logiciel ou application) : un programme est constitué d'un ensemble de fichiers qui sont liés en vue de réaliser une tâche précise, par ex. un programme de traitement d'images. Notons pour préciser qu'un programme ne se limite donc pas à la partie visible pour l'utilisateur. Cette dernière est ce qu'on peut qualifier d'interface utilisateur, mais dès que l'utilisateur clique sur l'un des éléments du menu (qui apparait généralement en haut de page) il fait appel à au moins un fichier complémentaire de ce programme.

Provider (ou hébergeur): Fournisseur d'accès à Internet.

Protocole : Ensemble de règles définissant les relations entre deux composants ou interlocuteurs. On rencontre souvent le sigle IP pour Internet Protocol.

protocole HTTP : (HyperText Transport Protocol ) : Protocole de communication utilisé sur le Web, fondé sur les documents programmés en HTML. Pour accéder à un site web on doit ainsi faire précéder son adresse du sigle http:// qui signifie simplement que le site dont l'adresse suit est normalement écrit en HTML et que le navigateur chargé de l'afficher va donc effectuer la "traduction" du code selon ce protocole pour afficher correctement le site.

répertoire : par analogie avec le répertoire alphabétique de vos numéros de téléphone, un répertoire est un ensemble défini par son nom dans lequel on va pouvoir ranger divers fichiers ayant un point commun. On aura ainsi un répertoire intitulé Mes Images dans lequel on enregistrera des photos. A l'intérieur d'un répertoire on peut évidemment créer des sous-répertoires, puis des sous-sous-répertoires et ainsi de suite. Précisons que dans les machines actuelles on peut déplacer très aisément un répertoire ou son contenu pour réorganiser de manière plus pertinente le contenu d'un disque dur. Mais il est fortement déconseillé de déplacer le répertoire contenant un logiciel sous peine de ne plus pouvoir utiliser ce logiciel.

Résolution : Nombre de points (ou pixels) servant à afficher ou à imprimer une page. On l'utilise aussi pour définir un mode vidéo en l'exprimant par un produit (640 x 480, 1 024 x 768, 1280x960 etc.). On la confond très souvent avec la définition d'une image.

Routeur : Appareil servant à acheminer des données dans un réseau.

Script : Suite d'instructions écrites dans un langage évolué, associé à des commandes et à des objets. Dans un fichier HTML on rencontre fréquemment des modules écrits en JavaScript pour réaliser des actions non prévues par le langage HTML.

site web : document de présentation comportant du texte, des images et parfois de la musique réalisé par une personne qu'on appelle un webmaster ( ce qui pourrait se traduire en français par concepteur) pour son propre compte ou pour celui d'un organisme, enregistré dans une machine qu'on appelle un serveur basée chez un hébergeur (c'est à dire une entreprise qui dispose d'un nombre important d'ordinateurs dédiés à cette fonction et d'un nombre tout aussi important de lignes téléphoniques). Un site web peut être exclusivement consulté par tout utilisateur disposant d'une liaison téléphonique reliée à ce serveur par l'intermédiaire d'un certain nombre de relais téléphoniques (et qu'on appelle une connexion à internet par simplification abusive du langage).

Système d'exploitation (ou OS) : Ensemble des logiciels assurant le fonctionnement de base de l'ordinateur. En 2015 les systèmes les plus répandus en microinformatique sont Windows XP, Windows Vista, Windows7 et windows 8.

Taux de transfert : Quantité moyenne d'informations pouvant transiter d'un périphérique vers l'ordinateur (et inversement). Exprimé généralement en kilooctets par seconde.

téléchargement (download en anglais) : possibilité de récupération (ou rapatriement) et donc d'enregistrement dans votre machine, pour votre usage personnel ultérieur, d'un document (texte, image, son, vidéo ou logiciel) présent sur un site web. Attention certains téléchargements sont gratuits tandis que d'autres sont payants.

Wysiwyg (What You See Is What You Get) : ce que vous voyez est ce qui sera imprimé. Qualifie une application capable d'afficher à l'écran le travail en cours d'exécution exactement sous son aspect imprimé.

Zip : Disquette au format 3,5 pouces développé par Iomega et offrant une capacité initiale de 100 Mo, puis 250 Mo. Nécessite un lecteur spécifique. L'abréviation zip désigne également un format de fichiers compressés très répandu


le principe du codage
Avant toute explication il faut avoir compris le principe du codage (voir si besoin le chapitre codage dans le module logique). Les composants électroniques essentiels de votre ordinateur sont constitués d'éléments qui ne peuvent prendre que deux états : soit ils sont conducteurs, soit ils ne le sont pas et il n'y a pas d'autre possibilité. C'est à partir de ce constat qu'on a élaboré tout le monde électronique qui nous entoure aujourd'hui. Nous allons exclusivement nous intéresser au transfert d'information via une ligne téléphonique. Il y a essentiellement deux modes de transfert: d'une part la voix, sous forme analogique (dans ce cas les signaux transmis doivent à l'arrivée être le plus semblable possible au signal de départ pour que le résultat soit intelligible et qu'autant que faire se peut on puisse reconnaitre la voix du correspondant), c'est le téléphone classique et, d'autre part, l'information sous forme numérique, c'est à dire qui a été mise en forme grâce à un processus de codage lequel se traduira par une suite temporelle de signaux extrêmement simples dont la géométrie importe relativement peu (ce qui revient à dire que s'ils sont légèrement déformés lors du transport d'un point à un autre ça n'aura pas d'importance). L'intérêt du codage numérique est que l'on va pouvoir transmettre une quantité d'information gigantesque en un temps donné bien supérieure à ce que l'on peut dire au téléphone dans le même temps. Ceci est possible justement parce que le signal n'a pas à être conservé dans sa forme exacte mais doit simplement conserver les différences de niveau correspondants à des composants électroniques conducteurs ou pas.

Ainsi lorsque vous frappez un A sur votre clavier d'ordinateur que se passe-t-il? Vous fermez un contact, ce qui va assurer l'envoi d'un courant vers un composant spécifique qui va générer ce qu'on appelle un code binaire c'est à dire une succession d'états conducteurs et non conducteurs bien spécifique correspondant à une table définie par un accord international (pour que tout le monde utilise la même). Ainsi chaque caractère de l'alphabet est codé. On a pris l'habitude de dire qu'un niveau de tension élevé correspond au chiffre 1 et un niveau zéro correspond au chiffre 0 ainsi sur le plan pratique on dira que le A est représenté par le code 01000001 qui pourra être transmis en quelques microsecondes alors que le A que vous dites au téléphone représente une durée de plusieurs dixièmes de seconde. Ce qui revient à dire que l'information numérique représentant le caractère A va être transmise au moins 100000 fois plus vite que l'information A orale, d'où la possibilité de transmettre des quantités énormes d'information en quelques secondes.


fig1: ex de code ascii : la ligne du haut représente l'évolution du signal d'horloge de synchronisation en fonction du temps
et celle du dessous l'évolution synchrone du signal transmis d'un caractère Y

Quand il s'agit d'aller du clavier jusqu'à l'écran de votre ordinateur le chemin à parcourir est très court et surtout il est parfaitement figé. Bien sûr le code émis par le clavier va être véhiculé jusqu'à l'écran après quelque transformation puisque l'électronique de gestion de l'écran devra recevoir une commande qui lui fera générer le caractère A (et pas n'importe quel A mais un A d'une certaine taille, écrit dans une certaine police de caractères et positionné en un certain point de l'écran et d'une certaine couleur). Ce sera le travail de la carte graphique de votre ordinateur de générer cette commande en tenant compte de tous ces éléments qui ont été précisés (et mémorisés dans la mémoire de la carte) à un certain moment de votre travail sur le PC.

Lorsqu'il s'agit d'afficher un caractère provenant d'un site web les choses sont à la fois semblables et un peu plus compliquées.


Internet
Internet c'est comme son nom l'indique un réseau international (d'autres explications plus techniques en page transmission de signal) qui utilise le réseau téléphonique comme moyen pour véhiculer de l'information. On a, d'une part, des serveurs qui sont de gros ordinateurs possédant de nombreux disques de grande taille et dans lesquels sont hébergés (enregistrés) les sites web, d'autre part le réseau téléphonique avec toute sa complexité et enfin en bout d'une ligne votre ordinateur personnel. Pour aller du serveur à votre PC à la différence du cas précédent (chemin clavier-écran) il n'y a pas un chemin unique mais des millions de possibilités et simultanément il y a des millions d'utilisateurs qui échangent des données entre leur PC et un serveur. Alors comment faire pour que ce ne soit pas la pagaille?

fig2: Image très simplifiée d'un réseau. En rouge on a figuré l'un des chemins possibles entre le PC1 et le serveur A. On comprendra que si simultanément le PC2 et le PC3 veulent se connecter sur le serveur B, ils devront nécessairement partager une partie de la connexion entre l'aiguillage 7 par ex et le serveur B. Mais la liaison entre PC2 et serveur B peut aussi passer par les routeurs 6-5-2 et il se peut alors que la liaison PC1 serveur A soit plus efficiente en passant par 1-2-3-7. Tout dépendra de l'encombrement instantané des lignes.

Connexion
Premièrement chaque serveur possède une adresse IP précise unique et invariante qui est en fait l'adresse de sa carte réseau par ex 62.193.202.6 , deuxièmement chaque PC d'utilisateur possède lui aussi une adresse unique (à un instant donné) mais elle n'est pas figée. C'est votre fournisseur d'accès à internet (Orange par ex) qui va vous attribuer une adresse pour la durée de votre session lorsque vous vous connectez. Cette adresse est numérique et correspond à une règle de codage internationale par ex 194.254.17.200 (ainsi les 3 premiers chiffres permettent d'identifier dans quelle zone géographique vous vous trouvez) et n'a rien à voir avec votre numéro de téléphone. Ainsi, par exemple, Orange dispose d'un certain nombre d'adresses utilisables1. Il peut arriver que vous soyez connecté (ligne ADSL) et que vous n'utilisiez pas momentanément votre connexion, mais que simultanément d'autres utilisateurs veuillent se connecter alors que toutes les adresses attribuées à Orange sont utilisées. Que se passe-t-il alors? L'utilisateur qui veut se connecter ne le peut pas tout simplement (ça vous est peut être déjà arrivé de devoir recommencer plusieurs fois la tentative de connexion en particulier si vous habitez une zone reculée), mais, comme il insiste, le robot qui gère les attributions d'adresses va rechercher s'il n'y a pas un utilisateur connecté mais n'utilisant pas sa connexion momentanément et il va le déconnecter pour donner la priorité au nouvel utilisateur (ça vous est arrivé aussi bien sûr, et comme le nombre d'utilisateurs d'internet augmente il y a des heures ou ce processus de déconnexion est fréquent). Bien sûr quand vous voudrez à nouveau utiliser votre liaison il faudra vous reconnecter et l'adresse qui vous sera attribuée alors ne sera plus la même évidemment mais la première de libre dans la liste.

Nous supposons que vous êtes connecté et que vous voulez consulter un site web précis. Vous avez tapé son adresse du type http://monsitepréféré.eu que se passe-t-il alors? Votre PC est relié à un central téléphonique (quand vous vous êtes connecté vous avez effectivement appelé un certain numéro et fourni un mot de passe personnel qui permet à votre fournisseur de vous reconnaître, ce processus a été enregistré une fois pour toute dans votre machine et en 2015 la connexion s'exécute automatiquement dès lors que vous démarrez votre machine et le plus souvent un symbole pécifiques en bas à droite de votre écran matérialise le fait que vous êtes ou non connecté). Là, l'adresse que vous avez tapée dans la case ad hoc de votre navigateur va être transcodée puisque le site que vous voulez visiter est enregistré sur un disque dur d'un serveur qui possède une adresse fixe (adresse IP) enregistrée évidemment dans leurs tables par tous les fournisseurs d'accès. C'est à dire qu'on va lui ajouter l'adresse du serveur destinataire de votre requète ainsi que l'adresse que l'on vous a attribuée temporairement et c'est ce message triple qui va être envoyé au serveur qui va donc l'interpréter, comprendre que vous voulez visiter "monsitepréféré" et le serveur va alors vous envoyer la page d'accueil du site (puisqu'on n'avait rien précisé de plus) via votre fournisseur à votre adresse temporaire.
note 1 : lorsque internet a été créé les Etats Unis se sont réservés la part du lion dans l'attribution d'adresses IP, ainsi une université américaine disposait alors d'un potentiel d'adresses supérieur à l'ensemble de ce qui avait été réservé à l'Afrique. L'évolution de la technologie a heureusement permis de faire évoluer cette situation, mais en raison de la progression gigantesque du nombre d'utilisateurs il arrive cependant qu'un fournisseur soit momentanément saturé, une autre réforme devra prochainement être mise en oeuvre sous peine de blocage du réseau.

Transmission d'un paquet
Seulement votre PC ne sait pas ce qu'il y a dans cette page d'accueil. Il va donc falloir lui fournir pas mal d'informations complémentaires. En particulier on ignore a priori la longueur de la page d'accueil qu'on va recevoir et d'un site à un autre ça peut varier énormément, et il ne faut pas oublier que vous n'êtes pas le seul à utiliser internet et même peut-être pas le seul en ce moment à vouloir visualiser le même site (à l'instant même où j'écris ces lignes j'ai un indicateur qui m'indique que vous êtes 21 à être connectés sur Electron mon Amour), comment faire pour partager le temps intelligemment entre les divers utilisateurs et faire en sorte que ce soit le bon destinataire qui reçoive le bon fichier?

Les concepteurs d'internet ont alors imaginé pour éviter les embouteillages (en s'inspirant de la circulation dans une ville) que les messages transmis devaient tous avoir la même organisation et une longueur limitée (on parle de paquet transmis ou de trame) et pour que les choses soient efficaces qu'ils devaient comporter obligatoirement un entête dans lequel figureraient des informations d'identification indispensables : adresse du destinataire, nom et adresse de l'émetteur, numéro du paquet. Cet entête est suivi d'un morceau du fichier envoyé auquel s'ajoute des codes de vérification de l'intégrité du message pour le cas où au cours du transfert il serait dégradé, ce qui arrive parfois.

Nous prendrons le cas le plus fréquent, celui d'une trame Ethernet, conforme à la norme IEEE 802.3. L'un des éléments importants est évidemment sa longueur. Celle-ci n'est pas figée, mais doit avoir entre 64 et 1518 octets. Cette longueur variable entraine évidemment l'obligation d'inclure dans la trame un élément informant de celle-ci. Ainsi les paquets auront une longueur de 1518 octets en général sauf le dernier envoyé qui aura évidemment une dimension inférieure correspondant au solde du fichier à transmettre.

Une trame comporte 6 éléments d'information :

* d'abord un préambule destiné à permettre l'identification du début d'une trame et comportant 8 octets.
* ensuite sur 48 bits l'adresse physique de la carte réseau destinataire
* puis de même (6 octets) l'adresse de départ
* 2 octets indiquent la longueur du message
* le contenu du message qui de facto aura au moins 36 octets de longueur


et enfin sur 32 bits une somme de contrôle calculée par la carte de réseau de départ, et recalculée par celle d'arrivée pour identifier l'intégrité du message et permettre la demande de renvoi de ce paquet s'il est dégradé.

Le paquet part donc du serveur en direction de votre domicile, en chemin il va rencontrer de nombreux aiguillages (qu'on va appeller routeurs) car il n'y a pas une ligne directe entre le serveur et votre PC. Physiquement un routeur se présente comme un microordinateur disposant de au moins 2 cartes réseaux et souvent plus. Il possède donc une adresse IP pour chaque carte réseau lesquelles peuvent souvent appartenir à deux ou plusieurs réseaux différents. Ainsi quand un routeur reçoit un message il va identifier quel en est le destinataire, consulter sa table de routage pour identifier le chemin et enfin transmettre ce message via sa carte réseau ad hoc. Il est clair qu'une voie libre à l'instant T ne l'est plus forcément à l'instant suivant. Ainsi votre fichier découpé en X paquets sera transmis éventuellement par plusieurs voies différentes. Mais comme il y a de nombreux aiguillages et de nombreux utilisateurs simultanés la ligne libre à l'aiguillage numéro N débouchera peut-être à l'aiguillage N+1 sur des lignes devenues encombrées en direction de votre domicile et votre paquet P sera peut-être envoyé alors sur une ligne "secondaire" plus longue mais moins encombrée. Le résultat c'est qu'à l'arrivée il se peut que le paquet P+1 soit arrivé avant le paquet P et vous verrez alors avec stupeur une partie de fichier s'afficher sur votre écran en laissant un blanc (qui correspond au paquet pas encore arrivé). C'est ainsi que vous aurez peut-être temporairement seulement une moitié d'image affichée.

En outre une page web est constituée le plus souvent de plusieurs fichiers : des fichiers texte, des fichiers image qui sont expédiés séparément les uns après les autres. Votre ordinateur va devoir en interprétant le contenu des entêtes remettre les morceaux dans l'ordre pour pouvoir afficher la page correctement.

Quelquefois un paquet n'arrive jamais parce qu'au moment de sa création un parasite électrique a été généré, lequel a perturbé le message remplaçant un niveau zéro par niveau 1 dans un ou plusieurs bits. Et si cette perturbation se produit au moment de l'émission de l'adresse celle-ci est faussée et le message risque d'errer quelques temps avant de revenir à son point de départ et d'être éventuellement renvoyé. La perturbation peut affecter le numéro du paquet ou bien le contenu à afficher. C'est pour cela que des codes de contrôle sont générés qui devront être vérifiés à chaque aiguillage et en cas d'erreur le message sera renvoyé ce qui va aussi conduire à une arrivée dans le désordre des différents paquets.

Enfin un dernier élément dans la transmission est la vitesse du serveur lui-même, sachant qu'un serveur professionnel héberge souvent de nombreux sites web, l'accès à l'un d'eux sera d'autant plus long que le nombre de demandes d'accès à ce serveur sera élevé. Ce qui explique aussi pourquoi certains sites s'affichent instantanément (ou presque) sur votre écran tandis que d'autres vont demander jusqu'à 30 secondes voire plus.


l'affichage
Le concepteur du site web a travaillé sur son propre PC pour réaliser une page, selon une certaine présentation, écrite en un certain langage. En pratique les langages informatiques évoluent au cours du temps pour tenir compte des progrès technologiques permettant aujourd'hui certaines fonctionnalités impensables hier. Votre navigateur Internet Explorer, Firefox ou autre doit savoir identifier les commandes figurant dans le code du fichier qui vous a été envoyé et en déduire l'affichage qui normalement doit être conforme à ce qu'a voulu le programmeur. Est-ce toujours vrai? La réponse est non. Parfois le site est très récent et écrit avec la toute dernière version du langage, mais vous vous avez un vieux PC (qui a deux ans!) et votre navigateur ne connait pas cette toute nouvelle fonction du langage et il se plante (dans le meilleur des cas il n'affichera pas une partie de la page). Les pages web sont écrites pour la plus grande part en langage HTML, mais il y a énormément de différences entre le HTML des années 1980 et la dernière version d'aujourd'hui. En outre beaucoup de programmeurs ajoutent au sein du fichier HTML des fonctions écrites en Javascript ou d'autres langages moins répandus et certains navigateurs ne savent pas interpréter correctement ces scripts. Le résultat c'est que parfois ce qui est affiché sur votre écran est moins joli que ce qui a été imaginé par le concepteur du site.

Le rôle de la carte graphique va être aussi très important car c'est elle qui va générer l'affichage à partir des commandes interprétées par le navigateur. Ainsi, à titre d'exemple, dans le code HTML on aura écrit <p align="left"><font size="2" face="Comic Sans MS">En outre une page web.La carte graphique va interpréter <p align "left"> comme étant une commande lui imposant de commencer la ligne courante à gauche, puis <font size 2> comme signifiant que les caractères feront 5x7 pixels en taille et enfin que la fonte de caractères à utiliser est Comic Sans MS (celle effectivement utilisée pour cette page que vous lisez). Deux cas peuvent se produire : ou cette police est dans la bibliothèque de la carte graphique de l'utilisateur et dans ce cas elle sera utilisée, ou bien au contraire elle n'y figure pas et elle sera remplacée par une autre police (ainsi par ex une police Geneva sera remplacée par la police Arial).


affichage d'un caractère et d'une page complète
Dans un PC moderne un caractère est codé sur 24bits, voire parfois 32. Examinons le premier cas. Notre caractère défini par son code ASCII est identifié par la carte graphique comme étant un A codé sur 5 pixels de largeur et 7 pixels de hauteur. Rappelons qu'un écran de résolution 1024x768 comporte 1024x768 = 786432 pixels. Supposons qu'il s'agisse donc d'un A en noir sur fond blanc. Sur notre écran un pixel représente le point lumineux élémentaire réalisé en fait par la combinaison de trois points au sommet d'un triangle équilatéral, un point rouge, un point vert et un point bleu plus ou moins intenses et dont la combinaison va donner sur notre rétine un point de couleur. Chaque point est codé sur 8 bits ce qui correspond à 256 niveaux d'intensité différents pour chaque couleur élémentaire et donc pour la couleur composée une possibilité de 256x256x256 = 16777216 couleurs différentes, ce qui d'ailleurs est très supérieur à ce que peut identifier l'oeil humain. Ainsi pour créer une impression de blanc on affectera chaque couleur élémentaire du niveau 255 soit en binaire 11111111 et pour créer du noir il suffira d'affecter le niveau zéro à chacune des couleurs élémentaires. Pour avoir une impression de rouge on mettra à 255 le point rouge et à zéro les deux autres, tandis qu'un violet s'obtiendra en mettant à 255 le bleu et le rouge et à zéro le vert, et ainsi de suite.

On voit donc que pour afficher un écran complet (de taille 1024x768) il faudra mémoriser 786432x3 = 2359296 codes de huit bits et comme on souhaite pouvoir changer rapidement l'affichage lorsqu'un élément évolue il faut que la mémoire écran possède une capacité sensiblement plus importante pour pouvoir mémoriser plusieurs écrans complets différents. Ainsi on peut passer instantanément d'un écran au suivant sans avoir besoin d'effacer l'écran intégralement puis de recharger la mémoire avec les données du nouvel écran avant de pouvoir afficher ledit nouvel écran. Ainsi une carte graphique de chez ATI (sur mon PC de 2005) embarquait 512 Mégaoctets de RAM ce qui permet la mémorisation de plus de 200 écrans (représentant 2,5 s d'affichage dynamique). Il suffira de charger une partie de la mémoire avec les données de l'écran suivant pendant qu'on affiche les données du précédent ce qui garantit la fluidité de l'affichage (très important pour les jeux en temps réel) au rythme de l'ordre de 75 rafraichissements par seconde.


fig4 : possibilité de stockage de n pages dont une est affichée


 
Hit-Parade