当前位置:首页 » 云服务器 » 服务器和终端如何传输文件原理

服务器和终端如何传输文件原理

发布时间: 2023-09-22 01:13:21

ftp文件传输原理

在遇到了一个wireshark数据包分析题之后,看到了ftp的相关信息,但是没找到相关的flag信息,请教了大佬的解释,才知道ftp文件传输并不是在21端口,ftp文件传输有主动和被动两种方式,

被动(PASV)模式:

PASV(被动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条控制连接。当需要传送数据时,服务器在命令链路上用PASV命令告诉客户端:“我打开了XXXX端口,你过来连接我”。于是客户端向服务器的XXXX端口发送连接请求,建立一条数据链路来传送数据。

服务器控制端口(21),服务器端等待的数据传输端口(动态申请)

ftp服务器动态申请一个端口(一般大于1024)然后告诉客户端,我在这个端口上等待你的连接,客户端收到以后便向服务器的这个端口发起连接,数据连接建立以后,数据传输就可以开始了

端口计算方法:172,16,101,104,7,254,256*7+254=2046

一次完整的被动连接及数据传输过程:

状态: 正在连接 172.16.101.104:21...

状态: 连接建立,等待欢迎消息...

响应: 220 Serv-U FTP Server v6.4 for WinSock ready...

命令: USER test

响应: 331 User name okay, need password.

命令: PASS ****

响应: 230 User logged in, proceed.

状态: 已连接

状态: 读取目录列表...

命令: PWD

响应: 257 "/" is current directory.

状态: 列出目录成功

状态: 正在连接 172.16.101.104:21...

状态: 连接建立,等待欢迎消息...

响应: 220 Serv-U FTP Server v6.4 for WinSock ready...

命令: USER test

响应: 331 User name okay, need password.

命令: PASS ****

响应: 230 User logged in, proceed.

状态: 已连接

状态: 开始上传 E:\Downloads\liugong\liugong\404.htm

命令: CWD /

响应: 250 Directory changed to /

命令: TYPE A

响应: 200 Type set to A.

命令: PASV

响应: 227 Entering Passive Mode (172,16,101,104,8,86)

命令: STOR 404.htm

响应: 150 Opening ASCII mode data connection for 404.htm.

响应: 226 Transfer complete.

状态: 文件传输成功,传输了 2,052 字节 (用时1 秒)

状态: 读取目录列表...

命令: TYPE I

响应: 200 Type set to I.

命令: PASV

响应: 227 Entering Passive Mode (172,16,101,104,8,88)

命令: MLSD

响应: 150 Opening BINARY mode data connection for MLSD.

响应: 226 Transfer complete.

状态: 列出目录成功

主动(PORT)模式:

PORT(主动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条控制连接。当需要传送数据时,客户端在命令链路上用PORT命令告诉服务器:“我打开了XXXX端口,你过来连接我”。于是服务器从20端口向客户端的XXXX端口发送连接请求,建立一条数据链路来传送数据。

一次完整的主动连接及数据传输过程:

状态: 正在连接 172.16.101.104:21...

状态: 连接建立,等待欢迎消息...

响应: 220 Serv-U FTP Server v6.4 for WinSock ready...

命令: USER test

响应: 331 User name okay, need password.

命令: PASS ****

响应: 230 User logged in, proceed.

状态: 已连接

状态: 开始上传 E:\Downloads\liugong\liugong\404.htm

命令: CWD /

响应: 250 Directory changed to /

命令: TYPE A

响应: 200 Type set to A.

命令: PORT 172,16,101,104,8,76

响应: 200 PORT Command successful.

命令: STOR 404.htm

响应: 150 Opening ASCII mode data connection for 404.htm.

响应: 226 Transfer complete.

状态: 文件传输成功,传输了 2,052 字节 (用时1 秒)

状态: 读取目录列表...

命令: TYPE I

响应: 200 Type set to I.

命令: PORT 172,16,101,104,8,77

响应: 200 PORT Command successful.

命令: MLSD

响应: 150 Opening BINARY mode data connection for MLSD.

响应: 226 Transfer complete.

状态: 列出目录成功

再回来说这一题,看到

计算端口为 4*256+17=1041

端口过滤,追踪tcp流

② FTP原理与配置

FTP是用来传送文件的协议。使用FTP实现远程文件传输的同时,还可以保证数据传输的可靠性和高效性。

在企业网络中部署一台FTP服务器,将网络设备配置为FTP客户端,则可以使用FTP来备份或更新VRP文件和配置文件。 也可以把网络设备配置为FTP服务器,将设备的日志文件保存到某台主机上方便查看。

FTP传输数据时支持两种传输模式:ASCII模式和二进制模式。

ASCII模式用于传输文本。 发送端的字符在发送前被转换成ASCII码格式之后进行传输,接收端收到之后再将其转换成字符。 二进制模式常用于发送图片文件和程序文件。 发送端在发送这些文件时无需转换格式,即可传输。

使用FTP进行文件传输时,会使用两个TCP连接。 第一个连接是FTP客户端和FTP服务器间的控制连接。 FTP服务器开启21号端口 ,等待FTP客户端发送连接请求。

第二个连接是FTP客户端和FTP服务器间的数据连接。 服务器使用TCP的20号端口 与客户端建立数据连接。 通常情况下,服务器主动建立或中断数据连接。

执行 ftp server enable 命令使能FTP功能。

执行 set default ftp-directory 命令设置FTP用户。

在配置FTP服务器时,可以使用AAA为每个用户分别配置登录账号和访问权限。

aaa 命令用来进入AAA视图。

local-user user-name { access-limit max-number | ftpdirectory directory | idle-timeout minutes [ seconds ] | password cipher password [ opt ]| privilege level level | state {active | block } } *命令用来创建本地用户,并配置本地用户的各项参数。

ftp客户端连接ftp服务器

ftp命令用来不远程FTP服务器建立控制连接,并进入FTP客户端视图。

binary命令用来在设备作为FTP客户端时设置文件传输方式为Binary模式,又称二进制模式。缺省情况下,文件传输方式为ASCII模式。get命令用来从远程FTP服务器下载文件并保存在本地。

③ ftp服务器的工作原理

FTP是File Transfer Protocol(文件传输协议)的缩写,用来在两台计算机之间互相传送文件。相比于HTTP,FTP协议要复杂得多。复杂的原因,是因为FTP协议要用到两个TCP连接,一个是命令链路,用来在FTP客户端与服务器之间传递命令;另一个是数据链路,用来上传或下载数据。

FTP协议有两种工作方式:PORT方式和PASV方式,中文意思为主动式和被动式。

PORT(主动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。当需要传送数据时,客户端在命令链路上用PORT命令告诉服务器:“我打开了XXXX端口,你过来连接我”。于是服务器从20端口向客户端的XXXX端口发送连接请求,建立一条数据链路来传送数据。

PASV(被动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。当需要传送数据时,服务器在命令链路上用PASV命令告诉客户端:“我打开了XXXX端口,你过来连接我”。于是客户端向服务器的XXXX端口发送连接请求,建立一条数据链路来传送数据。

④ 计算机网络数据传输如何实现,有哪些硬件设施

你是来找老师布置的作业的吧 o(∩_∩)o...

物理网络上的数据传输的实现:
我们可以认为是这样的:
数据被分成一个一个的包(Packet)
发送端:
1) 包的数据头(或数据尾)被第一层协议(比如TFTP协议) 加上第一层应用层协议数据;
2) 然后整个包(包括内部加入的TFTP 信息头)被下层协议再次包装(比如UDP),
3) 再这之后数据包会再次被下层协议包装(比如IP 协议),
4) 最后是被最底层的硬件层(物理层)包装上最后一层信息(Ethernet 信息头)。
当接受端的计算机接收到这个包后,
1) 硬件首先剥去数据包中的Ethernet 信息头,
2) 然后内核在剥去IP 和UDP 信息头,
3) 最后把数据包提交给TFTP 应用程序,由TFTP 剥去TFTP信息头,最后得到了原始数据

硬件设施:
计算机网络的硬件系统通常由五部分组成:文件服务器、工作站(包括终端)、传输介质、网络连接硬件和外部设备。文件服务器一般要求是配备了高性能CPU系统的微机,它充当网络的核心。除了管理整个网络上的事务外,它还必须提供各种资源和服务。而工作站可以说是一种智能型终端,它从文件服务器取出程序和数据后,能在本站进行处理,一般有有盘和无盘之分。接下来谈谈传输介质,它是通信网络中发送方和接受方之间的物理通路,在局域网中就是用来连接服务器和工作站的电缆线.目前常用的网络传输介质有双绞线(多用于局域网)、同轴电缆和光缆等.常用的网络连接硬件有网络接口卡(NIC)、集线器(HUB)、中继器(Repeater)以及调制解调器(Modem)等。而打印机、扫描仪、绘图仪以及其它任何可为工作站共享的设备都能被称为外部设备。

⑤ 一台ftp客户端与一台ftp服务器通过一台二层交换机相连,它们之间具体的数据传输过程是怎样的,重点是ftp

FTP的传输有两种方式:ASCII传输模式和二进制数据传输模式。
1.ASCII传输方式:假定用户正在拷贝的文件包含的简单ASCII码文本,如果在远程机器上运行的不是UNIX,当文件传输时ftp通常会自动地调整文件的内容以便于把文件解释成另外那台计算机存储文本文件的格式。
但是常常有这样的情况,用户正在传输的文件包含的不是文本文件,它们可能是程序,数据库,字处理文件或者压缩文件(尽管字处理文件包含的大部分是文本,其中也包含有指示页尺寸,字库等信息的非打印字符)。在拷贝任何非文本文件之前,用binary 命令告诉ftp逐字拷贝,不要对这些文件进行处理,这也是下面要讲的二进制传输。
2.二进制传输模式:在二进制传输中,保存文件的位序,以便原始和拷贝的是逐位一一对应的。即使目的地机器上包含位序列的文件是没意义的。例如,macintosh以二进制方式传送可执行文件到Windows系统,在对方系统上,此文件不能执行。
如果你在ASCII方式下传输二进制文件,即使不需要也仍会转译。这会使传输稍微变慢 ,也会损坏数据,使文件变得不能用。(在大多数计算机上,ASCII方式一般假设每一字符的第一有效位无意义,因为ASCII字符组合不使用它。如果你传输二进制文件,所有的位都是重要的。)如果你知道这两台机器是同样的,则二进制方式对文本文件和数据文件都是有效的。
5. FTP的工作方式
FTP支持两种模式,一种方式叫做Standard (也就是 PORT方式,主动方式),一种是 Passive (也就是PASV,被动方式)。 Standard模式 FTP的客户端发送 PORT 命令到FTP服务器。Passive模式FTP的客户端发送 PASV命令到 FTP Server。
下面介绍一个这两种方式的工作原理:
Port模式FTP 客户端首先和FTP服务器的TCP 21端口建立连接,通过这个通道发送命令,客户端需要接收数据的时候在这个通道上发送PORT命令。 PORT命令包含了客户端用什么端口接收数据。在传送数据的时候,服务器端通过自己的TCP 20端口连接至客户端的指定端口发送数据。 FTP server必须和客户端建立一个新的连接用来传送数据。
Passive模式在建立控制通道的时候和Standard模式类似,但建立连接后发送的不是Port命令,而是Pasv命令。FTP服务器收到Pasv命令后,随机打开一个高端端口(端口号大于1024)并且通知客户端在这个端口上传送数据的请求,客户端连接FTP服务器此端口,然后FTP服务器将通过这个端口进行数据的传送,这个时候FTP server不再需要建立一个新的和客户端之间的连接。
很多防火墙在设置的时候都是不允许接受外部发起的连接的,所以许多位于防火墙后或内网的FTP服务器不支持PASV模式,因为客户端无法穿过防火墙打开FTP服务器的高端端口;而许多内网的客户端不能用PORT模式登陆FTP服务器,因为从服务器的TCP 20无法和内部网络的客户端建立一个新的连接,造成无法工作。

简单上传下载实例(/*....*/为注释):

先假设有一FTP服务器,FTP服务器:qint.ithot.net,用户名:username 密码:user1234。在本地电脑D:盘创建一个文件夹"qint"。将要上传的文件复制到d:\qint里。通过FTP命令将文件从本地上传,从服务器下载的步骤如下:

1.“开始”-“运行”-输入“FTP”

2.open qint.ithot.net
/*这一步可以与第一步合并,在“运行”里直接输入"ftp qint.ithot.net"。如果你的FTP服务器不是用的21默认端口,假如端口是2121,那么此步的命令应在后面空格加2121,即“open qint.ithot.net 2121”*/

3.username
/*提示你输入用户名*/

4.user1234
/*提示你输入密码,密码不回显,打完密码后回车即可。如果你的密码输入错误,将不会提示你重新输入,这时你要键入“user”命令,将会出现第三步,你可以重新输入用户名和密码。*/

5.dir
/*你成功登陆后就可以用dir查看命令查看FTP服务器中的文件及目录,用ls命令只可以查看文件。*/

6.mkdir qint
/*在FTP服务器上根目录下建立qint目录。*/

7.cd qint
/*进入目录qint,用“cd 你的目录名”可以进入当前目录的下一级目录,这跟DOS一样。*/

8.bin
/*采用二进制传输。如果你要上传下载,这一步很重要,不先执行这个命令,上传下载会很慢。*/

9.lcd d:\qint
/*定位本地默认文件夹,在前面我事先在D:盘创建的。*/

10.!dir
/*查看本地文件夹中的文件及目录*/

11.put i001.jpg
/*将当前目录(d:\qint)中的文件i001.jpg上传到FTP服务器默认目录。可以用"mput *.*"将所有文件上传到FTP服务器上。*/

12.get d123.jpg
/*将FTP服务器默认目录中的文件d123.jpg下载到当前目录下(d:\qint)。可以用"mget *.*"将所有文件下载到d:\qint*/

13.delete *.*
/*删除目录qint中的所有文件。*/

14.cd ..
/*返回至上一级目录,即根目录。返回上一级目录用“cd ..”要注意,中间有空格。返回根目录用“cd \”。*/

15.mrdir qint
/*删除目录qint。删除目录,在此目录下不能有文件及目录,不然将无法删除。*/

16.bye
/*退出FTP服务器*/

上传下载时特别要注意服务器及本地电脑的当前目录,文件是从哪里到哪里的问题。查看FTP服务器的当前目录命令为pwd,可以用cd命令定位服务器的目录。可以用lcd命令定位本地电脑的目录。以上实例应用到了采用FTP命令行方式上传下载的最常用命令,你还可以用命令“?”查看更多的命令。

⑥ 一文看懂串口服务器的原理及用法

串口服务器 ,也被成为串口到以太网转换器、串口设备服务器。它是终端服务器通过TCP/IP服务器的串口进行数据传输,然而所有这些名称都是相同类型的设备,基本是将串行的RS232、RS485或RS422接口链接到串口服务器的串口端,传输数据到以太网数据包,同时可以将数据包再传回至RS232、RS485或RS422串口端,实现数据双向透传。串口服务器具有自己的实际IP地址,这就是为什么它有时被称为服务器的原因。

原理: 计算机串口(COM端口)和以太网局域网(LAN)之间传输数据的设备。这使得可以使用以太网代替串行电缆,最大限度地减少工作站的混乱,并允许将串行设备放置在距离计算机较远的位置。

作用: 串口服务器可实现串口(RS232/485/422)到以太网口的数据的双向透明传输。串口服务器内部模块自行完成协议转换。串口侧是串口电平数据,以太网口侧是网络数据包,通过简单设置即可实现联网功能。

串口服务器在实际使用过程中,是将TCP/IP协议的以太网接口映射到计算机的标准串口上,类似对普通串口一样进汪旦行收发数据。也就是说通常计算机上有1个硬盘,通过串口服务器可并联出多个硬盘。比如一般极端及上有COM1和COM2两个端口,通过串口服务器可以将其映射出COM3、COM4、COM5等多个端口来。

有人科技提供相关的串口服务器使用方法,请点击:

串口服务器的连接方法 :https://www.usr.cn/News/720.html

串口服务器的使用方法 :https://www.usr.cn/News/1305.html

串口服务器的参数设置 :https://www.usr.cn/News/1465.html

串口服务器如何与组态王连接 :https://www.usr.cn/Down/Software/M4-1.pdf

串口服务器的应用领域比较广泛,通常与工业路由器或工业交换机搭配使用。例如无人值守称重、远程考勤、门禁道闸等。

电气火灾报警应用: 串口服务器与电气火灾悉陵蠢报警器的RS232/485串口进行联网通讯,将报警信息快速传输至云平台,提醒工作人员排除火情。

智慧厂矿照睁陪明: 传统的厂矿照明设施多是“人管灯”,无法做到与生产、监控联动,造成能源浪费。串口服务器与串口照明设备联网通信,方便照明控制,还能实现设备故障主动上报等功能。

自来水厂供水监控: 目前,自来水厂的供水系统仍是基于串口的组网通讯,只适合单机操作且传输距离有限,系统维护困难。串口服务器可提供通过TCP Server模式实时监控水厂设备工作详情。

⑦ http中上传文件的原理

http中上传文件的原理如下:
在最初的http协议中,没有上传文件方面的功能。 rfc1867 ( http://www.ietf.org/rfc/rfc1867.txt ) 为 http 协议添加了这个功能。客户端的浏览器,如 Microsoft IE, Mozila, Opera 等,按照此规范将用户指定的文件发送到服务器。服务器端的网页程序,如 php, asp, jsp 等,可以按照此规范,解析出用户发送来的文件。Microsoft IE, Mozila, Opera 已经支持此协议,在网页中使用一个特殊的 form 就可以发送文件。绝大部分 http server ,包括 tomcat ,已经支持此协议,可接受发送来的文件。各种网页程序,如 php, asp, jsp 中,对于上传文件已经做了很好的封装。

超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议。所有的WWW文件都必须遵守这个标准。设计HTTP最初的目的是为了提供一种发布和接收HTML页面的方法。1960年美国人Ted Nelson构思了一种通过计算机处理文本信息的方法,并称之为超文本(hypertext),这成为了HTTP超文本传输协议标准架构的发展根基。

⑧ 文件传送协议是什么 客户端与FTP服务器交互步骤介绍【详解】

文件传送协议,文件传送协议是什么意思

FTP是一尺慎种Internet文件传输服务,它在Internet和TCP/IP网络中运作。FTP基本上是一种客户/服务器协议,在此协议中运行FTP服务器的系统接受来自运行FTP客户端的系统的命令。它的主要目的是允许文件从一个主机传送到另一个主机,而其他的应用系统像网络文件系统(Network File System,NFS)是用来存取远程文件中的数据的。FTP在各种不同的系统中运作并允许一个系统中的用户与其他类型的系统进行交互,只要其网络协议是TCP/IP,而不用在意其操作系统。

FTP客户端运行一种交互式的、命令驱动的、基于文本的接口。尽管FTP有很多严格的规定,但它确实支持许多不同的文件类型和文件组织形式。终端用户调用一个前端应用连到远程系统,在FTP命令的提示下,就可以进行不同的操作。从客户到服务器的命令和从服务器到客户的应答都是以7位ASCII码格式经由控制连接传送的,因此FTP命令是直观可读的。用于分割相继的命令或应答的是一个回车符和一个换行符。每个命令由4个大写的ASCB字符构成,有些命令带有可选的参数。

下面描述了客户端与FTP服务器进行交互的基本步骤:

1.启动FTP命令接口。

2.键入?以获取命令帮助。

3.使用命令open以指定要访问的FTP服务器的IP地址或域名。

4.登录(在公共站点,键入anonymous作为登录名称)。

5.使用dir或Is命令以列出FTP服务器中的文件。

6.使用cd命令切换目录。

7.使用get命令下载文件或put命令上载文件。

8.键入close以关闭当前会话(键入open可访问其他的服务器)。

9.键入quit 以结束程序。

在大多数情况下,这些步骤代表您同FTP服务器进行交互时将要做的大部分事情。就像刚才提到的那样,您可以键入?以查看命令的完整列表,您会发现很多命令。许多FTP作站点使用最小限度的文件访问安全性,因为他们是向公众提供文件。这些站点被称为匿名FTP站点。如第4步中所述,您可以简单地键入anonymous作为您的登录名称,然后键入电子邮件地址(或其他任何东西)作为您的密码。

FTP可以在许多不同的文件系统间工作,所以用户必须清楚FTP服务器上的文件类型可能与他们的系统不兼容。通常所有的人都能够查看文本(txt)文件,而且新的通用文件类型如Adobe的PDF(页面描述语言)也使得这个问题不再是一个很大的问题。还有一件事是:在下载图形文件或可执行文件之前要键入binary;在下载文本文件之前要键入ascii。

实际上,FTP客户端也处理很多命令。它首先翻译用户命令,然后使用FTP协议向FTP服务器发送请求。

命令和数据是通过两个不同的连接发送的。当您启动FTP并连接到FTP服务器时,某个连接针对此服务器打开,并在您键入 close命令之前它将一直保持打开状态(持续的)。当您请求文件传输时,文件的数据让纤在其他连接中被传输,在文件传输完成时,此连接将挂断。因此,如果要传输多个文件,典型的FTP会话可能同时有若干个公开的连接。对单个控制和数据使用这种方案意味着在传输数据时可使用控制连接。

多年来,多个RFC中都有对FTP的定义。原始的规范要追溯到1971年。有关FTP的最新的文档是RFC959,〞File Transfer Protocol″(October 1985)。一个非常有用的文坦困仿档是RFC1635,〞How to Use Anonymous FTP″(Mayl994)。还有一些相关的RFC,包括RFC783,″The TFTP Protocol″(June 1981)。它描述了“一般文件传输协议”,该协议是FTP的精简版,在UDP而不是在TCP中运行。

IETF工作组,也称为“FTP的扩展(ftpext)”,发展了FTP。

热点内容
绝对赛车3安卓在哪里下载 发布:2025-02-01 12:42:30 浏览:715
mysql修改数据库字符 发布:2025-02-01 12:37:52 浏览:567
阿里云服务器出厂密码是多少 发布:2025-02-01 12:35:43 浏览:665
手机传文件服务器和ip地址 发布:2025-02-01 12:15:01 浏览:657
儿子编程课 发布:2025-02-01 12:15:00 浏览:901
zsh脚本 发布:2025-02-01 12:13:48 浏览:595
android亮度获取 发布:2025-02-01 12:09:10 浏览:624
小孩什么时候学编程比较好 发布:2025-02-01 12:03:10 浏览:960
c语言的认识 发布:2025-02-01 11:58:03 浏览:521
svn连接服务器地址 发布:2025-02-01 11:51:31 浏览:416