28
Internet Introduction aux technologies Internet François BONNEVILLE aricia - [email protected] Laboratoire d'Informatique de l’Université de Franche-Comté [email protected]

Internet Introduction aux technologies Internet François BONNEVILLE aricia - [email protected] Laboratoire d'Informatique de lUniversité de Franche-Comté

Embed Size (px)

Citation preview

Internet

Introduction

aux technologies InternetFrançois BONNEVILLE

aricia - [email protected]

Laboratoire d'Informatique

de l’Université de Franche-Comté

[email protected]

Introduction aux technologies Internet - François Bonneville 2

Objectifs• Historique d ’Internet

• Notions de réseau et du protocole TCP/IP

• Fonctionnement d ’Internet

• Le nommage sur Internet

• Présentation des services traditionnels

• Architecture des serveurs WEB

Introduction aux technologies Internet - François Bonneville 3

Historique d ’Internet

• 1969 l'agence DARPA (Defence Advanced Research Project Agency) dépendant du DOD (Department Of Defense), développe le réseau ARPANET avec 4 noeuds.Objectif :constituer un réseau fiable résistant aux attaques ennemies.

• 1972 Naissance du courrier électronique

• 1973, spécifications des RFC (Request for Comments) du protocole TCP/IP par Vinton CERF

• 1980 La NSF (National Center for Supercomputing Applications) developpe son propre réseau : NSFNET relie différents réseaux régionaux.

• 1982 Apparition du nommage des machines.

Introduction aux technologies Internet - François Bonneville 4

• 1986 : L’INRIA est le premier site connecté à Internet en France

• 1991 : Mise en place de Gopher (« l ’ancêtre » du web)

• 1991 : Développement du WEB au CERN de Genève

• 1993 : 130 sites WEB dans le monde - premiers FAI pour le grand public

• 1994 : 3000 sites WEB dans le monde - création de Yahoo

• 1998 : Plus de 2 millions de sites

• 2000 : 20 millions de sites

• 2002 : 3 milliards de pages indéxées par Google

Historique d ’Internet (suite)

Introduction aux technologies Internet - François Bonneville 5

Notions de réseau

La couche physique : les données sont converties en signaux numériquesLa couche liaison données définit l'interface avec la carte réseauLa couche réseau: gère les adresses et le routage des donnéesLa couche transport: transport des données et de la gestion des erreursLa couche session: l'ouverture des sessions sur les machines du réseauLa couche présentation: définit le format des données (compression et cryptage)La couche application: assure l'interface avec les applications

Introduction aux technologies Internet - François Bonneville 6

Notions de réseau

Introduction aux technologies Internet - François Bonneville 7

• IP = Internet Protcoltoute machine a une adresse xxx.xxx.xxx.xxx (ipv4)

xxx = valeur de 0 à 255

masque pour définir un réseau

passerelle pour accéder à un autre réseau

Le protocole TCP / IP

Introduction aux technologies Internet - François Bonneville 8

Le protocole TCP / IPLe protocole TCP• Initialise et termine une communication entre 2

machines - notion de port• Multiplexe les données pour qu ’une machine puisse

simultanément communiquer avec plusieurs autres• Découpe les messages en paquets de longueurs

variables remis au protocole IP• Vérifie le flux de données afin d ’éviter une

saturation• remet en ordre les paquets en provenance du

protocole IP

Introduction aux technologies Internet - François Bonneville 9

Le protocole TCP / IP

Introduction aux technologies Internet - François Bonneville 10

Fonctionnement d ’Internet

l'IAB (Internet Architecture Board) : comité chargé de coordonner l'architecture, la gestion et le fonctionnement d'Internet.

l'IETF (Internet Engineering Task Force, www.ietf.org) : problèmes techniques à court et moyen terme

l'IRTF (Internet Research Task Force, www.irtf.org) coordonne les activités de recherche

relatives à TCP/IP.

Introduction aux technologies Internet - François Bonneville 11

Classe d ’adresses gérées par L'IANA

(Internet Assigned Numbers Authority)

Délégation à des organismes sur chaque continent

NIC (Network Information Center)

En Europe RIPE (Reseaux IP Europeens)

re-delegue une partie de cette fonction a d'autres NIC

dans chaque pays europeen

Fonctionnement d ’Internet

Introduction aux technologies Internet - François Bonneville 12

Economie d ’Internet• Chaque réseau choisit les modalités de son

interconnexion

• Les réseaux sont coopératifs

• Création de nœuds d ’échange : peering

• L ’utilisateur final accède au réseau par l ’intermédiaire des FAIs(Fournisseur d ’Accès Internet)

• Dilemme :coopération (acheminement) / concurrence (accès)

Introduction aux technologies Internet - François Bonneville 13

Le nommage sur Internet• Fichiers hosts• Serveurs de noms : DNS

Principe : découpage en zone.com - .net - .org - .gov. - .edu- .mil - .fr - .uk - .it - .de - .it

13 serveurs « root » dressent la liste de la délégation des zones chaque zone gérée par un NIC qui attribue des noms de

domaines selon des règles qui lui sont propresnomdedomaine.zone délégué à 2 serveurs de noms

les serveurs de noms dressent l ’équivalencemachine.nomdedomaine.zone = adresse IP

Chaque machine qui veut résoudre un nom doit questionner un serveur de noms

Introduction aux technologies Internet - François Bonneville 14

Le nommage sur InternetDéposer un nom de domaine• Choisir l ’extension (la zone) : .com ou .fr• Pour les extensions .com, .net, .com

Règle : premier arrivé = premier servi choix entre plusieurs prestataires : Network Solutions, Gandi

• Pour l ’ extension .fr Géré par l ’AFNIC Règle très stricte : charte de nommage choix du prestataire parmi les membresde l ’AFNIC

• Paramétrage du serveur de nom avec son prestataire

Introduction aux technologies Internet - François Bonneville 15

Les services traditionnels• Telnet - port 23 : prise de contrôle à distance• FTP = File Transfert Protocol - port 21 : transfert de

fichiers• SMTP = Simple Mail Transfert Protocol - port 25

envoi de messages électroniques• POP = Post Office Protocol - port 110

lecture boite aux lettres électroniques• NNTP = Network Net Transport Protocol - port 119

Forums de discussions (newgroup)• HTTP = Hyper Text Transfert Protocol - port 80

affichage de pages WEB

Introduction aux technologies Internet - François Bonneville 16

Le protocole HTTP

•Historique•Le protocole HTTP•Les méthodes GET et POST•Les Cookies•Les Serveurs HTTP•Autour d ’HTTP

Introduction aux technologies Internet - François Bonneville 17

Le Protocole HTTP• HTTP : HyperText Tranfert Protocol (RFC 1945 et

2068) protocole de rapatriement des documents protocole de soumission de formulaires

• Principe de fonctionnement très simple en HTTP/1.0

connexion demande (GET) d ’un document renvoi du document (status=200) ou d ’une erreur déconnexion

Protocole en mode de lignes de caractère telnet www.sun.com 80

Introduction aux technologies Internet - François Bonneville 18

Dialogue HTTP

• Requete du clientGET http://www.univ-fcomte.fr/ HTTP/1.0

User-Agent : Mozilla/4.0 (compatible; MSIE 5.0; Windows 95)

• Réponse du serveurHTTP/1.0 200 OKDate : Sat, 15 Jan 2000 14:37:12 GMTServer : Microsoft-IIS/2.0Content-Type : text/HTMLContent-Lentgh : 126Last-Modified : Fri, 14 Jan 2000 08:25:13 GMT<HTML><HEAD><TITLE>Universit&eacute; de Franche-Comt&eacute;</title></HEAD>...</HTML>

Introduction aux technologies Internet - François Bonneville 19

Méthodes de la requête• GET

obtenir des informations et une zone de données concernant l ’URI

• HEADseulement obtenir des informations concernant l ’URI

• POSTenvoie de données (contenu du formulaire vers le serveur, …). Ces données sont situées après l ’entête et un saut de ligne.

• PUTenregistrement du corps de la requête à l ’URI indiqué

• DELETEsuppression des données désignées par l ’URI

• OPTIONSdemande des options de communication disponibles

Introduction aux technologies Internet - François Bonneville 20

En-tête de la requêteOn peut spécifier 5 choses :

• From:Donne l'e-mail de la personne contrôlant le navigateur (cela peut poser des problèmes de respect de la vie privée).

• Referer:URL de l'objet qui amène la requête (URL de la

page où se trouve le lien)

• User-Agent: l'identifiant du navigateur. Sert pour adapter la réponse au navigateur

• Authorization:permet à un client de s'authentifier

auprès du serveur

• If-Modified-Since: permet de faire des GET conditionnels

Introduction aux technologies Internet - François Bonneville 21

Les réponses du serveur en HTTP/1.0

• La version HTTP utilisée par le serveur

• Le statut de la réponse sous forme numérique

• Le statut de la réponse sous forme de texte.La réponse est du genre : HTTP/1.0 200 OK

Status de la réponse

• 100-199 Informationnel 100 : Continue (le client peut envoyer la suite de la requête), ...

• 200-299 Succès de la requête client 200: OK, 201: Created, 204 : No Content, ...

• 300-399 Redirection de la Requête client• 400-499 Requête client incomplète

400: Bad Request , 401: Unauthorized, 403: Forbidden, 404: Not Found• 500-599 Erreur Serveur

Introduction aux technologies Internet - François Bonneville 22

Entêtes des réponses serveur HTTP• Server = modèle du serveur WEB

• Retry-After = date ou nombre de secondes pour un ressai en cas de code 503 (service unavailable)

• Set-Cookie = créer ou modifie un cookie sur le client

• Last-Modified = date de dernière modification du doc. Utilisé par les caches

• Content-Length = taille du document en octet utilisé par le client pour gauger la progression des chargements

• Content-Encoding = type encodage du document renvoyé compress, x-gzip, x-zip

• Content-Language : le langage du document retourné fr, en

• Content-Location : URI de l ’entité quand l ’URI est à plusieurs endroits

Introduction aux technologies Internet - François Bonneville 23

Récupération d ’un document

Introduction aux technologies Internet - François Bonneville 24

Soumission d ’un Formulaire• Méthode GET

Introduction aux technologies Internet - François Bonneville 25

Soumission d ’un Formulaire• Méthode POST

Introduction aux technologies Internet - François Bonneville 26

Codage des « paramètres »• Les valeurs passées (URL et contenu des entrées des

formulaires) doivent être sur 7 bits et sans caractères spéciaux

• Espace -> « + »

• Tous les caractères spéciaux et accentués-> %code ascii @ %40 é %e9

• Les entrées des formulaires sont encodés dans une chaîne composée de paires (nom de l ’entrée)=(valeur de l ’entrée) séparé par de &

• nom=Dupont+Jean&adresse=3+rue+de+la+ Gait%e9%0a75014+Paris

Introduction aux technologies Internet - François Bonneville 27

Comportement du Client face au type du document retourné• A partir du type MIME de Content-Type• Visualisation native

la fonction de visualisation est dans le noyau (core) du client

text/html, image/jpeg

• Visualisation par pluginla fonction est présente dans un DLL, SO, ou un JAR

elle est liée dynamiquement pour réaliser la visualisation

world/vrml, text/tex

• Visualisation externela fonction n ’est pas présente dans le client qui rapporte le

document et le sauvegarde dans un fichier temporaire

Introduction aux technologies Internet - François Bonneville 28

Architectures actuelles• Système : Linux, Windows, Sun, Mac• Serveur Web : Apache, IIS• Langages : CGI, PERL, PHP, ASP, ASP .Net• Base de données : Access, SQL Server, Oracle,

MySql