1. FTP使用详解
1.什么是FTP(文件传输协议)
FILE TRANSFERPROTOCOL(FTP)意为文件传输协议,用于管理计算机之间的文件传送。FTP通常指文件传输服务。
FTP是Internet上使用非常广泛的一种通讯协议。它是由支持Internet文件传输的各种规则所组成的集合,这些规则使 Internet用户可以把文件从一个主机拷贝到另一个主机上,因而为用户提供了极大的方便和收益。FTP通常也表示用户执行这个协议所使用的应用程序(例如:凯屋“上当“),从而获取所需的信息资料。
FTP和其它 Internet服务一样,也是采用客户机/服务器方式。使用方法很简单,启动FTP客户端程序先与远程主机建立连接,然后向远程主机发出传输命令,远程主机在收到命令后就给予响应,并执行正确的命令。FTP有一个根本的限制,那就是,如果用户未被某一FTP主机授权,就不能访问该主机,实际上是用户不能远程登录(Remote Login)进入该主机。也就是说,如果用户在某个主机上没有注册获得授权,没有用户名和口令,就不能与该主机进行文件的传输。而AnonymousFTP(匿名FTP)则取消了这种限制。
2.什么是Anonymous FTP(匿名文件传输)
Anonymous(匿名文件传输)能够使用户与远程主机建立连接并以匿名身份从远程主机上拷贝文件,而不必是该远程主机的注册用户。用户使用特殊的用户名“Anonymous”和“guest”就可有限制地访问远程主机上公开的文件。现在许多系统要求用户将Emai1地址作为口令,以便更好地对访问进行跟综。出于安全的目的,大部分匿名FTP主机一般只允许远程用户下载(download)文件,而不允许上传 (upload)文件。也就是说,用户只能从匿名FTP主机拷贝需要的文件而不能把文件拷贝到匿名FTP主机。另外,匿名FTP主机还采用了其他一些保护措施以保护自己的文件不至于被用户修改和删除,并防止计算机病毒的侵入。在具有图形用户界面的WorldWide Web环境于1995年开始普及以前,匿名FTP一直是Internet上获取信息资源的最主要方式,在Internet成千上万的匿名PTP主机中存储着无以计数的文件,这些文件包含了各种各样的信息,数据和软件。人们只要知道特定信息资源的主机地址,就可以用匿名FTP登但是匿名FTP仍是 Internet上传输分发软件的一种基本方法。
3.什么是Remote Login(远程登录)
Remote Login(远程登录)指用户通过Internet登录到远程主机上。在这种连接建立之后,用户所在的计算就可以作为远程主机的终端一样使用。 Internet上远程登录的主要方式是Telnet,匿名FTP也需要首先经过远程登录才能进行文件传输。
4.什么是Upload(上传)
Upload(上传)指把数据从本地计算机传到远程主机上,因此受到严格的管理和控制,但Upload是提交用户信息和要求以实现远程交互应用的基础。
5.何为FTP连接
进行FTP连接首先要给出目的FTP服务器的名称或地址,当连接到FTP服务器后,一般要进行登录,在检验用户ID号和口令后,连接才得以建立,某些系统也允许用户进行匿名登录。与在所有的多用户系统中一样,对于同一目录或文件,不同的用户拥有不同的权限,所以在使用过程中,如果发现不能下载或上载某些文件时,一般是因为用户权限不够。
6.FTP文件传输方式
FTP可用多种格式传输文件,通常由系统决定,大多数系统(包括UNIX系统)只有两种模式:文本模式(ASCII)和二进制模式(BIN/IMAGE)。
文本传输器使用ASCII字符,并由回车键和换行符分开,而二进制不用转换或格式化就可传字符,二进制模式比文本模式更快,并且可以传输所有ASCII值,所以系统管理员一般将FTP设置成二进制模式。应注意在用FIP传输文件前,必须确保使用正确的传输模式,按文本模式传二进制文件必将导致错误。
7.FTP的可靠性问题
FTP建立在传输层TCP协议之上,TCP是面向连接的协议,负责保证数据从源计算机到目的计算机的传输。TCP采用校验、确认接收和超时重传等一系列措施提供可靠的传输,所以在传输过程中FTP程序如果没有提示错误,就无需担心传输问题。
2. ftp可以传输什么文件
ftp可伍伍丛以传输任何类型的文件。通过FTP几乎可以传输任何类型的文件,例如文本文件、二进制可执行文件、图像和声音文件、数据压缩文件等。普通的FTP服务器,需事先申请用户名和口令,通过身份验证后才能使用该服务器提供的各种服务腔樱。
ftp的概括
普通的FTP服务器,需事先申请用户名和口令,通过身份验证后才能使用该服务器提供的各种服务。匿名FTP服务器,是对公众开放的FTP服务器,任何人都可以使用Anonymous作为用户名,使用电子邮件地址作为口令登录,在公共目录中查找和下载文件,但不能橘知上传文件。
如果系统中安装了CuteFTP,执行开始菜单中的程序、CuteFTP、CuteFTP命令,可启动CuteFTP应用程序,打开Site Manger,FTP站点管理器窗口,在站点列表中双击一个站点已定义,即可与建立该FTP的连接。
3. ftp能识别的两种基本文件格式
ftp能识别的两种基本文件格式是文本模式和二进制模式。FTP可用多种格式传输文件,通常由系统决定,大多数灶和系统包括UNIX系统只有两种模式,文本模式和二进制模式。文链敬本传输器使用ASCII字符,并由回车键和换行符分开,而二进制不用转换或格式化就可传字符隐唤盯,二进制模式比文本模式更快,并且可以传输所有ASCII值。
4. FTP是什么 详解FTP的定义和用途
FTP协议的工作原理是基于客户端-服务器模型。客户端通过FTP客户端软件连接到服务器,然后输入用户名和密码进行身份验证。一旦身份验证通过,客户端就可以浏览服务器上的文件和文件夹,并执行文件传输操作。
总的来说,FTP协议是一种可靠、安全和高效的文件传输协议,它在互联网上被广泛使用。虽然现在有更先进的文件传输协议出现,如SFTP和FTPS,但FTP协议仍然是一个重要的网络传输协议,它在网站维护、文件共享和数据备份方面发挥着重要作用。
总的来说,FTP协议是一型橡种可靠、安全和高效的文件传输协议,它在互联网上被广泛使用。虽然现在有更先进的文件传输协议出现,如SFTP和FTPS,但FTP协议仍然是一个重要的网络传输协议,它在网站维护、文辩桐件共享和数据备份方面发挥着重要作用。
FTP协议的工作原理是基于客户端-服务器模型。客户端通过FTP客户端软件连接到服务器,然后输入用户名和密码进行身份验证。一旦身份验证通过,客户端就卜灶旁可以浏览服务器上的文件和文件夹,并执行文件传输操作。
FTP协议支持两种传输模式:ASCII模式和二进制模式。ASCII模式用于传输文本文件,如HTML、CSS和JavaScript文件。二进制模式用于传输二进制文件,如图像、音频和视频文件。
5. FTP采用的是什么工作模式,可以实现的文件传输方式有哪两种
FTP可以采用2种工作模式,分别是Port模式、Passive模式;
FTP的传输有两种方式:ASCII、二进制:
1、ASCII传输方式:
假定用户正在拷贝的文件包含的简单ASCII码文本,如果在远程机器上运行的不是UNIX,当文件传输时ftp通常会自动地调整文件的内容以便于把文件解释成另外那台计算机存储文本文件的格式
2、二进制传输模式:
在二进制传输中,保存文件的位序,以便原始和拷贝的是逐位一一对应的。即使目的地机器上包含位序列的文件是没意义的。例如,macintosh以二进制方式传送可执行文件到Windows系统,在对方系统上,此文件不能执行。
(5)传输文本类型ftp扩展阅读:
FTP文件传输协议的特点介绍:
FTP工作在TCP/IP模型的应用层,基于的传输协议是TCP,FTP客户端和服务器之间的连接是可靠的,面向连接的,为数据的传输提供了可靠的保证。
FTP的主要特征:
1、控制连接是建立在客户协议解释器和服务器协议解释器之间用于交换命令与应答的通信链路
2、数据连接是传输数据的全双工连接。传输数据可以发生在服务器数据传输过程DTP和客户DTP之间,也可以发生在两个服务器的DTP之间。
6. 怎么通过ftp传送文本文件
不知道你的winsock是udp还是tcpip协议
这里给你一个我写的实例我是用的udp这个发送了一段数据不一定接收就正确所以我做了校验
'以下是接收文件的
OptionExplicit
DimFOKAsBoolean,FsAsLong,FileNumberAsInteger,LenFileAsLong '文件的长度
PrivateSubCommand1_Click()
UnloadMe
EndSub
PrivateSubCommand2_Click()
OnErrorResumeNext
DimAAsString
Me.Caption="开始下载"
IfDir(Text2.Text)<>""AndChV.Value=0Then
IfMsgBox("文件已经存在,覆盖吗?",vbCritical+vbYesNo)=vbYesThenKillText2.TextElseExitSub
Else
KillText2.Text
EndIf
IfText2.Text=""ThenText2.Text=Text1.Text
'Command2.Enabled=False
IfCh.Value=0ThenA="#DOW#"ElseA="#DOV#"
FMain.Wsk.SendDataA&Text1.Text
Wt1
FMain.Wsk.SendData"#DOE#"&Text2.Text
EndSub
PrivateSubForm_Load()
DimAAsString
'FMain.Ts.Enabled=True
OnErrorResumeNext
IfFMain.Cb.Text="本地组"OrFMain.Cb.Text="全部组"Then
Me.Caption="请重选下载用户[“组”不能正确下载]"
Else
Command1.Top=-2000
Winsock0.LocalPort=FilePort
Winsock0.Bind
EndIf
EndSub
PrivateSubForm_Unload(CancelAsInteger)
OnErrorResumeNext
Winsock0.Close
Err.Clear
EndSub
PrivateSubLa_Click()
CDL.FileName=""
CDL.ShowOpen
Text2.Text=CDL.FileName
EndSub
PrivateSubWinsock0_DataArrival(ByValbytesTotalAsLong)
OnErrorResumeNext
DimFileByte()AsByte,AAsString,MendByte()AsByte,IAsLong,JAsLong,TempAsString,WAsString
Winsock0.GetDataFileByte,vbArray+vbByte'接收类型为:字节数组
J=UBound(FileByte)'获得包长
ForI=0To7Step2'合并包头
Temp=Temp&Chr(FileByte(I))
Next
ForI=0To9'文件发送结束标记
A=A&Chr(FileByte(I))
Next
IfA="#ERR#"ThenWinsock0.SendData"no"
IfA="#END#"Then
ForI=0ToLen(FMain.TIn.Text)
IfI<100Then
W=Left(Right(FMain.TIn.Text,I),1)
IfW="!"Then
W=Left(Right(FMain.TIn.Text,I+4),5)
ExitFor
EndIf
Else
ExitFor
EndIf
NextI
IfW<>"下载完成!"Then
FOK=False
Me.Caption="下载完成!["&Text2.Text&"]"
FMain.TIn.Text=FMain.TIn.Text&"["&Now&"]"&"下载完成!("&Fs&"<="&LenFile&")"&vbCrLf
Command2.Enabled=True
EndIf
Else
IfVal(Temp)=JThen'比较长度看丢包没有
ReDimMendByte(J-8)
ForI=0ToJ-8'提出包头
MendByte(I)=FileByte(I+7)
Next
Fs=Fs+UBound(FileByte)-7
Put#FileNumber,,MendByte'写文件
Winsock0.SendData"ok"'发送继续发送的请求
Me.Caption="文件下载完成:["&Left(Fs/LenFile*100,4)&"%]"
Else
IfLeft(A,10)="#SENDSTA#"Then
A=""
ForI=10ToUBound(FileByte)'文件发送结束标记
A=A&Chr(FileByte(I))
Next
LenFile=Val(Left(A,InStr(A,"//")-1))
ForI=0ToLen(Text2.Text)
A=Left(Right(Text2.Text,I),1)
IfA=""ThenExitFor
Next
IfDir(Left(Text2.Text,Len(Text2.Text)-I+1),vbDirectory)=""ThenMkDirLeft(Text2.Text,Len(Text2.Text)-I+1)
'"#SENDSTA#"&FileLen(Text1.Text)&"//"&Text2.Text
FileNumber=FreeFile'取得未使用的文件号
Fs=0
OpenText2.TextForBinaryAs#FileNumber'打开文件
Else
IfA<>"#SENDEND#"Then
Winsock0.SendData"no"'出现丢包,请求重发
Else
Winsock0.SendData"#END#"'发送继续发送的请求
Close#FileNumber
Reset
IfFOK=FalseThen
FOK=True
Me.Caption="下载完成!["&Text2.Text&"]"
FMain.TIn.Text=FMain.TIn.Text&"["&Now&"]"&"下载完成!("&Fs&"<="&LenFile&")"&vbCrLf
Command2.Enabled=True
Else
FOK=False
EndIf
EndIf
EndIf
EndIf
EndIf
EndSub
7. FTP的传输有几种方式
只有两种
ASCLL和二进制
WIN系统两个都支持
linux最好使用二进制,不然有时候会出错