zoukankan      html  css  js  c++  java
  • TCP、HTTP、Socket

     Tcp连接:
    手机能够使用联网功能是因为手机底层实现了TCP/IP协议,可以使手机通过无线网络建立TCP连接。
    建立一个TCP连接需要经过“三次握手”,具体如下:
    第一次握手:客户端发送请求包到服务器,等待服务器确认
    第二次握手:服务器响应客户端请求,同时也发送一个回应包给客户端
    第三次握手:客户端收到服务器的回应包后,向服务器发送确认包

    握手过程中传送的包里,不包含数据,三次握手完毕后,客户端与服务端才正式的开始传递数据。
    TCP一旦连接起来,在客户端和服务端任何一方主动关闭连接之前,TCP连接都将被一直保持下去。
    断开连接时,服务器和客户端都可以主动发起断开TCP连接的请求,断开过程需要经过“四次握手”

    Http连接:
    Http协议是建立在TCP协议之上的一种应用。

    它与TCP连接不同之处在于,客户端每次请求都需要服务器返回响应,在请求结束后,会主动释放连接。

    由于HTTP每次请求都会释放连接,因为HTTP连接是一种“短连接”,所以要保持客户端在线状态,就必须不停地向服务器发起连接请求。

    所以在开发过程中,即使不需要获得任何数据,客户端也要保持每隔一段时间向服务器发送一次请求,以保证通信的正常。


    Socket连接:
    Socket是通信的基石,是支持TCP/IP协议的网络通信的基本操作单元。
    建立Socket连接需要一对套接字,其中一个运行客户端,另一个运行服务器端,套接字之间的连接过程分为
    三个步骤:服务器监听,客户端请求,连接确认

     


    TCP/IP是什么?

       TCP/IP是个协议组,可分为三个层次:网络层、传输层和应用层。
       在网络层有IP协议、ICMP协议、ARP协议、RARP协议和BOOTP协议。
       在传输层中有TCP协议与UDP协议。
       在应用层有FTP、HTTP、TELNET、SMTP、DNS等协议。

     

    Socket是什么呢?

        Socket是应用层与TCP/IP协议族通信的中间软件抽象层,一组接口,把复杂的TCP/IP协议族隐藏在Socket接口后面。

       所以HTTP就是TCP/IP应用层的协议。Socket是他们的软件抽象层。

    短连接:
       连接->传输数据->关闭连接
       HTTP是无状态的,浏览器和服务器每进行一次HTTP操作,就建立一次连接,但任务结束就中断连接。
       也可以这样说:短连接是指SOCKET连接后发送后接收完数据后马上断开连接。
    长连接:
        连接->传输数据->保持连接 -> 传输数据-> 。。。 ->关闭连接。
       长连接指建立SOCKET连接后不管是否使用都保持连接,但安全性较差。
    http的长连接:
       HTTP也可以建立长连接的,使用Connection:keep-alive,HTTP 1.1默认进行持久连接。HTTP1.1和HTTP1.0相比较而言,最大的区别就是增加了持久连接支持(貌
    似最新的 http1.0 可以显示的指定 keep-alive),但还是无状态的,或者说是不可以信任的。


    ————————————————
    版权声明:本文为CSDN博主「渣皮人」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/xuyide54321/article/details/7075222

    https://blog.csdn.net/yangzl2008/article/details/7366428

  • 相关阅读:
    使用selenium操作ant design前端的页面,感觉页面没加载完
    centos7上PhantomJS 过期之后改用Chrome时填的坑
    《追风行动》有点儿意思
    《听读书怪才解读24部名人传记》笔记
    mysql 8.0 密码加密方式的坑
    huginn website agent对提取结果排序
    Server酱微信推送中的问题
    Huginn定时时间不准确或延后问题
    一本通1219 马走日
    矩阵快速幂
  • 原文地址:https://www.cnblogs.com/xtxt1127/p/12341530.html
Copyright © 2011-2022 走看看