目录
什么是TCP 什么是UDP 两者的区别... 1
描述tcp的三次握手四次挥手... 1
简书HTTP和HTTPS协议的不同之处... 1
http有八种请求 简书 get和post请求的区别... 2
TCP 传输控制协议
是一种面向连接的,可靠的,基于字节流的传输层通信协议
必须先建立连接 传输速度慢
点到点的连接
对系统资源要求较多
是流模式
UDP 用户数据包协议
是一种面向无连接的,不可靠的信息传送服务
无连接 传输速度快
具有较好的实时性,工作效率比TCP高,适用于对高速传输和实时性比较高的通信或广播通信
一对一,一对多,多对多的交互通信
对系统资源要求较少 程序结构简单
是数据报模式
第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认;
SYN:同步序列编号(Synchronize Sequence Numbers)
第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态;
第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手.
(1)第一次挥手:Client发送一个FIN,用来关闭Client到Server的数据传送,Client进入FIN_WAIT_1状态。
(2)第二次挥手:Server收到FIN后,发送一个ACK给Client,确认序号为收到序号+1(与SYN相同,一个FIN占用一个序号),Server进入CLOSE_WAIT状态。
(3)第三次挥手:Server发送一个FIN,用来关闭Server到Client的数据传送,Server进入LAST_ACK状态。
(4)第四次挥手:Client收到FIN后,Client进入TIME_WAIT状态,接着发送一个ACK给Server,确认序号为收到序号+1,Server进入CLOSED状态,完成四次挥手。
1、https协议需要到ca申请证书,一般免费证书较少,因而需要一定费用。
2、http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。
3、http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。
4、http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。
根据HTTP标准,HTTP请求可以使用多种请求方法。
HTTP1.0定义了三种请求方法: GET, POST 和 HEAD方法。
HTTP1.1新增了五种请求方法:OPTIONS, PUT, DELETE, TRACE 和 CONNECT 方法。
GET |
POST |
HEAD |
OPTIONS |
PUT |
DELETE |
TRACE |
CONNECT |
Get和post的区别
GET 提交的数据会放在 URL 之后,以?分割 URL 和传输数据,参数之间以&相连,如 http://www.baidu.com/test?name=test&id=123456。
POST 方法是把提交的数据放在 HTTP 包的 Body 中。
GET 提交的数据大小有限制(因为浏览器对 URL 的长度有限制),这点要根据实际情况而论,目前浏览器种类比较多,不同的浏览器大小限制不同。
而 POST 方法提交的数据理论上没有限制,但是不建议太大。
GET 方式提交数据,会带来安全问题,因为参数是裸露在地址栏上,所以较不安全。
POST 方式参数在 body 中,所以安全性较高(注意:只是较高,不是很安全,在 http 协议下,不管哪种提交方式,都是明码提交,只要有抓包工具,都能抓取数据的!!!)
GET 请求因为参数在地址栏上,因此可以收藏(因为参数也会保存啊)。 而 POST 请求不行,不能被浏览器收藏,因为参数无法被浏览器保存。