计算机网络:知识回顾

0 本节主要内容

问题描述

解决思路

1 问题描述

通过一个应用场景来回顾计算机网络涉及到的协议(所有层)。如下图所示场景:

  • 学生Bob将笔记本电脑用一根以太网电缆连接到学校的以太网交换机;
  • 交换机又与学校的路由器相连;
  • 学校的这台路由器与一个ISP连接,本例中ISP为comcast.net,该ISP为学校提供DNS服务;
  • 现在Bob要访问www.google.com主页。

2 解决思路

2.1 连接到Internet

  • 连接笔记本电脑需要获得自己的IP地址,第一跳路由器的地址,DNS服务器的地址,假设通过DHCP获得;
  • DHCP请求封装UDP头,封装IP头,封装802.3以太网帧;
  • DHCP请求是一个广播报文,所以请求报文的802.3以太网帧目的地址填广播地址(FFFFFFFF),该报文被路由器上运行的DHCP服务器接收;
  • 以太网去头部、IP去头部、UDP去头部到DHCP;
  • DHCP服务器制作DHCP ACK,其中包含客户端的IP地址、客户端的第一跳路由器的IP地址以及DNS服务器的名称和IP地址;
  • 在DHCP服务器封装成帧,通过LAN转发帧(交换机学习);
  • DHCP客户端接收DHCP ACK回复。

客户端现在有IP地址,知道DNS服务器的名称和地址,第一跳路由器的IP地址。

2.2 使用ARP协议

  • 在发送HTTP请求之前,需要通过DNS知道www.google.com的IP地址;
  • 创建DNS查询,用UDP封装,用IP封装,用Eth(以太网)封装。要向路由器发送帧,需要通过ARP协议学习到路由器接口的MAC地址;
  • 路由器接收到客户端发起的ARP查询广播,通过给出路由器接口MAC地址的ARP响应报文进行回复;
  • 客户端现在知道第一跳路由器的MAC地址,所以现在可以发送包含DNS查询的帧。

2.3 使用DNS协议

  • 包含DNS查询的IP数据报通过LAN交换机从客户端转发到第一跳路由器;
  • 从校园网转发到Comcast网络的IP数据报,路由(RIP、OSPF、IS-IS和/或BGP路由协议创建的表)到DNS服务器;
  • DNS以www.google.com的IP地址回复客户端。

2.4 承载HTTP的TCP连接

  • 要发送HTTP请求,客户端首先打开到web服务器的TCP套接字;
  • TCP SYN段(TCP三向握手中的步骤1)域间路由到web服务器;
  • web服务器使用TCP SYN/ACK进行响应(TCP三次握手中的步骤2);
  • 客户端使用TCP ACK进行响应(TCP三次握手中的步骤3);
  • TCP连接已建立!

2.5 HTTP请求/响应

相关推荐
.豆鲨包10 小时前
【计算机网络】数据链路层
网络·网络协议·计算机网络
zl_dfq13 小时前
计算机网络 之 【TCP协议】(确认应答、超时重传、流量控制、三次握手、四次挥手、滑动窗口、快重传、延迟应答、Nagle算法、捎带应答、拥塞控制)
网络·计算机网络·tcp
一个有温度的技术博主14 小时前
计算机网络基础三:从定义到分类,构建你的知识框架
计算机网络
zl_dfq15 小时前
计算机网络 之 【TCP协议】(面向字节流、TCP异常情况、保活机制、文件与Socket的关系、网络协议栈的本质)
网络·计算机网络·tcp
zl_dfq17 小时前
计算机网络 之 【TCP协议】(TCP的核心定位与控制本质、TCP报文结构)
网络·计算机网络·tcp
AnalogElectronic2 天前
考研408计算机学科专业基础综合——计算机网络复习
计算机网络·考研
y = xⁿ2 天前
(小林coding) 计算机网络学习笔记:什么是HTTP?
笔记·学习·计算机网络
头疼的程序员2 天前
计算机网络:自顶向下方法(第七版)第八章 学习分享(一)
网络·学习·计算机网络
watersink2 天前
第14章 计算机网络
计算机网络
千千寰宇2 天前
[网络协议/文件] `SMB` 协议:一种Windows主流的局域网网络文件共享协议
计算机网络·操作系统-磁盘管理/文件系统