• 未
    2019-08-08
    HTTP协议和TCP协议都是TCP/IP协议簇的子集。

    HTTP协议属于应用层,TCP协议属于传输层,HTTP协议位于TCP协议的上层。

    请求方要发送的数据包,在应用层加上HTTP头以后会交给传输层的TCP协议处理,应答方接收到的数据包,在传输层拆掉TCP头以后交给应用层的HTTP协议处理。建立 TCP 连接后会顺序收发数据,请求方和应答方都必须依据 HTTP 规范构建和解析HTTP报文。
    展开

    作者回复: 赞

     2
     68
  • sheldon
    2019-08-09
    现在的浏览器可以同时打开多个页签,他们端口一样吗?如果一样,数据怎么知道去哪个页签?

    作者回复: 端口一样的,网络进程知道每个tcp链接所对应的标签是那个,所以接收到数据后,会把数据分发给对应的渲染进程

     3
     26
  • 美美
    2019-08-08
    tcp传送数据时 浏览器端就做渲染处理了么?如果前面数据包丢了 后面数据包先来是要等么?类似的那种实时渲染怎么处理?针对数据包的顺序性?

    作者回复: 接收到http响应头中的content-type类型时就开始准备渲染进程了,

    响应体数据一旦接受到便开始做DOM解析了!

    基于http不用担心数据包丢失的问题,因为丢包和重传都是在tcp层解决的。http能保证数据按照顺序接收的!

     2
     15
  • 高斯定律
    2019-08-08
    这个tcp讲的非常清晰 一次就听明白了、tcp是个梯子,http就是利用梯子来搬运货物

    作者回复: 有点形象

     1
     15
  • Cris
    2019-08-09
    http 和 websocket都是属于应用层的协议吗?

    作者回复: 是的,他们都是应用层协议,而且websocket名字取的比较有迷惑性,其实和socket完全不一样,你可以把websocket看出是http的改造版本,增加了服务器向客户端主动发送消息的能力。

    
     12
  • 黄紫茜
    2019-08-22
    我想问下,输入url回车后理论上是不是生成http请求报文,然后传给TCP,加上TCP首部,然后进行三次握手,将http请求报文数据传递,四次挥手,请求报文到达服务端,然后服务端在返回响应报文,返回到过程也是要三次握手,传递数据,四次挥手?因为网上看到不少文章都说先三次握手,然后发起http请求。

    作者回复:

    先通过三次握手建立tcp链接,链接建立好之后,发送http请求行和http请求头给服务器,然后服务器返回响应行,响应头和响应体,最终完成后通过四次挥手断开tcp链接!

    
     8
  • レイン小雨
    2019-08-11
    想问一下老师,关于 "数据在传输的过程中有可能会丢失或者出错",丢失的数据包去哪里了?凭空消失了吗?出错的数据包又变成啥了? 为什么会出错?

    作者回复: 比如网络波动,物理线路故障,设备故障,恶意程序拦截,网络阻塞等等

     5
     4
  • 小洋洋
    2019-08-10
    1、IP 负责把数据包送达目的主机。
    2、UDP 负责把数据包送达具体应用。
    3、而 TCP 保证了数据完整地传输,它的连接可分为三个阶段:建立连接、传输数据和断开连接。

    老师,这里面第二条,UDP和TCP都是把数据包送达具体应用应用的吧?

    作者回复: 对的,只不过udp有可能会丢包,而tcp采用了很多复杂的机制,保证了数据的完整性

    
     4
  • hogg
    2019-08-08
    我记得在网络工程里有一句话,下层为上层提供服务,TCP为HTTP提供差错校验,超时重传的机制吧.

    作者回复: 下层为上层提供服务,这句很到位

     1
     4
  • 阿桐
    2019-08-22
    文章前面从网络层引到传输层,再从 udp 过渡到 tcp,语言通俗易懂,图示也很清晰,看的意犹未尽。相比之下,后面的 【一个 tcp 连接的生命周期】老师用的笔墨就少了点,其实还是蛮期待老师能对这块有更为细致的讲解。

    作者回复: 嗯,tcp细节要讲就多了,这块我只是介绍了tcp的一个大的建立连接,传输数据,断开链接的过程。 理解这个过程是理解http的基础。展开来讲的话需要一节内容了,这块极客时间上有很多老师都讲的不错。

    
     3
  • 疯狂咸鱼
    2019-08-26
    老师,那我打开谷歌浏览器里面开了10个页面,那就是至少有40个进程?windows下我控制面板里能看到40个google.exe?插件进程页面间能公用么

    作者回复: 不用这么多啊,浏览器进程 网络进程,GPU进程都是共同的,你打开十个页面一般也就十几个进程。

    
     2
  • sam
    2019-08-21
    这篇文章可以当作平时购物的流程就很清晰的理解:
    数据包: 我们可以理解为我们买的东西;
    TCP/UDP头:买卖人电话、姓名等;
    IP头:买卖双方地址;

    TCP和UDP不同点在于,TCP会把购买的物品直接送到购买人手中,而UDP可能只是送到蜂巢如此之类的。

    不过我有个疑问,三次握手的过程当中是否也是需要走三次传输流程?
    展开

    作者回复: 对的

     1
     2
  • Cris
    2019-09-02
    Tcp/udp通过端口号把数据包发送给指定的程序,这里的端口号和http协议默认端口号80(Https默认端口号443)是一个意思吗?

    作者回复: 是的。80,443就是端口号

    
     1
  • Cris
    2019-09-02
    老师,tcp和udp都是传输层协议,这两个是同时存在还是只能选其一,我看了这期感觉是选其一?

    作者回复: 二选一

    
     1
  • レイン小雨
    2019-08-11
    http协议是应用层的协议,是最上层的网络协议,tcp/udp是两种位于传输层的协议。http协议位于tcp/upd上层。
    
     1
  • pyhhou
    2019-08-09
    请教老师一下,TCP/IP 建立连接和断开连接要经历三次握手和四次挥手,那么 TCP 和 HTTP 建立连接和断开连接是不是也要经历这么一个过程,还是说另有别的考虑?

    作者回复: 这个你可以看看03 | http请求流程,这篇文章有详细介绍

    
     1
  • 追风筝的人
    2020-01-28
    http over tcp. tcp协议为上层应用协议http提供可靠数据传输服务,如果传输过程中有丢包 会重新传输数据。
    
    
  • 学习
    2020-01-12
    IP协议是高速公路,TCP协议是货车,HTTP协议是货物。
    
    
  • filter
    2019-11-22
    IP用来寻址,寻找到对应计算机的地址
    UDP通过端口号来寻找对应的处理程序
    TCP引入了重传机制和数据排序机制来保障文件的完整性
    
    
  • 小甜瓜
    2019-11-12
    http是大范围的传输,tcp是包括头文件的具体的传输数据
    
    
我们在线,来聊聊吧