计算机网络:知识回顾

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请求/响应

相关推荐
初听于你12 小时前
深入了解—揭秘计算机底层奥秘
windows·tcp/ip·计算机网络·面试·架构·电脑·vim
胖好白16 小时前
【计算机网络笔记】计算机网络学习笔记1
计算机网络
武文斌7720 小时前
复习总结最终版:计算机网络
linux·开发语言·学习·计算机网络
沧澜sincerely1 天前
计算机网络数据链路层
计算机网络·数据链路层
ArabySide1 天前
【计算机网络】HTTP协议核心知识梳理
网络协议·计算机网络·http
Wadli2 天前
小林coding|计算机网络
计算机网络
程序员莫小特2 天前
网络管理员从零到一|数据通信基础
计算机网络·网络管理员
周杰伦_Jay3 天前
【计算机网络三层深度解析:应用层、传输层与网络层】HTTP、TCP、UDP、IP、ICMP、ARP
tcp/ip·计算机网络·http
沐浴露z3 天前
【深入理解计算机网络11】应用层详解:DNS,WWW,HTTP
服务器·网络协议·计算机网络·http
拥友LikT3 天前
计算机网络基础篇——计算机网络概述
网络·计算机网络