Web页面请求的历程(四)

翻译 2016年05月30日 20:20:56

四.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网页。

计算机网络-Web页请求的历程

准备:DHCP/UDP/IP和以太网启动主机MacBook,用一根以太网电缆连接到学校的以太网交换机,交换机又与学校的路由器相连.学校的这台路由器与一个ISP链接,此IPS还提供了DNS服务.所以DN...
  • biezhihua
  • biezhihua
  • 2016年08月31日 00:17
  • 679

Web页面请求的历程(三)

三.仍在准备:域内路由选择到DNS服务器        14)网关路由器接收该帧并抽取包含DNS查询的IP数据报。路由器查询该数据报的目的地址(68.87.71.226),并根据其转发表决定该数据报...
  • ldld1717
  • ldld1717
  • 2016年05月30日 19:01
  • 213

Web页面请求的历程(二)

二.仍在准备:DNS和ARP         当Bob将www.google.com的URL键入其Web浏览器时,他开启了一长串事件,这将导致谷歌主页最终显示在其Web浏览器上。Bob的Web浏览器...
  • ldld1717
  • ldld1717
  • 2016年05月30日 15:38
  • 190

Web页面请求的历程(一)

对已经学过的众多不同网路层的协议做一个综合的、全面的展望,总结一下沿着协议栈向下的旅程。而做这个全面的展望的一种方法是识别众多的协议,这些协议涉及满足甚至最简单的请求:下载一个Web页面。比如,一名叫...
  • ldld1717
  • ldld1717
  • 2016年05月30日 15:06
  • 480

Web页面的请求历程

本文试图通过一个例子总结计算机网络相关知识,该例子来源于《计算机网络——自顶向下方法》一书,本文对其中细节加了补充。 关键词:DHCP, DNS, ARP, TCP, HTTP...
  • sun927
  • sun927
  • 2016年03月22日 00:25
  • 1362

客户每次请求Web页面过程

客户每次请求页面时——通过最初请求或者回送——所发生的事情。    图中显示了有5个主要事件:初始化、加载、预提交、提交、处理我们可以为每个步骤添加代码。1.初始化:ASP.NET处理器第一次接到页面...
  • dreamjhy
  • dreamjhy
  • 2007年06月06日 21:26
  • 3610

一个网页从开始请求到最终显示的完整过程

一个网页从开始请求到最终显示的完整过程一个网页从请求到最终显示的完整过程一般可分为如下7个步骤: 1. 在浏览器中输入网址; 2. 发送至DNS服务器并获得域名对应的WEB服务器的IP地址; 3...
  • u012396955
  • u012396955
  • 2016年12月28日 14:50
  • 1268

一个web页面的访问的过程

用户打开浏览器输入目标地址(比如http://www.sina.com) 1. 浏览器首先会查询本机的系统,获取主机名对应的IP地址。 2. 若本机查询不到相应的IP地址,则会发起DNS请求,获取...
  • mccand1234
  • mccand1234
  • 2016年10月22日 19:21
  • 397

Web页面请求过程--计算机网络自顶向下笔记(六)

场景 通过DHCP获得本机IP等信息 通过DNS获得网站的IP地址 通过TCP和HTTP进行客户服务器交互 场景 学生将PC用电缆连接到学校以太网交换机,访问www.google.com。 comca...
  • qq_40369829
  • qq_40369829
  • 2017年12月18日 23:22
  • 36

Python Web ----->处理请求

用Django框架Python的Web项目从请求到页面展示是一个怎样的过程? 项目的目录是这样的: 之前总结过Django框架下项目中的主要文件(或者说是建立Django项目之后所包含的文件):s...
  • m0_37462976
  • m0_37462976
  • 2018年01月10日 13:50
  • 21
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Web页面请求的历程(四)
举报原因:
原因补充:

(最多只允许输入30个字)