Web页面请求的历程(四)

四.Web客户-服务器交互:TCPHTTP

        18)既然Bob便携机有了www.google.comIP地址,它能够生成TCP套接字,该套接字将用于向www.google.com发送HTTP GET报文。当Bob生成TCP套接字时,在Bob便携机中的TCP必须首先与www.google.com中的TCP执行三次握手。Bob便携机因此首先生成一个具有目的端口80(针对HTTP的)的TCP SYN报文段,将该TCP报文段放置在具有目的IP地址64.233.169.105www.google.com)的IP数据报中,将该数据报放置在MAC地址为00:22:6B:45:1F:1B(网关路由器)的帧中,并向交换机发送该帧。

       19)在学校网络、Concast网络和谷歌网络中的路由器朝着www.google.com转发包含TCP SYN的数据报,使用每台路由器中的转发表,如前面步骤14~16那样。前面讲过支配分组经Concast和谷歌网络之间域间链路转发的路由器转发表项,是由BGP协议决定的。

        20)最终,包含TCP SYN的数据报到达www.google.com。从数据报抽取出TCP SYN报文并分解到与端口80相联系的欢迎套接字。对于谷歌HTTP服务器和Bob便携机之间的TCP连接生成一个连接套接字。产生一个TCP SYNACK报文段,将其放入向Bob便携机寻址的一个数据报中,最后放入链路层帧中,该链路适合将www.google.com连接到其第一跳路由器。

        21)包含TCP SYNACK报文段的数据报通过谷歌、Concast和学校网络,最终到达Bob便携机的以太网卡。数据报在操作系统中分解到步骤18生成的TCP套接字,从而进入连接状态。

        22)借助于Bob便携机上的套接字,现在(最终!)准备向www.google.com发送字节了,Bob的浏览器生成包含要获取的URLHTTP GET报文。HTTP GET报文则写入套接字,其中GET报文成为一个TCP报文段的载荷。该TCP报文段放置进一个数据报中,并交付到www.google.com。如前面步骤18~20所述。

        23)在www.google.comHTTP服务器从TCP套接字读取HTTP GET报文,生成一个HTTP响应报文,将请求的Web页内容返给HTTP响应体中,并将报文发送进TCP套接字中。

        24)包含HTTP回答报文的数据报通过谷歌。Concast和学校网络转发,到达Bob便携机。BobWeb浏览器程序从套接字读取HTTP响应,从HTTP响应体中抽取Web网页的html,并终于显示了Web网页。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值