Web页面请求的历程(一)

翻译 2016年05月30日 15:06:52

        对已经学过的众多不同网路层的协议做一个综合的、全面的展望,总结一下沿着协议栈向下的旅程。而做这个全面的展望的一种方法是识别众多的协议,这些协议涉及满足甚至最简单的请求:下载一个Web页面。比如,一名叫Bob的学生将他的便携机与学校的以太网交换机相连,下载一个Web页面(比如说www.google.com的主页)。步骤如下:

 

一.准备:DHCP(动态主机配置协议)、UDPIP和以太网

        我们假定Bob启动它的便携机,然后将其用一根以太网电缆连接到学校的以太网交换机,交换机又与学校的路由器相连。学校的这台路由器与一个ISP连接,本例中ISPconcast.net。在本例中,concast.net为学校提供了DNS服务;所以DNS服务器驻留在Concast网络中而不是学校的网络中。我们将假设DHCP服务器运行在路由器中,就像常见的情况那样。

        当Bob首先将其便携机与网络连接时,没有IP地址他就不能做任何事情(例如下载一个Web网页)。所以Bob的便携机所采取的一个网络相关的动作是运行DHCP协议,已从本地DHCP服务器获得一个IP地址以及其他信息。

        1)Bob便携机上的操作系统生成一个DHCP请求报文,并将这个报文放入具有目的端口67DHCP服务器)和源端口68DHCP客户)的UDP报文段,该UDP报文段则被放置在一个具有广播IP目的地址(255.255.255.255)和源IP地址0.0.0.0IP数据报中,因为Bob的便携机还不具有一个IP地址。

        2)包含DHCP请求报文的IP数据报则被放置在以太网帧中。该以太网帧具有目的MAC地址FF:FF:FF:FF:FF:FF,使该帧将广播到与交换机连接的所有设备(如果顺利的话也包括DHCP服务器);该帧的源MAC地址是Bob便携机的MAC地址00:16:D3:23:68:8A

        3)包含DHCP请求的广播以太网帧是第一个由Bob便携机发送到以太网交换机的帧。该交换机在所有的出端口广播入帧,包括连接到路由器的端口。

        4)路由器在它的具有MAC地址00:22:6B:45:1F的接口接收到该以太网帧,该帧中包含DHCP请求,并且从该以太网帧中抽取出IP数据报。该数据报的广播IP目的地址则是了这个IP数据报应当由在该结点的高层协议处理,因此该数据报的载荷(一个UDP的报文段)被分解向上到达UDPDHCP请求报文从此UDP报文段中抽取出来。此时DHCP服务器有了DHCP请求报文。

        5)我们假设运行在路由器中的DHCP服务器能够以CIDR(无类别域间路由)块68.85.2.0/24分配IP地址。所以本例中,在学校内使用的所有IP地址都在Concast的地址块中。我们假设DHCP服务器分配地址68.85.2.101Bob的便携机。DHCP服务器生成包含这个IP地址以及DNS服务器的IP地址(68.87.71.226)、默认网关路由器的IP地址(68.85.2.1)和子网块(68.85.2.0/24)(等价为“网络掩码”)的一个DHCP ACK报文。该DHCP报文被放入到一个UDP报文段中,UDP报文段被放入一个IP数据报中,IP数据报再被放入一个以太网帧中。这个以太网帧的源MAC地址是路由器连接到归属网络时接口的MAC地址(00:22:6B:45:1F:1B),目的MAC地址是Bob便携机的MAC地址(00:16:D3:23:68:8A)。

        6)包含DHCP ACK的以太网帧由路由器发送给交换机。因为交换机是自学习的,并且先前从Bob便携机收到(包含DHCP请求的)以太网帧,所以该交换机知道寻址到00:16:D3:23:68:8A的帧仅仅从通向Bob便携机的输出端口转发。

        7)Bob便携机接收到包含DHCP ACK的以太网帧,从该以太网帧中抽取IP数据报,从IP数据报中抽取UDP报文段,从UDP报文段抽取DHCP ACK报文。BobDHCP客户则记录下它的IP地址和它的DNS服务器的IP地址。它还在其IP转发表中安装默认网关的地址。Bob便携机将向该默认网关发送目的地址为其子网68.85.2.0/24以外的所有数据报。此时,Bob便携机已经初始化好它的网络组件,并准备开始处理Web网页获取。

Web页面请求的历程(三)

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

Web页面的请求历程

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

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

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

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

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

客户每次请求Web页面过程

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

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页面请求的历程(一)

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

Web页面请求的历程(四)

四.Web客户-服务器交互:TCP和HTTP         18)既然Bob便携机有了www.google.com的IP地址,它能够生成TCP套接字,该套接字将用于向www.google.com发...
  • ldld1717
  • ldld1717
  • 2016年05月30日 20:20
  • 234

一个web页面的访问的过程

用户打开浏览器输入目标地址(比如http://www.sina.com) 1. 浏览器首先会查询本机的系统,获取主机名对应的IP地址。 2. 若本机查询不到相应的IP地址,则会发起DNS请求,获取...
  • mccand1234
  • mccand1234
  • 2016年10月22日 19:21
  • 398
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Web页面请求的历程(一)
举报原因:
原因补充:

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