Http、Https、Socket、TCP、UDP整理归纳
网络传输七层模型(从上到下):应用、表示、会话、传输、网络、数据、物理
HTTP
Http协议建立在应用层,基于传输层的TCP协议,客户端想要向服务器发起请求的时候会通过TCP建立连接,每次请求结束后,控制TCP断开连接;
1.支持客户/服务器模式。
2.简单快速:客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、HEAD、POST。每种方法规定了客户与服务器联系的类型不同。由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快。
3.灵活:HTTP允许传输任意类型的数据对象。正在传输的类型由Content-Type加以标记。
4.无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。
5.无状态:HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。
HTTPS
1.https协议需要申请ca证书,收费;
2.https是使用ssl协议加密的,更加安全;
3.https使用的端口是443,http使用的是80端口;
Socket
包含了:连接使用的协议,本地主机的IP地址,本地进程的协议端口,远地主机的IP地址,远地进程的协议端口。
socket是支持TCP协议通信的基本单元,实质上是对TCP/IP协议的封装,负责监听、请求、接收;
TCP
通过三次握手四次挥手保证数据能够正确传输;
UDP
不需要建立连接,只管发送信息,不保证数据能否被正确接收,所以它的开销更小,效率更高;