什么是南北向接口?
南北向接口(Northbound Interface/Southbound Interface)是网络架构中的关键通信机制:
- 北向接口(NBI):允许底层网络组件与高层或中心组件通信的API或协议
- 南向接口(SBI):允许高层组件向底层网络组件发送命令的API或协议
这些接口虽与软件定义网络(SDN)紧密关联,但同样适用于任何采用中心-节点(hub-and-spoke)或控制器-节点架构的系统。
南北向接口的通俗解释
在网络拓扑中,“北”和“南”可类比地图方向:
- 高层组件(如网络自动化工具、管理控制台)位于拓扑顶部(北)
- 底层组件(如交换机、路由器)位于底部(南)
- 东西向接口则用于同级组件间通信(如数据中心内服务器间通信)
网络中的南北向流量
需区分接口与数据流:
- 接口:定义发送方、接收方及数据格式的双向API
- 流量方向:
- 南北流量:进出内部网络的流量(如服务器与外部客户端通信)
- 东西流量:网络内部设备间流量
- 安全意义:南北流量增多可能增加外部网络攻击风险(如勒索软件、数据泄露)
南北向接口的优势
北向接口 benefits:
- 抽象网络复杂性,简化管理
- 提升系统配置的灵活性与可编程性
- 支持集中化管理、资源高效分配及实时监控
- 加速应用部署并降低运营成本
南向接口作用:
- 实现策略配置与设备可行性配置
- 将高层命令转化为实际设备配置
- 增强网络控制与管理效率
SDN中的南北向接口
在SDN架构中:
- 控制层SDN控制器居中,北向/南向以其为参考系
- 接口仅传输控制命令,数据流独立于数据层
北向接口在SDN中的应用
- 提供应用层(网络编排软件、第三方应用)与控制层间的标准化通信(常采用REST API)
- 示例平台:OpenDaylight、Open Networking OS、Cisco APIC
南向接口在SDN中的应用
- 实现控制层与数据层(物理/虚拟交换机)间通信
- 常用协议:OpenFlow、SNMP、OSPF、NetConf、MPLS、IS-IS
实际应用案例
- 基础示例:
- 网络工程师通过编排软件定义路由→经北向接口发送指令至SDN控制器→经南向接口配置物理交换机
- 微软Azure负载均衡:
- 操作员通过Windows Admin Center(应用层)设置状态→经PowerShell(北向接口)发送命令至SLB→SLB经BGP(南向接口)更新虚拟路由器配置→异常时自动重配并通知操作员
其他系统中的扩展应用
南北向接口概念可泛用于任何含自动化控制系统与节点的架构(如协调器与组件间多API通信场景),替代总线架构实现更清晰的责任分离。