博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
HTTP和FTP的区别
阅读量:4963 次
发布时间:2019-06-12

本文共 1534 字,大约阅读时间需要 5 分钟。

 

参考网站:http://blog.csdn.net/xiaoxiangzhu660810/article/details/8291656

一、字面上来看

HTTP是Hyper Text Transfer Protocol,超文本传输协议;

FTP是File Transfer Protocol,文件传输协议;

简单说HTTP是面向网页的,而FTP是面向文件的。

二、复杂点儿

1.FTP

(1)FTP比HTTP复杂

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

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

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

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

从上面可以看出,两种方式的命令链路连接方法是一样的,而数据链路的建立方法就完全不同。而FTP的复杂性就在于此。

2.HTTP

当我们想浏览一个网站的时候,只要在浏览器的地址栏里输入网站的地址就可以了,例如http://www.microsoft.com,但是在浏览...w.microsoft.com ,你知道为什么会多出一个“http”吗?

(1)HTTP协议是什么

我们在浏览器的地址栏里输入的网站地址叫做URL (Uniform Resource Locator,统一资源定位符)。就像每家每户都有一个门牌地址一样,每个网页也都有一个Internet地址。当你在浏览器的地址框中输入一个URL或是单击一个超级链接时,URL就确定了要浏览的地址。浏览器通过超文本传输协议(HTTP),将Web服务器上站点的网页代码提取出来,并翻译成漂亮的网页。因此,在我们认识HTTP之前,有必要先弄清楚URL的组成,例如:http://www.microsoft.com/china/index.htm。它的含义如下:

1. http://:代表超文本传输协议,通知microsoft.com服务器显示Web页,通常不用输入;
2. www:代表一个Web(万维网)服务器;
3. Microsoft.com/:这是装有网页的服务器的域名,或站点服务器的名称;
4. China/:为该服务器上的子目录,就好像我们的文件夹;
5. Index.htm:index.htm是文件夹中的一个HTML文件(网页)。

 

我们知道,Internet的基本协议是TCP/IP协议,然而在TCP/IP模型最上层的是应用层(Application layer),它包含所有高层的协议。高层协议有:文件传输协议FTP、电子邮件传输协议SMTP、域名系统服务DNS、网络新闻传输协议NNTP和HTTP协议等。

转载于:https://www.cnblogs.com/lizhenlin/p/4909372.html

你可能感兴趣的文章
Android 开发手记一NDK编程实例
查看>>
AJAX实现跨域的三种方法
查看>>
Spring 整合 Redis
查看>>
[USACO07MAR]黄金阵容均衡Gold Balanced L…(洛谷 1360)
查看>>
理解 Azure 平台中虚拟机的计算能力
查看>>
预处理、const、static与sizeof-sizeof与strlen有哪些区别
查看>>
LeetCode 40
查看>>
【leetcode】92. Reverse Linked List II
查看>>
PyQt5-信号与槽
查看>>
android 获取控件大小和设置调整控件的位置XY
查看>>
tomcat7.0在centos7下中文乱码问题解决汇总
查看>>
linux 驱动学习 GPIO驱动相关函数详解
查看>>
设置dos窗口的背景色与前景色
查看>>
Go视频教程整理
查看>>
什么是BFC
查看>>
VSS迁移备忘
查看>>
大数据测试笔记
查看>>
转载:Pixhawk源码笔记十一:增加新的MAVLink消息
查看>>
swift学习第七天:字典
查看>>
requirejs打包项目
查看>>