接入网+Web 页面请求的历程_Bob

@TOC

全过程

Bob 将他的便携机与学校的以太网交换机相连,下载一个 Web 页面, www. google.com

1.获取IP: DHCP、 UDP、 IP 和以太网

1.1没有 IP 地址

启动便携机,用一根以太网电缆连接到学校的以太网交换机 ,此时没有 IP 地址。

交换机与学校的路由器相连,学校的路由器与一个 ISP 连接(本例中 ISP 为 comcast.net ),ISP提供了 DNS 服务和DHCP服务。
DNS 服务器驻留在 comcast.net 网络中而不是学校网络中,同时假设 DHCP 服务器运行在路由器中。

1.2DHCP 协议获取 IP 地址

1.2.1发送DHCP 请求报文

便携机上的操作系统生成一个 DHCP 请求报文 ,包裹UDP、IP、以太网帧如图:
在这里插入图片描述

该以太网帧将广播到与交换机连接的所有设备 (可能包括 DHCP 服务器),是第一个由 Bob 便携机发送到以太网交换机的帧。 该交换机在所有的出端口广播入帧,包括连接到路由器的端口。

1.2.2接收处理

路由器在它的具有 MAC 地址 00: 22: 6B: 45: 1F 的接口接收到该广播以太网帧,并且从该帧中抽取出 IP 数据报,该数据报的载荷被分解向上到达 UDP, UDP 报文段中抽取出DHCP 请求报文。 此时 DHCP 服务器接收到DHCP 请求报文。
假设运行在路由器中的 DHCP 服务器能够以 CIDR 块 68.85.2.0/24 分配 IP 地址。 所以在学校内使用的所有 IP 地址都在 Comcast 的地址块中。
假设 DHCP 服务器分配地址 68.85.2.101 给 Bob 的便携机。

1.2.3返回DHCP ACK 报文

DHCP 服务器生成包含 IP 地址、DNS 服务器的 IP 地址 (68.87.71. 226) 、默认网关路由器的 IP 地址 (68. 85. 2. 1 )和 子网块 (68. 85. 2. 0/24) (等价为"网络掩码" )的一个 DHCP ACK 报文 。该 DHCP 报文被放入一个 UDP 报文段、 IP 数据报中、以太网帧中。
包含 DHCP ACK 的以太网帧由路由器发送给交换机。 因为交换机是自学习的,并且先前从 Bob 便携机收到(包含 DHCP 请求的)以太网帧,所以该交换机知道寻址到 00:16: D3:23:68:8A 的帧仅从通向 Bob 便携机的输出端口转发。
Bob 便携机接收到包含 DHCP ACK 的以太网帧,从该以太网帧中抽逐层最终抽取 DHCP ACK 报文。 Bob 的 DHCP 客户 则记录下它的 IP 地址和它的 DNS 服务器的 IP 地址。 它还在其 IP 转发表中安装默认网关的地址。Bob 便携机将向该默认网关发送目的地址为其子网 68.85.2.0/24 以外 的所有数据报。

默认网关一般指缺省网关。缺省网关(Default Gateway)是子网与外网连接的设备,通常是一个路由器。当一台计算机发送信息时,根据发送信息的目标地址,通过子网掩码来判定目标主机是否在本地子网中,如果目标主机在本地子网中,则直接发送即可。如果目标不在网中则将该信息送到缺省网关/路由器,由路由器将其转发到其他网络中,进一步寻找目标主机。

2.获取DNS: DNS 和 ARP

2.1DNS查询www.google.com对应目的IP地址,为了发送 HTTP 请求

Bob 将 www.google.com 的 URL 键入其 Web 浏览器时,浏览器需要生成一个 TCP 套接字来向 www. google. com 发送 HTTP 请求 。
为了生成该套接字, Bob 便携机将需要知道 www.google.com 的 IP 地址,使用 DNS 协议提供URL到 IP 地址的转换服务。
Bob 便携机上的操作系统生成一个 DNS 查询报文,将www. google. com 放入 DNS 报文的问题段中,包裹如图后
在这里插入图片描述
Bob 便携机将该IP数据报放入一个以太网帧。 该帧将发送 (在链路层寻址)到学校网络中的网关路由器。

2.2ARP查询网关路由器MAC地址,为了发送DNS查询请求

ARP协议数据单元封装在以太帧中发送

然而,Bob 便携机经 DHCP ACK 报文知道了学校网关路由器的 IP 地址(68. 85. 2. 1) ,但不知道对应的 MAC 地址。 为了获得该网关路由器的 MAC 地址, Bob 便携机将需要使用 ARP 协议。
Bob 便携机生成一个具有目的 IP 地址 68.85.2.1 (默认网关)的 ARP 查询报文,放置在一个具有广播目的地址的以太网帧,并向交换机发送,交换机将原帧交付给所有连接的设备,包括网关路由器。
网关路由器在通往学校网络的接口上接收到包含读 ARP 查询报文的帧,发现在 ARP 报文中目标 IP 地址匹配其接口的 IP 地址。因此准备一个 ARP 回答,指示IP与MAC。
它将 ARP 回答放 在一个以太网帧,其目的地址为 (Bob 便携机) ,并向交换机发送该帧,交换机将帧交付给 Bob 便携机。

2.3获得网关路由器MAC地址

Bob 便携机接收包含 ARP 回答报文的帧,从 ARP 回答报文中抽取网关路由器的 MAC 地址
Bob 便携机现在能够使包含 DNS 查询的以太网帧寻址到网关路由器的 MAC 地址。 注意到在该帧中的 IP 数据报具有 IP 目的地址 68.87.71. 226 (DNS 服务器) , 而该帧具有目的地 00: 22: 6B: 45: 1F: 1B (网关路由器) 。Bob 便携机向交换机发送该帧, 交换机将该帧交付给网关路由器。

2.4发送DNS查询请求,返回响应

网关路由器接收该帧并抽取包含 DNS 查询的 IP 数据报。 路由器查找该数据报的目的地址 (68.87.7 1. 226). 并根据其转发表决定该数据报应当发送到 Comcast 网络中最左边的路由器。 lP数据报放置在链路层帧,该链路适合将学校路由器连接到最左边 Comcast 路由器,并且该帧经这条链路发送。
在 Comcast 网络中最左边的路由器接收到该帧,抽取 IP 数据报,检查该数据报的目的地址,根据其转发表确定出接口,经过该接口朝着 DNS 服务器转发数据报。

而转发表已根据 Comcast 的域内协议(RIP、 OSPF)以及因特网的域间协议 BGP 所填写

最终包含 DNS 查询的 IP 数据报到达了 DNS 服务器,DNS 服务器抽取出 DNS 查询报文,在它的 DNS 数据库中查找名字 www. google. com ,找到包含对应 www.google.com 的 IP 地址 (64.233.169.105)的 DNS 源记录 , (假设它当前缓存在 DNS 服务器中)这种缓存数据源于 google. com 的权威 DNS 服务器。该 DNS 服务器形成了一 个包含这种主机名到 IP 地址映射的 DNS 回答报文,将该 DNS 回答报文放入 UDP 报文段中,该报文段放入寻址到 Bob 便携机 (68.85.2. 101 )的 IP 数据报中。该数据报将通过 Comcast 网络反向转发到学校的路由器,并从这里经过以太网交换机到 Bob 便携机。
Bob 便携机从 DNS 报文抽取出服务器 www. google. com 的 IP 地址。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值