TCP HTTP UDP三者的关系
TCP/IP是个协议组,可分为四个层次:网络接口层、网络层、传输层和应用层。
在网络层有IP协议、ICMP协议、ARP协议、RARP协议和BOOTP协议。
在传输层中有TCP协议与UDP协议。
在应用层有HTTP,FTP、TELNET、SMTP、DNS等协议。
HTTP
HTTP全称是HyperText Transfer Protocal,即:超文本传输协议,HTTP连接最显著的特点是客户端发送的每次请求都需要服务器回送响应,在请求结束后,会主动释放连接。从建立连接到关闭连接的过程称为“一次连接”。
HTTPS
HTTPS通信原理
HTTPS(Secure Hypertext Transfer Protocol)安全超文本传输协议 它是一个安全通信通道
HTTPS是HTTP over SSL/TLS,HTTP是应用层协议,TCP是传输层协议,在应用层和传输层之间,增加了一个安全套接层SSL/TLS:
SSL (Secure Socket Layer,安全套接字层)
TLS (Transport Layer Security,传输层安全协议)
SSL使用40 位关键字作为RC4流加密算法
Https的作用
内容加密 建立一个信息安全通道,来保证数据传输的安全;
身份认证 确认网站的真实性
数据完整性 防止内容被第三方冒充或者篡改
Https和Http的区别
https协议需要到CA申请证书。
http是超文本传输协议,信息是明文传输;https 则是具有安全性的ssl加密传输协议。
http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。
http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。
http默认使用80端口,https默认使用443端口
TCP:传送控制协议(Transmission Control Protocol)
建立连接三次握手:
释放连接四次握手:
image.png
ps:有关TCP详情:https://blog.csdn.net/qzcsu/article/details/72861891
UDP:用户数据报协议 (UDP:User Datagram Protocol)
一种无连接的协议,提供面向事务的简单不可靠信息传送服务。
TCP和UDP区别
1.基于连接与无连接
2.TCP要求系统资源较多,UDP较少;
3.UDP程序结构较简单
4.流模式(TCP)与数据报模式(UDP);
5.TCP保证数据正确性,UDP可能丢包
6.TCP保证数据顺序,UDP不保证
Socket:
这是为了实现以上的通信过程而建立成来的通信管道,其真实的代表是客户端和服务器端的一个通信进程,双方进程通过socket进行通信,而通信的规则采用指定的协议。
socket只是一种连接模式,不是协议,socket是对TCP/IP协议的封装,Socket本身并不是协议,而是一个调用接口(API),
通过Socket,我们才能使用TCP/IP协议。
tcp、udp,简单的说(虽然不准确)是两个最基本的协议,
很多其它协议都是基于这两个协议如,http就是基于tcp的,.用socket可以创建tcp连接,也可以创建udp连接,
这意味着,用socket可以创建任何协议的连接,因为其它协议都是基于此的。
image.png
Socket传输特点:
优点:
1.传输数据为字节级,传输数据可自定义,数据量小(对于手机应用讲:费用低)
2.传输数据时间短,性能高
3.适合于客户端和服务器端之间信息实时交互
4.可以加密,数据安全性强
缺点:
1.需对传输的数据进行解析,转化成应用级的数据
2.对开发人员的开发水平要求高
3.相对于Http协议传输,增加了开发量
http协议的传输特点
优点:
1.基于应用级的接口使用方便
2.程序员开发水平要求不高,容错性强
缺点:
1.传输速度慢,数据包大(Http协议中包含辅助应用信息)
2.如实时交互,服务器性能压力大。
3.数据传输安全性差
适用范围
Socket 传输方式适合于对传输速度,安全性,实时交互,费用等要求高的应用中,如网络游戏,手机应用,银行内部交互等。
基于http协议传输方式适合于对传输速度,安全性 要求不是很高,且需要快速开发的应用。如公司OA系统,互联网服务等。
网友评论