计算机网络速成【网络层】

网络层

功能

异构网络互联

 

路由与转发:路由选择(确定哪一条路径),分组转发(当一个分组到达时所采取的动作)

 

拥塞控制:开环控制,再做决定时不考虑当期那网络状态;闭环控制,基于反馈环路的概念,是一种动态的算法

确保子网能够承载所达到的流量

 

路由算法

静态路由和动态路由。

静态路由算法(非自适应路由算法),由网络管理员手动配置路由信息,简单可靠;

动态路由算法(自适应路由算法),有助于流量控制,常用的有:距离-向量路由算法和链路状态路由算法,按照一定算法优化出来

距离-向量算法

所有结点定期将它们的整个路由选择表传送给所有与之直接相邻的结点。路由表包括目的地和代价(跳数),存在慢收敛,因此可能出现环路。常见的是RIP算法

链路状态路由算法

距离-向量算法中,每个结点仅与邻居交谈;链路状态算法中,每个结点通过广播的方式跟其他结点交谈

层次路由

一个自治系统内部所使用的路由选择协议称为内部网关协议(IGP),具体有RIP何OSPF等;自治系统之间使用的路由选择协议称为外部网关协议,具体有BGP

IPV4

IPV4分组

格式

 首部长度:

        占4位,可以表示的最大十进制数是15。以32位为单位,最大值为60B ( 15×4B)。最常用的首部长度是20B,此时不使用任何选项(即可选字段)

总长度:

        占16位。指首部和数据之和的长度,单位为字节,因此数据报的最大长度为65535B。以太网帧的最大传送单元(MTU)为1500B,因此当一个IP数据报封装成帧时,数据报的总长度(首部加数据)一定不能超过下面的数据链路层的MTU值

标识:

        每产生一个数据报就加1 ,当一个数据报的长度超过网络的MTU时,必须分片,此时每个数据报片都复制一次标识号,以便能正确重装成原来的数据报

标志:

        占3位。标志字段的最低位为MF, MF=1表示后面还有分片;标志字段中间的一位是DF,只有当DF=0时才允许分片偏移。

分片偏移:

        它指出较长的分组在分片后,某片在原分组中的相对位置。片偏移以8个字节为偏移单位,即每个分片的长度一定是8B的整数倍

IP数据报分片

        一个数据链路层数据报能承载的最大数据量称为最大传送单元(MTU)。因为IP数据报被封装在数据链路层数据报中,因此数据链路层的MTU严格地限制着IP数据报的长度,而且在IP数据报的源与目的地路径上的各段链路可能使用不同的数据链路层协议,有不同的MTU

 

转发分组的流程

 网络层转发分组的流程
1、从数据报的首部提取目的主机的IP地址D,得出目的网络地址N

2、若网络N与此路由器直接相连,则把数据报直接交付给目的主机D,这称为路由器的直接交付;否则是间接交付,执行步骤3

3、若路由表中有目的地址为D的特定主机路由(对特定的目的主机指明一个特定的路由,通常是为了控制或测试网络,或出于安全考虑才采用的),则把数据报传送给路由表中所指明的下一跳路由器;否则,执行步骤4。

4、若路由表中有到达网络N的路由,则把数据报传送给路由表指明的下一跳路由器︰否则,执行步骤5

5、路由表中有一个默认路由,则把数据报传送给路由表中所指明的默认路由器;否则,执行步骤6

6、报告转发分组出错

IPV4地址与NAT

IPV4地址

 127.0.0.0保留为环回自检(LoopbackTest)地址,此地址表示任意主机本身,目的地址为环回地址的IP数据报永远不会出现在任何网络上;

32位全为0,即0.0.0.0表示本网络上的本主机;

32位全为1,即255.255.255.255表示整个TCP/IP网络的广播地址,又称受限广播地址。实际使用时,由于路由器对广播域的隔离,255.55255.255等效为本网络的广播地址

网络地址转换

网络地址转换(NAT)是指通过将专用网络地址转换为公用地址,从而对外隐藏内部管理的IP地址。
私有IP地址网段如下∶

A类:1个A类网段,即10.0.0.0~10.255.255.255。

B类:16个B类网段,即172.16.0.0~172.31.255.255。

C类: 256个C类网段,即192.168.0.0~192.168.255.255。

用NAT时需要在专用网连接到因特网的路由器上安装NAT软件,.NAT路由器至少有一个有效的外部全球地址

使用本地地址的主机和外界通信时,NAT路由器使用NAT转换表将本地地址转换成全球地址,或将全球地址转换成本地地址

NAT转换表中存放着{本地IP地址∶端口)到{全球IP地址∶端口}的映射

通过{ip地址∶端口}这样的映射方式,可让多个私有IP地址映射到同一个全球IP地址

子网划分与子网掩码、CIDR

子网划分

子网划分的基本思路如下:

子网划分纯属一个单位内部的事情。单位对外仍然表现为没有划分子网的网络从主机号借用若干比特作为子网号,当然主机号也就相应减少了相同的比特。三级IP地址的结构如下∶IP地址={<网络号>,<子网号>,<主机号>}

凡是从其他网络发送给本单位某台主机的IP数据报,仍然是根据IP数据报的目的网络号,先找到连接到本单位网络上的路由器。然后该路由器在收到IP数据报后,按目的网络号和子网号找到目的子网。最后把I数据报直接交付

子网掩码

子网掩码是一个与IP地址相对应的、长32bit的二进制串,它由一串1和跟随的一串0组成

其中,1对应于IP地址中的网络号及子网号,而o对应于主机号

计算机只需将IP地址和其对应的子网掩码逐位"与”(逻辑AND运算),就可得出相应子网的网络地址

无分类域间路由选择(CIDR)

消除了传统A、B、C类地址及划分子网的概念,因而可以更有效地分配IPv4的地址空间

CIDR使用"网络前缀"的概念代替子网络的概念。因此,IP地址的无分类两级编址为
        IP={<网络前缀>,<主机号>}。

 使用CIDR时,路由表中的每个项目由"网络前缀"和"下一跳地址"组成。在查找路由表时可能会得到不止一个匹配结果。此时,应当从匹配结果中选择具有最长网络前缀的路由,因为网络前缀越长,其地址块就越小,因而路由就越具体

ARP、DHCP与ICMP

IP地址与硬件地址

IP地址是网络层使用的地址,它是分层次等级的

硬件地址是数据链路层使用的地址,在网络层及网络层之上使用IP地址,IP地址放在IP数据报的首部,而MAC地址放在MAC帧的首部

通过数据封装,把IP数据报分组封装为MAC帧后,数据链路层看不见数据报分组中的P地址

地址解析协议ARP

IP工作在网络层,其工作原理如下∶主机A欲向本局域网上的某台主机B发送IP数据报时,先在其ARP高速缓存中查看有无主机B的IP地址

如有,就可查出其对应的硬件地址,再将此硬件地址写入MAC帧,然后通过局域网将该MAC帧发往此硬件地址

如果没有,那么就通过使用目的MAC地址为FF-FF-FF-FF-FF-FF的帧来封装并广播ARP请求分组,使同一个局域网里的所有主机收到ARP请求

主机B收到该ARP请求后,向主机A发出响应ARP分组,分组中包含主机B的IP与MAC地址的映射关系,主机A在收到后将此映射写入ARP缓存,然后按查询到的硬件地址发送MAC帧

动态主机配置协议(DHCP)

动态主机配置协议常用于给主机动态地分配IP地址,它提供了即插即用的联网机制,这种机制允许一台计算机加入新的网络和获取IP地址而不用手工参与

DHCP是应用层协议,它是基于UDP的

DHCP服务器聚合DHCP客户端的交换过程如下∶

DHCP客户机广播"DHCP发现"消息,试图找到网络中的DHCP服务器,以便从DHCP服务器获得一个iP地址

DHCP服务器收到"DHCP发现"消息后,向网络中广播"DHCP提供y消息,其中包括提供DHCP客户机的IP地址和相关配置信息

DHCP客户机收到"DHCP提供"消息,如果接收DHCP服务器所提供的相关参数,那么通过广播"DHCP请求"消息向DHCP服务器请求提供IP地址。

DHCP服务器广播"DHCP确认"消息,将IP地址分配给DHCP客户机

网际控制报文协议(ICMP)

ICMP报文的种类有两种,即ICMP差错报告报文ICMP询问报文

ICMP差错报告报文用于目标主机或到目标主机路径上的路由器向源主机报告差错和异常情况

终点不可达。当路由器或主机不能交付数据报时,就向源点发送终点不可达报文

源点抑制。当路由器或主机由于拥塞而丢弃数据报时,就向源点发送源点抑制报文

时间超过。当路由器收到生存时间为零的数据报时,除丢弃该数据报外还要向源点发送时间超过报文

不应发送ICMP差错报告报文的几种情况下

对ICMP差错报告报文不再发送ICMP差错报告报文

第一个分片的数据报片的所有后续数据报片都不发送ICMP差错报告报文

对具有组播地址的数据报都不发送ICMP差错报告报文

IPV6

主要特点

采用具有更大地址空间的新版本

  • 更大的地址空间,地址增大到了128位;
  • 灵活的首部格式;
  • 允许协议继续扩充;
  • 支持即插即用,即自动配置,无需DHCP;
  • 支持资源预分配;只有在包的源节点才能分片,是端到端的,传输路径中的路由器不能进行分分片;
  • lPv6的首部长度必须是8B的整数倍;
  • 无校验

IPV6地址

当16位域的开头有一些连续的零可以缩写表示,当有相继的O域时,可以用双冒号缩写,但在一个地址中仅能出现一次
IPv4向IPv6的过渡

移动IP 

概念

基于IPv4的移动IP定义三种功能实体︰移动结点、归属代理(也称本地代理和外埠代理(也称外部代理)。归属代理和外埠代理又统称为移动代理。、

三种功能实体

移动结点:具有永久IP地址的移动结点

本地代理:一个移动结点的永久“居所为归属网络,在归属网络中代表移动结移动管理功能的实体成为归属代理(本理),采用隧道技术

外部代理:在外部网络中帮助移动结点动管理功能的实体称为外部代理

移动IP通信过程

基本流程:

移动结点漫游到一个外地网络时,仍然使用固定的P地址进行通信。为了能够收到通信对端发给它的IP分组,移动结点需要向本地代理注册当前的位置地址,这个位置地址就是转交地址

本地代理接收来自转交地址的注册后,会构建一条通向转交地址的隧道,将截获的发给移动结点的IP分组通过隧道送到转交地址处

在转交地址处解除隧道封装,恢复原始的IP分组,最后送到移动结点,这样移动结点在外网就能够收到这些发送给它的IP分组

IP组播

概念

用组播的缘由是,有的应用程序要把一个分组发送给多个目的地主机。不是让源主机给每个目的地主机都发送一个单独的分组,而是让源主机把单个分组发送给一个组播地址,该组播地址标识一组地址

 主机使用一个称为IGMP(因特网组管理协议)的协议加入组播组。它们使用该协议通知本地网络上的路由器关于要接收发送给某个组播组的分组的愿望。通过扩展路由器的路由选择和转发功能,可以在许多路由器互联的支持硬件组播的网络上面实现因特网组播

组播地址

IP组播地址

Р组播使用D类地址格式。D类地址的前四位是1110,因此D类地址范围是224.0.0.0 ~239.255.255.255。每个D类IP地址标志→个组播组

IP组播可以分为两种︰一种只在本局域网上进行硬件组播;另一种则在因特网的范围内进行组播。在因特网上进行组播的最后阶段,还是要把组播数据报在局域网上用硬件组播交付给组播组的所有成员

硬件组播:

 

 

IGMP与组播路由算法

第一阶段︰当某台主机加入新的组播组时,该主机应向组播组的组播地址发送一个IGMP报文,声明自己要成为该组的成员。本地的组播路由器收到IGMP报文后,将组成员关系转发给因特网上的其他组播路由器

第二阶段︰因为组成员关系是动态的,本地组播路由器要周期性地探询本地局域网上的主机,以便知道这些主机是否仍继续是组的成员。只要对某个组有一台主机响应,那么组播路由器就认为这个组是活跃的。但一个组在经过几次的探询后仍然没有一台主机响应时,则不再将该组的成员关系转发给其他的组播路由器

路由协议

自治系统

域内路由与域间路由

路由信息协议(RIP)

RIP规定

网络中的每个路由器都要维护从它自身到其他每个目的网络的距离记录距离也称跳数(Hop Count),规定从一个路由器到直接连接网络的距离(跳数)为1。而每经过一个路由器,距离(跳数)加1

RIP认为好的路由就是它通过的路由器的数目少,即优先选择跳数少的路径RIP允许一条路径最多只能包含15个路由器(即最多允许15跳)

因此距离等于16时,它表示网络不可达

RIP默认在任意两个使用RIP的路由器之间没30秒广播一次RIP路由更新信息,以便自动建立并维护路由表(动态维护)
特点:

  • 仅和相邻路由器交换信息
  • 路由器交换的信息是当前路由器所知道的全部信息,即自己的路由表
  • 按固定的时间间隔交换路由信息,如每隔30秒

距离向量算法

当原来的路由表中没有自的网络N时,把该项自添加到路由表中Y当原来的路由表中有目的网络N,且下一跳路由器的地址是X时,用收到的项目替换原路由表中的项目

当原来的路由表中有目的网络N,且下一跳路由器的地址不是X时,如果收到的项目中的距离d小于路由表中的距离,那么就用收到的项目替换原路由表中的项目;否则什么也不做

缺点:

网络出现故障时,会出现慢收敛现象(即需要较长时间才能将此信息传送到所有路由器),俗称"坏消息传得慢",使更新过程的收敛时间长

开放最短路径优先(OSPF)

基本特点

向本自治系统中的所有路由器发送信息,这里使用的方法是洪泛法

发送的信息是与本路由器相邻的所有路由器的链路状态,但这只是路由器所知道的部分信息

只有当链路状态发生变化时,路由器才用洪泛法向所有路由器发送此信息,并且更新过程收敛得快

OSPF是网络层协议,它不使用UDP或 TCP,而直接用IP数据报传送(其IP数据报首部的协议字段为89);而RIP是应用层协议,它在传输层使用UDP

由于各路由器之间频繁地交换链路状态信息,因此所有路由器最终都能建立一个链路状态数据库。这个数据库实际上就是全网的拓扑结构图,它在全网范围内是一致的(称为链路状态数据库的同步)。然后,每个路由器根据这个全网拓扑结构图,使用Dijkstra最短路径算法计算从自己到各目的网络的最优路径,以此构造自己的路由表

协议边界网关协议(BGP)

是不同自治系统的路由器之间交换路由信息的协议,是一种外部网关协议。边界网关协议常用于互联网的网关之间。路由表包含已知路由器的列表、路由器能够达到的地址及到达每个路由器的路径的跳数

边界网关协议(BGP)只能力求寻找一条能够到达目的网络且比较好的路由(不能兜圈子),而并非寻找一条最佳路由。BGP采用的是路径向量路由选择协议,它与距离向量协议和链路状态协议有很大的区别。BGP是应用层协议,它是基于TCP的

 每个自治系统的管理员要选择至少一个路由器(可以有多个)作为该自治系统的“BGP发言人”

 

 


https://www.bilibili.com/video/BV1Ha411r745?p=4

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值