计算机网络基础(三)---网络层-IP协议的转发流程

栏目: IT技术 · 发布时间: 3年前

内容简介:文章内容概览在上一篇文章中提到,计算机A在给计算机B发送数据的时候,数据的路径,可能是通过

文章内容概览

计算机网络基础(三)---网络层-IP协议的转发流程

在上一篇文章中提到,计算机A在给计算机B发送数据的时候,数据的路径,可能是通过 中型网络大型网络中型网络小型网络 ,然后到达 计算机B

计算机网络基础(三)---网络层-IP协议的转发流程

现在把这条路径抽取出来

计算机网络基础(三)---网络层-IP协议的转发流程

并且将其压平,可以看到计算机A通过中间的3个网络和路由器,将数据报文传输给了B

计算机网络基础(三)---网络层-IP协议的转发流程

关于数据的转发过程,有一个概念叫: 逐跳 (hop-by-hop)。意思就是计算机A发送的报文是一跳一跳的来到计算机B的,网络1==》路由器1==》网络2==》路由器2==》网络3==》计算机B

路由表简介

在前边介绍数据链路层的时候,有提到过一个 MAC地址表 。它的工作流程如下:

计算机网络基础(三)---网络层-IP协议的转发流程

路由表工作在 网络层 ,它的工作流程其实是和MAC地址表差不多的。下图中左边为MAC地址表、右边为路由表。MAC地址表由两列组成,分别是 MAC地址硬件接口 。路由表的重点部分也是由两列组成的,分别是 目的IP地址下一跳IP地址计算机和路由器都拥有路由表

计算机网络基础(三)---网络层-IP协议的转发流程

IP协议的转发流程

在最开始的时候,有提到下边这个网络拓扑。计算机A需要跨设备将数据传输给计算机C,仅有数据链路层是无法解决的,因此需要网络层。有了路由表和前边了解到的IP协议的内容,就可以实现跨设备的数据传输了

计算机网络基础(三)---网络层-IP协议的转发流程

整个跨设备数据传输过程如下:

  • A发出目的地为C的IP数据报, 查询本地路由表发现下一跳为E
  • A将数据报发送给E
  • E 查询本地路由表发现下一跳为F ,将数据报发送给F
  • F 查询本地路由表发现目的地C ,是和自己直接连接的,然后将数据报发送给C

上边是 仅从网络层去看这整个数据传输的过程 ,下边结合数据链路层和网络层,看整个过程:

第一步:

  • A发出目的地为C的IP数据报, 查询路由表发现下一跳为E
  • A将IP数据报 交给数据链路层,并告知目的MAC地址是E
  • 数据链路层填充 源MAC地址A目的MAC地址E
  • 数据链路层通过物理层将数据发送给E

第二步:

  • E的数据链路层接收到数据帧, 把数据帧传输给网络层
  • E查询路由表,发现下一跳为F
  • E把数据交给数据链路层并告知目的MAC地址为F
  • E的数据链路层封装数据帧并发送(此时源MAC地址和目的MAC地址就会发生变化,源MAC地址为E,目的MAC地址为F)

第三步:

  • F的数据链路层接收到数据帧,把数据帧交给网络层
  • F查询路由表,发现下一跳为C
  • F把数据交给数据链路层,并告知目的MAC地址为C
  • F的数据链路层封装数据帧并发送

从上边的整个过程中可以发现

  • 数据帧每一跳的MAC地址都在变化(源MAC地址和目的MAC地址)
  • IP数据报每一跳的IP地址始终不变

在快速变化的技术中寻找不变,才是一个技术人的核心竞争力。知行合一,理论结合实践

计算机网络基础(三)---网络层-IP协议的转发流程


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

增长黑客

增长黑客

Sean Ellis / 张溪梦 / 中信出版集团股份有限公司 / 2017-11-1 / CNY 59.00

脸谱网如何从默默无闻到坐拥二十几亿用户? 爱彼迎、优步何以在短短时间估值超过百亿美元? 领英怎样跨步成为全球领先的职业社交平台? 这些初创公司实现爆发式成长的共同奥秘就是增长黑客。 增长黑客是硅谷当下热门的新商业方法论,其精髓在于通过快节奏测试和迭代,以极低甚至零成本获取并留存用户。 作为最早提出“增长黑客”概念的理论先驱、带领Dropbox实现500%增长的实战领军......一起来看看 《增长黑客》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

html转js在线工具
html转js在线工具

html转js在线工具