TCP HTTP UDP三者的关系如下:
TCP / IP是个协议组,可分为四个层次:网络接口层,网络层,传输层,应用层
在网络层有IP协议,ICMP协议,ARP协议,RARP协议和BOOTP协议。
在传输层中有TCP协议与UDP协议。
在应用层有HTTP,FTP,TELNET,SMTP,DNS等协议。
HTTP全称是Hyper Text Transfer Protocal(超文本传输协议),Http连接最显着的特点是客户端发送的每次请求都需要服务器回送响应,在请求结束后,会主动释放连接。从建立连接到关闭连接的过程为“一次连接”。
HTTPS全称是Secure Hyper Text Transfer Protocol(安全超文本传输协议),它是一个安全通信通道.HTTPB是HTTP over SSL / TLS:HTTP是应用层协议,TCP是传输层协议,在应用层和传输层之之SSL,TLS(传输层安全,传输层安全协议) SSL使用40位关键字作为RC4流加密算法
HTTPS的作用
- 内容加密建立一个信息安全通道,来保证数据传输的安全;
- 身份认证,确认网站的真实性
- 数据完整性防止内容被第三方冒充或者篡改
HTTPS和的Http的区别
- HTTPS协议需要到CA申请证书
- HTTP是超文本传输协议,信息是明文传输; HTTPS则是具有安全性的SSL加密传输协议
- HTTP和HTTPS使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。
- HTTP的连接很简单,是无状态的; HTTPS协议是由SSL + HTTP协议构建的可进行加密传输,身份认证的网络协议,比HTTP协议安全。
UDP和TCP的区别
- 基于连接与无连接(是指传输数据之前)
- 对系统资源的要求(TCP较多,UDP较少)
- UDP程序结构较简单,首部开销只有8个字节,而TCP有20个字节。
-
流模式与数据报模式,UDP没有拥塞控制,UDP中当网络发生拥塞不会使源主机的速率降低,多用于实时应用中,如IP电话,实时视频会议等。
-
TCP保证数据正确性,UDP可能丢包,TCP保证数据顺序,UDP不保证。
-
每一条TCP连接只能是点到点的; UDP支持一对一,一对多,多对一和多对多的交互通信。
插座:
插座:只是一个抽象层用来表示程序已经加入到网络中。
socket只是一种连接模式,不是协议,socket是对TCP / IP协议的封装,Socket本身并不是协议,而是一个调用接口(API),通过Socket,我们才能使用TCP / IP协议.tcp,udp,简单的说(虽然不准确)是两个最基本的协议,很多其它协议都是基于这两个协议如,HTTP就是基于TCP的。用插座可以创建TCP连接,也可以创建UDP连接,这意味着,用插座可以创建任何协议的连接,因为其它协议都是基于此的。
插座传输的特点:
优点:
-
传输数据为字节级,传输数据可自定义,数据量小(对于手机应用讲:费用低)
-
传输数据时间短,性能高
-
适合于客户端和服务器端之间信息实时交互
-
可以加密,数据安全性强
缺点:
- 需对传输的数据进行解析,转化成应用级的数据
- 对开发人员的开发水平要求高
- 相对于的Http协议传输,增加了开发量
插座传输适用范围
基于Socket传输的特点:Socket传输方式适合于对传输速度,安全性,实时交互,费用等要求高的应用中,如网络游戏,手机应用,银行内部交互等