目录

1. HTTP 协议

HTTP 特点

HTTP 与HTTPS 的区别

HTTP 请求报文

HTTP 响应报文

2. FTP 协议 与TFTP 协议

FTP 协议

TFTP 协议

3. SMTP 协议、POP3协议与IMAP协议

SMTP协议

POP3协议

IMAP 协议


1. HTTP 协议

HTTP(HyperText Transfer Protocol)  超文本传输协议

HTTP 特点

1.  HTTP 由 两个程序实现:客户程序和服务器程序。客户程序和服务器程序运行在不同的端系统中(Web浏览器实现了 HTTP 的客户端,Web服务器实现了 HTTP 的服务器端),通过交换HTTP报文进行会话。HTTP定义了这些报文的结构以及客户与服务器进行报文交换的方式。

2. HTTP 使用TCP作为它的支撑运输协议,TCP能为HTTP提供可靠数据传输服务。

3. 由于 HTTP 服务器向客户发送被请求的文件时 不存储关于该客户的状态信息,所以HTTP 是无状态协议。 

HTTP 与HTTPS 的区别

(1) HTTP 是超文本传输协议,信息是明文传输;HTTPS则是具有安全性的SSL加密传输协议。

(2) 使用 HTTPS 协议需要到 CA(Certificate Authority,数字证书认证机构) 申请证书,一般免费证书较少,因而需要一定费用。

(3) HTTP 连接比较简单,是无状态的;HTTPS 协议是由SSL+HTTP 协议构建的可进行加密传输、身份验证的网络。

(4) HTTP 的端口是80;HTTPS 的端口是443。

HTTP 请求报文

http请求报文的结构如下:

请求行包含方法、请求资源的URL 和 HTTP版本。其中方法 有以下几种:

HTTP的URL格式:

HTTP请求报文举例:

HTTP 响应报文

http 响应报文的结构如下:

状态行包含版本、状态码和相应状态信息。五大类状态码如下:

一些常见的状态码和相应状态信息包括:

200  OK : 请求成功,信息在返回的响应报文里。

301 Moved Permanently:请求的对象已经被永久转移了。

400 Bad Request:错误请求。

404 Not Found:被请求的文档不在服务器上。

505 HTTP Version Not Supported:服务器不支持请求报文使用的HTTP协议版本。

2. FTP 协议 与TFTP 协议

FTP 协议

FTP (File Transfer Protocol)  文件传送协议

FTP 提供交互式的访问,允许客户指定文件的类型和格式,并允许文件具有存取权限。

FTP基于TCP,采用C/S架构,在进行文件传输时,FTP 的客户和服务器之间要建立两个并行的 TCP 连接,控制连接端口号21,数据连接端口号20

控制连接:服务器打开端口号 21 等待客户端的连接,客户端主动建立连接后,使用这个连接将客户端的命令传送给服务器,并传回服务器的应答。控制连接在整个会话中一直打开(带外传输)。

数据连接 :用来传送文件数据,有主动模式和被动模式。

主动模式(PORT方式)

主动模式的核心是FTP客户端告诉服务端自己开发哪个端口作为数据端口,然后让服务端来连接自己。主动模式的连接建立一般是通过几个步骤:

1.客户端随机打开一个本地大于1024的端口P1

2.客户端通过端口P1向服务器控制端口(端口21)发起连接请求

3.服务器进行认证成功,请求建立

4.客户端对本地端口P2进行监听并向服务器发送“Port P1+1”,告诉服务器客户端的数据监听端口。

5.服务器收到端口后,从自己的数据端口(端口20)发起连接,连接到客户端指定的数据端口P1+1.

被动模式(PASV方式)

由于主动方式中,服务端需要主动连客户端,对于客户端的防火墙来说,属于外部连接内部,会出现被阻塞的情况。 被动方式解决了这个问题。被动方式的步骤如下:

1.客户端任意打开约1024的两个本地端口(P1和P1+1)

2.P1端口发送请求连接服务器的21端口(控制连接端口)同时提交PASV命令。

3.服务器收到请求后,会开启任意一个大约1024的端口P2,然后返回如下格式内容:

227 entering passive mode(h1,h2,h3,h4,p1,p2)

4.客户端收到服务端返回的内容后,计算出服务端开放的数据连接端口

5.客户端通过P1+1端口向服务端的发送连接请求。进行数据传输。

TFTP 协议

TFTP (Trivial File Transfer Protocol)简单文件传送协议
TFTP 是一个很小且易于实现的文件传送协议,它使用客户服务器方式,使用UDP数据报。

TFTP的优点:

1. 可用于UDP环境

2. TFTP 代码所占的内存比较小。

3. SMTP 协议、POP3协议与IMAP协议

SMTP协议

SMTP (Simple Mail Transfer Protocol) 简单邮件传送协议

SMTP使用客户服务器方式,端口号25

一个电子邮件系统主要由三个组件构成:用户代理、邮件服务器、邮件发送协议(SMTP)和邮件读取协议(POP3)。其中POP3 (Post Office Protocol)是邮局协议的版本3。用户代理是用户与电子邮件系统的接口,在大多数情况下,它是运行在用户电脑的一个程序,因此也被成为 电子邮件客户端软件。

SMTP是因特网电子邮件的核心。SMTP用于从发送方的邮件服务器到接收方的邮件服务器。值得一提的是,SMTP一般不使用中间邮件服务器发送邮件,即使这两个邮件服务器位于地球的两端也是这样。

电子邮件地址格式:

POP3协议

 POP3 (Post Office Protocol)  邮局协议第3个版本   端口号110

POP3 使用的客户服务器的方式。它的特点是只要用户从POP3服务器读取了邮件,POP3服务器就把该邮件删除。

IMAP 协议

IMAP(Internet  Message Access) 网际报文存取协议  端口号143

IMAP 按客户服务器的方式工作。

IMAP 比POP3复杂的多,它的优点是:用户可以在不同的地方使用不同的计算机随时上网阅读和处理自己在邮件服务器的邮件。缺点是:如果用户没有将邮件复制到自己的计算机上,则邮件一直存放在IMAP服务器上。要想查阅自己的邮件,必须先上网。

注: POP3 和IMAP 都是用户代理从接收方邮件服务器上读取邮件的协议。

计算机网络基础知识--应用层协议HTTP、FTP、SMTP相关推荐

  1. 计算机网络基础知识 - 应用层

                                                  第六章 应用层 1. 对等模式与C/S模式的区别 客户机/服务器网模式(C/S模式):在客户机/服务器网络中 ...

  2. TCP对应的应用层协议之FTP /SMTP / HTTP

    文章目录 一.TCP对应的应用层协议 二.FTP协议 1.主动模式和被动模式 2.查看ftp服务器上的文件 3.下载文件 4.上传文件 5. 其他FTP命令 三.SMTP协议(邮件传送协议) 四.万维 ...

  3. 计算机网络基础知识--TCP/IP协议、IP分组、TCP传输

    转 计算机网络基础知识--TCP/IP协议.IP分组.TCP传输 2017年12月08日 08:35:09 孔维昊 阅读数 1820 查看全文 http://www.taodudu.cc/news/s ...

  4. 最容易理解的计算机网络 基础知识概论(下)

    文章目录 1.计算机网络的分类 1.1按照传输介质分类 1.2按照网络的使用者进行分类 1.3按照网络的规模和作用范围进行分类. 2.计算机网络的性能指标 2.1 带宽 2.2 时延 2.2.1网络时 ...

  5. 计算机网络基础知识 帮助学习网络管理的初学者快速了解网络管理的初步结构知识...

    网络分层: OSI七层协议:物理层.数据链路层.网络层.运输层.会话层.表示层.应用层 五层协议:物理层.数据链路层.网络层.运输层.应用层 HTTP四层协议:网络接口层.网际层.运输层.应用层 层 ...

  6. 网络通信学习笔记之——计算机网络基础知识

    一.计算机网络基础知识 1.什么是计算机网络 ​ 把分布在不同地理位置的计算机与专门的网络设备用通信线路互相连成一个规模大.功能强的系统, 从而使众多计算机可以方便地互相传递信息.共享软件.硬件.数据 ...

  7. 计算机网络基础知识及面试总结-这应该是最全的了

    文章目录 计算机网络基础知识及面试总结 1 基本概念 1.1 TCP/IP协议栈,OSI参考模型 1.2 简要的介绍各层的作用 1.3 常见的协议 2 应用层 2.1 HTTP请求有哪些常见状态码? ...

  8. 超详细的计算机网络基础知识总结 第一章:概述

    本文基于:王道计算机考研-计算机网络 顺便提一嘴,王道计算机网络的小姐姐声音真滴好听 相关文章 超详细的计算机网络基础知识 第二章-物理层 超详细的计算机网络基础知识 第三章:数据链路层 超详细的计算 ...

  9. 【软件评测】06计算机网络基础知识

    计算机网络基础知识 OSI/RM七层模型 七层模型 TCP/IP四层协议 冲突域和广播域的区别 常见的协议 协议族 常见协议及对应端口 常用的端口号 域名空间 万维网 Windows网络相关命令 IP ...

最新文章

  1. word2vec实例详解python_Python实现word2Vec model过程解析
  2. wxWidgets:使用自定义对话框
  3. maven下载源码linux,Maven 下载 源码和javadoc 命令
  4. 利用Arena Allocation避免HBase触发Full GC
  5. Platform(平台)
  6. EOJ-1708//POJ3334
  7. [matlab数字图像处理3]打开一副低对比度图像,拉伸其图像对比度
  8. 《大明王朝》倒严的号角
  9. [生活日记]参与unity非游戏行业开发者大会小结
  10. 2019年QQ透明头像与QQ动态头像设置方法
  11. php mysql字符串截取比较读取_MySQL字符串截取 和 截取字符进行查询
  12. Windows小技巧 -- 命令行窗口打开指定目录的资源管理器
  13. 手机网络邻居访问电脑_通过WiFi局域网在手机上观看电脑上的视频
  14. 自考《操作系统概论》
  15. mysql篇:如何进入mysql
  16. 项目管理笑话集之关羽斩颜良
  17. 华为称鸿蒙系统支持第三方手机,“开源开放毫无保留”,欢迎厂商使用
  18. 51nod3174 堆积木
  19. 关于大数据、AI,TalkingData有话要说
  20. Spring Boot MyBatis Postgres 实现对数据表增删改查操作(采用注解方式)

热门文章

  1. 特别策划|5G最新进展深度解析2022版—全球市场篇(32页附下载)
  2. AWS云计算技术架构探索系列之二-身份账户体系(IAM)
  3. 1000美元实现自动驾驶,他是侠客还是极客?
  4. cad二次开发设置单行/多行文本的 TextStyleId属性不生效解决方法
  5. 《STM32从零开始学习历程》——CAN通讯代码详解
  6. ubuntu 安装 eclipse 及其CDT
  7. java计算机毕业设计中小学生错题管理系统源码+数据库+系统+部署+lw文档
  8. NM网络管理dbc中信号属性
  9. 戴尔(DELL)笔记本的型号解析
  10. 闪烁的星星(Nehe)