网络层

网络层

职责

  • 向上只提供简单灵活的、无连接的、尽最大努力交互数据报服务
    • 无连接的: 事先不建立固定的连接(虚连接/虚电路)
    • 尽最大努力: 不保证可靠传输,不进行拥塞控制
    • 数据报: 网络层传输的数据单位

IP地址—有分类、无分类

  • IP协议——规定地址格式,统一不同网络
    • 网络层地址格式(4Byte 32bit): 网络地址 + 主机地址(不包含全0、全1)
  • 子网划分
    • 结构: 网络号+子网号+主机号
    • 子网掩码: 网络号部分为1、主机号部分为0
  • CIDR(无类域间路由)
    • 结构: IP地址(网路前缀+主机号)/前缀长度
    • 路由聚合(超网):
      • 目的: 将多个子网汇聚到同一个网段(超网),以便减小路由表规模
      • 方式: 将各子网IP展开为2进制,从头检查直到第一个不相同的比特开始置为0直到末尾,最后得到该网段IP。前缀长度为比特值相同的最长公共前缀长度
IPv4地址分类 网络地址 主机地址 范围 私有/保留地址
A类 1 Byte, 0~126 3 Byte 1.0.0.1~126.255.255.254 10.x.x.x(私有), 127.x.x.x(保留)
B类 2 Byte, 128.0~191.255 2 Byte 128.0.0.1~191.255.255.254 172.16.x.x~172.31.x.x(私有), 169.254.x.x(保留)
C类 3 Byte, 192.0.0~223.255.255 1 Byte 192.0.0.1~223.255.255.254 192.168.x.x(私有)
D类 224.0.0.1~239.255.255.254
E类 240.0.0.1~255.255.255.254
  • IP数据报结构(首部(固定部分20B + 可变部分) + 数据)
    • 首部固定部分
      • 版本(IPv4 or IPv6)
      • 首部长度(以word(4B)为单位,至少为5(固定部分), 最多为15)
      • 区分服务(区分服务优先级别)
      • 总长度(数据包总长)
      • 分片
        • 标识(分片情况下用以区分分片是否属于同一数据报)
        • 片偏移(该分片相对于数据报头部的偏移长度,以8字节为单位)
      • 生存时间(TTL, 最多几跳后丢弃)
      • 协议(为哪个上层协议服务: ICMP、TCP、UDP。。。)
      • 首部校验和(每次经过一个路由器都要重新校验)
      • 源IP
      • 目的IP
  • 网络地址转换(NAT/NAPT)
    • NAT将专用网内部IP(私有/保留)转换为可以与互联网中主机通信的全球IP
    • NAPT将IP地址与端口号结合,能够使专用网内多个IP公用外部一个全球IP。

路由/转发

  • 路由器结构: 上层路由选择、下层分组转发(进出端口、交换结构)
  • 转发流程:
    • 提取目的IP的网络号,查询路由表(目的网络、下一跳)
    • 路由器处于目的网络内(有端口与其相连),则直接发送给目的主机
    • 若目的网络有特定路由, 则转发给特定路由
    • 若无特定路由且路由表中有对应的下一跳地址,则转发下一跳
    • 若存在默认路由,则转发给默认路由
    • 报告转发分组出错
  • 路由选择协议——自适应、以自治系统AS为单位
    • 自治系统内部: RIP、OSPF
    • 自治系统之间: BGP

相关协议—ARP/ICMP

  • ARP协议—为数据报的链路传输寻找正确的目的物理地址(MAC)

    • ARP缓存: 保存主机已知的同一网络内主机IP和MAC地址的映射。
    • ARP请求分组/响应: 对于ARP缓存中不存在的IP,源主机使用广播的方式发送ARP请求分组,目的主机收到请求后单播回送ARP请求响应,源主机将其记录到ARP缓存
  • ICMP协议—向上层汇报传输中的错误、回送的请求,提高转发的可靠性

    • 格式: 将ICMP报文(数据报)直接封装到另一个数据报中(作为数据部分)返回给源IP地址
    • 差错报告报文
    • 询问报文
    • Ping—测试两台主机间的连通性
      • 向目的主机发送ICMP Echo请求报文,目的主机收到之后会发送 Echo 回答报文。Ping 会根据时间和成功响应的次数估算出数据包往返时间以及丢包率
    • TraceRoute—追踪IP数据报从源IP到达目的IP的路由
      • 源IP向目的IP发送一系列TTL递增、内容为不可交付UDP数据报的IP数据报,转发路径上一系列路由节点依次接收并回送终点不可达的ICMP差错报告报文
原文地址:https://www.cnblogs.com/CodeSPA/p/13549600.html