3.1 网络控制平面
在软件定义访问网络交换矩阵中,控制平面节点跟踪所有连接到网络交换矩阵的终端并将其记录到自身内置的数据库中,并负责以下工作:
(1) 注册连接到边缘节点的所有终端并跟踪它们在网络交换矩阵中的位置;
(2) 响应网络元素关于网络交换矩阵中终端位置的查询;
(3) 确保当终端从一个位置移动到另一个位置时,通信流量被重新定向到当前位置。请参阅图 3-1显示的控制平面操作。
图 3-1 网络交换矩阵控制平面操作
(1) 边缘节点 1上的终端 1将注册到网络交换矩阵的控制平面节点。注册包括终端 1的
IP地址、MAC地址和所在位置(在图3-1中是网络交换矩阵边缘节点1)。
(2) 边缘节点 2上的终端 2也将注册到网络交换矩阵的控制平面节点。注册包括终端 2的IP地址、MAC地址和所在位置(在图3-1中是网络交换矩阵边缘节点2)。
(3) 当终端 1要与终端 2通信时,边缘节点 1将查询网络交换矩阵控制平面节点,以定位终端 2。
(4) 获得答复后(终端2的位置位于边缘节点2),它将使用VXLAN封装来自终端1的通信,并将其发送到终端2(通过边缘节点2)。
(5) 一旦流量到达边缘节点2,它将被解封装并转发到终端 2。
(6) 当终端2要与终端1通信时,同(3)。
软件定义访问控制平面协议完成端点的映射和解析时,使用了位置/ID分离协议(LISP)来完成该项任务。LISP协议的优势在于不仅提供了基于IP地址作为终端设备的端点标识
(EID),还提供了一个附加的IP地址作为路由位置标识(RLOC),两者结合起来表示该终端设备所在的网络位置。EID和 RLOC组合为通信转发提供了所有必要的信息,即使端点设备使用了固定的 IP地址并出现在不同的网络位置也是如此。与传统网络中的 IP子网与网络网关一一对应的耦合关系不同,网络交换矩阵控制平面将端点标识与其所在位置解耦,这使同一 IP子网中的地址可以在多个三层网关之后使用。在图 3-2所示的例子中,子网属于叠加网络的一部分,它们被拉伸并且跨越了网络物理上分离的三层设备。RLOC 接口是在同一子网或不同子网的终端之间建立连接所需的唯一可路由地址。
图 3-2LISP
RFC6830和其他相关 RFC将 LISP定义为网络架构和一组用于实施IP寻址和转发的新语义的协议。在传统IP网络中,使用 IP地址将终端及其物理位置标识为路由器上分配的子网的一部分。在启用LISP的网络中,一个IP地址用作设备的终端标识符(EID),另一个IP地址用作路由定位器(RLOC),用于标识该设备的物理位置(通常是EID连接到的路由器的环回地址)。EID和 RLOC相组合,可为流量转发提供必要的信息。RLOC地址是底层网络路由域的一部分,而且 EID可以独立分配,不必与位置相关。
LISP体系架构需要一个映射系统来存储EID并将其解析为对应的 RLOC。这类似于使用DNS来解析主机名的 IP地址,也类似于前面提到的 VXLAN数据平面中的 VTEP映射。EID前缀(带有 32位“主机”掩码的 IPv4地址或 MAC地址)连同其关联的 RLOC一起注册到映射服务器中。当向 EID发送流量时,将源 RLOC查询发送到映射系统以确定流量封装的目的RLOC。与 DNS一样,本地节点可能没有网络中所有终端的信息,此时需要询问映射系统的相关信息(采用拉取模型),然后将信息缓存以提高效率。
虽然在部署软件定义访问网络交换矩阵时不需要完全理解 LISP和 VXLAN,但了解这些技术如何支持部署目标是很有帮助的,包括LISP架构提供的优势。
(1) 网络虚拟化,使用 LISP实例 ID保持独立的 VRF拓扑。从数据平面的角度来看,
LISP实例 ID映射到 VNI。
(2) 子网扩展,可以将单个子网扩展到多个 RLOC中。将EID与 RLOC分离后可以跨不同的 RLOC扩展子网。LISP架构中的 RLOC相当于 VXLAN中的 VTEP功能,用于在三层网络中封装 EID流量。因此,可以跨多个RLOC实现任播网关,即便当客户端跨扩展子网移动到不同的物理连接点时,EID客户端配置(IP地址、子网和网关)也可以保持不变。
(3) 较小的路由表,只有 RLOC需要在全局路由表中可达。本地EID缓存在本地节点上,而远程 EID则通过会话学习获知。会话学习过程只在转发表中填充通过该节点通信的终端。借助此功能可以高效利用转发表。
在图 3-3所示的例子中,两个子网属于重叠网络的一部分并且跨物理上独立的路由器
展。RLOC 接口是属于同一子网或不同子网的终端之间建立连接所需的唯一可路由地址。
图 3-3子网拉伸示例