自顶向下 | 带你遨游网络层

前言

  • 网络层的知识点非常繁多,本文仅是基于《计算机网络 自顶向下》而总结的一些重点知识点,如果想要详细了解网络层的知识,可以看下《自顶向下》
  • 本文已经收录到我的Github个人博客,欢迎大佬们光临寒舍:我的GIthub博客

对于互联网的网络层来说,其提供的服务非常简单,包括:

  • 转发
  • 路由选择

网络层可能提供的服务

网络服务模型:

  • 确保交付
  • 保证延迟的确保交付
  • 有序交付
  • 确保最小带宽
  • 确保最大时延抖动
  • 安全性服务

那么 IP 协议提供以上哪些服务呢?

答案就是:一个也不提供

  • 确保交付
  • 保证延迟的确保交付
  • 有序交付
  • 确保最小带宽
  • 确保最大时延抖动
  • 没有 安全性服务

数据报网络

IP 协议构建的网络就属于数据报网络

特点:

  • 无需建立连接,维持状态信息
  • 使用转发表决定分组输出端口
  • 通过最长前缀匹配原则进行查询转发表

路由器工作原理

  • 输入端口 :从物理层接收数据,拆封分组、查看相应协议层头部,查询转发表放进发送队列
  • 交换结构 : 负责发送队列到输出队列的运输
  • 输出端口 :拿到输出队列的数据,然后封上相应协议层的头部,送给物理层
  • 路由选择处理器 : 负责执行路由选择,更新转发表,以及一些控制功能

网络层的三个主要组件

IP 协议

IPV4 数据报格式

  • 版本:规定了 IP 协议版本
  • 首部长度
  • 服务类型:区分不同类型的 IP 数据报
  • 数据报长度
  • 标识、标志、片偏移:用于 IP 数据报分片
  • 寿命:一个数据报可以被路由处理的次数
  • 协议:用于 IP 的多路复用和分解,即应将数据交付给上层的那个协议,TCP 还是 UDP
  • 首部检验和
  • 源和目的 IP 地址
  • 选项:用于扩展 IP 首部
  • 数据

IPV4 编址

  • 总长度为 32
  • 一般以 8 位一组
  • 子网:具有相同的前半部分地址的一组 IP 地址构成的网络
  • 编址方案:
  • 无类别域间路由选择
  • 分类编址

IPv4IPv6 的区别

1. 扩展了寻址能力。
V6128位地址,v4只有32位。相当于扩展了4倍
2. 报头格式简化
V6 相对于 V4来说,报头简化了很多
3. 对可选项更大的支持
V6V4 的基础上,支持更多可选项操作,比如 对 IP层安全支持,对IP层漫游支持等功能。
4. 支持自动配置
IPv6节点通过 地址自动配置 来获得 V6地址 和网关地址,
5. 身份验证和保密
v6中加入了身份验证、数据一致性等保密性内容
6. 允许继续扩充协议
新的应用扩展也是在 V6 中支持的。

DHCP

是一种用于自动分配 IP 地址且即插即用的协议,使用 UDP 作为运输层服务

对于一个新加入网络的电脑:

  1. DHCP 服务器发现。通过设置源 IP 地址为 0.0.0.0,且目的 IP 地址为 255.255.255.255UDP 分组,在网络中广播
  2. DHCP 服务器提供。DHCP 监听到广播,使用一个 DHCP 提供报文 向客户作出响应 (继续以广播的形式发出,因为此时客户依旧没有自己的 IP 地址)
  3. DHCP 请求。客户得到响应后,发送一个 DHCP 请求报文,回显响应的配置参数
  4. DHCP ACK。服务器回应一个 DHCP ACK 报文,响应客户的请求报文

NAT

从目的来说,NAT 技术使得多台电脑可以通过一个公共 IP 上网,且不发生冲突。

其行文的核心在于,从路由器 (具备公共 IP 的设备) 拦截所有的分组,修改其 IP 地址和端口,并记录这种修改产生相应的映射,发送修改后的分组,接收时执行相反的步骤。

路由选择算法

分类

全局还是分散:

  • 全局式路由选择算法 (链路状态算法)

    • 需要事先知道网络总体的分布图
  • 分散式路由选择算法 (距离向量算法):
    • 无需知道网络总体的分布图

动态还是静态:

  • 静态路由选择
  • 动态路由选择

是否负载敏感:

  • 负载敏感算法
  • 负载迟钝算法

因特网控制报文协议 (ICMP)

  • 用于主机和路由器彼此沟通信息
  • 最典型的用途是差错报告
  • 构建于 IP 协议之上 (因为其报文位于为 IP 数据报的数据字段)


如果文章对您有一点帮助的话,希望您能点一下赞,您的点赞,是我前进的动力

本文参考链接:

原文地址:https://www.cnblogs.com/xcynice/p/dai_ni_ao_you_wang_luo_ceng.html

时间: 2024-11-10 14:53:03

自顶向下 | 带你遨游网络层的相关文章

带你遨游VLAN中的知识

VLAN:虚拟的局域网 0-4095 个VLAN 头尾不能用1 交换机分割冲突域,不能分割广播域2 提高网络效率3 Vlan分割广播域 VLAN 的作用1 广播控制2 安全性3 带宽利用4 延迟 VLAN 的种类1 静态:使用端口划分静态VLAN 2 动态使用MAC地址划分动态VLAN VLAN帧格式tag[标签] PVID:端口所属的vlan默认情况下,都是vlan1 Access端口:端口收到数据时添加一个tag标记接收的时候在删除tag标记,不然无法识别access 发送数据帧时,去掉标签

基础命令引导篇

引 入 学好Linux,熟练操作基础命令是前提,常用基础命令更是必须得深深记入脑海里.下面,就是我的Linux基础命令引导篇,引导我记录下用过的基础命令. 目 录 优雅一句,带你遨游Linux命令的海洋: A              A year from now, you will wish you had started today.                                       B                                      C

新手如何玩转SEO,先来几个技能傍身

关于SEO:中文意译为"搜索引擎优化".SEO是指通过站内优化比如网站结构调整.网站内容建设.网站代码优化等以及站外优化. 比如网站站外推广.网站品牌建设等,使网站满足搜索引擎收录排名需求,在搜索引擎中提高关键词排名,从而吸引精准用户进入网站,获得免费流量,产生直接销售或品牌推广. 玩互联网,网站的朋友自然都清楚 SEO是什么东东 当然也知道它有多少用处 如何让自己的产品搜索词条出现在前端 如何让自己的产品获得更多粉丝和流量 达到宣传推广或者产生销售的目的 如何快速入门玩转SEO 此时

动态规划的简要总结和四个经典问题的c++实现

本文给出了动态规划的简要定义.适用场景.算法实现.并给出了四种经典动态规划:钢条切割求最大收益问题.矩阵链相乘求最小乘法次数问题.最长公共子序列问题.求最小的搜索代价的最优二叉搜索树的c++代码实现. 定义 性质 适用条件 算法实现过程 首先观察问题是否满足最优子结构性质 写出递归等式递归的定义子问题的最优解 求解子问题的最优解 构造最优解 四个经典问题的cpp实现 1 钢条切割 2 矩阵链相乘 3 最长公共子序列 4 最优二叉搜索树 代码下载 1. 定义 动态规划(dynamic progra

三角形最小路径和

给定一个三角形,找出自顶向下的最小路径和.每一步只能移动到下一行中相邻的结点上. 例如,给定三角形: [ [2], [3,4], [6,5,7], [4,1,8,3] ] 自顶向下的最小路径和为 11(即,2 + 3 + 5 + 1 = 11). 说明: 如果你可以只使用 O(n) 的额外空间(n 为三角形的总行数)来解决这个问题,那么你的算法会很加分. 1.自顶向下带备忘录的方法 class Solution { private int[][] cache; public int minimu

第7章 网络层协议(1)_网络层首部

1. 网络层首部 1.1 网络层协议 (1)TCP/IP协议栈网络层的4个协议:IP协议.ICMP协议.IGMP协议和ARP协议. (2)IP协议:动态路上协议的统称,包括RIP和OSPF协议. (3)TCP/IP协议分成四层:应用层定义了客户端和服务器通信规范,传输层实现可靠传输,网络层负责为数据包选择转发路径,数据链路层负责将数据包封装成帧发送到数字链路上. 1.2 查看网络层首部 1.3 网络层首部格式 (1)版本:占4位,指IP协议的版本.目前有两个版本IPv4和IPv6. (2)首部长

TCP/IP协议简介(三) 之 网络层

IP 网际协议 IP 协议位于网络层,它是 TCP/IP 协议族中最为核心的协议,所有的 TCP.UDP.ICMP 及 IGMP 数据都以 IP 数据报格式传输.IP 协议提供的是 不可靠 . 无连接 的数据报传送服务. 不可靠(unreliable):IP 协议不能保证数据报能成功地到达目的地,它仅提供传输服务.当发生某种错误时,IP 协议会丢弃该数据报.传输的可靠性全由上层协议来提供. 无连接(connectionless):IP 协议对每个数据报的处理是相互独立的.这也说明, IP 数据报

[转] iOS应用架构谈 网络层设计方案

原文地址:http://casatwy.com/iosying-yong-jia-gou-tan-wang-luo-ceng-she-ji-fang-an.html iOS应用架构谈 开篇 iOS应用架构谈 view层的组织和调用方案 iOS应用架构谈 网络层设计方案 iOS应用架构谈 动态部署方案 iOS应用架构谈 本地持久化方案 前言 网络层在一个App中也是一个不可缺少的部分,工程师们在网络层能够发挥的空间也比较大.另外,苹果对网络请求部分已经做了很好的封装,业界的AFNetworking

视频下载工具“硕鼠”与遨游浏览器的比拼(图文)

前两天的一次下载视频经历,发现视频下载也有很多的门道,这不今天就来个视频下载软件大比拼,将常用的两个视频下载软件拉出来溜溜. 1.硕鼠下载视频使用说明 先打开硕鼠的网址 www.flvcd.com. 这不上面列出了硕鼠支持的视频下载网站,现在支持88个,够不够多? 把要下载的网址粘贴到文本框中,开始GO! 经过网站的解析,提示用硕鼠下载. 两种下载方式,如果没装客户端,选第二个. 提示下载一个exe软件,842KB. 下载完后,有个带眼睛的小老鼠,点打开运行. 打开硕鼠的一个软件界面,开始. 上