首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

浅谈 NCSI 及其在 Linux 上的实现(1)

浅谈 NCSI 及其在 Linux 上的实现(1)

引言网络技术的飞速发展使得人们对于服务器的带外可管理性及可控制性提出了更高的要求。通过带外管理,工程师可以在任意地点通过网络连接到相应的服务器上,进行一系列的管理与维护,而不再需要长时间驻守在嘈杂的实验室环境中。NCSI(Network Controller Sideband Interface)就是一个由分布式管理任务组(Distributed Management Task Force, DMTF)定义的用于支持服务器带外管理的边带接口网络控制器的工业标准。
NCSI 的简单介绍一般地,服务器的网络管理模块结构如图 1 所示:
图 1. 服务器的网络管理模块结构图它主要包括:一个管理控制器(Management Controller, MC),一个或多个(NCSI 的电气特性最多支持 4 个)网络控制器(Network Controller, NC)。网络控制器一方面连接了外部网络接口与内部主机接口,另一方面,又与管理控制器之间有一个带外接口。
通过带外接口的网络数据包主要分为两类:一类是在外部网络与管理控制器之间传输的普通数据包,网络控制器对于这类数据包只作转发处理;另一类是在管理控制器与网络控制器之间传输的携带控制信息的数据包,他们往往是管理控制器对网络控制器配置的一些修改操作,对于这类数据包,网络控制器需要做出相应的响应。而管理控制器与网络控制器之间的带外接口的电气性质以及通信协议,就是由 NCSI 来定义的。
此外,NCSI 还提供了相应的传输协议栈来保证这种带外管理。NCSI 的传输协议栈如图 2 所示:
图 2. NCSI 的传输协议栈从图 2 中可以看到:
  • 在 NCSI 的传输协议栈中,位于最底层的是物理层,NCSI 的物理层是基于 RMII 接口的;
  • 位于物理层之上的是数据链路层,NCSI 的数据链路层是基于以太介质的;
  • NCSI 支持的位于数据链路层之上的协议主要有两种:一种是管理控制器与网络控制器之间交互的 NCSI 命令协议,另一种是管理控制器与外部网络通信的网络数据协议,如:ARP 协议、DHCP 协议、NetBIOS 协议等,它们只是被网络控制器在管理控制器和外部网络之间作转发处理。在本文中,我们着重讨论第一种协议,也就是控制命令协议。
返回列表