美文网首页
HTTP、TCP、UDP,Socket,HTTPS讲解

HTTP、TCP、UDP,Socket,HTTPS讲解

作者: Gallrax | 来源:发表于2018-06-21 21:06 被阅读0次

    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
    释放连接四次握手:
    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系统,互联网服务等。

    相关文章

      网友评论

          本文标题:HTTP、TCP、UDP,Socket,HTTPS讲解

          本文链接:https://www.haomeiwen.com/subject/irncyftx.html