Bob带着便携机从插网线到建立Google Web的连接

好了现在一名学生 Bob 将他的便携机与学校的以太网交换机相连, 下载一个 Web 页面 比如说 www. google, com 主页
过程图片如下

 步骤

1 Bob便携机上的操作系统先生成一个DHCP请求报文,将报文放入目的端口67DHCP服务器

 和源端口 68 DHCP客户UDP报文段。这个UDP报文放在一个有广播IP与原IP地址的IP数据报中。现在便携机还没有分配IP地址

难点名词解释:

DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一种用于自动分配IP地址和其他网络配置参数的网络协议。

端口号是啥:端口号是在传输控制协议(TCP)和用户数据报协议(UDP)中定义的。

在一个计算机系统中,每个应用程序或服务可以通过指定特定的端口号来进行通信。这些端口号是一个16位的数字。  端口号67是DHCP服务器的监听端口,而端口号68是DHCP客户端的源端口。这两个端口号用于在局域网中进行DHCP交互,以实现IP地址和其他网络配置信息的分配。重点:端口号本身不是电脑的物理位置,而是在网络通信中用于标识和定位网络上的不同应用程序或服务的逻辑概念。

 2  

包含DHCP请求报文的IP数据报则被放置在以太网帧中,该以太网帧具有目的MAC地址FFFFFFFFFFFF,使该帧将广播到与交换机连接的所有设备 ;该帧的源MAC地址是Boh便携机的MAC地址 00: 16D323688AO

这是一个用于发送DHCP请求报文的以太网帧。以下是对该帧内容的简要解释:

  • 目的MAC地址(Destination MAC Address):FF:FF:FF:FF:FF:FF。这是广播地址,表示将该帧广播到与交换机连接的所有设备,包括DHCP服务器。广播地址通常用于向局域网中的所有设备发送消息。

  • 源MAC地址(Source MAC Address):00:16:D3:23:68:8A。这是Boh便携机的MAC地址,表示该帧的发送者是Boh便携机。

通过使用广播目的MAC地址,DHCP请求帧可以被传递到网络上的所有设备,包括DHCP服务器。这样,任何可以接收到该帧的设备都有机会响应DHCP请求并提供IP地址分配等配置信息给Boh便携机。

3

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

Bob便携机发送给以太网交换机的第一帧,用于发送DHCP请求。该交换机会将该帧广播到所有的出端口,包括连接到路由器的端口。

当Bob便携机发送DHCP请求的广播帧时,交换机会接收到该帧并根据广播地址(FF:FF:FF:FF:FF:FF)将其复制并转发到所有其他端口上,包括连接到路由器的端口。这样,路由器上的DHCP服务器也能够接收到该广播帧,并有机会响应Bob便携机的DHCP请求。

需要注意的是,交换机的广播行为可能受到网络配置的影响,例如VLAN和访问控制列表(ACL)。此外,在实际网络中,还可能存在其他设备和网络设备之间的通信流量限制和安全策略。

总结而言,Bob便携机发送的DHCP请求广播帧将通过交换机广播到所有出端口,包括连接到路由器的端口,以便路由器上的DHCP服务器能够接收并响应该请求。

路由器在它的具有MAC地址OO226B451F的接口接收到该广播以太网帧该帧中包含DHCP请求并且从该以太网帧中抽取出IP数据报该数据报的广播IP目的地址指示了这个IP数据报应当由在该节点的高层协议处理因此该数据报的载荷一个UDP报文段被分解3.2)向上到达UDP, DHCP请求报文从此UDP报文段中抽取出来。此时DHCP服务器有了 DHCP请求报文

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

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

7) Bob便携机接收到包含DHCP ACK的以太网帧,从该以太网帧中抽取IP数据报, 从IP数据报中抽取UDP报文段,从UDP报文段抽取DHCP ACK报文。Bob的DHCP客户 则记录下它的IP地址和它的DNS服务器的IP地址。它还在其IP转发表中安装默认网关 的地址(4.1节)。Bob便携机将向该默认网关发送目的地址为其子网68. 85. 2. 0/24以外 的所有数据报。此时,Bob便携机已经初始化好它的网络组件,并准备开始处理Web网页 获取。(注意到在第4章给出的四个步骤中仅有最后两个DHCP步骤是实际必要的。) 6. 7.2 仍在准备:DNS和ARP 当Bob将www. google, com的URL键入其Web浏览器时,他开启了一长串事件,这将 导致谷歌主页最终显示在其Web浏览器上。Bob的Web浏览器通过生成一个TCP套接字 (2. 7节)开始了该过程,套接字用于向www. google, com发送HTTP请求(2.2节)。为了 生成该套接字,Bob便携机将需要知道www. google, com的IP地址。我们在2. 4节中学过, 使用DNS协议提供这种名字到IP地址的转换服务。

8) Bob便携机上的操作系统因此生成一个DNS查询报文(2.4.3节),将字符串 WWW. google, com放入DNS报文的问题段中。该DNS报文则放置在一个具有53号(DNS服务 器)目的端口的UDP报文段中。该UDP报文段则被放入具有IP目的地址68. 87. 71. 226 (在 328 第6韋 第5步中DHCP ACK返回的DNS服务器地址)和源IP地址68. 85. 2. 101的IP数据报中。

9) Bob便携机则将包含DNS请求报文的数据报放入一个以太网帧中。该帧将发送 (在链路层寻址)到Bob学校网络中的网关路由器。然而,即使Bob便携机经过上述第5 步中的DHCP ACK报文知道了学校网关路由器的IP地址(6& 85.2. 1),但仍不知道该网 关路由器的MAC地址。为了获得该网关路由器的MAC地址,Bob便携机将需要使用ARP 协议(6. 4. 1节)°

10) Bob便携机生成一个具有目的IP地址68. 85. 2. 1 (默认网关)的ARP查询报文, 将该ARP报文放置在一个具有广播目的地址(FF: FF:FF:FF:FF:FF)的以太网帧中,并 向交换机发送该以太网帧,交换机将该帧交付给所有连接的设备,包括网关路由器。

11)网关路由器在通往学校网络的接口上接收到包含该ARP查询报文的帧,发现在 ARP报文中目标IP地址68. 85. 2. 1匹配其接口的IP地址。网关路由器因此准备一个ARP I答,指示它的MAC地址OO:22:6B:45:1F:1B对应IP地址68. 85. 2. 1 o它将ARP回答放 在一个以太网帧中,其目的地址为00:16:D3:23:68:8A (Bob便携机),并向交换机发送 该帧,再由交换机将帧交付给Bob便携机。

12) Bob便携机接收包含ARP回答报文的帧,并从ARP回答报文中抽取网关路由器 的 MAC 地址(00:22:6B:45: IF: 1B)。

13) Boh便携机现在(最终!)能够使包含DNS查询的以太网帧寻址到网关路由器的 MAC地址。注意到在该帧中的IP数据报具有IP目的地址68. 87.71.226 ( DNS服务器), 而该帧具有目的地址OO:22:6B:45:1F:1B (网关路由器)。Bob便携机向交换机发送该帧, 交换机将该帧交付给网关路由器。 6. 7.3仍在准备:域内路由选择到DNS服务器

14) 网关路由器接收该帧并抽取包含DNS查询的IP数据报。路由器查找该数据报的 目的地址(68. 87.71.226),并根据其转发表决定该数据报应当发送到图6 32的Comcast 网络中最左边的路由器。IP数据报放置在链路层帧中,该链路适合将学校路由器连接到最 左边Comcast路由器,并且该帧经这条链路发送。

15) 在Comcast网络中最左边的路由器接收到该帧,抽取IP数据报,检查该数据报的 目的地址(68. 87. 71.226),并根据其转发表确定出接口,经过该接口朝着DNS服务器转 发数据报,而转发表已根据Comcast的域内协议(如RIP、OSPF或IS IS, 5.3节)以及因 特网的域间协议BGP (5.4节)所填写。

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

17) Bob便携机从DNS报文抽取出服务器www. google, com的IP地址。最终,在大量 工作后,Bob便携机此时准备接触www. google, com服务器! e. com WWW. 511 WWW. 链路层和局域网 329 6. 7. 4 Web客户-服务器交互:TCP和HTTP

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

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

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

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

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

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

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

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值