Ensemble d'ordinateurs coopérants noeuds, connectés
par différents liens de communication. Il y a deux types de
noeuds: hôtes et routeurs (commutateurs, switch). Les
routeurs supportent le fonctionnement interne des réseaux; les hôtes
sont les client et les serveurs, e.g. les machines des usagers et celles
hébergeant les services: bases de données, sites Internet,
etc.
Classification: réseaux locaux, métropolitains, à
longue distance, sans fil (wireless).
* Internet
L'Internet est un "méta-réseau" de réseaux de différents
types, coopérant par les protocoles IP et TCP. En 2002, il y a approx.
150 millions de hôtes connectés.
* Topologie
Selon la manière dont les noeuds sont connectés entre eux,
on distingue des topologies différentes: complet, étoile (star),
anneau (ring), arborescence (tree), bus, etc.
* Commutation de circuits (circuit switching)
Dans un réseau contenant plusieurs noeuds (sources et destinations d'information), la connexion entre deux noeuds A et B est établie et maintenue pour toute la durée de la communication, comme dans le réseau téléphone classique. Les ressources (e.g. capacité de transmision) sont retenues tout le temps, même pendant les périodes de silence. Le coût de la communication est facturée selon le temps de connexion, non selon la quantité des données transmises. Relativement simple à implanter, mais mal optimisé pour l'interaction entre ordinateurs.
* Commutation de paquets (packet switching)
Il n'y a pas de circuit fixe pour la transmission entre A et B; l'information
est plutôt découpée en paquets (datagrammes,
cellules) de taille entre 10 et 10,000 octets, et chaque paquet est
acheminé séparément à travers le réseau.
Les paquets portent l'adresse de leur destination, comme les lettres envoyées
par la poste. Comme avec les lettres (la poste), elles peuvent être
perdues, ou arriver dans un ordre différent de l'ordre d'envoi. De
plus, ils peuvent arriver dupliqués et/ou avec erreurs. Dans cet
arrangement les ressources du réseau sont mieux utilisées,
et l'usager est facturé pour la quantité de l'information
transmise. Cet arrangement est à la base du protocole IP (voir plus
loin).
Les tâches de l'acheminement des paquets, le redressement du bon
ordre et la correction des erreurs sont effectuées par les protocoles
de communication.
La communication par paquets est bien adaptée au traitement numérisé
par ordinateur; par conséquent la plupart des protocoles utilisés
aujourd'hui, tels que Ethernet, X.25 et ATM fonctionnent par paquets.
Deux types de service sont possibles:
- Datagrammes: C'est le service de base, appelé connectionless, chaque paquet peut parcourir le réseau par un chemin différent. Le protocole UDP de l'Internet en est un exemple.
- Circuits virtuels: Les CV combinent les avantages de commutation de circuits et de paquets. La transmission se fait par paquets, mais ceci est précédé par l'établissement d'un chemin à travers le réseau entre A et B appelé circuit virtuel, qui se comporte logiquement comme un circuit réel. Chaque CV porte un identificateur unique qui est marqué dans l'en-tête de chaque paquet (au lieu de l'adresse de destination). Ainsi le routage, le contrôle de la congestion et l'élimination des erreurs deviennent plus simple. La transmission par CV s'appelle aussi orientée connection (connection-oriented).
* Protocoles de communication
Protocole: système de règles et formats permettant
l'échange des informations entre deux ou plusieurs participants.
Exemple: Pour communiquer au téléphone, il faut d'abord
décrocher, ensuite attendre la tonalité, ensuite composer,
attendre la sonnerie, demander la personne désirée, etc.
Fonctionalités principales de protocoles
- Adressage (identification du destinataire et de la source)
- Routage (décisions dans les routeurs pour l'acheminement des paquets
vers les destinations)
- Contrôle des erreurs (détection des paquets manquants, duplicatés,
en mauvaise séquence etc. et la correction de ces erreurs e.g. par
retransmission ou codes correcteurs d'erreurs)
- Multiplexage (utilisation d'un lien de communication par plusieurs participants)
- Contrôle du flux (règlage du taux de transmission pour ne
pas déborder le récepteur)
- Découpage des unités d'information en segments et en paquets
et leur réassemblage (fragmentation et défragmentation)
Un système réparti complexe comme l'Internet emploie beaucoup
de protocoles. Pour mieux organiser cette complexité, les différents
protocoles sont placés dans une hiérarchie de couches,
chacune ayant une fonctionnalité particulière. On utilise
le plus souvent le système OSI (Open Systems Interconnection).
Les 7 couches (niveaux) de OSI: physique, liaison (lien, link), réseau
(network), transport, session, présentation, application.
Rappels:
(a) OSI n'est pas un protocole particulier, mais plutôt un système
de classification des protocoles, un système de référence.
(b) Dans un système de communication particulier (e.g. Internet),
les protocoles particuliers sont organisés en "protocol suite" ou
"protocol stacks" selon le mod'le OSI; néanmons certaine couches peuvent
être absentes (e.g. session).
(c) Un protocole du niveau supérieur s'appuie sur les services fournis
aux niveaux inférieurs, et y ajoute des nouvelles fonctionnalités.
Par exemple, TCP (niveau transport) se sert de IP (niveau réseau)
pour le transmission des paquets, et y ajoute la correction des erreurs (voir
plus bas).
Au niveau physique on utilise un nombre de média de transmission; la caractéristique la plus importante d'un médium est son débit (capacité de transmission) e.g. en kb par sec. D'autres paramètres sont le prix, fiabilité et la difficulté de raccordement.
Au niveau liaison on trouve les protocoles dont la fonction est d'acheminer des trames ou datagrammes entre deux points. Une trame est un groupe de bits ou octets; typiquement elle contient une en-tête (header) pour les adresses et autre informantion de contrôle, et les données à transmettre.
Exemples:
- Paire torsadée (twisted pair): le fil téléphonique
ordinaire, utilisé surtout pour le raccordement au réseau à
travers des modems. 14-56 kb/s, pouvant aller à plusieures Mb/s sur
des distances limitées, e.g. le protocole ADSL pour le raccordement
Internet dans Sympatico haute vitesse.
- Câble coaxial, le plus souvent utilisé pour les réseaux
locaux comme l'Ethernet (10Mb/s). Aussi utilisé dans la câblovision;
récemment les modems à câble ont apparu (10Mb/s), tels
que chez Vidéotron à Montréal.
- Fibre optique, remplace graduellement le câble, dû
à sa plus grande capacité et à un coût moins élevé.
On l'emploie dans les réseaux locaux (e.g. le 100 Mb Ethernet et
le Gb Ethernet), comme dans les liens (backbones) à longue distance.
Dû à l'importance de la communication optique, une interface
normalisée, SONET a été établie pour la transmission
sur fibre. SONET spécifie les débits possibles comme des multiples
de approx. 50 Mb/s allant jusqu'à 9.6Gb/s; la transmission et le
multiplexage sont synchrones. Un nombre de canaux de plus faible
vitesse peuvent être multiplexés sur un seul canal SONET.
- Radio, Microondes (lien terrestre)
- Infrarouge (réseau local sans fil)
- Lien satellite
Il existe une hiérarchie normalisée des capacités de transmission (liste très partielle; il existe plusieures hiérarchies, différentes selon les compagnies, pays et moyens de transmission):
- 56 kb/s: ligne de voix numérisée
- 1.5 Mb/s: T1
- 45Mb/s: T3
- 155Mb/s: OC3
- 622Mb/s: OC12
- 2.4Gb/s: OC48
- 9.6Gb/s: OC192
Protocoles
A. Pour les réseaux locaux:
- Ethernet (10 Mb/s)
- Fast ethernet (100Mb/s)
- Gigabit ethernet (1 Gb/s),
- DQDB (Distributed Queue Dual Bus),
- Slotted Ring (la norme IEEE 802 définit tous ces réseaux).
B. Pour les réseaux à longue distance (backbones):
- Frame Relay
- Sonet
- ATM: une technologie à commutation de paquets, promettant
très grande vitesse et souplesse. Les paquets (cellules) sont de taille
fixe de 5 + 48 = 53 B, faciles à traiter par les commutateurs rapides.
Plusieures classes de service sont offertes: modes connecté/non
connecté, débit constant/variable, délai constant/variable.
Ainsi on peut choisir le service qui convient mieux à l'application
donnée, e.g. voix (64kb/s débit constant), vidéo compressé
(débit variable, délai constant), transmission des données,
etc.
Attention: tout ceci se passe aux niveaux physique et lien; les
cellules et commutateurs ATM sont différents de paquets et routeurs
IP dans Internet! On parle de "IP over SONET et IP over ATM"; ces problèmes
de coopération entre protocoles sont difficiles à resoudre
d'une façon efficace.
C. Pour l'accès au réseau (le "dernier kilomètre"):
- Modem téléphone (56kb/s)
- Modem câble (1-10Mb/s)
- DSL et ADSL (Assymetric Digital Subscriber Line) par une ligne de téléphone,
~4Mb/s, 1-3 km
- ISDN (Integrated Services Digital Network) 128 kb/s
- mobile: LMDS (Local Multipoint Distribution Service) et CDPD (Cellular
Digital Packet Data)
- "Fiber to home" (e.g. ATM)
- Satellites (système à 400 satellites en développement)
- PPP (Point-to-point Protocol)
- SLIP (Serial Line Internet Protocol)
Raccordement à l'ordinateur
Les média différents se raccordent avec les ordinateurs
par le biais des cartes réseau (e.g. carte ethernet) ou des
modems. Ces cartes implantent les nivaux 1 et 2 des protocoles; les autres
niveaux sont implantés par les logiciels dans le SE. Les cartes sont
considérées comme des appareils entrée et sortie par
le SE.
* Protocole IP (Internet Protocol, niveau réseau)
But principal: service datagramme au niveau Réseau; simple, indépendant
des sous-réseaux, des systèmes d'exploitation et des machines.
Caractéristiques:
- Assure l'envoi des paquets entre deux machines hôtes, identifiées
par leur adresse IP
- Accepte un segment TCP, forme un ou plusieurs datagrammes (paquets) en
y ajoutant un nouveau header avec une adresse IP
- Vérification d'erreurs dans le header seulement
- Acheminement des datagrammes à travers l'Internet vers le hôte
(machine) de destination. Ceci se fait à l'aide des routeurs.
- IP n'est pas fiable; les paquets peuvent se perdre, ou contenir des
erreurs, ou arriver en mauvais ordre.
- Le service IP est de type "meilleur effort", c.à.d. il ne peut
pas garantir la qualité de service en termes de délai
(latency), gigue (variation du délai) et débit (en kb/s).
* Adresses IP
- Chaque hôte dans Internet et chaque routeur a une adresse
unique de 32 bits. La notation décimale est de
x.x.x.x, où x est entre 0-255.
Logiquement une adresse IP consiste en deux parties: l'adresse du réseau
(network adress) et l'adresse du hôte (host number).
- La présente version de IP est IPv4. La nouvelle version IPv6 permettra
un adressage à 128 bits (non32), et un système de priorités
des paquets qui pourra servir pour établir des classes de service
avec garanties. La longueur des deux parties détermine la classe du
réseau: A, B, C.
- A part of the address designates the network numbers, and the remaining part designates the host number. So, we may say an IP address has the format NETWORK.HOST. Traditionally, the conventions are that there are three types of networks.
Class A networks use the first octet (8 bits)
to designate the network, with the first
(high-order) bit set to 0. The last three octets
designate the host. So the Class A
network addresses are 1.H.H.H to 127.H.H.H, where
H is used to designate the host
address octets. Class A addressing allows for
127 networks.
Class B networks use two octets to designate the
network and two to designate the
host. The network part must begin with 10. The
Class B networks are 128.x.H.H to
191.x.H.H, where x is any number between 0 and
255. There can be 16,384 Class B
networks.
Class C networks use three octets to designate
the network and only one to designate
the host. The network part begins with 110. The
Class C networks are 192.x.x.H to
223.x.x.H, which allows for 2,097,152 networks.
As you can see, there are very few Class A networks, but each of them can
accommodate
millions of hosts. A Class B network supports only 65,534 hosts, while
Class C only 254
hosts (all 0 and 1 combinations are not allowed). There is also a Class
D address (starts with 1110) used for multicasting and a Class E (1111) address
reserved for the nerds.
- Le réseau de l'Université de Montréal est de classe
B, son IP est 132.204.H.H.
- Les routeurs Internet (router, gateway) s'occupent de la partie réseau (N) des adresses. La partie H est traitée par d'autres moyens, e.g. dans un réseau local.
- Avec la prolifération de hôtes, il ne reste pas beaucoup d'adresses libres (la proposition IPv6 attaque ce problème). Pour ménager mieux les adresses disponibles dans un réseau Intenet, on peut sous-diviser les adresses disponibles H dans des sous-réseaux (e.g. chacun un réseau local RL), à l'aide des masques (netmask, subnet mask). Un tel masque retranche un nombre de bits de la partie H d'une adresse IP, à être utilisé par un routeur local qui achemine les paquets vers les RL. Dans l'intérieur d'un RL, les adresses H sont traduites vers les adresses connues dans le RL.
- Une autre mesure d'économie des noms est l'attribution dynamique d'une adresse IP aux machines connectées épisodiquement (e.g. par modem), pour la durée de la session.
* Principes de routage
- Lorsqu'un paquet IP arrive à un routeur, il est emmagasiné temporairement, l'adresse est lue et une décision est faite sur quel lien le paquet sera envoyé vers sa destination. Il y a une grande variété d'algorithmes de routage, la plupart est basée sur des tables de routage qui contiennent toute information sur l'état de congestion des liens, sur le chemin le plus court vers les destinations, etc.
- Analogie avec le fonctionnement de la poste: en traversant le réseau,
une lettre est acheminée selon son code postal (par triage automatique)
jusqu'à son arrivée au bureau de poste de destination. Le nom
et l'adresse de la rue n'est utilisée qu'à ce moment (comme
la partie H d'une adresse IP).
* Protocole TCP (Transport Control Protocol, niveau transport)
Conçu pour être utilisé avec IP, il assure la connexion
fiable entre deux applications. Fonctions principales:
- Établissement d'une connexion fiable "full duplex" (circuit
virtuel bi-directionnel entre deux ports, chaque port étant lié
à un processus d'application).
- Formatage des données reçues de l'application en segments
TCP. Chaque segment est numéroté et sa réception est
confirmée. Les segments sont passés au protocole IP.
- Contrôle des erreurs; chaque segment contient un "checksum" qui
permet de détecter et corriger un nombre d'erreurs. Les segments irréparables
ou perdus sont redemandés par le récepteur.
- Assurer le multiplexage et démultiplexage : plusieures
applications de même type peuvent partager la même connexion
TCP.
- Contrôle du flux pour ne pas déborder le récepteur,
en issuant au transmetteur un nombre limité de permissions de transmattre
un segment.
- Assurer le bon séquencement des segments reçus (en utilisant
leurs numéros)
- Acheminement des données comme normales ou urgentes plus avec
haute priorité.
- La suite TCP - UDP - IP est incorporé dans touts les systèmes
d'exploitation: Unix, MacOS, Windows.
* Protocole UDP (User datagramme Protocol, niveau transport)
UDP est beaucoup plus simple que TCP: il n'offre ni la fiabilité ni le contrôle de flux. UDP livre les paquets (presque) tels que reçu par IP. On utilise UDP dans les situations où la perte occasionelle des paquets n'est pas critique (e.g. pour la voix ou vidéo numérisé).* Les URL
- Chaque ressource accessible sur l'Internet est désignée
par un Universal Resource Locator, URL: un serveur ftp, un fichier
sur votre disque, un serveur gopher, une image, une adresse courrier, un
serveur de News, un serveur telnet et bien sûr un serveur http, c'est-à-dire
un serveur de Web.
- La structure générale d'un URL est
service://user:password@host:port/path
Le service est le protocole d'accès utilisé, e.g.
http, telnet, mail, ftp, etc.
Le host est la désignation d'un hôte Internet; ceci
correspond à une adresse IP.
Le path est le chemin vers un fichier particulier
Toute ces composantes ne sont pas obligatoires; les URL peuvent prendre une variété de formes.
Exemples:
- http://www.microsoft.com fait référence à
un serveur http www.microsoft.com
- ftp://nic.sys.edu fait référence à un serveur
ftp d'adresse Internet nic.sys.edu
- ftp://nic.sys.edu/toto fait référence à un
fichier (ou répertoire) toto au serveur ftp d'adresse Internet
nic.sys.edu
- telnet://micros.bpo.fr fait référence à l'adresse
micros.bpo.fr à laquelle on accède par telnet
- http://www.xerox.fr:8080
- mailto://gecsei@iro.umontreal.ca
- http://www2.iro.umontreal.ca/~pift1214/Description.html
- file:///repertoire/fichier.txt Ce type d'URL permet d'accéder
à un fichier, ici fichier.txt, présent sur votre disque
local (la troisième barre oblique est la racine du repertoire).
Il y a trois types de URL:
- absolu (vers une page sur une machine extérieure),
e.g.
http://www.imaginet.fr/ime/web.htm,
- relatif (vers une page sur la même machine
que la source d'un lien), e.g.
Notes/relation.html.
- local (vers un endroit spécifique dans
le même document), e.g.
http://www.imaginet.fr/ime/web.htm#_0
* Domaines et DNS
- Un système de noms symboliques est utilisé pour faciliter
la lecture et la mémorisation des adresses IP par humains. Un mécanisme
distribué permet de retrouver l'adresse IP d'une machine à
partir de son nom symbolique (dans les deux sens). Ce mécanisme est
basé sur l'utilisation de serveurs de noms (Domain Name Server - DNS)
organisés selon la hiérarchie des domaines:
L'Internet est divisé en domaines (appelés Top Level Domains
TLD), chaque domaine est divisé en sous-domaines qui, à leur
tour, peuvent être séparés en sous-sous-domaines, etc.
- Principaux domaines TLD:
com: réseau
commercial
org: organisations
à but non-lucratif
gov: organisations
gouvernementales aux E.U.
mil: organisations
militaires aux E.U.
edu: organisations
éducatives aux E.U.
net: organisations
qui ont un très large réseau
ch: Suisse
ca: Canada
etc.
- Quelques nouveaux domaines:
firm: entreprises
et firmes
store: entreprises
offrant des marchandises à acheter
web: entités
dont les activités sont principalement liées au Web
arts: entités
dont les activités sont liées à la culture et aux divertissements
rec: entités
dont les activités sont principalement liées aux divertissements
info: entités
fournissant des services d'information
- Fonctionnement des DNS: Une requête remonte dans la hiérarchie
de DNS, jusqu'à arriver à un niveau où le (sous-)domaine
de la machine destinatrice est connu et, à partir de là, elle
redescend jusqu'au DNS local dans lequel la machine destinatrice est enregistrée.
Une fois l'adresse trouvée, elle est retransmise à votre ordinateur
pour qu'il puisse communiquer avec la machine destinatrice.
Essayez la commande Unix dnslookup
* Multicast et Mbone
- Plusieures applications importantes exigent une connectivité (uni-directionelle
ou bi-directionelle) entre les membres d'un groupe d'usagers. On parle de
multicast (qui est un cas intermédiaire entre communication
unicast et broadcast). L'Internet au niveau IP supporte le
multicast par une infrastructure d'adressage (la classe D, entre 224.0.0.0
et 239.255.255.255) et des routeurs multicast (mrouters). Cette approche
minimise la duplication des paquets et la congestion du réseau (c.à
d. comparé au cas où chaque paire de participants est traité
comme une connexion unicast). La réalisation la plus connue du multicast
est le système Mbone (Multicast Backbone On the Internet).
- Mbone est basé sur un réseau de mrouters qui communiquent
entre eux avec un protocole IGMP (Internet Group Multicast Protocol). Les
mrouters communiquent aussi avec les routeurs ordinaires unicast pour transporter
les paquets entre les mrouters. Une adresse de classe D est une adresse
de groupe, et chaque groupe a à chaque moment un nombre de membres
(= hôtes). Des évènements populaires comme des concerts,
conférences, etc. sont annoncés d'avance comme étant
transmis par un certain groupe, auquel on peut s'inscrire.
L'appartenance aux groupes est dynamique. Pour s'abonner à un groupe
multicast, il faut passer par un fournisseur qui supporte Mbone.
* WWW: système d'information et communication distribué,
utilisant l'Internet comme infrastructure.
* Quelques statistiques (2000): No. de sites (serveurs): 4M; nombre total
de pages 400M (=100 pages/site).
* Principe structural (point de départ): hypertexte.
* Hypertexte: extension du texte linéaire; des précurseurs
existaient depuis longtemps: commentaires dans
la Bible, références aux sujets reliés dans des textes
scientifiques, tables de matière, systèmes d'aide (help),
manuels d'utilisation, etc.
* Jalons importants: Memex (1945), "Hypertexte" (1965), Hypercard (1967).
* Début du WWW: 1989, système de documentation (textuelle)
pour les besoins internes du CERN.
* 1999: Le Web devient un outil universel et généralisé,
le point central d'applications sophistiquées, très
diverses.
* WWW et Internet: pas la même chose! Grosso modo, le Web peut être
vu comme une interface à l'Internet, et le navigateur comme une interface
au Web.
* Les éléments techniques requis pour le fonctionnement du
Web:
- Identification unique de chaque document avec un URL
- Machines Serveurs at Clients (avec logiciels navigateurs), connectées
par l'Internet
- Protocole de transfert des documents: HTTP
- Système de codage des documents: HTML
Pages, liens, hypertexte, adressage par URL
* Sous sa forme nucléaire la structure logique du Web correspond
au hypertexte pur: un ensemble de
documents (pages); les pages contiennent des pointeurs (liens, hyper-liens,
références) vers d'autres
pages du système. L'ensemble de tous les documents du Web est distribué
à travers les serveurs du
monde entier. L'activation (=cliquage) d'un pointeur entraîne la
présentation du document en question,
peu importe son emplacement géographique. Aujourd'hui, bien sûr,
il y a de nombreuses addittions
sophistiquées à ce schéma de base.
* Chaque page Web (et en général chaque ressource de l'Internet)
est identifiée par un identificateur
unique URL (Universal Resource Locator), voir plus haut.
Clients, serveurs, sites, protocole HTTP
* Le fonctionnement du Web se repose sur le paradigme Client-Serveur.
Ceci signifie qu' il y a deux classes d'ordinateurs (logiciels) dans le
Web: Les pages disponibles pour diffusion sont gérées
par des logiciels du type Serveur, très différents des logiciels
du type Navigateur (browser) utilisés par les consommateurs de l'information
(les clients). Le terme site (web, website) est souvent utilisé pour
l'ensemble de pages appartenant à un usager (personne, entreprise,
etc.). Un serveur peut héberger plusieurs sites.
* Le protocole HTTP (Hypertext Transfer Protocol) est à la base
du fonctionnement du Web. HTTP
gère le cycle
Requête (URL) --> Réponse (document).
* Caractéristiques saillantes de HTTP:
Il s'appuie sur un protocole de transport, tel
TCP.
Il crée une connexion pour la durée
du transfert d'un seul document.
Donc, si un document est composé d'un ensemble
d'autres documents (ce qui est souvent les cas),
alors chacun d'eux est envoyé au client
par une connexion séparée. Ceci n'est
pas nécessairement vrai pour HTTP v. 1.1
(1997) qui permet de maintenir la connexion TCP pour
la durée de plusieurs transferts de fichiers
du serveur au client. Il peut y avoir même plusieures
connexions parallèles entre le Serveur
et le Client.
HTTP ne laisse aucune trace de la transaction
dans la machine serveur (il est "stateless").
Les 4 éléments d'une transaction
HTTP: connection (URL), request (method: Get, Head, Post,
Put), response (codage MIME, data), close. On
peut observer ce déroulement dans le navigateur.
Les méthodes du request transmettent toute
information nécessaire, comme le URI demandé,
codage accepté, autorisation, etc.
En principe c'est un protocole très simple et inefficace. L'inefficaté
est due à la mauvaise interaction entre
HTTP et TCP, et à la nécessité de rétablir
la connexion après chaque document tramsmis. Des
améliorations sont déjà proposées: HTTP-New
Generation.
Navigateurs
* Les logiciels navigateurs (fureteur, browser) sont des interfaces au
Web (et à l'Internet). Netscape
Navigator et MS Explorer sont les plus utilisés à présent.
Les premiers navigateurs étaient textuels
(CERN); ensuite ils sont rapidement devenus graphiques et médiatisés
(avec la possibilité de traiter une
variété des formats audio, vidéo, réalité
virtuelle, etc).
* La fonction de base des navigateurs sont l'exécution du protocole
HTTP, l'interprétation du code
HTML et la navigation (e.g. avec Back, Forward).
* Les navigateurs modernes sont extensibles par les plugins et helpers;
dans certains cas ces logiciels sont
chargés automatiquement, sans interruption de la session. Le but
de ces logiciels est surtout de présenter
des documents dont le format est inconnu au logiciel "native" du fureteur,
e.g. VRML, Acrobat.
* Quelques traits communs des navigateurs modernes:
- les hyper-liens sont généralement
mis en évidence en soulignant le texte portant ce lien.
- l'aspect d'un hyper-lien change si le document
référencé a déjà été "visité".
- lorsque le curseur de la souris est sur un hyper-lien,
la forme du curseur change.
- l'état d'avancement du chargement d'un
document est généralement affiché.
- l'utilisateur peut sauver l'URL du document
courant, pour pouvoir y revenir directement plus tard,
sans avoir à resuivre tout le trajet qui l'a mené jusqu'à
ce document courant. Netscape fait référence à des
bookmarks, alors que Explorer et Mosaic utilisent le terme de hotlist.
- diverses opérations sur le document courant
sont possibles: édition, archivage sur disque (en HTML,
en simple texte), impression (directement sur une imprimante, dans un fichier),
visualisation de la source
HTML.
- possibilité d'inhiber le chargement automatique
des images incluses dans le document courant (soit
pour accélérer le chargement, soit pour diminuer la quantité
de transferts à travers le réseau).
- possibilité de voir tous les documents
intermédiaires par lesquels l'utilisateur est passé pour arriver
au
document courant.
* Personnalisation par les Options (couleurs, polices, etc.)
* Intégration des fonctions additionelles comme email, édition,
téléconférence.
* Prenez du temps pour explorer et comprendre les fonctionnalités
des fureteurs Netscape et MS. Leurs
fonctionnalités sont comparables, mais on trouve entre eux des incompatibilités
mineures et désagréables.
Extensions de HTML
* Le but HTML est la composition des documents Web. Simple à l'origine
(HTML-1), il est
devenu très complexe avec l'addition de nouvelles fonctionalités.
C'est un langage à balises (tags).
La version présente, HTML-4, inclut (parmi autres) DHTML (Dynamic
HTML), la possibilité de télécharger des programmes exécutables
comme applets ou des Control-X pour assurer l'interactivité des documents
avec l'usager et avec d'autres machines.
* Méthodes pour générer HTML: éditeurs de texte
("manuel"), convertisseurs (eg. du Word), éditeurs
graphiques (Netscape etc.), et générateurs (eg. par scripts
exécutés dans la machine hôte).
* Sources: SGML (Standard Generalized Markup Language): meta-langage pour
décrire des types de documents électroniques, tel que des
lettres, rapports, ou des documents HTML. Dans un document défini
en SGML, on distingue les data, la structure et le format. Cette séparation
est avantageuse pour le traitement automatisé des documents, comme
la recherche, la réutilisation et compréhension, et il en
résulte aussi une économie de transmission et du stockage.
SGML, à la différence des autres méthodes de construction
de documents comme Word, sépare les data et la structure du formattage;
il n'est pas concerné par le format (qui est traité par le
navigateur).
* Développements récents: XML (un sous-ensemble de SGML)
permet de définir des types de documents autres que HTML; XHTML est
une application de XML qui élargit susbtantiellement HTML-4.
** Cette série de généralisations transforme rapidement
HTML d'un simple langage de description de pages vers un outil complexe et
flexible de réalisation des systèmes répartis interactifs.
* Il y a de gros problèmes de compatibilité entre les éditeurs
HTML de différents fabriquants et leur différentes versions.
Les extensions propriétaires et la compétition (surtout entre
NS et MS) empêchent la
normalisation fluide. Eg. Javascript vs. VMScript, etc.