Chronologie globale Documents historiques A venir: les newsgroups, le protocole UUCP, Craig's List, Amazon, eBay, Facebook, Youtube, ... A venir: RSS, Javascript, Google, Wikipedia, AOL, UUNet, le spam, ... et bien d'autres secrets ...
Au commencement, FTP (ou File Transfer Protocol) est l'un des protocoles Internet qui fut le plus utilisé. Il permettait de transférer des données (sous forme de fichiers) d'un ordinateur à l'autre au travers des réseaux implémentant le protocole TCP. Le protocole FTP s'intègre dans la couche application du modèle OSI.
Sa naissance est officialisée en juin 1980 par la publication du RFC765 dont l'auteur n'est autre que Jon Postel, l'un des pères de l'Internet.
L'implémentation du protocole FTP nécessite : un serveur FTP et à minima un client FTP (application du mode Client-Serveur). S'appuyant sur la couche TCP/IP, le client initie une connexion au serveur et échange les données sous forme de fichiers à l'aide d'un jeu de commandes pré-définies. Le protocole FTP s'appuie en outre sur deux canaux de transmission, un pour les flux de données et un pour les flux de contrôle.
Il existe deux modes de gestion des canaux de transmission :
Lors de l'utilisation du mode actif, on distingue les phases suivantes :
Lors de l'utilisation du mode passif, on distingue les phases suivantes :
Durant le transfert de données sur le canal de communication réservé à cet effet, le canal de contrôle reste inactif. Ceci pose aujourd'hui des problèmes lors de connexions au travers de pare-feux car ces derniers pouvant interpréter au bout d'un certain temps l'inactivité d'un canal comme source d'erreur, il ferme alors parfois les connexions établies entre le client et le serveur.
Il existe également deux type de transfert de données entre un client et un serveur: le transfert de type ASCII (appelée aussi mode texte) et le transfert de type BINARY (appelé aussi mode binaire). In ASCII mode (see below), resuming transfers can be troublesome if client and server use different end of line characters :
Basé sur l'efficacité du protocole TCP pour son mode fiable et le contrôle d'intégrité des données, le protocole FTP a rapidement permis l'échange de fichiers entre ordinateurs de différents réseaux. Durant de nombreuses années avant l'avènement du protocole HTTP, il fut avec l'email l'un des protocoles les plus utilisés d'Internet.
Encore utilisé de nos jours, son implémentation a été étendue puisque de nombreux applicatifs supportent le protocole (notamment les navigateurs web).
Sa naissance est officialisée en juin 1980 par la publication du RFC765 dont l'auteur n'est autre que Jon Postel, l'un des pères de l'Internet.
L'implémentation du protocole FTP nécessite : un serveur FTP et à minima un client FTP (application du mode Client-Serveur). S'appuyant sur la couche TCP/IP, le client initie une connexion au serveur et échange les données sous forme de fichiers à l'aide d'un jeu de commandes pré-définies. Le protocole FTP s'appuie en outre sur deux canaux de transmission, un pour les flux de données et un pour les flux de contrôle.
Il existe deux modes de gestion des canaux de transmission :
- un mode actif
- un port d'écoute est utilisé côté serveur pour le canal de contrôle
- un port d'écoute est utilisé côté client pour le canal de données
- un mode passif : deux ports d'écoute sont utilisés côté serveur pour les deux canaux
Lors de l'utilisation du mode actif, on distingue les phases suivantes :
- le client se connecte sur le port de contrôle en écoute du serveur (usuellement le port 21)
- le client ouvre un port en écoute sur un port défini dynamiquement
- il communique au serveur le numéro de ce port (via la commande PORT).
- le client se met en attente d'une connexion de la part du serveur
- le serveur établit un flux de données en se connectant sur le port en écoute côté client
- le serveur utilise le port 20 comme port source de son côté.
Lors de l'utilisation du mode passif, on distingue les phases suivantes :
- le client se connecte sur le port de contrôle en écoute du serveur (usuellement le port 21)
- le client communique au serveur qu'il utilisera le mode passif (via la commande PASV)
- le serveur ouvre un port en écoute sur un port défini dynamiquement
- le serveur communique au client l'adresse et le port à utiliser pour le flux de données
- le serveur se met en attente d'une connexion de la part du client
- le client utilise un port défini dynamiquement comme port source de son côté
Durant le transfert de données sur le canal de communication réservé à cet effet, le canal de contrôle reste inactif. Ceci pose aujourd'hui des problèmes lors de connexions au travers de pare-feux car ces derniers pouvant interpréter au bout d'un certain temps l'inactivité d'un canal comme source d'erreur, il ferme alors parfois les connexions établies entre le client et le serveur.
Il existe également deux type de transfert de données entre un client et un serveur: le transfert de type ASCII (appelée aussi mode texte) et le transfert de type BINARY (appelé aussi mode binaire). In ASCII mode (see below), resuming transfers can be troublesome if client and server use different end of line characters :
- le transfert de type ASCII permet de transférer les données via leur code ASCII, chaque client assurant la retranscription du code reçu en un code qui lui est compréhensible
- le transfert de type BINARY permet de transférer les données en les recopiant octets par octets, entrainant ainsi parfois des erreurs lorsque des octets connus sur le système hôte du serveur ne sont pas reconnus sur le système hôte du client
Basé sur l'efficacité du protocole TCP pour son mode fiable et le contrôle d'intégrité des données, le protocole FTP a rapidement permis l'échange de fichiers entre ordinateurs de différents réseaux. Durant de nombreuses années avant l'avènement du protocole HTTP, il fut avec l'email l'un des protocoles les plus utilisés d'Internet.
Encore utilisé de nos jours, son implémentation a été étendue puisque de nombreux applicatifs supportent le protocole (notamment les navigateurs web).