Web页面请求过程:《计算机网络:自顶向下方法》学习笔记
1.DHCP、UDP、IP和以太网
通过以太网线连接上交换机,电脑主机获取本地IP地址的过程如下。主机操作系统主要通过,应用层DHCP查询数据报的方式,查询当前主机分配到的IP地址。
1) DHCP请求报文
DHCP请求报文:主机电脑上的操作系统生成;
UDP报文段:目的端口号(DHCP服务器)和出发端口号(DHCP客户)分别为67和68;
IP数据报:广播IP目的地址(255.255.255.255)和源目的IP地址(0.0.0.0)
2) 以太网帧
3) 以太网交换机广播
从主机电脑发送到以太网交换机的帧,该交换机在所有出端口广播帧,包括连接到路由器的端口。
4) 路由器接收
路由器在它的具有MAC地址(00:22:6B:45:1F:1B)的接口收到该广播以太网帧,DHCP请求报文从UDP报文中分解出来。
5) DHCP服务器分配IP地址
DHCP服务器分配地址68.85.2.101给主机电脑
DHCP服务器的DHCP ACK报文生成包含:
IP地址(68.85.2.101)
DNS服务器的IP地址(68.85.71.226)
子网块(68.85.2.0/24)
6) 自学习的交换机
交换机寻址到(00:16:D3:23:68:8A),帧只发送到MAC地址(00:16:D3:23:68:8A),并通过主机电脑到输出端口。
7) 主机电脑解析
主机电脑接收到包含DHCP ACK的以太网帧,从该以太网帧中抽取IP数据报,从IP数据包中抽取UDP报文段,从UDP报文段中抽取DHCP ACK报文。
主机电脑还在ip转发表中安装默认网关。
2.DNS和ARP
8) DNS查询报文
主机电脑上的操作系统通过生成一个DNS查询报文,将字符串www.google.com放入DNS报文的问题段中。DNS报文段放置在目的端口号为53的UDP报文中。
UDP:目的端口号:53
IP:目的地址:68.87.71.226 源地址:68.85.2.101
9) 将数据包放入以太网帧中
将数据包放入以太网帧中,该帧发送(在链路层寻址)到主机电脑学校网络中的网关路由器。
10) 手提电脑ARP协议
手提电脑生成一个具有目的地址为68.85.2.1的ARP查询报文
具有广播目的地址(FF:FF:FF:FF:FF:FF)的以太网帧
协议类型:
表示要映射的协议类型0x800表示IP地址
操作:
- ARP请求:1
- ARP答应:2
- RARP请求:3
- RARP答应:4
11) ARP回答报文
网关路由器在接口上接收到了包含该ARP查询报文的帧,发现在ARP报文中目标IP和自己的地址匹配。网关路由一次准备一个ARP回答,指示它的MAC地址00:22:6B:45:1F:1B;
12)电脑获得ARP回答报文的帧
手提电脑获得ARP回答报文的帧,并从ARP回答报文中抽取网关路由器的MAC地址00:22:6B:45:1F:1B。
13)手提电脑第二阶段最终
手提电脑第二阶段能够,使包含查询DNS的以太网帧寻址到网关路由器的MAC地址。
帧:
目的地址MAC 00:22:6B:45:1F:1B(网关路由器)
IP数据报:
目的地址IP:68.85.71.226(DNS服务器)
3.域内路由器选择到DNS服务器
14)网关路由
网关路由抽取该帧中包含DNS查询的IP数据报。
路由器查询该数据报的目的地址(68.85.71.226),并根据转发路由表,决定转发到应当发送到的另一个子网最左端的路由器。
15)抽取IP报文,决定转发目的地址
根据其转发表决定出接口,经过该接口朝着DNS服务器转发数据报,而转发表已根据Comcast的域内协议以及因特网的域间协议BGP所填写。
16)DNS服务器
1.包含DNS查询的IP数据报到达了DNS服务器。DNS服务器抽取DNS查询报文,在它的DNS数据库中查询www.google.com,找到包含对应www.google.com的IP地址的DNS源记录。
2.该DNS服务器形成了一个包含这种主机名IP地址映射的DNS回答报文,将该DNS回答报文放入UDP报文段中,该报文段放入ip数据报中。该数据报将通过Comcast网络反向转发到学校的路由器。
17)主机电脑
主机电脑最终获得www.google.com服务器的IP地址,主机电脑得以接触www.google.com服务器。