限于IP层

网络层向运输层提供的服务

面向连接 无连接

IP协议

1
2
3
* 地址解析协议 ARP(Address Resolution Protocol)** 
* 网际控制报文协议 ICMP(Internet Control Message Protocol)**
* 网际组管理协议 IGMP(Internet Group Management Protocol)**

互联时使用中间设备

  • 物理层中继系统:转发器 (repeater)。
  • 数据链路层中继系统:网桥 或 桥接器 (bridge)。
  • 网络层中继系统:路由器 (router)。
  • 网桥和路由器的混合物:桥路器 (brouter)。
  • 网络层以上的中继系统:网关 (gateway)。

    IP地址分类

  • A B C三类*
    1
    2
    3
    4
    5
    6
    网络号|主机号  一共32
    IPv6 128
    IP 地址 ::= { <网络号>, <主机号>}
    A类地址 824 [最大可指派网络126 (2^7 -1 -1)]
    B类地址 1616 [最大可指派网络(2^14 -1 -1)]
    C类地址 24, 8 [最大可指派网络(2^21 -1 -1)]

IP地址与硬件地址报文、数据帧的区别

其他分类方式

  • 子网划分

  • 构成超网

    ARP协议,解决同一个局域网的主机或路由器的IP:MAC问题

  • 不管网络层使用的是什么协议,在实际网络的链路上传送数据帧时,最终还是必须使用硬件地址

  • ARP 高速缓存 (ARPcache),里面有所在的局域网上的各主机和路由器的 IP 地址到硬件地址的映射表。
    格式 < IP address;MAC address;TTL > TTL (Time To Live):地址映射有效时间 。

    1
    2
    3
    4
    5
    存放最近获得的 IP 地址到 MAC 地址的绑定,以减少 ARP 广播的数量。
    为了减少网络上的通信量,主机 A 在发送其ARP请求分组时,就将自己的 IP 地址
    到硬件地址的映射写入 ARP 请求分组。
    当主机 B 收到 A 的 ARP 请求分组时,就将主机 A的这一地址映射写入
    主机 B 自己的 ARP高速缓存中。这对主机 B 以后向 A 发送数据报时就更方便了。
  • ARP请求分组
    包含发送方硬件地址 / 发送方IP 地址/目标方硬件地址(未知时填 0)/ 目标方IP 地址。

  • 本地广播 ARP 请求

  • ARP 响应分组 包含发送方硬件地址/发送方IP地址/目标方硬件地址/目标方 IP 地址。

IP数据报分片

数据报字段格式

  • 转发过程:根据IP数据报的目的地址就可以确定下一跳路由器
    分组转发算法
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    (1) 从数据报的首部提取目的主机的 IP 地址 D, 得出目的网络地址为 N。
    (2) 若网络 N 与此路由器直接相连,则把数据报直接交付目的主机D;
    否则是间接交付,执行(3)。
    (3) 若路由表中有目的地址为 D 的特定主机路由,则把数据报传送给
    路由表中所指明的下一跳路由器;否则,执行(4)。
    (4) 若路由表中有到达网络 N 的路由,则把数据报传送给路由表指
    明的下一跳路由器;否则,执行(5)。
    (5) 若路由表中有一个默认路由,则把数据报传送给路由表中所指
    明的默认路由器;否则,执行(6)。
    (6) 报告转发分组出错。

划分子网

从 主机号借用几位 划分子网号

  • IP地址 ::= {<网络号>, <子网号>, <主机号>}
    与上述转发过程不同点:
    1
    2
    1)路由器在收到 IP 数据报后,再按目的网络号 net-id 和子网号 subnet-id 找到目的子网
    2)通过子网掩码与IP地址进行&操作,匹配,则说明子网掩码代表的这个子网就是目的网络。

CIDR

  • 无分类编址 CIDR,IP地址 ::= {<网络前缀>, <主机号>},中间使用符号‘/’来表示网络前缀

    构成超网

    路由聚合 有利于减少路由器之间选择的次数,从而提高性能。
  • CIDR记法 0 可以省略

最长前缀匹配

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

ICMP

  • 报文格式
  • ICMP首部检验和

    路由选择协议

  • 内部网关协议 RIP ———|
  • 内部网关协议 OSPF ———|–IGP
  • 外部网关协议 BGP 将路由选择协议传递到另一个自制系统中
    使用4种报文
    打开 更新 保活 keepalive 通知 notification

RIP
(1)仅和相邻路由器交换信息。
(2)交换的信息是当前本路由器所知道的全部信息,即自己的路由表。
(3)按固定的时间间隔交换路由信息,例如,每隔30秒。
当网络拓扑发生变化时,路由器也及时向相邻路由器通告拓扑变化后的路由信息。

隧道技术

  • 在 IPv6 数据报要进入IPv4网络时,把 IPv6 数据报封装成为 IPv4 数据报,
    整个的 IPv6 数据报变成了 IPv4 数据报的数据部分。

  • 当 IPv4 数据报离开 IPv4 网络中的隧道时,再把数据部分(即原来的 IPv6 数据报)
    交给主机的 IPv6 协议栈。

NAT技术 网络地址转换(Network Address Translation)

解决:在专用网上使用专用地址的主机如何与互联网上的主机通信(并不需要加密)的问题

1
2
3
4
5
6
7
8
9
内部主机 A 用本地地址 IP A 和互联网上主机 B 通信所
发送的数据报必须经过 NAT 路由器。

NAT 路由器将数据报的源地址 IP A 转换成全球地址IP G ,
并把转换结果记录到NAT地址转换表中,目的地址 IP B 保持不变,然后发送到互联网。

NAT 路由器收到主机 B 发回的数据报时,知道数据报中的源地址是 IP B 而目的地址是 IP G 。

根据 NAT 转换表,NAT 路由器将目的地址 IP G 转换为IP A ,转发给最终的内部主机 A。