Office de la Formation Professionnelle et de la Promotion du Travail
DIRECTION RECHERCHE ET INGENIERIE DE FORMATION SECTEUR NTIC Titre du document ROYAUME DU MAROC Office de la Formation Professionnelle et de la Promotion du Travail DIRECTION RECHERCHE ET INGENIERIE DE FORMATION SECTEUR NTIC Protocole FTP Sommaire 1. Introduction.....................................................................................2 2. TERMINOLOGIE................................................................................2 3. Le mode !t"...................................................................................# $. Reation% entre &T' et Tenet..............................................................( #. Tran%!ert de !ic)ier%...........................................................................( #.1. Commande% !t".............................................................................* #.1.1. Commande% de contr+e d,acc%................................................* #.1.2. Commande% de "aram-tra.e du tran%!ert..................................../ #.1.3. Commande% de %er0ice !t"......................................................11 #.1.$. R-"on%e% !t".........................................................................1( #.1.#. Code% de r-"on%e "ar .rou"e% de !onction%...............................1/ #.1.(. Sc-nario !t" t1"i2ue...............................................................23 OFPPT @ Document Mi-%ime 'a.e 2$341(#2*.doc 5uiet 3* 1 6 2* Protocole FTP 1.Introduction Le "rotocoe &T' 7File Transfer Protocol8 e%t9 comme %on nom ,indi2ue9 un "rotocoe de tran%!ert de !ic)ier. La mi%e en "ace du "rotocoe &T' date de 1/*19 date : a2uee un m-cani%me de tran%!ert de !ic)ier% entre e% mac)ine% du MIT 7Massaschussetts Institute of Technology8 a0ait -t- mi% au "oint. Le "rotocoe &T' d-!init a !a;on %eon a2uee de% donn-e% doi0ent <tre tran%!-r-e% %ur un r-%eau TC'=I'. Le "rotocoe &T' a "our o>5ecti!% de ? "ermettre un "arta.e de !ic)ier% entre mac)ine di%tante "ermettre une ind-"endance au@ %1%tme% de !ic)ier% de% mac)ine% ciente% et %er0eur "ermettre de tran%!-rer de% donn-e% de manire e!!icace 2.TERMINOLOGIE Canal de contrle Le c)emin de communication entre e ASER6'I et e SERBER6'I "our ,-c)an.e de commande% et de r-"on%e% : commande%. Cette conne@ion utii%e e "rotocoe Tenet. Canal de donnes Ane conne@ion >idirectionnee 7!u du"e@8 %ur a2uee e% donn-e% %ont tran%!-r-e%9 dan% un mode et %ou% un t1"e "articuier%. Le% donn-e% tran%!-r-e% "eu0ent <tre une "artie d,un !ic)ier9 un !ic)ier entier9 ou "u%ieur% !ic)ier%. Cette conne@ion %,-ta>it entre un SERBER6DT' et un ASER6DT'9 ou entre deu@ SERBER6DT'%. Cemin d!acc"s Le c)emin d,acc% e%t d-!ini comme a c)aCne de caractre% 2ui doit <tre "r-%ent-e "ar un utii%ateur : un %1%tme de !ic)ier "our ocai%er une re%%ource. Le c)emin d,acc% contient normaement une indication de ,unit- o.i2ue et=ou de% nom% de r-"ertoire%9 et en!in un nom de !ic)ier. &T' ne %"-ci!ie aucune con0ention "articuire "our e c)emin d,acc%. C)a2ue utii%ateur de0ra %e con!ormer au@ con0ention% utii%-e% %ur e% %1%tme% de !ic)ier% im"i2u-% dan% e tran%!ert. Commandes FTP OFPPT @ Document Mi-%ime 'a.e 2$341(#2*.doc 5uiet 3* 2 6 2* Protocole FTP An en%em>e de commande% com"renant e contr+e de% in!ormation% tran%itant entre e ASER6&T' et e SERBER6&T'. Contrle d!acc"s Le contr+e d,acc% d-!init e% "ri0i.e% utii%ateur n-ce%%aire% "our utii%er un %1%tme9 et "our acc-der : de% !ic)ier% dan% ce %1%tme. Le contr+e d,acc% e%t n-ce%%aire "our -0iter un u%a.e accidente ou non autori%- de re%%ource% !ic)ier%. I e%t dan% e% "r-ro.ati0e% d,un "roce%%u% %er0eur &T' d,in0o2uer ce contr+e d,acc%. Correction d!erreur Ane "roc-dure 2ui "ermet : un utii%ateur de %e r-cu"-rer %uite : certaine% erreur% tee% 2u,une !aute du %1%tme %er0eur ou du "roce%%u% de tran%!ert ui6 m<me. 'our &T'9 a correction d,erreur% n-ce%%itera un red-marra.e de a tran%mi%%ion d,un !ic)ier : "artir d,un "oint de contr+e donn-. DTP Le "roce%%u% de tran%!ert de donn-e% DT' 7data tran%!er "roce%%8 "rocde : ,-ta>i%%ement et : a .e%tion de a conne@ion. An DT' "eut <tre "a%%i! ou acti!. PI Le 'rotoco Inter"reter 7inter"r-teur de "rotocoe8. Le% c+t-% %er0eur 7SERBER8 et utii%ateur 7ASER8 d,un "rotocoe ont de% Dr+e%D di%tinct% im"-ment-% re%"ecti0ement dan% un SERBER6'I et un ASER6'I. Processus SER#ER$FTP An "roce%%u% ou en%em>e de "roce%%u% 2ui "rennent en c)ar.e a !onction de tran%!ert de !ic)ier% en coo"-ration a0ec un "roce%%u% ASER6&T' et9 certainement un autre %er0eur. La !onction ra%%em>e un inter"r-teur de "rotocoe 7'I8 cou"- : un "roce%%u% de tran%!ert de donn-e% 7DT'8. Processus USER$FTP An en%em>e de "roce%%u% et de !onction% incuant un inter"r-teur de "rotocoe9 un "roce%%u% de tran%!ert de donn-e% et une inter!ace utii%ateur "ar a2uee a !onction de tran%!ert de !ic)ier "eut <tre e!!ectu-e en coo"-ration a0ec un ou "u%ieur% "roce%%u% SERBER6&T'. L,inter!ace utii%ateur met : di%"o%ition de ,utii%ateur un an.a.e oca de commande6r-"on%e. R%onse Ane r-"on%e e%t un ac2uittement ou une d-n-.ation en0o1-e "ar un %er0eur : ,utii%ateur 0ia a conne@ion de contr+e en r-"on%e : une commande &T'. La !orme .-n-rae d,une r-"on%e e%t un code de r-%utat 7"ou0ant <tre un code d,erreur8 %ui0i d,une c)aCne de caractre%. Le% code% %ont : de%tination d,a.ent% o.icie%9 e te@te e%t "u% natureement de%tin- : de% utii%ateur% )umain%. OFPPT @ Document Mi-%ime 'a.e 2$341(#2*.doc 5uiet 3* 3 6 2* Protocole FTP SER#ER$DTP Le "roce%%u% 2ui tran%met e% donn-e%9 dan% %on -tat Dacti!D norma9 -ta>it e cana de donn-e% %ur e "ort Den -couteD. I -ta>it de% "aramtre% "our e tran%!ert et e %tocEa.e9 et tran%!re e% donn-e% %ur commande de %on 'I. Le DT' "eut entrer dan% un -tat D"a%%i!D "our attendre9 "ut+t 2u,initier une communication. SER#ER$PI L,inter"r-teur de "rotocoe %er0eur D-couteD %ur e 'ort L une communication arri0ant d,un ASER6'I et -ta>it a conne@ion "our e cana de contr+e. I re;oit "ar ceui6ci e% commande% &T' de ,ASER6'I9 1 r-"ond9 et "iote e SERBER6DT'. Tailles de mots Deu@ taie% de mot% int-re%%ent &T'? a taie de% mot% o.i2ue% du !ic)ier9 et a taie utii%-e "our a tran%mi%%ion de% donn-e%. La taie d,un mot "our e tran%!ert e%t tou5our% de 4 >it%. Cette taie de tran%!ert n,e%t "a% n-ce%%airement ,unit- d,enre.i%trement o.i2ue du !ic)ier dan% e %1%tme9 ni a taie de% unit-% o.i2ue% "ermettant ,inter"r-tation de% %tructure% de donn-e%. Utilisateur &USER' Ane "er%onne ou un "roce%%u% %ou% contr+e d,une "er%onne d-%irant o>tenir de% !ic)ier% di%tant% "ar tran%!ert. L,utii%ateur D)umainD "eut directement a.ir en interacti0it- a0ec un "roce%%u% SERBER6&T'9 mai% e "a%%a.e "ar un "roce%%u% ASER6&T' e%t con%ei- dan% a me%ure oF e "rotocoe &T' a -t- con;u %ur un conce"t d,automate. USER$DTP Le "roce%%u% de tran%!ert de donn-e% D-couteD e "ort de donn-e% en attendant a conne@ion : un "roce%%u% SERBER6&T'. Si deu@ %er0eur% tran%!rent de% donn-e% entre eu@9 e "roce%%u% ASER6DT' e%t inacti!. USER$PI L,inter"r-teur de "rotocoe utii%ateur in%taure e cana de contr+e 0ia %on "ort A a0ec e "roce%%u% SERBER6&T'9 -met de% commande% &T'9 et .ou0erne e ASER6 DT' %i ce dernier e%t im"i2u- dan% e "roce%%u% de tran%!ert. OFPPT @ Document Mi-%ime 'a.e 2$341(#2*.doc 5uiet 3* $ 6 2* Protocole FTP 3.Le modle ftp &i.ure 1 Mode d,u%a.e de &T'
Dan% e mode d-crit en &i.ure 19 ,inter"r-teur de "rotocoe utii%ateur 7ASER6 'I8 in%taure e cana de contr+e. Ce circuit de communication utii%e e "rotocoe Tenet. A ,in%tauration de cette conne@ion9 de% commande% &T' %tandard %ont .-n-r-e% "ar e ASER6'I et tran%mi%e% au "roce%%u% %er0eur 0ia e cana de contr+e. 7L,utii%ateur "ourra n-anmoin% -ta>ir une iai%on de contr+e directe a0ec e SERBER6&T'9 : "artir d,un termina TAC "ar e@em"e9 et .-n-rer e% commande% %tandard ind-"endamment9 en %e %u>%tituant au "roce%%u% ASER6 &T'8. De% r-"on%e% %tandardi%-e% %ont -mi%e% en retour "ar e SERBER6'I au ASER6'I 0ia e cana de contr+e aor% -ta>ie. Le% commande% &T' %"-ci!ient e% "aramtre% du cana de donn-e% 7"ort de donn-e%9 mode de tran%!ert9 t1"e "our a re"r-%entation9 et %tructure de% donn-e%8 ain%i 2ue a nature du !onctionnement de% %1%tme% de !ic)ier% 7enre.i%trement9 ecture9 a5out9 %u""re%%ion9 etc.8. Le ASER6DT' ou %on d--.u- %e mettra en D-couteD %ur e "ort de donn-e% %"-ci!i-9 et e %er0eur in%taurera e cana de donn-e% et e!!ectuera e tran%!ert de !ic)ier% %eon e% "aramtre% %"-ci!i-%. I doit <tre not- 2ue e "ort de donn-e% n,e%t "a% n-ce%%airement %ur e m<me )+te 2ue ceui 2ui a -mi% e% "remire% commande% &T' "ar %on cana de contr+e9 >ien 2ue ,utii%ateur ou e ASER6&T' doi0e continuer : a%%urer D,-couteD %ur e "ort %"-ci!i-. I doit <tre ici %i.na- en outre 2ue e cana de donn-e% mi% en "ace "eut %er0ir %imutan-ment : a ecture et : ,-criture de donn-e%. Ane autre %ituation "eut con%i%ter en un utii%ateur 2ui %ou)aite tran%!-rer de% !ic)ier% entre deu@ )+te%9 e% deu@ -tant de% )+te% di%tant% di!!-rent% de ceui de ,utii%ateur. L,utii%ateur -ta>it aor% un cana de contr+e 0er% c)acun de% deu@ OFPPT @ Document Mi-%ime 'a.e 2$341(#2*.doc 5uiet 3* # 6 2* Protocole FTP %er0eur% et utii%e ce% canau@ "our cr-er un cana de donn-e% entre ce% deu@ )+te%. De cette !a;on9 e% in!ormation% de contr+e "a%%ent "ar e ASER6'I >ien 2ue e% donn-e% %oient tran%mi% ente deu@ "roce%%u% %er0eur% de tran%!ert. Ce 2ui %uit e%t un mode de cette interaction entre %er0eur%.
&i.ure 2 Le "rotocoe demande : ce 2ue e% canau@ de contr+e %oient ou0ert tant 2ue dure e tran%!ert de donn-e%. I e%t de a re%"on%a>iit- de ,utii%ateur de demander a !ermeture de% canau@ de contr+e or%2ue ,utii%ation du %er0ice &T' e%t termin-e. C,e%t n-anmoin% e "roce%%u% %er0eur 2ui "rend en c)ar.e a ru"ture. Le %er0eur "eut arr<ter un tran%!ert de donn-e% %i e cana de contr+e e%t cou"- %an% commande "r-aa>e. 4.Relations entre T! et Telnet &T' %,a""uie %ur e "rotocoe Tenet "our e diao.ue du cana de contr+e. Ceci e%t e!!ecti! en deu@ %en%? "remirement9 e ASER6'I ou e SERBER6'I de0ront %ui0re e% r.e% du "rotocoe Tenet directement dan% eur "ro"re% "roc-dure%G ou >ien9 e ASER6'I ou e SERBER6'I "eu0ent !aire a""e : un modue Tenet e@i%tant et di%"oni>e dan% e %1%tme d,e@"oitation. La !aciit- d,im"-mentation9 e% "rinci"e% de r-utii%a>iit-9 et a "ro.rammation moduaire !ont "enc)er en !a0eur de a deu@ime %oution. L,e!!icacit- et ,ind-"endance 0i% : 0i% de a "ate6!orme %ont de% ar.ument en !a0eur de a "remire. En "rati2ue9 &T' n,utii%e 2u,un tout "etit %ou% en%em>e du "rotocoe Tenet9 et de ce !ait9 a "remire a""roc)e n,induit "a% un tra0ai de "ro.rammation in%urmonta>e. ".Transfert de fic#iers Le cana de communication entre e ASER6'I et e SERBER6'I e%t -ta>i comme une conne@ion TC' entre ,utii%ateur et e "ort %tandard &T' du %er0eur. L,inter"r-teur de "rotocoe e%t re%"on%a>e de ,-mi%%ion de% commande% &T' et de ,inter"r-tation de% r-"on%e%G e SERBER6'I inter"rte e% commande%9 en0oie e% r-"on%e%9 et "iote e DT' "our -ta>ir e cana de donn-e% et tran%!-rer e% !ic)ier%. Si e corre%"ondant du "roce%%u% de tran%!ert 7e "roce%%u% "a%%i!8 e%t un ASER6DT'9 aor% ceui6ci e%t ui6m<me "iot- "ar ,interm-diaire de ,inter"r-teur de "rotocoe de ,)+te ASER6&T'G %,i %,a.it d,un %econd SERBER6 DT'9 aor% %on contr+e %e !ait 0ia %on "ro"re 'I %ur commande du ASER6'I. Le% r-"on%e% &T' %ont d-crite% dan% a %ection %ui0ante. Dan% a de%cri"tion de% 2ue2ue% commande% de a %ection "r-%ente9 i nou% e%t a""aru utie d,<tre e@"icite %ur e% r-"on%e% : attendre. OFPPT @ Document Mi-%ime 'a.e 2$341(#2*.doc 5uiet 3* ( 6 2* Protocole FTP 5.1. Commandes ftp Le "rotocoe &T' %uit e% recommandation% du "rotocoe Tenet "our toute% e% communication% %ur e cana de contr+e. Comme e an.a.e c)oi%i "our a communication %ou% Tenet "eut <tre une o"tion n-.oci-e9 toute% e% r-!-rence% dan% e% deu@ "roc)aine% %ection %e !ont "ar ra""ort au Dan.a.e TenetD et e Dcode de !in de i.ne TenetD corre%"ondant. De !a;on courante9 on con%id-rera 2u,i %,a.it du NBT6ASCII et de a %-2uence re%"ecti0e HCRL&I. Aucune autre %"-ci!ication du "rotocoe Tenet ne %era cit-e ici. Le% commande% &T' %ont de% c)aCne% de caractre% DTenetD termin-e% "ar e Dcode de !in de i.ne TenetD. Le% code% de commande %ont eu@6m<me% de% caractre% a")a>-ti2ue% %ui0i% du caractre HS'I 7E%"ace8 %i d,autre% "aramtre% %ui0ent9 et Tenet6EOL dan% e ca% contraire. Le% code% et %-manti2ue de% commande% %ont d-crite% dan% cette %ectionG a %1nta@e d-tai-e e%t d-crite dan% a Section traitant de% Commande%9 e% %-2uence% de r-"on%e %ont e@"icit-e% dan% a Section traitant du S-2uencement de% Commande% et R-"on%e%9 et e% %c-nario% iu%trant ,u%a.e t1"i2ue d,une commande %ont donn-% en Section traitant de% Sc-nario% &T' T1"i2ue%. Le% commande% &T' "eu0ent <tre di0i%-e% en commande% de contr+e d,acc%9 commande% de "aram-tra.e de tran%!ert9 et de% commande% de %er0ice &T'. Certaine% commande% 7tee% 2u,AJOR9 STAT9 KAIT8 "eu0ent <tre -mi%e% 0ia e cana de contr+e 1 com"ri% or%2u,un tran%!ert e%t en cour%. Certain% %er0eur ne "ourront %imutan-ment .-rer e cana de contr+e et ceui de donn-e%9 au2ue ca% certaine% action% %"-ciae% de0ront <tre !aite% "our attirer ,attention du %er0eur. La "roc-dure %ui0ante doit <tre em"o1-e dan% cet ordre? 1. Le %1%tme de ,utii%ateur in%re un %i.na DInterru"t 'roce%%D Tenet 7I'8 dan% e !u@ Tenet. 2. Le %1%tme utii%ateur en0oie un %i.na DS1nc)D Tenet. 3. 3. Le %1%tme utii%ateur tente une commande d,a0ortement 7e@.9 AJOR8 dan% e !u@ de commande Tenet. $. Le SERBER6'I9 a"r% r-ce"tion de D,I'D9 in%"ecte e !u@ Tenet en attendant ELACTEMENT ANE commande &T'. 7Sur certain% %er0eur%9 cette "roc-dure n,e%t "a% indi%"en%a>e9 mai% %on acti0ation ne "roduira "a% d,e!!et% inattendu%8. ".1.1. $ommandes de contr%le d&accs Le% commande% 2ui %ui0ent traitent du "aram-tra.e du contr+e d,acc% 7e% code% num-ri2ue% de commande %ont donn-% entre "arent)%e%8. USER N()E &USER' NOM D,ATILISATEAR Le c)am" ar.ument e%t une c)aCne Tenet identi!iant ,utii%ateur. L,identi!iant de ,utii%ateur e%t ceui 2ui e%t re2ui% "ar e %er0eur "our "ermettre ,acc% au %1%tme de !ic)ier% de ,)+te %er0eur. Cette commande e%t normaement a OFPPT @ Document Mi-%ime 'a.e 2$341(#2*.doc 5uiet 3* * 6 2* Protocole FTP "remire : <tre en0o1-e d% 2ue e cana de contr+e e%t mi% en "ace 7certain% %er0eur% ,im"o%ent8. De% in!ormation% d,identi!ication %u""-mentaire% tee% 2u,un mot de "a%%e et=ou un nom de com"te utii%ateur "eu0ent <tre au%%i re2ui% "ar certain% %er0eur%. Le% %er0eur% doi0ent acce"ter une nou0ee commande ASER : tout moment en 0ue de c)an.er e% droit% et "ri0i.e% d,acc%9 ou e com"te. Ceci aura ,e!!et d,annuer toute r-!-rence : ,utii%ateur9 au mot de "a%%e9 et au com"te "r-c-dent en recommen;ant a %-2uence d,ou0erture de %e%%ion de"ui% e d->ut. Tou% e% "aramtre% de tran%!ert re%tent ce"endant inc)an.-% et tout tran%!ert de !ic)ier en cour% %e termine normaement a0ec e% ancien% "aramtre% de %e%%ion. P(SS*ORD &P(SS' MOT DE 'ASSE Le c)am" ar.ument e%t une c)aCne Tenet indi2uant e mot de "a%%e attri>u- : cet utii%ateur. Cette commande doit imm-diatement %ui0re a commande "r-c-dente9 et9 %ur certain% %ite%9 com"te e% donn-e% d,identi!ication de ,utii%ateur "our ui "ermettre un acc% au %1%tme de !ic)ier%. Comme e mot de "a%%e e%t une in!ormation dite D%en%i>eD9 i e%t "r-!-ra>e de e Dma%2uerD or% de %on entr-e9 0oire d,en -0iter ,im"re%%ion en cair : ,-cran. Ce"endant9 i a""araCt 2ue e %er0eur n,a aucun mo1en de %,o""o%er : %a di0u.ation. I e%t donc de a re%"on%a>iit- de% ASER6&T' d,-0iter e %tocEa.e e@"icite du mot de "a%%e et %on a!!ic)a.e. (CCOUNT &(CCT' COM'TE ATILISATEAR Le c)am" ar.ument e%t une c)aCne Tenet 2ui %"-ci!ie e Dcom"teD de ,utii%ateur. Cette commande n,e%t "a% n-ce%%airement cou"-e : une commande ASER9 et certain% %ite "ourront im"o%er a %"-ci!ication d,un com"te : ,ou0erture de %e%%ion tandi% 2ue d,autre ne e demanderont 2ue "our de% acc% %"-ci!i2ue%9 "ar e@em"e "our enre.i%trer de% !ic)ier%. Dan% ce dernier ca%9 i e%t admi% 2ue cette commande "ui%%e arri0er : tout moment. De% code% de r-"on%e e@i%tent "our di!!-rencier ce% ca% "our un automate ? or%2ue ,in!irmation de com"te e%t re2ui%e : ,ou0erture de %e%%ion9 a r-"on%e : une commande 'ASSMord e@-cut-e a0ec %ucc% e%t de code 332. Dan% ,autre ca% oF e com"te utii%ateur n,e%t "a% re2ui% : ,ou0erture de %e%%ion9 a r-"on%e donn-e : une commande 'ASSMord concuante e%t de code 233G en!in9 %i e com"te utii%ateur e%t re2ui% : a %uite d,une commande e@-cut-e "u% oin dan% e "roce%%u%9 e %er0eur r-"ondra "ar un code 332 ou #32 %ui0ant 2ue a commande "r-c-dente e%t com"-t-e 7attente de a commande ACCounT8 ou re%"ecti0ement a0ort-e. C+(N,E *OR-IN, DIRECTOR. &C*D' CHANGEMENT DE RE'ERTOIRE Cette commande "ermet de c)an.er e r-"ertoire di%tant de tra0ai 7r-cu"-ration ou t--c)ar.ement de !ic)ier%8 %an% modi!ier e% "aramtre% en cour% de a %e%%ion. Le% "aramtre% de tran%!ert re%tent eu@ au%%i inc)an.-%. L,ar.ument e%t un c)emin d,acc% 0aide dan% e an.a.e du %1%tme de !ic)ier oca. OFPPT @ Document Mi-%ime 'a.e 2$341(#2*.doc 5uiet 3* 4 6 2* Protocole FTP C+(N,E TO P(RENT DIRECTOR. &CDUP' ACCES AA RE'ERTOIRE 'ERE I %,a.it d,un ca% "articuier de a commande CND9 et e%t d-!inie "our %im"i!ier ,im"-mentation de "ro.ramme% tran%!-rant de% %tructure% entire% de r-"ertoire% entre de% %1%tme% d,e@"oitation utii%ant de% %1nta@e% di!!-rente% "our ,acc% au r-"ertoire "re. Le% code% de r-"on%e attendu% %ont identi2ue% : ceu@ attendu% "our a commande CND. Boir ,A""endice II "our "u% de d-tai%. STRUCTURE )OUNT &S)NT' MONTAGE DE BOLAME Cette commande "ermet de monter un 0oume %ou% un %1%tme de !ic)ier di!!-rent %an% c)an.er de conte@te "our a %e%%ion. Le% "aramtre% de tran%!ert %ont de m<me inc)an.-%. L,ar.ument e%t un c)emin d,acc% 0aide du %1%tme oca. REINITI(/I0E &REIN' REINITIALISATION Cette commande tue une conne@ion ASER9 i>-rant toute e% re%%ource% d,entr-e%=%ortie% et e% in!ormation% de %e%%ion9 %au! "our ,o"-ration de tran%!ert en cour% 2ui e%t ac)e0-e normaement. Tou% e% "aramtre% %ont r-ta>i% dan% eur% 0aeur% "ar d-!aut et e cana de contr+e e%t ai%%- ou0ert. L,-tat o>tenu e%t identi2ue : ,-tat dan% e2ue %erait un cana de contr+e 5u%te a"r% %on -ta>i%%ement. Ane commande ASER e%t en .-n-ra attendue. /O,OUT &1UIT' &ERMETARE DE SESSION Cette commande termine une %e%%ion ASER et %i aucun tran%!ert n,e%t en cour%9 !erme e cana de contr+e. Si un !ic)ier e%t en cour% de tran%!ert9 a conne@ion re%tera ou0erte 5u%2u,: rece0oir e code de r-%utat de ,o"-ration9 "ui% %era !erm-e "ar e %er0eur. An "roce%%u% utii%ateur 2ui tran%!re de% !ic)ier% muti"e% "our de% ASER di%tinct% %an% <tre o>i.- de cou"er "ui% de rou0rir : c)a2ue !oi% une nou0ee %e%%ion9 utii%era "ut+t une commande REIN. Ane !ermeture ino"in-e du cana de contr+e %era con%id-r- "ar un %er0eur comme a %ucce%%ion im"icite d,un commande d,a0ortement 7AJOR8 %ui0i d,une !ermeture de %e%%ion 7KAIT8. ".1.2. $ommandes de param'tra(e du transfert Tou% e% "aramtre% de tran%!ert ont de% 0aeur% "ar d-!aut9 et ,u%a.e de% commande% de "aram-tra.e du tran%!ert ne %ont : utii%er 2ue dan% e ca% ou de% 0aeur% non %tandard %ont re2ui%e% "our a conne@ion. Le% 0aeur% D"ar d-!autD %ont u%ueement e% dernire% utii%-e%9 ou9 %i aucune n,a -t- %"-ci!i-e9 a 0aeur "ar d-!aut D%tandardD. Ceci im"i2ue 2ue e %er0eur doit %e Dra""eerD de% 0aeur% "ar d-!aut a""ica>e%. Ce% commande% "eu0ent a""araCtre dan% n,im"orte 2ue ordre9 mai% doi0ent tou5our% "r-c-der e% re2u<te% de %er0ice &T'. Le% commande% %ui0ante% %"-ci!ient e% "aramtre% de tran%!ert ? OFPPT @ Document Mi-%ime 'a.e 2$341(#2*.doc 5uiet 3* / 6 2* Protocole FTP D(T( PORT &PORT' 'ORT DA CANAL DE DONNEES L,ar.ument e%t une %"-ci!ication de "ort )+te indi2uant e "ort de donn-e% : utii%er "our ,-ta>i%%ement du cana de donn-e%. I e@i%te de% 0aeur% %tandard "our e% "ort% ASER et SERBER9 et9 dan% une %ituation normae9 cette commande et %e% r-"on%e% a%%oci-e% ne %ont "a% e@"oit-e%. Si cette commande e%t utii%-e9 ,ar.ument doit <tre not- comme a concat-nation d,une adre%%e TC'=I' com"tement 2uai!i-e9 %oit une adre%%e Internet en 326>it% et une adre%%e de "ort TC' en 1(6>it% . Cette adre%%e e%t d-cou"-e en c)am"% de 46>it% dont a 0aeur e%t tran%mi%e comme un nom>re d-cima 7dan% une re"r-%entation %ou% !orme c)aCne de caractre%8. Le% c)am"% %ont %-"ar-% "ar de% 0ir.ue%. Ane commande 'ORT aurait ,aure %ui0ante ? 'ORT )19)29)39)$9"19"2 dan% a2uee )1 contient e% 4 >it% de "oid% !ort de ,adre%%e Internet de ,)+te %"-ci!i-. P(SSI#E &P(S#' MODE 'ASSI& Cette commande demande au SERBER6DT' de %e mettre D: ,-couteD d,un "ort de donn-e% 7di!!-rent du "ort "ar d-!aut8 et d,attendre une demande de conne@ion "ut+t 2ue de "rendre ,initiati0e d,en -ta>ir une %ur r-ce"tion d,une commande de tran%!ert. La r-"on%e : cette commande "r-ci%e ,adre%%e et e "ort %ur e%2ue% e %er0eur %,e%t mi% en -coute. REPRESENT(TION T.PE &T.PE' TO'E DE RE'RESENTATION L,ar.ument de cette commande %"-ci!ie e t1"e de re"r-%entation de% donn-e% utii%-e con!orm-ment : a Section traitant de% Re"r-%entation de Donn-e% et StocEa.e. 'u%ieur% t1"e% admettent un %econd "aramtre. Le "remier "aramtre e%t e@"rim- comme un %eu et uni2ue caractre Tenet9 tout comme e %econd "aramtre &ormat dan% e ca% de% t1"e% ASCII et EJCDICG e %econd "aramtre dan% e ca% du t1"e LocaJ1te e%t un entier d-cima indi2uant a taie de ,octet o.i2ue. Le% "aramtre% %ont %-"ar-% "ar de% HS'I 7E%"ace9 ASCII code 328. Le% code% %ui0ant% %ont r-%er0-% "our e% t1"e% ? A 6 ASCII P P N 6 Non6"rint P6IH6P T 6 Tenet !ormat e!!ector% E 6 EJCDIC P P C 6 Carria.e Contro 7ASA8 I 6 Ima.e L H>1te %iQeI 6 taie d,octet o.i2ue ocae La re"r-%entation de% donn-e% utii%-e "ar d-!aut e%t ,ASCII DNon6"rintD. Si e "aramtre de &ormat e%t modi!i-9 "ui% e "remier ar.ument e%t : %on tour c)an.-9 e &ormat retourne : a 0aeur DNon6"rintD "ar d-!aut. OFPPT @ Document Mi-%ime 'a.e 2$341(#2*.doc 5uiet 3* 13 6 2* Protocole FTP FI/E STRUCTURE &STRU' STRACTARE DE &ICHIER L,ar.ument e%t donn- %ou% !orme d,un caractre Tenet uni2ue %"-ci!iant a %tructure de !ic)ier con!orm-ment : a Section traitant de% Re"r-%entation% de Donn-e% et StocEa.e. Le% code% %ui0ant %ont actueement r-%er0-% "our ,encoda.e de% %tructure% ? & 6 %tructure6!ic)ier 7"a% de %tructure %ou%65acente8 R 6 %tructure6enre.i%trement ' 6 %tructure6"a.e% La %tructure "ar d-!aut e%t a %tructure6!ic)ier. TR(NSFER )ODE &)ODE' MODE DE TRANS&ERT L,ar.ument e%t donn- %ou% !orme d,un caractre Tenet uni2ue %"-ci!iant e% mode% de tran%!ert de donn-e% d-crit% dan% a Section traitant de% Mode% de Tran%mi%%ion. Le% code% %ui0ant% %ont r-%er0-% "our ,encoda.e du mode de tran%mi%%ion ? S 6 !u@ 7%tream8 J 6 Joc C 6 Com"re%%- Le mode de tran%!ert "ar d-!aut e%t e mode !u@. ".1.3. $ommandes de ser)ice ftp Le% commande% de %er0ice &T' ra%%em>ent toute% e% commande% o"-rationnee% de tran%!ert ou %1%tme 2ui "eu0ent <tre in0o2u-e% "ar ,utii%ateur. L,ar.ument d,une commande de %er0ice &T' e%t en .-n-ra un c)emin d,acc%. La %1nta@e de ce c)emin doit %e con!ormer au@ con0ention% ado"t-e% "ar e %ite %er0eur 7a0ec une 0aeur "ar d-!aut a""ica>e89 et au@ con0ention% de an.a.e ado"t-e "ar e cana de contr+e. La 0aeur "ar d-!aut con%ei-e e%t %oit a dernire com>inai%on d,unit- o.i2ue9 c)emin d,acc% et nom de !ic)ier9 %oit un c)emin com"et d-!ini comme d-!aut "ar ,utii%ateur. Le% commande% "eu0ent <tre in0o2u-e% dan% n,im"orte 2ue ordre e@ce"t- "our e cou"e Drename !romD9 Drename toD 2ui doit <tre e@-cut- dan% cette ordre et %u>%-2uemment9 et e ca% de a commande Dre%tartD 2ui doit <tre %ui0ie de a dernire commande a0ort-e 7e@.9 STOR ou RETR8. Le% donn-e%9 or%2u,ee% %ont -mi%e% en r-"on%e : une commande de %er0ice &T'9 de0ront tou5our% ,<tre 0ia e cana de donn-e%9 %au! "our certaine% r-"on%e% : caractre in!ormati!. Le% commande% %ui0ante% dont "artie de a ca%%e Dcommande% de %er0ice &T'D ? RETRIE#E &RETR' TRANSMISSION OFPPT @ Document Mi-%ime 'a.e 2$341(#2*.doc 5uiet 3* 11 6 2* Protocole FTP Cette commande "ro0o2ue a tran%mi%%ion "ar e SERBER6DT' d,une co"ie du !ic)ier %"-ci!i- "ar %on c)emin d,acc% com"et9 : de%tination du SERBER6 ou ASER6DT' : ,autre e@tr-mit- du cana de donn-e%. Le %tatut et e contenu du !ic)ier c+t- -metteur doit re%ter inc)an.-. STORE &STOR' ENREGISTREMENT Cette commande "ro0o2ue ,acce"tation "ar e SERBER6DT' de% donn-e% tran%!-r-e% 0ia e cana de donn-e%9 e%2uee% %eront enre.i%tr-e% dan% un !ic)ier %ur e %er0eur r-ce"teur. Si e !ic)ier entirement %"-ci!i- e@i%te %ur e %er0eur a0ant a tran%mi%%ion9 aor% %on contenu %era rem"ac- "ar e contenu tran%mi%. Dan% ,aternati0e9 un nou0eau !ic)ier e%t cr--. STORE UNI1UE &STOU' ENREGISTREMENT ANIKAE Cette commande "ro0o2ue e m<me com"ortement 2ue a commande STOR e@ce"t- e !ait 2ue e !ic)ier doit <tre cr-- dan% e r-"ertoire courant %ou% un nom uni2ue. La r-"on%e de code 2#3 7Tran%!er Started8 doit incure e nom de !ic)ier .-n-r- "ar e %ite r-ce"teur. (PPEND &2it create' &(PPE' AROATER AA &ICHIER Cette commande "ro0o2ue ,acce"tation "ar e SERBER6DT' de% donn-e% tran%mi%e% %ur e cana de donn-e%9 e%2uee% %eront enre.i%tr-e% dan% un !ic)ier %ur e %ite de r-ce"tion. La di!!-rence a0ec a commande STOR r-%ide dan% e !ait 2ue %i e !ic)ier %"-ci!i- e@i%te d-5: %ur e %ite de r-ce"tion9 e% donn-e% tran%mi%e% 0iennent %,a5outer au !ic)ier e@i%tant. (//OC(TE &(//O' ALLOCATION Cette commande "eut <tre n-ce%%aire %ur certain% %er0eur% "our r-%er0er un e%"ace de %tocEa.e %u!!i%ant "our "ermettre e %tocEa.e de% donn-e% : tran%!-rer. L,ar.ument e%t un entier donnant a taie en octet% : r-%er0er 7a taie e%t reati0e : ,octet o.i2ue8. 'our de% !ic)ier% tran%!-r-% en mode enre.i%trement ou "ar "a.e%9 un nom>re ma@ima d,enre.i%trement ou une taie ma@imae de "a.e 7com"t-e en octet% o.i2ue%8 "eut <tre n-ce%%aireG ce% 0aeur% %ont indi2u-e% "ar ,u%a.e d,un deu@ime "aramtre entier d-cima. Ce %econd ar.ument e%t o"tionne9 et doit <tre %-"ar- du "remier9 or%2u,utii%-9 "ar e% troi% caractre% Tenet HS'I R HS'I. Cette commande doit <tre u%ueement %ui0ie d,une commande STORe ou A''End. La commande ALLO doit <tre trait-e comme une commande NOO' 7no o"eration8 "ar tou% e% %er0eur% ne n-ce%%itant "a% une "r-d-caration de a taie de !ic)ier% : enre.i%trer9 ceu@ 2ui n-ce%%itent %euement une mention de a taie ma@imae d,enre.i%trement ou de taie ma@imae de "a.e "eu0ent acce"ter une a>%ence de 0aeur "our e "remier "aramtre9 ou i.noreront a 0aeur %i %"-ci!i-e. OFPPT @ Document Mi-%ime 'a.e 2$341(#2*.doc 5uiet 3* 12 6 2* Protocole FTP REST(RT &REST' RE'RISE Le c)am" ar.ument contient une e@"re%%ion du mar2ueur de contr+e : "artir du2ue e tran%!ert doit <tre re"ri%. Cette commande ne "ro0o2ue "a% e@"icitement de tran%!ert de donn-e%9 mai% d-"ace %im"ement e "oint de ecture du !ic)ier interrom"u 5u%2u,au "oint de contr+e %"-ci!i-. Cette commande %era imm-diatement %ui0ie de a commande de %er0ice &T' n-ce%%aire : reancer e "roce%%u% de tran%!ert. REN()E FRO) &RNFR' RENOMMER... Cette commande indi2ue ,ancien c)emin d,acc% com"et du !ic)ier 2ui doit <tre renomm-. Cette commande doit <tre imm-diatement %ui0ie d,une commande Drename toD %"-ci!iant e nou0eau nom du !ic)ier en 2ue%tion. REN()E TO &RNTO' RENOMMER BERS... Cette commande indi2ue e nou0eau nom du !ic)ier %"-ci!i- dan% e commande Drename !romD "r-c-dente. L,u%a.e %u>%-2uent de ce% deu@ commande% "ro0o2ue e c)an.ement du nom du !ic)ier %ur e %1%tme di%tant. (3ORT &(3OR' ABORTEMENT Cette commande "ro0o2ue ,interru"tion imm-diate de a dernire commande de %er0ice &T' et tout tran%!ert de donn-e% a%%oci-. Cette commande "eut demander une Daction %"-ciaeD9 comme i e%t di%cut- dan% e Section traitant de% Commande% &T'9 "our en !orcer a reconnai%%ance a%1nc)rone "ar e %er0eur. Aucune action n,e%t a e!!ectuer %i a commande "r-c-dent a -t- ac)e0-e 71 com"ri% un tran%!ert de donn-e%8. Le cana de contr+e ne doit "a% <tre cou"- "ar e %er0eur9 mai% e cana de donn-e% doit <tre !erm-. Le %er0eur doit "rendre en com"te deu@ %ituation% %ur r-ce"tion de cette commande ? 718 toute commande de %er0ice &T' e%t ac)e0-e9 ou 728 une commande de %er0ice &T' e%t en cour%. Dan% e "remier ca%9 e %er0eur !erme e cana de donn-e% 7%,i e%t encore ou0ert8 et r-"ond "ar un code 22(9 indi2uant 2ue a commande d,a0ortement a -t- correctement trait-e. Dan% e %econd ca%9 e %er0eur interrom"t e %er0ice &T' en cour%9 cou"e e cana de donn-e%9 et ren0oie un code $2( "our indi2uer 2ue a dernire commande %,e%t ac)e0-e anormaement. Le %er0eur en0oie : a %uite un code 22(9 indi2uant 2ue a commande d,a0ortement ee6m<me %,e%t >ien d-rou-e. DE/ETE &DE/E' SA''RESSION Cette commande "ro0o2ue a %u""re%%ion %ur e %ite %er0eur du !ic)ier "r-ci%- "ar e c)emin d,acc% com"et. Si une -ta"e %u""-mentaire de "rotection e%t OFPPT @ Document Mi-%ime 'a.e 2$341(#2*.doc 5uiet 3* 13 6 2* Protocole FTP n-ce%%aire 7tee 2u,une con!irmation -0entuee du t1"e DSu""rimer r-eement ce !ic)ierSD89 ee doit <tre !ournie "ar e "roce%%u% ASER6&T'. RE)O#E DIRECTOR. &R)D' SA''RESSION DE RE'ERTOIRE Cette commande "ro0o2ue a %u""re%%ion du c)emin d,acc% %"-ci!i- au titre de r-"ertoire 7%i e c)emin e%t a>%ou8 ou de %ou% r-"ertoire du r-"ertoire courant 7%i e c)emin e%t reati!8. Boir ,a""endice II. )(-E DIRECTOR. &)-D' CREATION DE RE'ERTOIRE Cette commande "ro0o2ue a cr-ation d,un r-"ertoire 7%i e c)emin e%t a>%ou8 ou d,un %ou% r-"ertoire du r-"ertoire courant 7%i e c)emin e%t reati!8 %eon e c)emin %"-ci!i-. Boir ,a""endice II. PRINT *OR-IN, DIRECTOR. &P*D' IM'RESSION DA RE'ERTOIRE COARANT Cette commande ren0oie e nom du r-"ertoire courant dan% a r-"on%e. Boir A""endice II. /IST &/IST' CATALOGAE DA RE'ERTOIRE COARANT Cette commande "ro0o2ue ,-mi%%ion "ar e %er0eur d,une i%te de !ic)ier% au DT' "a%%i!. Si e c)emin mentionn- %"-ci!ie un r-"ertoire ou tout autre .rou"e de !ic)ier%9 e %er0eur r-"ondra "ar une i%te de% !ic)ier% dan% ce r-"ertoire ou ce .rou"e. Si e c)emin %"-ci!ie un !ic)ier norma9 aor% e% in!ormation% %1%tme reati0e% : ce !ic)ier %eront ren0o1-e%. Ane a>%ence d,ar.ument indi2ue "ar d-!aut e r-"ertoire courant. La r-"on%e e%t tran%!-r-e 0ia e cana de donn-e% "our e% t1"e% ASCII ou EJCDIC. 7,utii%ateur doit %,a%%urer 2ue e t1"e e%t e!!ecti0ement ASCII ou EJCDIC8. Comme e% in!ormation% reati0e% : un !ic)ier "eu0ent 0arier .randement en !orme et "r-%entation entre di0er% %1%tme%9 cee%6ci %eront .-n-raement "eu e@"oita>e "ar un automate. Ee% %ont ce"endant !ort utie% "our un utii%ateur )umain. N()E /IST &N/ST' CATALOGAE COART Cette commande "ro0o2ue ,en0oi "ar e %er0eur d,un catao.ue %uccinct d,un de %e% r-"ertoire% 0er% ,utii%ateur. Le c)emin %"-ci!i- doit d-crire un r-"ertoire 0aide ou tout autre de%cri"teur d,un en%em>e de !ic)ier%G un ar.ument omi% d-%i.ne e r-"ertoire courant. Le %er0eur r-"ondra "ar une i%te de nom% de !ic)ier% : ,e@cu%ion de toute autre in!ormation. Le% donn-e% %ont tran%!-r-e% en ASCII ou EJCDIC %ur e cana de donn-e% %ou% !orme d,une %uite de nom% de c)emin% d,acc% 0aide% %-"ar-% "ar de% HCRL&I ou HNLI. 7Encore une !oi%9 ,utii%ateur doit %,a%%urer 2ue e "aramtre TO'E e%t correct8. Cette commande a -t- im"-ment-e "our "ermettre : de% "roce%%u% automati2ue% de "ou0oir OFPPT @ Document Mi-%ime 'a.e 2$341(#2*.doc 5uiet 3* 1$ 6 2* Protocole FTP r-cu"-rer cette i%te "our traitement ut-rieur. An ca% t1"i2ue e%t ,im"-mentation d,une !onction de t--c)ar.ement de !ic)ier% muti"e%. SITE P(R()ETERS &SITE' 'ARAMETRES CONTELTAELS Cette commande e%t utii%-e "ar e %er0eur "our "ro"o%er de% %er0ice% %"-ci!i2ue% : ce %1%tme 2ui %ont indi%"en%a>e% "our e tran%!ert de !ic)ier% mai% in%u!!i%amment uni0er%e% "our 5u%ti!ier ,attri>ution d,une commande dan% e "rotocoe. La nature de ce% %er0ice%9 et eur %1nta@e de0ra <tre !ournie "ar c)a2ue %er0ice e% utii%ant9 en r-"on%e d,une commande HEL' SITE. S.STE) &S.ST' SOSTEME Cette commande "ermet de connaCtre e t1"e de %1%tme d,e@"oitation %ur e %er0eur. La r-"on%e de0ra mentionner dan% %on "remier DmotD ,un de% %1%tme% mentionn-% dan% e document A%%i.ned Num>er% T$U en cour% de 0aidit-. ST(TUS &ST(T' STATAT Cette commande "ro0o2ue ,en0oi d,un me%%a.e d,-tat 7%tatut8 de r-"on%e %ur e cana de contr+e. Cette commande "eut <tre utii%-e en cour% de tran%!ert 7a0ec e% %i.nau@ I' et S1nc) de Tenet 6 0oir a Section traitant de% commande% &T'8 au2ue ca% e %er0eur doit r-"ondre a0ec ,-tat de a tran%action en cour%9 ou >ine ee "eut <tre en0o1-e entre deu@ tran%!ert%. Dan% ce dernier ca%9 a commande de0ra <tre utii%-e a0ec un ar.ument. Si cet ar.ument e%t un c)emin d,acc%9 a commande r-%utante -2ui0aut : une commande Di%tD : ,e@ce"tion "r% 2ue a r-"on%e %era tran%mi%e "ar e cana de conne@ion au ieu du cana de donn-e%. Si un c)emin "artie e%t donn-9 Le %er0eur r-"ondra "ar une i%te de nom% de !ic)ier% ou d,attri>ut% a%%oci-% : cette %"-ci!ication. Si aucun ar.ument n,e%t donn-9 e %er0eur ren0erra une in!ormation .-n-rae concernant e "roce%%u% %er0eur &T'. Ceci "ourra incure ,en%em>e de% "aramtre% de conne@ion actueement utii%- ain%i 2ue ,-tat de toute% e% conne@ion%. +E/P &+E/P' AIDE Cette commande "ro0o2ue ,en0oi d,une in!ormation d,aide concernant ,im"-mentation du %er0eur ui6m<me9 0ia a conne@ion de contr+e. Cette commande "eut "rendre un ar.ument 7e@.9 n,im"orte 2ue nom de commande8 et ren0oie de% in!ormation% encore "u% "r-ci%e%. La r-"on%e %era de t1"e 211 ou 21$. I e%t %u..-r- 2ue a commande HEL' %oit "ermi%e 1 com"ri% a0ant 2u,une commande ASER d,ou0erture de %e%%ion n,ait -t- e@-cut-e. Le %er0eur "ourra utii%er cette commande "our donner de% in!ormation% %ur de% "aramtre% d-"endant% du %1%tme9 e@.9 en r-"on%e : a re2u<te DHEL' SITED. NOOP &NOOP' 'AS D,ACTION OFPPT @ Document Mi-%ime 'a.e 2$341(#2*.doc 5uiet 3* 1# 6 2* Protocole FTP Cette commande n,a!!ecte aucun "aramtre ni n,intera.it a0ec aucune de% commande% "r-c-demment anc-e%. Ee "ro0o2ue aucune autre action 2u,une %im"e r-"on%e DOVD de a "art du %er0eur. ".1.4. R'ponses ftp Le% r-"on%e% : de% commande% &T' %ont de%tin-e% : a%%urer une certaine %1nc)roni%ation de% action% im"i2u-e% dan% un "roce%%u% de tran%!ert de !ic)ier%9 et .arantir 2ue e "roce%%u% utii%ateur "ui%%e tou5our% connaCtre ,-tat du %er0eur. C)a2ue commande %u%cite au moin% une r-"on%e9 mai% "u%ieur% r-"on%e% "eu0ent <tre donn-e%G dan% ce dernier ca%9 e% muti"e% r-"on%e% de0ront <tre ai%-ment di!!-rentia>e%. De "u%9 certaine% commande% "eu0ent <tre -mi%e% .rou"-e% en %-2uence9 comme ASER9 'ASS et ACCT9 ou RN&R et RNTO. Le% r-"on%e% t-moi.nent de ,e@i%tence d,-tat% interm-diaire% %i toute% e% commande% "a%%-e% %ont e@-cut-e% a0ec %ucc%. L,-c)ec d,une %eue -ta"e n-ce%%itera de recommencer toute a "roc-dure. Le% d-tai% d,une %-2uence de commande%6r-"on%e% %ont e@"icit-e% dan% ,en%em>e de dia.ramme% ci6a"r%. Ane r-"on%e &T' r-"ond con%i%te en un nom>re : troi% c)i!!re% 7tran%mi% %ou% !orme de troi% caractre% a")anum-ri2ue%8 %ui0i% d,un te@te. Le code num-ri2ue e%t : de%tination d,automate% "our ren%ei.ner de% di%"o%ition% : "rendre et de ,-tat %ui0ant de ceui6ciG e te@te e%t "ut+t de%tin- : ,utii%ateur )umain. Le% troi% di.it% du code %ont %en%-% contenir %u!!i%amment d,in!ormation "our 2ue e "roce%%u% utii%ateur 7ASER6'I8 n,ait "a% n-ce%%it- d,e@aminer a "artie te@te de a r-"on%e9 a2uee "eut <tre %oit -imin-e9 %oit tran%!-r-e : ,inter!ace utii%ateur9 %eon a n-ce%%it-. En "articuier9 e te@te -mi% "eut 0arier de %er0eur : %er0eur9 et un automate "ourrait donc a0oir de% di!!icut-% : ana1%er tou% e% me%%a.e% "o%%i>e%. Ane r-"on%e e%t d-!inie comme contenant e code : 36di.it%9 %ui0i d,un E%"ace HS'I9 %ui0ie "ar une i.ne de te@te 7or%2u,une on.ueur ma@imae de r-"on%e a -t- d-!inie au"ara0ant89 et termin-e "ar e code de !in6de6i.ne Tenet. I 1 aura de% ca% ce"endant9 ou e te@te %era "u% on. 2u,une %im"e i.ne. Dan% ce ca%9 e te@te entier aurait "u <tre mi% entre croc)et% de %orte 2ue e "roce%%u% utii%ateur "ui%%e %a0oir 2uand %,arr<te a ecture du te@te 7c6:6d. arr<te ,ana1%e de ,entr-e du cana de contr+e8 "our "a%%er : d,autre% tWc)e%. Ceci im"i2ue ,utii%ation d,un !ormat "articuier %ur a "remire i.ne "our indi2uer 2ue d,autre% i.ne% %ui0ent9 et un autre !ormat "articuier %ur a dernire. Au moin% une de ce% i.ne% doit "r-%enter e code de r-"on%e. 'our %ati%!aire tou% e% a0i% %ur e "ro>me9 i a -t- d-cid- 2ue e code %erait identi2ue %ur a "remire et a dernire i.ne. Ain%i9 e !ormat d,une r-"on%e mutii.ne% e%t te 2ue a "remire i.ne d->ute "ar e code e@act de a r-"on%e9 %ui0i d,un tiret D6D 7H1")-nation ou Dmoin%D89 %ui0i du te@te de a "remire i.ne. La dernire i.ne commencera "ar e m<me code9 %ui0i imm-diatement d,un E%"ace HS'I9 -0entueement du te@te9 termin- "ar e code de !in6de6i.ne Tenet. 'ar e@em"e? OFPPT @ Document Mi-%ime 'a.e 2$341(#2*.doc 5uiet 3* 1( 6 2* Protocole FTP 1236&ir%t ine Second ine 23$ A ine >e.innin. Mit) num>er% 123 T)e a%t ine Le "roce%%u% utii%ateur n,a "u% 2u,: c)erc)er a deu@ime occurrence du code de r-"on%e %ui0ie de ,E%"ace HS'I en d->ut de i.ne9 et i.norer e% i.ne% interm-diaire%. Si une i.ne interm-diaire commence "ar un nom>re de 36di.it%9 e %er0eur a5outera un e%"ace en t<te de i.ne "our -0iter toute con!u%ion. Ce %c)-ma "ermet : de% routine% %1%tme %tandard d,<tre em"o1-e% "our .-n-rer a r-"on%e 7e@. "our a r-"on%e : a commande STAT89 a0ec un mar2ua.e %u""-mentaire Darti!icieD en t<te de a "remire et a dernire i.ne. Au ca% 7rare8 ou ce% routine% %eraient %u%ce"ti>e% de .-n-rer une i.ne commen;ant "ar 3 di.it% %ui0i d,un e%"ace9 un caractre neutre 7e@. E%"ace8 %era ra5out- en t<te de c)a2ue i.ne. Ce %c)-ma "ermet d,-0iter a mi%e entre croc)et% de a r-"on%e. Le% troi% di.it% de a r-"on%e ont c)acun une %i.ni!ication "articuire. Ceci "ermet d,im"-menter de% traitement% : r-"on%e du "u% %im"e au "u% com"e@e dan% ,ASER6'I. Le "remier di.it indi2ue %i a commande %e termine en %ucc%9 -c)ec9 ou e%t incom"te. 7Ra""ort au dia.ramme d,-tat89 un inter"r-teur de "rotocoe %im"i%te "ourra d-terminer une %trat-.ie d,action : ancer 7tee% 2ue %e retirer9 tenter de nou0eau9 etc.8 en %e >ornant : e@aminer ce di.it. An "roce%%u% utii%ateur d-%ireu@ de %a0oir de 2uee nature e%t ,erreur9 7e@. erreur du %1%tme de !ic)ier%9 erreur de %1nta@e dan% a commande8 "ourra e@aminer e %econd di.it9 e troi%ime -tant r-%er0- au de.r- e "u% !in de %i.nai%ation 7e@.9 une commande RNTO %an% commande RN&R ant-rieure8. Le "remier di.it "eut "rendre # 0aeur% di!!-rente% ? 456 R%onse %ositive %rliminaire L,action demand-e a -t- correctement reconnue et anc-eG on de0ra attendre une autre r-"on%e "our "ou0oir demander ,e@-cution d,une nou0ee commande. 7An "roce%%u% utii%ateur -mettant une nou0ee commande a0ant concu%ion de a "remire o>tiendrait une r-"on%e d,erreur du t1"e D0ioation de "rotocoeDG certain% "roce%%u% %er0eur &T' "eu0ent em"ier e% r-"on%e% entrante% %an% -mettre ce t1"e d,a0erti%%ement8. Ce t1"e de r-"on%e e%t utii%- "our a0ertir ,utii%ateur 2ue %a commande a -t- >ien reconnue et 2u,i "eut aor% %ur0eier %on cana de donn-e%9 notamment dan% e ca% d,a""ication% dan% e%2uee% a %ur0eiance %imutan-e de% deu@ canau@ Dcontr+eD et Ddonn-e%D n,e%t "a% "rati2ue. An %er0eur &T' de0ra au moin% -mettre une commande de ca%%e 11Q "ar commande re;ue. 756 R%onse %ositive dfinitive L,action demand-e %,e%t com"tement d-rou-e a0ec %ucc%. Ane nou0ee commande "eut <tre re;ue "ar e %er0eur. OFPPT @ Document Mi-%ime 'a.e 2$341(#2*.doc 5uiet 3* 1* 6 2* Protocole FTP 856 R%onse %ositive intermdiaire La commande a -t- acce"t-e9 mai% e %er0eur a mi% cee6ci en %ommei9 dan% ,attente d,in!ormation% %u""-mentaire%. L,utii%ateur de0ra aor% -mettre une autre commande a0ec e% in!ormation% demand-e%. Cette r-"on%e e%t utii%-e dan% e% .rou"ement% de commande% en %-2uence. 956 R%onse n:ative transitoire La commande a -t- re!u%-e9 et ,action n,a "a% -t- e@-cut-e9 mai% a condition d,erreur in0o2u-e e%t de nature tem"oraire9 im"i2uant 2ue a m<me commande "eut <tre tent-e : nou0eau. Dan% e ca% d,une %-2uence de commande% .rou"-e%9 ,utii%ateur re"rendra toute a %-2uence de"ui% %on d->ut. Le conte@te du terme Dtran%itoireD re%te ce"endant di!!icie : e@"iciter9 en "articuier or%2ue deu@ %ite% di%tinct% 7SERBER6 et "roce%%u% ASER8 doi0ent %,accorder %ur %on inter"r-tation. C)a2ue r-"on%e de a ca%%e $1Q "eut corre%"ondre : un conte@te de dur-e di!!-rent9 mai% e >ut de cette ca%%e e%t de %i.naer au "roce%%u% utii%ateur a "o%%i>iit- de tenter ,o"-ration encore une !oi%. Ane r.e d,im"-mentation "our %a0oir %i une r-"on%e doit entrer ou doit <tre !ournie dan% a ca%%e $1Q ou #1Q 7N-.ati0e d-!initi0e8 e%t a %ui0ante ? une r-"on%e %era de ca%%e $1Q %i a commande "eut <tre r-"-t-e a0ec une c)ance de %ucc%9 A L,IDENTIKAE9 et %an% aucune modi!ication de% "aramtre% ASER ou SERBER 7c6 :6d.9 a commande e%t -crite %trictement comme a "remireG ,utii%ateur ne c)an.e "a% %e% droit% d,acc%9 ne c)an.e "a% de com"te ni de %e%%ionG e %er0eur ne c)an.e "a% d,im"-mentation8. ;56 R%onse n:ative dfinitive La commande a -t- re!u%-e9 et ,action n,a "a% -t- e@-cut-e. Le %er0eur noti!ie "ar : au "roce%%u% utii%ateur 2u,i %era 0ain de retenter a m<me commande 7dan% a m<me %-2uence8. Certaine% condition% d,erreur D"ermanente%D "ourront toute!oi% <tre corri.-e%9 et a commande "ourra <tre reanc-e "ar une action e@"icite de ,utii%ateur )umain9 %oit a"r% correction de a commande9 %oit a"r% c)an.ement de %e% droit%9 %oit a"r% inter0ention de ,o"-rateur du %er0eur. Le %econd di.it donne une indication %ur a nature de a r-"on%e ? <=6 S5nta<e Ce% r-"on%e% %e r-!rent : de% erreur% de %1nta@e9 de% commande% correcte% en terme% de %1nta@e9 mai% ne %e r-!-rant : aucune !onction connue ou im"-ment-e. <46 Information Indi2uent une r-"on%e : de% demande% d,in!ormation9 comme e% commande% d,-tat% ou d,aide. <76 Conne<ions OFPPT @ Document Mi-%ime 'a.e 2$341(#2*.doc 5uiet 3* 14 6 2* Protocole FTP R-"on%e% %e r-!-rent : une "ro>-mati2ue de conne@ion %ur e% canau@ Dcontr+eD ou Ddonn-e%D. <86 Identification et autentification R-"on%e% du "roce%%u% d,acc% au %1%tme de !ic)ier%. <96 Non encore s%cifie> <;6 S5st"me de ficiers Ce% r-"on%e% %e r-!rent : ,-tat du %1%tme de !ic)ier% %er0eur or%2ue de% commande% de ce %1%tme %ont in0o2u-e%. Le troi%ime di.it "ermet de 2uai!ier encore "u% !inement e% r-"on%e% dan% c)acune de% cat-.orie% donn-e% "ar e deu@ime di.it. La i%te de% r-"on%e% donn-e ci6a"r% e montre. NoteQ 2ue e contenu in!ormationne du te@te ci6 de%%ou% e%t une DrecommandationD9 et e%t nature : inter"r-tation en !onction du %er0eur 2ui ,-met. Le% code% de r-"on%e9 "ar o""o%ition9 doi0ent %ui0re : a ettre e% %"-ci!ication% indi2u-e%G c,e%t6:6dire 2ue e% im"-mentation% de% %er0eur% ne doi0ent 5amai% in0enter de nou0eau@ code%9 m<me %i e% %ituation% dan% e%2uee% i% "eu0ent <tre %ont -.rement di!!-rente% 2ue cee% d-!inie%G ee% de0ront im"-rati0ement c)oi%ir e code corre%"ondant : a %ituation a "u% "roc)e. Ane commande tee 2ue TO'E ou ALLO dont ,e@-cution com"te n,e%t "a% de nature : a""orter une in!ormation utie "our e "roce%%u% utii%ateur "ro0o2ueront e retour d,une r-"on%e de code 233. Lor%2ue a commande en 2ue%tion n,e%t "a% im"-ment-e "ar un "roce%%u% SERBER6&T' "articuier 7cette !onction n,a "a% de %i.ni!ication dan% ce conte@te "articuier de %er0eur9 "ar e@em"e9 a commande ALLO %ur un %ite TO'S2389 ce dernier de0ra de "r-!-rence r-"ondre "ar un code "o%iti! de %orte 2ue ,utii%ateur "ui%%e "our%ui0re %a "roc-dure. Ane r-"on%e de code 232 %era utii%- dan% ce ca%9 a%%oci- "ar e@em"e au te@te %ui0ant? DAocation non n-ce%%aire.D Si9 "ar contre9 a commande e%t .-n-rae9 mai% non im"-ment-e "ar e %ite %er0eur9 un code #32 %era r-"ondu. Ane 0er%ion a!!in-e de cette r-"on%e e%t e code #3$ 2ui "r-ci%e 2ue cette commande e%t im"-ment-e9 mai% ,un au moin% de% "aramtre% a%%oci-% ne ,e%t "a%. ".1.". $odes de r'ponse par (roupes de fonctions 233 Commande concue. #33 Erreur de %1nta@e9 commande non reconnue. Incut e ca% d,une i.ne de commande tro" on.ue. #31 Erreur de %1nta@e dan% e "aramtre% ou ar.ument%. 232 Commande non im"-ment-e9 ou %u"er!ue %ur ce %ite. #32 Commande non im"-ment-e. OFPPT @ Document Mi-%ime 'a.e 2$341(#2*.doc 5uiet 3* 1/ 6 2* Protocole FTP #33 Mau0ai%e %-2uence de commande%. #3$ Commande non im"-ment-e "our ce "aramtre. 113 R-"on%e : mar2ueur de re"ri%e. Dan% ce ca%9 e te@te doit <tre e@act et n,e%t "a% Dada"ta>eD "ar de% im"-mentation% Docae%DG i DOIT indi2uer? MARV 1111 X mmmm oF 1111 e%t e mar2ueur du !u@ de donn-e% ASER6DT'9 et mmmm e mar2ueur -2ui0aent c+t- %er0eur 7noter ,e%"ace indi%"en%a>e entre e% mar2ueur% et e DXD8. 211 Statut %1%tme9 ou r-"on%e d,aide %1%tme. 212 Statut de r-"ertoire. 213 Statut de !ic)ier. 21$ Me%%a.e d,aide. Sur a manire d,utii%er e %er0eur ou a %i.ni!ication d,une commande non %tandard. Cette r-"on%e n,e%t de%tin-e 2u,: un utii%ateur )umain. 21# NOM de t1"e de %1%tme. Le nom de t1"e de %1%tme e%t un nom o!!icie %tandard d-!ini dan% a R&C DA%%i.ned Num>er%D. 123 Ser0ice di%"oni>e dan% nnn minute%. 223 Ser0ice di%"oni>e "our nou0e utii%ateur. 221 Cana de contr+e !erm- "ar e %er0ice. Ca% arc)i0- %i n-ce%%aire. $21 Ser0ice non di%"oni>e9 cana de contr+e !erm-. R-"ondu : toute commande or%2ue a !ermeture imminente du %er0ice e%t "r-0ue. 12# Cana de donn-e% d-5: ou0ertG d->ut de tran%!ert. 22# Cana de donn-e% ou0ertG "a% de tran%!ert en cour%. $2# Erreur d,ou0erture du cana de donn-e%. 22( &ermeture du cana de donn-e%. Ser0ice termin- 7"ar e@em"e9 tran%!ert de !ic)ier ou a0ortement8. $2( Conne@ion !erm-e9 tran%!ert interrom"u. 22* 'a%%a.e en mode "a%%i! 7)19)29)39)$9"19"28. 233 Se%%ion ou0erte. #33 Se%%ion non ou0erte. OFPPT @ Document Mi-%ime 'a.e 2$341(#2*.doc 5uiet 3* 23 6 2* Protocole FTP 331 Nom d,utii%ateur re;u9 mot de "a%%e demand-. 332 Com"te utii%ateur demand-. #32 Com"te utii%ateur demand- "our enre.i%trement de !ic)ier%. 1#3 Statut de !ic)ier 0-ri!i-G ou0erture de cana de donn-e% en cour%. 2#3 Ser0ice !ic)ier termin-. 2#* DCHEMIND cr--. 3#3 Ser0ice !ic)ier en attente d,in!ormation. $#3 Ser0ice !ic)ier non trait-. &ic)ier non di%"oni>e 7e@.9 !ic)ier 0erroui- "ar un autre utii%ateur8. ##3 Ser0ice !ic)ier non trait-. &ic)ier non acce%%i>e 7e@.9 !ic)ier non trou0-9 acc% re!u%-8. $#1 Ser0ice interrom"u. Erreur ocae de traitement. ##1 Ser0ice interrom"u. T1"e de "a.e inconnu. $#2 Ser0ice interrom"u. E%"ace in%u!!i%ant. ##2 Ser0ice !ic)ier interrom"u. Kuota d-"a%%- 7"our e r-"ertoire ou com"te courant8. ##3 Ser0ice interrom"u. Nom de !ic)ier erron-. 4.2.2 CODES REPONSE PAR ORDRE NUMERIQUE 113 R-"on%e : mar2ueur de re"ri%e. Dan% ce ca%9 e te@te doit <tre e@act et n,e%t "a% Dada"ta>eD "ar de% im"-mentation% Docae%DG i DOIT indi2uer? MARV 1111 X mmmm oF 1111 e%t e mar2ueur du !u@ de donn-e% ASER6DT'9 et mmmm e mar2ueur -2ui0aent c+t- %er0eur 7noter ,e%"ace indi%"en%a>e entre e% mar2ueur% et e DXD8. 123 Ser0ice di%"oni>e dan% nnn minute%. 12# Cana de donn-e% d-5: ou0ertG d->ut de tran%!ert. 1#3 Statut de !ic)ier 0-ri!i-G ou0erture de cana de donn-e% en cour%.
233 Commande concue. 232 Commande non im"-ment-e9 ou %u"er!ue %ur ce %ite. OFPPT @ Document Mi-%ime 'a.e 2$341(#2*.doc 5uiet 3* 21 6 2* Protocole FTP 211 Statut %1%tme9 ou r-"on%e d,aide %1%tme. 212 Statut de r-"ertoire. 213 Statut de !ic)ier. 21$ Me%%a.e d,aide. Sur a manire d,utii%er e %er0eur ou a %i.ni!ication d,une commande non %tandard. Cette r-"on%e n,e%t de%tin-e 2u,: un utii%ateur )umain. 21# NOM de t1"e de %1%tme. Le nom de t1"e de %1%tme e%t un nom o!!icie %tandard d-!ini dan% a R&C DA%%i.ned Num>er%D. 223 Ser0ice di%"oni>e "our nou0e utii%ateur. 221 Cana de contr+e !erm- "ar e %er0ice. Ca% arc)i0- %i n-ce%%aire. 22# Cana de donn-e% ou0ertG "a% de tran%!ert en cour%. 22( &ermeture du cana de donn-e%. Ser0ice termin- 7"ar e@em"e9 tran%!ert de !ic)ier ou a0ortement8. 22* 'a%%a.e en mode "a%%i! 7)19)29)39)$9"19"28. 233 Se%%ion ou0erte. 2#3 Ser0ice !ic)ier termin-. 2#* DCHEMIND cr--.
331 Nom d,utii%ateur re;u9 mot de "a%%e demand-. 332 Com"te utii%ateur demand-. 3#3 Ser0ice !ic)ier en attente d,in!ormation.
$21 Ser0ice non di%"oni>e9 cana de contr+e !erm-. R-"ondu : toute commande or%2ue a !ermeture imminente du %er0ice e%t "r-0ue. $2# Erreur d,ou0erture du cana de donn-e%. $2( Conne@ion !erm-e9 tran%!ert interrom"u. $#3 Ser0ice !ic)ier non trait-. &ic)ier non di%"oni>e 7e@.9 !ic)ier 0erroui- "ar un autre utii%ateur8. OFPPT @ Document Mi-%ime 'a.e 2$341(#2*.doc 5uiet 3* 22 6 2* Protocole FTP $#1 Ser0ice interrom"u. Erreur ocae de traitement. $#2 Ser0ice interrom"u. E%"ace in%u!!i%ant.
#33 Erreur de %1nta@e9 commande non reconnue. Incut e ca% d,une i.ne de commande tro" on.ue. #31 Erreur de %1nta@e dan% e "aramtre% ou ar.ument%. #32 Commande non im"-ment-e. #33 Mau0ai%e %-2uence de commande%. #3$ Commande non im"-ment-e "our ce "aramtre. #33 Se%%ion non ou0erte. #32 Com"te utii%ateur demand- "our enre.i%trement de !ic)ier%. ##3 Ser0ice !ic)ier non trait-. &ic)ier non acce%%i>e 7e@.9 !ic)ier non trou0-9 acc% re!u%-8. ##1 Ser0ice interrom"u. T1"e de "a.e inconnu. ##2 Ser0ice !ic)ier interrom"u. Kuota d-"a%%- 7"our e r-"ertoire ou com"te courant8. ##3 Ser0ice interrom"u. Nom de !ic)ier erron-. ".1.*. +c'nario ftp t,pi-ue An utii%ateur au "ort A 0ouant tran%!-rer ou rece0oir de% !ic)ier% d,un %er0eur S? En .-n-ra9 ,utii%ateur communi2ue a0ec e %er0eur 0ia a m-diation d,un "roce%%u% ASER6&T'. Ce 2ui %uit "eut <tre "ri% comme %c-nario t1"i2ue. Le% D"rom"t%D ASER6&T' %ont montr-% entre "arent)%e%9 ,6666I, d-%i.ne une commande de ,utii%ateur A 0er% ,)+te S9 et ,H6666, d-%i.ne une r-"on%e de ,)+te S : ,utii%ateur A. CO))(NDES /OC(/ES &Utilisateur' (CTION I)P/I1UEE !t" 7)o%t8 mutic%HCRI Conne@ion : ,)+te S9 "ort L9 Eta>i%%ement du cana de contr+e . H6666 223 Ser0ice read1 HCRL&I. u%ername Doe HCRI ASER DoeHCRL&I6666I H6666 331 A%er name oE9 need "a%%MordHCRL&I. "a%%Mord mum>e HCRI 'ASS mum>eHCRL&I6666I OFPPT @ Document Mi-%ime 'a.e 2$341(#2*.doc 5uiet 3* 23 6 2* Protocole FTP H6666 233 A%er o..ed inHCRL&I. retrie0e 7oca t1"e8 ASCIIHCRI 7oca "at)name8 te%t 1 HCRI Le ASER6&T' ou0re un !ic)ier oca en ASCII. 7!or. "at)name8 te%t."1HCRI RETR te%t."1HCRL&I 6666I H6666 1#3 &ie %tatu% oEa1G a>out to o"en data connectionHCRL&I. Le %er0eur -ta>it e cana de donn-e% 0er% e "ort A. H6666 22( Co%in. data connection9 !ie tran%!er %ucce%%!uHCRL&I. t1"e Ima.eHCRI TO'E IHCRL&I 6666I H6666 233 Command OVHCRL&I %tore 7oca t1"e8 ima.eHCRI 7oca "at)name8 !ie dum"HCRI Le ASER6&T' ou0re e !ic)ier oca %ou% Ima.e. 7!or."at)name8 IuddIcnI!dHCRI STOR IuddIcnI!dHCRL&I 6666I H6666 ##3 Acce%% deniedHCRL&I terminate KAIT HCRL&I 6666I Le %er0eur !erme toute% e% conne@ion% Mettre Yaccent %ur un "oint "articuier Note dattention particulire. OFPPT @ Document Mi-%ime 'a.e 2$341(#2*.doc 5uiet 3* 2$ 6 2* Titre du document OFPPT @ Document Mi-%ime 'a.e 2$341(#2*.doc 5uiet 3* 2# 6 2* Pour a%%rofondir le su?et@> 'ro"o%ition de r-!-rence% utie% "ermettant dYa""ro!ondir e t)me a>ord- Sources de rfrence Citer e% auteur% et e% %ource% de r-!-rence utii%-e% "our Y-a>oration du %u""ort