计算机网络【CN】Ch4 网络层

2024-04-23 07:20

本文主要是介绍计算机网络【CN】Ch4 网络层,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

总结

一台主机可以有多个IP地址,但是必须属于多个逻辑网络【不同的网络号】。

解决IP地址耗尽:

IP地址结构:

划分子网:𝐼𝑃地址=<网络号>,<子网号>,<主机号>

CIDR:IP地址={<网络前缀>:<主机号>}

默认网关:最近的路由器相邻端口的地址

子网掩码:由/xx决定,即前xx位填1,后32-xx位为0.

【1】子网划分与子网掩码

一个子网定义(X.X.X.X/n)

  • 子网掩码为 n 个 1,32-n 个 0
  • 包含的 IP 地址数:2^32−n
    • 主机号全 0 表示本网段
    • 主机号全 1 表示网段的广播地址

子网划分原则

  • 满足子网定义
  • 原子网 A中出现的 IP 地址不能有剩余

划分方法

  • 定长子网划分
  • 变长划分
    • 将子网划分成任意大小的子网

  • 掌握这个是超级重点

 IPV4报文格式【20B】

  • 版本(4bit):IPV4/IPV6
  • 首部长度(4bit):标识首部的长度
    • 单位是4B
    • 最小为:首部固定部分20B
    • 最大为:60(15*4)B
  • 总长度(16bit):整个数据报(首部+数据)的长度
    • 数据报的最大长度:216−1=65535𝐵 ,封装成帧时,需要分片,不能超过下一层的MTU
    • 不是指分片前的数据报长度,而是指分片后的每个分片的首部长度与数据长度的总和。
    • 单位是1B
    • 最小是64B【考虑到CSMA/CD最小帧长
    • 最大是1500B【以太网帧的最大传送单元MTU,数据部分有1480B,是规定
  • 标识(16bit):分片时,同一数据报的分片使用同一标识
  • 标志(3bit):
    • 最高位无用
    • 中间位DF(Don’t Fragment)
      • DF=1:禁止分片
      • DF=0:允许分片
    • 最低位位MF (More Fragment)
      • MF=1:后面还有分片
      • MF=0:最后一个分片
  • 片偏移(13bit):指超出MTU的分组分片后,某片在原分组中的相对起始位置
    • 单位是8B【除了最后一个分片外,每个分片的长度一定是8B的整数倍
  • 生存时间TTL(8bit):IP分组在网络中可以通过的路由器的最大值
    • 路由器在转发分组之前,先将TTL减一【经过几个路由器,TTL就减几,经过主机不减】
    • 当接收到的分组的TTL0时,丢弃该分组
  • 协议(8bit):数据部分(即传输层报文段)所采用的协议
    • TCP:6
    • UPD:17
  • 首部检验和(16bit):仅仅检验首部信息
  • 源地址、目的地址(各32bit):来源和目标的IP地址
  • 可选字段(0~40B):支持排错、 测量以及安全等措施
  • 填充:保证首部长度为4B的整数倍

相关考点:

  • IPV4数据报分片
    • 以太网帧的最大传送单元MTU1500B,数据部分有1480B
    • 分片之后会变化的字段:
      • 标志FLAG
      • 片偏移
      • 总长度
      • 校验和
  • 分片的过程:
    • IP分组的总长度为L,待转发的链路的MTUM,若𝑳>𝑴且𝑫𝑭=𝟎,则需要分片
    • 除了最后一个分片,其他分片均分为MTU允许的最大分片
    • 最大分片封装的数据应该是8的倍数,因此,一个最大分片可以封装的数据是:
    • 每片的总长度字段:
  • 分片相关例题:假设分片长度不能超过1420B:

ARP:IP->MAC

  • 查找ARP高速缓存:
    • 当主机B要给主机C发送数据包时,会首先在自己的ARP高速缓存表中查找主机C的IP地址所对应的MAC地址。但未找到,因此,主机B需要发送ARP请求报文,来获取主机C的MAC地址

  • 当目的主机在局域网内时:
    • ARP请求报文被封装在MAC帧中发送,目的地址为广播地址
    • 收到ARP请求报文的主机A和主机C会把ARP请求报文交给上层的ARP进程
    • 主机A发现所询问的IP地址不是自己的IP地址,因此不用理会
    • 主机C的发现所询问的IP地址是自己的IP地址,需要进行相应处理

  • 当目标主机不在本网络时:
    • 目的MAC地址设为默认网关(本网络出口路由器)的MAC地址【获取默认网关的方法仍为ARP协议】
  • 注意:
    • ARP协议只能在一段链路或一个网络上使用,而不能跨网络使用
    • ARP协议的使用是逐段链路进行的

  • ARP表中的IP地址与MAC地址的对应关系记录,是会定期自动删除的,因为IP地址与MAC地址的对
    应关系
    不是永久性的
  • 总结:

 RIP

  • 当到达同一目的网络有多条“距离相等"的路由时,可以进行等价负载均衡。【对于同一个目的网络,路由表将提供了多个送出接口,每个出口对应于一条等价路径。路由器将通过路由表中列出的这些送出接口转发数据包。
     

 

  • RIP存在“坏消息传播得慢”的问题

  • RIP是应用层协议,它使用UDP传输数据(端口520

SDN

一、数据平面和控制平面

SDN(Software-defined Network,软件定义网络),在学习SDN之前,首先要了解控制平面数据平面,网络层能够被分解为两个相互作用的部分,即数据平面和控制平面,传统上控制平面路由选择协议(如OSPF、BGP)和数据平面转发功能已被实现成一个整体,位于一台路由器中。

  • 数据平面:即网络层中每台路由器的转发的功能,该数据平面功能决定到达路由器输入链路之一的数据报如何转发到该路由器的输出链路之一。
  • 控制平面:作为一种网络范围的逻辑,不仅控制沿着从源主机到目的主机的端到端路径间的路由器如何转发数据报,而且控制网络层组件和服务如何配置和管理。

SDN通过将这些控制平面功能作为一种单独服务,明确地分离数据平面和控制平面,控制平面功能通常置于一台远程“控制器”中。

二、两种重要的网络层功能

  • 转发。当一个分组到达某路由器地一条输出链路时,该路由器必须将该分组移动到适当地输出链路。将分组从一个输入链路接口转移到适当地输出链路接口地路由器本地动作,转发地时间尺度很短(通常为几纳秒),因此通常用硬件来实现。
  • 路由选择。当分组从发送方流向接收方时,网络层必须决定这些分组所采用地路由或路径。计算这些路径地算法被称为路由选择算法,计算出路径之后会生成转发表。确定分组从源到目的地所采取地端到端路径的网络范围处理过程,路由选择发生的时间尺度长得多(通常为几秒),因此通常用软件来实现。

三、实现控制平面的方法

1. 控制平面:传统方法

  • 路由选择算法决定了插入该路由器转发表的内容,路由选择算法运行在每台路由器中,并且在每台路由器中都包含转发和路由选择两种功能。
  • 这是路由选择厂商在其产品中采用的传统方法,使用该方法,每台路由器都有一个与其他路由器通信的路由选择组件。

IPV6

IPv6 地址的标识方法

  • IPv6 地址长度是 128 位,是以每 16 位作为一组
  • 每组用冒号 「:」 隔开。
  • 如果出现连续的 0 时还可以将这些 0 省略,并用两个冒号 「::」隔开
  • 但是,一个 IP 地址中只允许出现一次两个连续的冒号

IPv6 地址的结构

  • 单播地址,用于一对一的通信
  • 组播地址,用于一对多的通信
  • 任播地址,用于通信最近的节点,最近的节点是由路由协议决定

 

IPv6 的亮点

  • IPv6 可自动配置【即插即用
  • IPv6 首部长度采用固定的值 40 字节去掉了校验和
  • IPv6安全性提高了

 

IPv6 相比 IPv4 的首部改进

  • 取消了首部校验和字段
    • 因为在数据链路层和传输层都会校验,因此 IPv6 直接取消了 IP 的校验
  • 取消了分片/重新组装相关字段
    • 分片与重组是耗时的过程,IPv6 不允许在中间路由器进行分片与重组
    • 这种操作只能在源与目标主机,这将大大提高了路由器转发的速度
  • 取消选项字段
    • 选项字段不再是标准 IP 首部的一部分了
    • 但它并没有消失
    • 而是可能出现在 IPv6 首部中的「下一个首部」指出的位置上
    • 删除该选项字段使的 IPv6 的首部成为固定长度的 40 字节

 

IPv6与IPv4的协议改进

  • 与IPv4协议配套使用的网际层协议有:ICMP、IGMP、ARP和RARP。
  •  在IPv6中,ICMPv6包括了IPv4中的ARP和IGMP的功能。邻站询问和邻站通告报文代替了原来的ARP协议,而多播听众发现报文替代了原来的IGMP协议。另外,IPv6取消了RARP协议。因此,与IPv6配套使用的网际层协议只有ICMPv6一个协议

 IP地址的分类

A类最大可用网络数 2 的原因是:

第一,IP 地址中的全 0 表示“这个(this”。网络号字段全 0 IP 地址是个保留地址,意思是“本网络”;

第二,网络号为 12701111111)保留作为本地软件环回测试loopback test)本主机的进程之间的通信之用。

特殊的IP地址

255.255.255.255:表示整个TCP/IP网络的广播地址【受限广播地址】,由于路由器对广播域的隔离,等效为本网络的广播地址。

私有IP地址

网络地址转换NAT

 移动IP

移动IP技术:移动结点(计算机/服务器等)以固定的网络IP地址,实现跨越不同网段的漫游功能,并保证了基于网络IP的网络权限在漫游过程中不发生任何改变。

移动结点

具有永久IP地址的移动设备。

归属代理(本地代理)

一个移动结点的永久居所称为归属网络,在归属网络中代表移动节点执行移动管理功能的实体叫做归属代理。

永久地址(归属地址/主地址)

移动站点在归属网络中的原始地址。

外部代理(外地代理)

外部网络中帮助移动节点完成移动管理功能的实体称为外部代理。

转交地址(辅地址)

可以是外部代理的地址或动态配置的--个地址。

网络层设备

这篇关于计算机网络【CN】Ch4 网络层的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/928134

相关文章

计算机网络基础概念 交换机、路由器、网关、TBOX

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、VLAN是什么?二 、交换机三、路由器四、网关五、TBOXTelematics BOX,简称车载T-BOX,车联网系统包含四部分,主机、车载T-BOX、手机APP及后台系统。主机主要用于车内的影音娱乐,以及车辆信息显示;车载T-BOX主要用于和后台系统/手机APP通信,实现手机APP的车辆信息显示与控

CCF推荐C类会议和期刊总结(计算机网络领域)

CCF推荐C类会议和期刊总结(计算机网络领域) 在计算机网络领域,中国计算机学会(CCF)推荐的C类会议和期刊为研究者提供了广泛的学术交流平台。以下是对所有C类会议和期刊的总结,包括全称、出版社、dblp文献网址以及所属领域。 目录 CCF推荐C类会议和期刊总结(计算机网络领域) C类期刊 1. Ad Hoc Networks 2. CC 3. TNSM 4. IET Com

IEEE会议投稿资料汇总http://cadcg2015.nwpu.edu.cn/index.htm

最近投了篇IEEE的顶级会议文章,一下是比较有用的一些资料,以供参考。 1.会议主页:http://cadcg2015.nwpu.edu.cn/index.htm     (The 14th International Conference on Computer-Aided Design and Computer Graphics (CAD/Graphics 2015)) 2.I

Hibernate插入数据时,报错:org.springframework.dao.DataIntegrityViolationException: could not insert: [cn.itc

在用junit测试:插入数据时,报一下错误: 错误原因: package junit;import org.junit.Test;import cn.itcast.crm.container.ServiceProvinder;import cn.itcast.crm.dao.ISysUserDao;import cn.itcast.crm.domain.SysRole;

网络层 VII(IP多播、移动IP)【★★★★★★】

一、IP 多播 1. 多播的概念 多播是让源主机一次发送的单个分组可以抵达用一个组地址标识的若干目的主机,即一对多的通信。在互联网上进行的多播,称为 IP 多播(multicast , 以前曾译为组播)。 与单播相比,在一对多的通信中,多播可大大节约网络资源。假设视频服务器向 90 台主机传送同样的视频节目,单播与多播的比较如下图所示。 下图(a)是视频服务器用单播方式向 90 台主机传

[计算机网络]-计网学习笔记-计网知识点总结(附完整笔记)

本笔记是跟着 b站 湖科大教书匠 视频做的笔记,其中图片为视频中的 PPT,加上了自己的注释。         这是原视频链接。大家可以参照着笔记看原视频。视频中的 PPT 做的非常好。         【计算机网络微课堂(有字幕无背景音乐版)】https://www.bilibili.com/video/BV1c4411d7jb?vd_source=1146b07cc2d66

【PyTorch】使用容器(Containers)进行网络层管理(Module)

文章目录 前言一、Sequential二、ModuleList三、ModuleDict四、ParameterList & ParameterDict总结 前言 当深度学习模型逐渐变得复杂,在编写代码时便会遇到诸多麻烦,此时便需要Containers的帮助。Containers的作用是将一部分网络层模块化,从而更方便地管理和调用。本文介绍PyTorch库常用的nn.Sequen

计算机网络知识自学笔记(Chatgpt 回答)

目录 文章目录 phy芯片 lan8720A 和网卡的区别???MAC地址 和IP的区别是啥???1. **用途和作用范围**:2. **层次差异**:3. **分配方式**:4. **持久性和作用**:5. **数据传输中的作用**:小结: 还有网关 是啥 可以举个通俗易懂的例子吗通俗易懂的例子:具体应用:小结: 结合这个案例 可以讲下 ip地址和mac地址分别是啥 和作用分别是啥吗?

第十六篇:走入计算机网络的传输层--传输层概述

1. 传输层的功能 ① 分割与重组数据 一次数据传输有大小限制,传输层需要做数据分割,所以在数据送达后必然也需要做数据重组。 ② 按端口号寻址 IP只能定位数据哪台主机,无法判断数据报文应该交给哪个应用,传输层给每个应用都设置了一个编号,这个编号就是端口,目的端口可以定位报文应该发给哪个应用处理。 ③ 连接管理 面向连接的传输,需要对连接进行管理。 ④ 差错控制和流量控制

计算机网络11——数据库语法2

目录 1、变量 (1)局部变量 (2)会话变量 (3)系统变量 2、判断选择 (1)if选择语法 (2)case选择 3、循环 (1)while循环 (2)其他循环 4、存储过程 5、触发器 6、事务:transaction 事务的特性 使用 1、变量 (1)局部变量 函数里面定义的,变量名  类型 (2)会话变量 本次连接会话有效,不需要定义声明,直接