文章参考:湖科大教书匠

网络层概述

主要功能

  • 在全局范畴为主机之间的通信进行选路,选路的结果反映为分组交换机(设备)上的转发表 (控制层面)

  • 分组交换机(设备)上的网络层根据转发表以及分组头部信息,将分组向适当链路进行转发(数据层面)

  • 对于面向连接的网络层服务,提供连接建立的功能

分组交换机分类

交换机:

  • 连接不同pc端,连接到同一个局域网中

路由器:

  • 连接不同网段
  • 转换网络地址,私网和公网的转换

根据链路层首部信息进行转发的——链路层节点交换机

根据网络层首部信息进行转发的——路由器

虚电路和数据报网络

面向连接的服务——虚电路,需事先握手

面向无连接的服务——数据报,无需握手

路由器工作原理

最长前缀匹配:查找给定目标地址的转发表项时,请使用与目标地址匹配的最长地址前缀

交换结构

路由器的拥塞问题

缓冲区大小

分组调度策略

尾部丢弃:丢弃到达的数据包

优先级:按优先级丢弃/删除

随机:随机丢弃/移除

ip数据报的分片和重组

网络链路具有 MTU (最大传输单位)属性——是由链路层最大帧的限制决定的

  • 不同类型的链路有不同的MTU

大的IP数据报在网络中会被分成小的分片

  • 一个数据报变成了几个数据报

  • 重组只在目的主机进行

  • 数据报头部的标识标志以及片偏移字段用于目的主机对接收的分片进行重组

  • 每个小的分片都需要包含头部信息
  • 标志:1为未结束,0为结束(分片)
  • 片偏移量:每个分片在整个报文中的位置,偏移以8字节为单位,所以需要除以8

ipv4地址概述

分类编址

习题:

\(\color{red}{注意解析3}\)

\(\color{red}{0.0.0.0只能作为源地址}\)

划分子网

子网划分的方法:从主机号中借用一部分位数作为子网号

子网掩码:通过在网络号的子网号相应的位置全置1,主机号相应的位置全置0,即可得到子网掩码

CIDR

构造超网

CIDR编址格式

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

  • 斜线记法:192.168.0.1/24

  • 简写记法:10.0.0.0/10 10/10

ip数据报的发送和转发过程

广播地址路由器不转发

CIDR路由表

使用 CIDR 时,路由表中的每个项目由“网络前缀”和“下一跳地址”组成。在查找路由表时可能会得到不止一个匹配结果。

应当从匹配结果中选择具有最长网络前缀的路由:最长前缀匹配

获得ip地址

手工配置

DHCP: 动态主机配置协议:从服务器上动态获取IP地址

  • 工作在应用层
  • 使用UDP协议工作
  • DHCP有3个端口
  • 67和68为正常的DHCP服务端口,分别作为DHCP Server和DHCP Client的服务端口
  • 546号端口用于DHCPv6 Client,而不用于DHCPv4,是为DHCP failover服务,这是需要特别开启的服务,DHCP failover是用来做“双机热备”的

ICMP协议

NAT

动机: 本地网络只要使用一个IP地址就可以和外部网络相连 :

  • 不需要从 ISP处获得大批IP地址: 所有设备可以使用同一个 IP地址

  • 可以在不通知外部网络的情况下改变内网主机的IP地址

  • 即使改变了ISP也无须改变内网主机的IP地址

  • 内网主机对外网主机而言是不可见的、不可寻址的。(这也算是一项安全措施).

三种地址转换方式

  • 静态NAT:一个本地地址对应一个全球地址

  • 动态NAT:一个全球地址对应多个本地地址

  • 端口NAT:一个本地地址的端口对应到一个全球地址的端口

选路算法

路由信息协议RIP

RIP路由器更新规则

RIP协议中,距离16表示不可达

坏消息传的慢

开放最短路优先OSPF

外部网关协议BGP

因特网上的AS间路由——BGP4

  • 因特网的规模太大,使得自治系统之间路由选择非常困难。对于自治系统之间的路由选择,要寻找最佳路由是很不现实的。自治系统之间的路由选择必须考虑有关策略

  • BGP 为每个AS提供一种手段,以处理

    • eBGP: 从相邻AS获取子网可达性信息
    • iBGP: 向该AS内部的所有路由器传播这些可达性信息
  • 基于该可达性信息和AS策略,决定到达子网的“好”路由

    • 边界网关协议 BGP 只能是力求寻找一条能够到达目的网络且比较好的路由(不能兜圈子),而并非要寻找一条最佳路由

BGP会话:两个BGP路由器间通过半永久的TCP连接来交换BGP消息