01 - Introduction

Quelques points de repères

Histoire du net

  • 1969: Arpanet, Unix

  • 1971: email(concept), 1975 (premier client)

  • 1974: ancètre TCP/IP

  • 1977: ordinateur personnel Apple II, 1981: IBM PC

  • 1983: Arpanet -> TCP/IP, 1984: DNS

  • 1988: IRC (ancètre du chat) et premier virus

  • 1989: proposition du www, code en 1990

  • 1990: Archie (McGill)

  • 1991: Première page web

  • 1993: Mosaic, premier navigateur graphique

  • 1994: Netscape, 1995: Internet Explorer

  • 1995: Amazon, Javascript

  • 1998: Google

  • 2001: Wikipedia

  • 2004: web 2.0, Facebook

  • 2005: Youtube

  • 2006: Twitter

  • 2007: Netflix, iPhone

  • 2010: Intsagram

  • 2020: Covid

Quelques statistiques

Statistiques

Statistiques

Statistiques

Statistiques

Statistiques

Quelques statistiques utilisateurs

Statistiques

Statistiques

Statistiques

Statistiques

Quelques statistiques réseaux sociaux

Statistiques

Statistiques

Quelques statistiques varia

Statistiques

Statistiques

Statistiques

Statistiques Statistiques Statistiques Statistiques

La suite TCP/IP

Le modèle en couche

Statistiques Statistiques

Le World Wide Web

Web = URI + HTTP + HTML

  • 1989: Tim Berners-Lee + Robert Cailliau (CERN) WorldWideWeb : Proposition pour un projet hypertexte

  • 1990: nav. Web en ligne de commande

  • 1993: ~50 sites avec serveur HTTP

  • 1994: W3C (fondé par TBL)

  • 2018: TBL quitte W3C

Statistiques Statistiques

$ dig www.fraise.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 40054
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 4, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.fraise.com.			IN	A

;; ANSWER SECTION:
www.fraise.com.		300	IN	CNAME	57935.sedoparking.com.
57935.sedoparking.com.	3600	IN	A	64.190.63.136

;; AUTHORITY SECTION:
sedoparking.com.	40661	IN	NS	ns-1057.awsdns-04.org.
sedoparking.com.	40661	IN	NS	ns-1830.awsdns-36.co.uk.
sedoparking.com.	40661	IN	NS	ns-48.awsdns-06.com.
sedoparking.com.	40661	IN	NS	ns-802.awsdns-36.net.

;; Query time: 83 msec
;; SERVER: 192.168.2.1#53(192.168.2.1)
;; WHEN: Tue Apr 02 20:26:17 EDT 2024
;; MSG SIZE  rcvd: 227

DNS

Statistiques Statistiques

DNS permet d’obtenir une adresse IP à partir d’un nom.

Le service DNS est généralement fourni par votre fournisseur d’accès qui sait donc ce que vous visitez.

HTTP

  • Pas le seul protocole que connait votre navigateur

  • C’est un protocole sans état

    • contrairement par exemple à ftp ou pop
  • Un client (ex: navigateur) émet une requête HTTP à un serveur qui retourne une réponse. La connection est alors (ou peut être) rompue.

    • simple, mais pas très efficace
  • Plusieurs proxy entre un client et un serveur peuvent intervenir

    • chaque acteur (proxy, client, serveur) peut mémoriser des réponses

Syntaxe d’une requête

METHOD /path HTTP/version
Header name: valeur
Header name: valeur
[request body]

Méthodes populaires

  • GET demande d’une ressource

    • pas de corps
  • POST envoi de paramètres dans le corpus de la requête

    • souvent utilisé pour uploader une information
  • HEAD seulement les entêtes sont retournées

$ curl https://www.google.ca

<!doctype html><html itemscope="" itemtype="http://schema.org/WebPage" lang="en-CA"><head><meta content="text/html; charset=UTF-8" http-equiv="Content-Type"><meta content="/images/branding/googleg/1x/googleg_standard_color_128dp.png" itemprop="image"><title>Google</title><script nonce=« wKnWa9fmJpJ5V0lAlKgm7w==">(function(){window.google={kEI:'qPoTXr3bFaXX5gKZsKbABQ',kEXPI:'0,1353747,5662,731,223,4726,378,207,1245,1709,250,10,289,424,338,175,364,671,483,3,209,69,4,60,315,427,208,10,795,1128673,143,1197728,421,38,329080,1294,12383,4855,32692,15247,867,6056,13342,9286,369,3314,5505,8384,1700,3159,1361,284,4039,4968,773,2253,2818,1923,3118,4524,1672,1719,1808,1976,2044,8909,5297,2974,873,37,1180,2975,6430,7432,3254,620,2883,21,318,1980,1192,975,1,369,2777,520,399,992,1285,8,2142,1,1538,84,610,14,1279,2212,202,328,149,1103,327,513,517,317,1149,8,50,156,4100,108,152,52,1136,3,2063,...

Il est aussi possible de reproduire une requête HTML :

telnet www.google.ca

GET / HTTP/1.1
Host: www.google.ca

HTTP/1.1 200 OK
Date: Thu, 11 Apr 2024 11:01:51 GMT
Expires: -1
Cache-Control: private, max-age=0
Content-Type: text/html; charset=ISO-8859-1
Content-Security-Policy-Report-Only: object-src 'none';base-uri 'self';script-src 'nonce-PGOyuCT5HGIKAsbTSFYu3Q' 'strict-dynamic' 'report-sample' 'unsafe-eval' 'unsafe-inline' https: http:;report-uri https://csp.withgoogle.com/csp/gws/other-hp
P3P: CP="This is not a P3P policy! See g.co/p3phelp for more info."
Server: gws
X-XSS-Protection: 0
X-Frame-Options: SAMEORIGIN
Set-Cookie: AEC=AQTF6HxzdCjJUWDyG9l834NMJFoi9z_eF5KiBqGSGA5SCVDZ_dwy4hh1Hw; expires=Tue, 08-Oct-2024 11:01:51 GMT; path=/; domain=.google.ca; Secure; HttpOnly; SameSite=lax
Set-Cookie: NID=513=V0PhDpCHQUbf8-KH9dUJK6Xy_CnuFkwr3PrjNTBxeZ2cQKKg4e__S8TaUzfAX682SW2ztPx9aKzc3ICU8U2xC4LNEkmphZYcvWsGlrS4YQRoZjZXA_qjm8Ngq0VrCt1FwZSEyaZCGjLevFgmwv0FfIaTcxZ9xPsasHhOeCrO2yM; expires=Fri, 11-Oct-2024 11:01:51 GMT; path=/; domain=.google.ca; HttpOnly
Accept-Ranges: none
Vary: Accept-Encoding
Transfer-Encoding: chunked

4703
<!doctype html><html>...

Il est aussi possible d’envoyer des données à l’aide d’une requête POST :

POST