计算机网络:网络层——数据平面

版权声明:如果喜欢的话,可以撩我哟,此处没有联系方式,想要就自己找哈。 https://blog.csdn.net/qq_39384184/article/details/84986586

概述

两种重要的网络层功能:转发和路由选择。(forwarding and routing)

  • 数据层面(Data plane)
    • local, per-router function
    • determines how datagram arriving on router input port is forwarded to router output port
    • forwarding function
  • 控制层面(Control plane)
    • network-wide logic
    • determines how datagram is routed among routers along end-end path from source host to destination host
    • two control-plane approaches:
      1. traditional routing algorithms: implemented in routers
      2. software-defined networking (SDN): implemented in (remote) servers

网络服务模型:

  • 传递一个分组:
    • 确保交付。
    • 具有时延上界的确保交付。
  • 传递分组流:
    • 有序分组交付。
    • 确保最小带宽
    • 确保最大时延抖动。
    • 安全性服务。

仅在网络层提供连接服务的计算机网络称为虚电路(Virtual-Circuit, VC)网络;仅在网络层提供无连接服务的计算机网络称为数据报网络(datagram network)

路由器工作原理

路由器的四个组成部分:

  • 输入端口
  • 交换结构
  • 输出端口
  • 路由选择处理器

输入端口

线路段接->数据链路层协议处理->查找、转发、排队->交换结构

  • destination-based forwarding: forward based only on destination IP address (traditional).
    • forwarding table: Destination Address Range->Link Interface.
    • Longest prefix matching.
  • generalized forwarding: forward based on any set of header field values.

交换结构

  • 经内存交换
  • 经总线交换
  • 经互联网络交换(纵横式交换机)

输出端口

交换结构->排队、缓存管理->数据链路层协议封装->线路端接

缓存长度

缓存数量 (B) 应当等于平均往返时延(RTT)乘以链路的容量©,即 B = RTT·C

当有大量的 TCP 流 (N) 流过一条链路时,B = RTT·C√N

调度机制

  • 先进先出,FIFO
  • 优先级调度
  • Round Robin (RR) scheduling
  • Weighted Fair Queuing (WFQ)
  • 随机早期检测,RED

网络协议:IP

网络层的三个重要组件:

  • IP 协议,IP Protocol
  • 路由选择部分,Routing Protocol
  • 网络层差错和信息报告的协议,ICMP Protocol

数据报格式

可变的首部,一般为20字节(不包含选项)。

在这里插入图片描述

IPv4 编址

  • 子网(subnet)
  • 无类别域间路由选择(Classless Interdomain Routing, CIDR)
  • 地址聚合(address aggregation)或路由聚合( route aggregation)

获取 IP 地址:动态主机配置协议(Dynamic Host Configuration, DHCP),即插即用协议(plug-and- play protocol)

  • DHCP 服务器发现(255.255.255.255)
  • DHCP 服务器提供(255.255.255.255)
    • IP 地址
    • 默认路由器
    • 默认 DNS 服务器
    • 网络掩码
  • DHCP 请求
  • DHCP ACK

网络地址转换(Network Address Translation, NAT):使用 NAT 转换表( NAT translation table),将 LAN 中不同 IP 地址转换为 WAN 中同一 IP 的不同端口号。但是 NAT 协议违反了端到端的原则,阻碍了 P2P 应用,可以使用NAT 穿越

IPv6

IPv6 数据报格式,有固定的40字节的首部

在这里插入图片描述

IPv6 中移除了 IPv4 的字段:

  • 分片/重新组装:只在源与目的地上执行,简化路由器,加快了网络中的 IP 转发速度。
  • 首部检验和:依靠运输层和数据链路层的检验操作。
  • 选项:下一个首部可以为选项地址也可以为链路层协议地址。

IPv4 到 IPv6 的迁移

  • 双栈
  • 建隧道(使用 IPv4 数据报包裹 IPv6 数据报)

广义转发和 SDN

流程表(flow table)

  • Pattern: match values in packet header fields.
  • Actions: for matched packet: drop, forward, modify, matched packet or send matched packet to controller.
  • Priority: disambiguate overlapping patterns.(消除歧义)
  • Counters: #bytes or #packets.

可以被用在:

  • 路由器
    • match: longest destination IP prefix.
    • action: forward out a link.
  • 交换机
    • match: destination MAC address.
    • action: forward or flood.
  • 防火墙
    • match: IP addresses and TCP/UDP port numbers.
    • action: permit or deny.
  • NAT
    • match: IP address and port.
    • action: rewrite address and port.

猜你喜欢

转载自blog.csdn.net/qq_39384184/article/details/84986586