学习http与https协议的区别

学习http与https协议的区别

HTTP的概念:
http是一个简单的请求-响应协议,它通常运行在TCP之上。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。请求和响应消息的头以ASCII码形式给出;而消息内容则具有一个类似MIME的格式。这个简单模型是早期Web成功的有功之臣,因为它使得开发和部署是那么的直截了当。

在这里插入图片描述
HTTP协议是建立在请求/响应模型上的。
首先由客户建立一条与服务器的TCP链接,并发送一个请求到服务器,
请求中包含请求方法、URI、协议版本以及相关的MIME样式的消息。
服务器响应一个状态行,包含消息的协议版本、一个成功和失败码以及相关的MIME样式的消息。

HTTP/1.0为每一次HTTP的请求/响应建立一条新的TCP链接,
因此一个包含HTML内容和图片的页面将需要建立多次的短期的TCP链接。
一次TCP链接的建立将需要3次握手。

每一次链接的建立需要这种经常性的开销,而其并不带有实际有用的数据,只是保证链接的可靠性,因此HTTP/1.1提出了可持续链接的实现方法。
HTTP/1.1将只建立一次TCP的链接而重复地使用它传输一系列的请求/响应消息,因此减少了链接建立的次数和经常性的链接开销。

HTTP/2: the Future of the Internet 是 Akamai 公司建立的一个官方的演示,用以说明 HTTP/2 相比于之前的 HTTP/1.1 在性能上的大幅度提升。 同时请求 379 张图片,从Load time 的对比可以看出 HTTP/2 在速度上的优势。

在这里插入图片描述
如果想使用某种http的协议的话 需要对web服务器进行配置

http协议的版本
可以通过telnet来模拟测试

在这里插入图片描述

telnet www.baidu.com 80
GET /index.html HTTP/1.1

telnet www.baidu.com 80
GET /index.html HTTP/1.0

HTTPS与HTTP的一些区别
在这里插入图片描述
HTTPS协议需要到CA申请证书,一般免费证书很少,需要交费。
HTTP协议运行在TCP之上,所有传输的内容都是明文,HTTPS运行在SSL/TLS之上,SSL/TLS运行在TCP之上,所有传输的内容都经过加密的。
HTTP和HTTPS使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。
HTTPS可以有效的防止运营商劫持,解决了防劫持的一个大问题。

常见协议的介绍:

网络由下往上分为物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。
IP 协议对应于网络层,TCP协议对应于传输层,HTTP协议对应于应用层,三者从本质上来说没有可比性
可以说,TCP/IP协议是传输层协议,主要解决数据如何在网络中传输,而HTTP是应用层协议,主要解决如何包装数据
ip–二进制数据–ip http协议发送 报文
先来一个讲TCP、UDP和HTTP关系的
1、TCP/IP是个协议组,可分为三个层次:网络层、传输层和应用层。
在网络层有IP协议、ICMP协议、ARP协议、RARP协议和BOOTP协议。
在传输层中有TCP协议与UDP协议。
在应用层有FTP、HTTP、TELNET、SMTP、DNS等协议。
因此,HTTP本身就是一个协议,是从Web服务器传输超文本到本地浏览器的传送协议。
网卡:ip
传输数据在那一层传输的数据比较快:越往下传输数据的速度越快
聊天软件:QQ 飞秋 微信 tcp/ip MSN

socket通信—聊天软件 A—B A—C B–C 传输层数据通信 TCP/ip UDP/IP
如果聊天软件按照TCP/ip进行数据通信的话
A----->B 建立TCP连接:进行3次握手 保证连接可靠性 发送:你好
如果聊天软件按照UDP/ip进行数据通信的话
A---->B 在发送消息之前不会先进行连接的验证 直接发送消息 UDP是无连接的、不可靠的一种数据传输协议
UDP:不太安全 快
TCP:安全 慢
QQ:udp/IP 股票 速度快
在这里插入图片描述
1)IP协议,为计算机网络相互连接进行通信而设计的协议。
2)TCP/UDP协议,基于二进制流的控制间传输协议。 TCP是面向链接的,虽然说网络的不安全不稳定特性决定了多少次握手都不能保证连接的可靠性,但TCP的三次握手在最低限度上(实际上也很大程度上保证了)保证了连接的可靠性;而UDP不是面向连接的,UDP传送数据前并不与对方建立连接,对接收到的数据也不发送确认信号,发送端不知道数据是否会正确接收,当然也不用重发,所以说UDP是无连接的、不可靠的一种数据传输协议。
3) HTTP协议,超文本传送协议(Hypertext Transfer Protocol ),HTTP协议是建立在TCP协议之上的一种应用。 Head/body
总结:
TCP和UDP:传输层协议;
HTTP:应用层协议;
TCP和UDP使用IP协议从一个网络传送数据包到另一个网络。把IP想像成一种高速公路,它允许其它协议在上面行驶并找到到其它电脑的出口。
TCP和UDP是高速公路上的“卡车”,它们携带的货物就是像HTTP,文件传输协议FTP这样的协议等。
TCP和UDP是FTP、HTTP和SMTP之类使用的传输层协议。
虽然TCP和UDP都是用来传输其他协议的,它们却有一个显著的不同:TCP提供有保证的数据传输,而UDP不提供。
这意味着TCP有一个特殊的机制来确保数据安全的不出错的从一个端点传到另一个端点,而UDP不提供任何这样的保证。

HTTP/HTTPS协议分析工具(Http Analyzer)7.5.3.455 汉化特别版 HTTP Analyzer 分两部份,可以集成在IE浏览器中抓包,也可以单独的安装应用程序的包,非常实用。 压缩包内有注册机,大家根据需要选择相应的产品获取注册码。 这是一款实时分析 HTTP/HTTPS 数据流的工具。它可以实时捕捉HTTP/HTTPS 协议数据,可以显示许多信息(包括:文件头、内容、Cookie、查询字符窜、提交的数据、重定向的url地址),可以提供缓冲区信息、清理对话内容、HTTP状态信息和其他过滤选项。同时还是一个非常有用的分析、调试和诊断的开发工具。 Http Analyzer是一个HTTP/HTTPS协议分析工具,用此工具可以非常快速的分析出绝大多数视频博客的视频地址。尽管有一些网站提供了诸如 YouTube ,Google Video 等视频网站的php解码程序,不过那些php程序并不是通用的。当博客视频网站对视频地址加密算法做些变动时,php程序又需要大规模改动才能对应解码。 使用类似Http Analyzer协议分析工具就不同了,所有的博客视频都是http方式提供的,最终的http路径是肯定要明文出现的,所以获取此路径是可能的。 HTTP/HTTPS协议分析工具(Http Analyzer)使用方法 第一步:设置好Http Analyzer的过滤器选项大部分的视频博客的Type都是 video/flv ,video/x-flv ,application/octet-stream 极少部分采用application/x-shockwave-flash 或干脆不表明类型。http的返回结果肯定是2XX,所以在Result 要设置成<300。返回的Size最好采用倒序排列,视频博客的大小一般比较大,倒序容易发现。 第二步:运行Http Analyzer:(点击工具栏第一个绿色箭头图标)打开YouTube 或6rooms视频博客网站。回到Http Analyzer窗口,看你需要的视频地址是不是老老实实的呆在里面呢?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

聚焦IT

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值