|
|
|
@ -1,214 +1,145 @@
|
|
|
|
|
%# -*- coding: utf-8-unix -*-
|
|
|
|
|
|
|
|
|
|
\chapter{可编程网络平台-操作手册}
|
|
|
|
|
\chapter{FAST平台介绍与操作说明手册}
|
|
|
|
|
\label{app:openbox}
|
|
|
|
|
|
|
|
|
|
\subsection{FAST简介}
|
|
|
|
|
|
|
|
|
|
针对近年来关于工业控制网络创新技术、创新网络结构、时间敏感网络、SDN网络、FPGA硬件加速技术及下一代网络技术的研究需求,由国防科大与湖南新实共同发起的开源项目——FAST(FPGA Accelerated Switcing plaTform)于2016年创建。截止到目前,该开源项目已经服务全国多所高校和科研院所的网络实验建设和科研项目。
|
|
|
|
|
针对近年来关于工业控制网络创新技术、创新网络结构、时间敏感网络、SDN网络、FPGA硬件加速技术及下一代网络技术的研究需求,由国防科大与湖南新实共同发起的开源项目——FAST(FPGA Accelerated Switcing plaTform)于2016年创建。截止到目前,该开源项目已经服务全国多所高校和科研院所的网络教学实验建设和科研项目。
|
|
|
|
|
|
|
|
|
|
FAST平台的架构是一种通用多核CPU加FPGA形态的网络处理架构,该平台架构主要由硬件逻辑和软件逻辑两部分组成,实现软硬件耦合通信与支持软硬件可编程的网络创新实验系统。其中硬件包括平台相关的数据IO和FAST硬件逻辑。软件部分包括通用操作系统与FAST软件逻辑。FAST软件逻辑包括软件开发环境和UA程序。该平台,不仅支持FAST的UA编程开发,同时也支持通用APP的开发与运行。
|
|
|
|
|
|
|
|
|
|
\subsection{设备简介}
|
|
|
|
|
|
|
|
|
|
OpenBox-S4是一款软硬件全功能可编程网络实验平台的具体型号产品,该产品基于多核CPU加FPGA异构模型的FAST处理架构实现,软件在CPU上使用C语言编程,硬件在FPGA芯片上使用Verilog语言编程。全系统根据FAST架构搭建其软硬件基础运行环境,内部软硬件用户逻辑支持所有FAST架构开发的应用、标准的网络协议栈与通用网络应用。平台软硬件逻辑代码开源免费,支持用户二次开发。
|
|
|
|
|
FAST开源项目的诞生与发展深受斯坦福大学Nick Mckeown教授在NetFPGA项目、OpenFlow项目和P4等项目的影响,其目标是为计算机网络的科研与教学提供一个开源和开放的软硬件全功能可编程交换平台。其主要特点如下:
|
|
|
|
|
\begin{enumerate}
|
|
|
|
|
\item \textbf{FPGA:}FAST实现的核心载体是可编程FPGA,是用Verilog语言编程实现的硬件功能。FPGA的现场可编程特性为实现用户创新的网络架构、算法、实现机制提供了极大的灵活性,而且可以获得较高的性能,支持在实际网络中部署运行;
|
|
|
|
|
|
|
|
|
|
\subsection{设备上电检测}
|
|
|
|
|
用户拿到设备后,首先做个简单的上电测试,以确保硬件平台可以正常工作。
|
|
|
|
|
\item \textbf{Accelerated:}PGA实现的不是网络处理的全部功能,而是部分需要硬件加速的分组处理功能。FAST的核心是一套软硬件协同的分组处理模型,用户可以通过Verilog编程实现的硬件功能的加速,也可以在现有的FAST硬件平台的CPU上编程实现特定的分组处理功能;
|
|
|
|
|
|
|
|
|
|
\subsubsection{设备外部接口及其配件说明}
|
|
|
|
|
\begin{enumerate}
|
|
|
|
|
\item 设备外观与接口,正面如下图所示:
|
|
|
|
|
|
|
|
|
|
\begin{figure}[!htp]
|
|
|
|
|
\centering
|
|
|
|
|
\includegraphics[width=11cm]{f01}
|
|
|
|
|
\caption{正面外部接口}
|
|
|
|
|
\label{fig:a:ob_f01}
|
|
|
|
|
\end{figure}
|
|
|
|
|
|
|
|
|
|
\item 设备外观与接口,背面如下图所示:
|
|
|
|
|
|
|
|
|
|
\begin{figure}[!htp]
|
|
|
|
|
\centering
|
|
|
|
|
\includegraphics[width=11cm]{f02}
|
|
|
|
|
\caption{背面外部接口}
|
|
|
|
|
\label{fig:a:ob_f02}
|
|
|
|
|
\end{figure}
|
|
|
|
|
|
|
|
|
|
\item 12V-1A电源线,如下图所示:
|
|
|
|
|
|
|
|
|
|
\begin{figure}[!htp]
|
|
|
|
|
\centering
|
|
|
|
|
\includegraphics[width=11cm]{f03}
|
|
|
|
|
\caption{设备电源线}
|
|
|
|
|
\label{fig:a:ob_f03}
|
|
|
|
|
\end{figure}
|
|
|
|
|
|
|
|
|
|
\item 串口线,如下图所示:
|
|
|
|
|
|
|
|
|
|
\begin{figure}[!htp]
|
|
|
|
|
\centering
|
|
|
|
|
\includegraphics[width=11cm]{f04}
|
|
|
|
|
\caption{设备串口线}
|
|
|
|
|
\label{fig:a:ob_f04}
|
|
|
|
|
\end{figure}
|
|
|
|
|
|
|
|
|
|
\item 设备烧录线,如下图所示:
|
|
|
|
|
|
|
|
|
|
\begin{figure}[!htp]
|
|
|
|
|
\centering
|
|
|
|
|
\includegraphics[width=11cm]{f05}
|
|
|
|
|
\caption{设备烧录线}
|
|
|
|
|
\label{fig:a:ob_f05}
|
|
|
|
|
\end{figure}
|
|
|
|
|
\item \textbf{Switching:}AST面向的领域是网络交换领域,支持各种新型交换技术,如软件定义网络(SDN)、时间敏感网络(TSN)、网络安全一体化网络甚至是智能网卡的实现研究,而不是支持以人工智能(AI)为代表的应用加速;
|
|
|
|
|
|
|
|
|
|
\item \textbf{plaTform:}与目前其他开源项目一样,FAST提供的是一个硬件平台无关的,支持用户通过软硬件编程实现其特定分组处理功能的环境。FAST通过提供标准的规范、开源的平台软硬件实现代码和demo应用,支持用户基于平台进行创新的应用开发和设备原型的快速实现。
|
|
|
|
|
\end{enumerate}
|
|
|
|
|
|
|
|
|
|
\subsubsection{检测准备}
|
|
|
|
|
\subsection{FAST架构}
|
|
|
|
|
FAST平台的架构是一种通用多核CPU加FPGA形态的网络处理架构。通常对处理性能要求较高的分组处理功能由FPGA实现,对处理性能要求较低,实现复杂的功能可由CPU实现。用户既可通过扩展FPGA硬件流水线功能也可以通过CPU上编程实现对分组交换功能的扩充。该平台架构主要由硬件逻辑和软件逻辑两部分组成,实现软硬件耦合通信与支持软硬件可编程的网络创新实验系统。其中硬件包括平台相关的数据IO和FAST硬件逻辑。软件部分包括通用操作系统与FAST软件逻辑。FAST软件逻辑包括软件开发环境和UA程序。该平台,不仅支持FAST的UA编程开发,同时也支持通用Socket APP的开发与运行。
|
|
|
|
|
|
|
|
|
|
FAST交换平台的实现不依赖特定的CPU与FPGA型号,但为了更好地提供交换功能扩充能力,保证软硬件协同分组处理的基本性能,FAST的交换平台必须具有如下两个特点:
|
|
|
|
|
\begin{enumerate}
|
|
|
|
|
\item 物品准备
|
|
|
|
|
|
|
|
|
|
\begin{table}[!htp]
|
|
|
|
|
\small
|
|
|
|
|
\centering
|
|
|
|
|
\caption{所需物品列表}
|
|
|
|
|
\label{tab:a:openbox_items}
|
|
|
|
|
\begin{tabular}{|c|c|} \hline
|
|
|
|
|
\heiti 测试项 & \heiti 所需物品 \\ \hline
|
|
|
|
|
上电检测 & 一台设备及电源\\ \hline
|
|
|
|
|
串口检测 & 一台设备及电源、一台电脑、一个micro usb 串口线\\ \hline
|
|
|
|
|
管理网口(MGMT) & 一台设备及电源、一台电脑、一个网线\\ \hline
|
|
|
|
|
\end{tabular}
|
|
|
|
|
\end{table}
|
|
|
|
|
\item \textbf{所有网络接口均与FPGA相连;}
|
|
|
|
|
|
|
|
|
|
进入交换平台的分组首先送FPGA处理,离开交换平台的分组最后由FPGA发出。这样有两个优点。一是交换平台可精确获取分组接收时间以及控制发送时间,实现类似1588透明时钟的控制,支持时间敏感交换;二是平台可以支持各种新型的分组格式,支持内容中心网络(ICN)等非IP交换。
|
|
|
|
|
\item \textbf{FPGA通过高带宽总线与CPU连接。}
|
|
|
|
|
|
|
|
|
|
与传统交换芯片通过低带宽的SPI总线、以太网或是单Lane的PCIE总线与控制CPU连接不同,FAST平台中FPGA通过高带宽的总线与CPU连接,提升软硬件协同分组处理的性能,支持通过CPU软件对数据平面处理功能进行扩展。
|
|
|
|
|
\end{enumerate}
|
|
|
|
|
|
|
|
|
|
\subsubsection{上电检测}
|
|
|
|
|
\begin{enumerate}
|
|
|
|
|
\item 连接电源,将电源开关拨到ON(向右);
|
|
|
|
|
\item 观察电源指示灯变化情况;
|
|
|
|
|
\item 电源开关拨到ON(向右)后,CFG电源指示灯会亮一下;
|
|
|
|
|
|
|
|
|
|
\begin{figure}[!htp]
|
|
|
|
|
\centering
|
|
|
|
|
\includegraphics[width=11cm]{f06}
|
|
|
|
|
\caption{电源指示灯(刚接入电源)}
|
|
|
|
|
\label{fig:a:ob_f06}
|
|
|
|
|
\end{figure}
|
|
|
|
|
\item CFG电源指示灯过几秒后就灭了;
|
|
|
|
|
|
|
|
|
|
\begin{figure}[!htp]
|
|
|
|
|
|
|
|
|
|
FAST交换平台的实现架构如图\ref{fig:a:ob_FAST-Ac}所示。
|
|
|
|
|
\begin{figure}[H]
|
|
|
|
|
\centering
|
|
|
|
|
\includegraphics[width=11cm]{f07}
|
|
|
|
|
\caption{电源指示灯(系统配置)}
|
|
|
|
|
\label{fig:a:ob_f07}
|
|
|
|
|
\includegraphics[width=11cm]{FAST-Ac}
|
|
|
|
|
\caption{FAST平台实现架构图}
|
|
|
|
|
\label{fig:a:ob_FAST-Ac}
|
|
|
|
|
\end{figure}
|
|
|
|
|
|
|
|
|
|
\item 等待15秒左右,RUN电源指示灯常亮。
|
|
|
|
|
平台硬件逻辑分为两部分:一部分是平台相关的外围接口和与平台CPU互联的高速总线接口逻辑,统称为FPGA OS。其主要实现平台相关,交换功能无关的分组处理,如网络接口的接收与发送、CPU的DMA引擎以及FPGA片外或片内实现的TCAM查表功能等;另一部分是用户模块逻辑UM,其主要实现交换相关的网络功能,每一个小的流水线模块称为硬件应用(HA),如分组解析、关键字提取、转发查表、动作执行和输出控制等。用户可在UM模块中扩展HA流水线实现不同的分组处理功能。
|
|
|
|
|
|
|
|
|
|
\begin{figure}[!htp]
|
|
|
|
|
平台软件逻辑分为三部分:一是平台相关驱动,由厂商实现其具体平台的硬件数据IO驱动,一般包含PCIe驱动、DMA驱动和以太网驱动;二是FAST分组分派模块,主要实现内核应用模块、协议栈模块和用户应用(UA)和底层驱动的数据分派功能;三是FAST分组应用,主要包括在通过标准内核协议栈支持的通用SOCKET应用(CA)、内核编程开发的内核应用(KA)和基于FAST快速IO编程开发的用户应用。
|
|
|
|
|
|
|
|
|
|
FAST平台的分组处理功能分布在硬件HA和软件的KA、CA及UA,各功能模块之间的转发和连接关系可由模块的ID号与下一组模块ID号关联配置,实现分组数据在FAST平台的处理流水线模块排列如图\ref{fig:a:ob_FAST-Pkt-Proc}所示效果。
|
|
|
|
|
\begin{figure}[H]
|
|
|
|
|
\centering
|
|
|
|
|
\includegraphics[width=11cm]{f08}
|
|
|
|
|
\caption{电源指示灯(系统运行)}
|
|
|
|
|
\label{fig:a:ob_f08}
|
|
|
|
|
\includegraphics[width=11cm]{FAST-Pkt-Proc}
|
|
|
|
|
\caption{FAST分组处理流水线排列图}
|
|
|
|
|
\label{fig:a:ob_FAST-Pkt-Proc}
|
|
|
|
|
\end{figure}
|
|
|
|
|
\end{enumerate}
|
|
|
|
|
|
|
|
|
|
\subsubsection{串口检测}
|
|
|
|
|
\subsection{平台应用}
|
|
|
|
|
由于FAST平台架构的特征,其应用开发可以是软件开发、硬件开发或软硬件结合开发,具体根据平台应用场景和用户具体需求而定。
|
|
|
|
|
FAST项目自创立至今,已经在传统网络应用、工业互联网和创新网络架构设计等方面得到了广泛应用。通过在不同领域的应用积累了大量网络教学实验案例,如网络协议分析与编程、协议攻击与防护、路由器系统设计与实现、SDN交换机设计与实现、网络高精度测量、时间敏感网络设计与实现、高性能网络IO和网络应用的硬件卸载加速等。
|
|
|
|
|
|
|
|
|
|
\subsection{平台使用}
|
|
|
|
|
FAST是一个与平台无关的开源架构,根据FAST原理和规范实现的CPU+FPGA异构网络设备形态都属于FAST平台。FAST平台的CPU支持国产与非国产多种型号,FPGA也可以支持国产和非国产的多种型号。下面以下湖南新实的一款专业网络实验教学设备型号OpenBox-S4为例,说明如何使用FAST平台。
|
|
|
|
|
\subsubsection{搭建环境}
|
|
|
|
|
使用FAST平台开发和验证网络功能,需要搭建FAST环境。FAST环境包括以下三个部分:
|
|
|
|
|
\begin{enumerate}
|
|
|
|
|
\item 确保micro usb串口线连接到设备上,并且设备已上电;
|
|
|
|
|
\item 确保调试电脑已安装了PUTTY串口终端工具,PUTTY软件包以及详细安装教程请自行搜索;
|
|
|
|
|
\item 确保调试电脑已安装了CP2102驱动,CP2102驱动包以及详细安装教程请自行搜索;
|
|
|
|
|
\item 电脑的设备管理器,查看设备的COM口数值。(如下图,设备的COM口数值为COM3,不同的电脑显示的COM口数值会不同)。
|
|
|
|
|
\item \textbf{用户操作设备:}一般是一台标准的电脑,可以是台式机或笔记本,除了基本操作IO设备外,电脑还要求至少拥有一个网口或一个USB口。该设备供用户编辑和编译软硬件逻辑代码,通过网口或串口上传和下载逻辑程序和运行结果;
|
|
|
|
|
\item \textbf{FAST平台设备:}一台符合FAST规范的可编程网络开发平台。平台支持FAST开源示例应用,可供用户基于平台进行软硬件逻辑功能的二次开发。平台至少提供一个串口和一个管理网口,用于支持用户网络远程或本地串口线登录平台进行操作;
|
|
|
|
|
\item \textbf{网络测试主机:}测试主机一般为支持网络功能的主机或嵌入式小型设备,如笔记本或树莓派。根据实验内容的不同,需要的网络测试主机数量及主机网络配置各不相同,具体参考相应的实验案例内容要求。
|
|
|
|
|
\end{enumerate}
|
|
|
|
|
|
|
|
|
|
\subsubsection{FAST平台设备}
|
|
|
|
|
OpenBox-S4设备是一款严格遵照FAST原理与架构设计的通用多核CPU+FPGA的软硬件全功能可编程网络开发平台。适合本科和研究生的计算机网络教学和新型网络交换机制的验证。
|
|
|
|
|
|
|
|
|
|
该设备采用Zynq-7000 SOC芯片,内嵌双核Cortex-A9 处理器,512MB DDR3内存;支持4个千兆以太网数据接口,1个千兆管理以太网接口和一个管理串口。设备外观与接口说明如图\ref{fig:a:ob_f01}和图\ref{fig:a:ob_f02}所示:
|
|
|
|
|
|
|
|
|
|
\begin{figure}[H]
|
|
|
|
|
\centering
|
|
|
|
|
\includegraphics[width=11cm]{f01}
|
|
|
|
|
\caption{OpenBox-S4设备前端图}
|
|
|
|
|
\label{fig:a:ob_f01}
|
|
|
|
|
\end{figure}
|
|
|
|
|
|
|
|
|
|
\begin{figure}[!htp]
|
|
|
|
|
\begin{figure}[H]
|
|
|
|
|
\centering
|
|
|
|
|
\includegraphics[width=11cm]{f09}
|
|
|
|
|
\caption{查看设备的COM口数值}
|
|
|
|
|
\label{fig:a:ob_f09}
|
|
|
|
|
\includegraphics[width=11cm]{f02}
|
|
|
|
|
\caption{OpenBox-S4设备后端图}
|
|
|
|
|
\label{fig:a:ob_f02}
|
|
|
|
|
\end{figure}
|
|
|
|
|
\item 打开PUTTY工具界面;
|
|
|
|
|
|
|
|
|
|
在实验过程中,测试主机设备通常连接在设备的数据接口位置,用户操作管理设备时通过管理网口或串口连接。
|
|
|
|
|
|
|
|
|
|
\subsubsection{登录设备平台}
|
|
|
|
|
\begin{enumerate}
|
|
|
|
|
\item 串口方式
|
|
|
|
|
\begin{enumerate}
|
|
|
|
|
\item 连接串口线;
|
|
|
|
|
|
|
|
|
|
设备使用标准USB口和Micro USB接口的线作为串口连接线,标准USB口连接在用户操作设备上,Mirco USB接口与设备对应串口连接。
|
|
|
|
|
\item 打开并配置串口工具。
|
|
|
|
|
|
|
|
|
|
\item 先点击右边Connection type位置的serial选项;
|
|
|
|
|
\begin{figure}[!htp]
|
|
|
|
|
\centering
|
|
|
|
|
\includegraphics[width=11cm]{f10}
|
|
|
|
|
\caption{putty软件界面}
|
|
|
|
|
\label{fig:a:ob_f10}
|
|
|
|
|
\end{figure}
|
|
|
|
|
\item 点击左边category栏的 serial标签;
|
|
|
|
|
\item 在Serial line to connect to 栏,填写设备管理器中看到的COM数值;
|
|
|
|
|
\item 在Speed栏,填写串口的波特率为115200;
|
|
|
|
|
\item 在 Data bits栏。填写数据位宽为8;
|
|
|
|
|
\item 在Flow control栏,选择None。
|
|
|
|
|
\item 如下所示,调试电脑的COM数值为COM3,所以serial line栏填写为COM3。
|
|
|
|
|
(不同电脑的COM数值可能不同,请填写实际的COM数值)
|
|
|
|
|
|
|
|
|
|
\begin{figure}[!htp]
|
|
|
|
|
在用户操作设备上打开串口工具,配置好相应串口参数后打开串口,即可通过串口管理设备。以putty为例,其配置参数如图\ref{fig:a:ob_f11}所示:
|
|
|
|
|
\begin{figure}[H]
|
|
|
|
|
\centering
|
|
|
|
|
\includegraphics[width=11cm]{f11}
|
|
|
|
|
\caption{putty软件串口配置参数}
|
|
|
|
|
\caption{串口工具参数配置图}
|
|
|
|
|
\label{fig:a:ob_f11}
|
|
|
|
|
\end{figure}
|
|
|
|
|
\end{enumerate}
|
|
|
|
|
\item 点击 open ,进入设备系统,则串口测试OK。
|
|
|
|
|
\end{enumerate}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
\subsubsection{管理网口检测}
|
|
|
|
|
\item 管理网口方式
|
|
|
|
|
\begin{enumerate}
|
|
|
|
|
\item 使用一根网线,将调试电脑与设备的管理网口连接;
|
|
|
|
|
\item 设备管理网口的默认ip地址为:192.168.50.5,所以需要将调试电脑的ip地址设置成与设备管理网口的ip地址在同一个网段下(也就是192.168.50.0网段);
|
|
|
|
|
\item 在调试电脑的 控制面板->网络和Internet->网络设备中。点击以太网->属性->internet协议版本4(TCP/IPV4),进行ip地址的配置。如下所示:
|
|
|
|
|
\item 连接网线;
|
|
|
|
|
|
|
|
|
|
使用一根RJ45端口的网线,分别连接在用户操作主机端与设备的管理网口(MGMT),网口出现指示灯闪烁说明连接正常。
|
|
|
|
|
\item 配置主机端IP信息。
|
|
|
|
|
|
|
|
|
|
\begin{figure}[!htp]
|
|
|
|
|
通过网连接连接设备,必须确保用户操作主机与设备管理网口在相同的网段,如不记得管理网口的IP,可以通过串口方式查看。设备默认网段为192.168.50.0网段,故用户操作主机的IP地址配置信息参考如图\ref{fig:a:ob_f12}所示:
|
|
|
|
|
\begin{figure}[H]
|
|
|
|
|
\centering
|
|
|
|
|
\includegraphics[width=11cm]{f12}
|
|
|
|
|
\caption{配置以太网的IP地址}
|
|
|
|
|
\caption{网口连接的主机IP配置图}
|
|
|
|
|
\label{fig:a:ob_f12}
|
|
|
|
|
\end{figure}
|
|
|
|
|
\item 在调试电脑的 控制面板>系统和安全>Windows Defender 防火墙>自定义设置中。关闭调试电脑的防火墙功能;
|
|
|
|
|
|
|
|
|
|
\begin{figure}[!htp]
|
|
|
|
|
\centering
|
|
|
|
|
\includegraphics[width=11cm]{f13}
|
|
|
|
|
\caption{关闭防火墙功能}
|
|
|
|
|
\label{fig:a:ob_f13}
|
|
|
|
|
\end{figure}
|
|
|
|
|
\item 在调试电脑的CMD终端下,使用ping命令能正常与管理网口通讯,则说明管理网络工作正常。
|
|
|
|
|
|
|
|
|
|
\begin{figure}[!htp]
|
|
|
|
|
\centering
|
|
|
|
|
\includegraphics[width=11cm]{f14}
|
|
|
|
|
\caption{ping命令测试网络连通性}
|
|
|
|
|
\label{fig:a:ob_f14}
|
|
|
|
|
\end{figure}
|
|
|
|
|
|
|
|
|
|
\end{enumerate}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
\subsection{搭建环境}
|
|
|
|
|
\end{enumerate}
|
|
|
|
|
|
|
|
|
|
\subsubsection{测试二层交换功能}
|
|
|
|
|
\begin{enumerate}
|
|
|
|
|
\item 搭建二层交换拓扑
|
|
|
|
|
|
|
|
|
|
\begin{figure}[!htp]
|
|
|
|
|
|
|
|
|
|
二层交换实验的两台测试主机可以随意连接到设备的数据接口位置(网口0到网口4均可)。测试主机的IP地址配置及连接拓扑如图\ref{fig:a:ob_f15}所示:
|
|
|
|
|
\begin{figure}[H]
|
|
|
|
|
\centering
|
|
|
|
|
\includegraphics[width=11cm]{f15}
|
|
|
|
|
\caption{二层交换连接拓扑示意图}
|
|
|
|
|
\label{fig:a:ob_f15}
|
|
|
|
|
\end{figure}
|
|
|
|
|
|
|
|
|
|
其中主机A的IP地址设置为192.168.1.111,主机B的IP地址设置为192.168.1.119。
|
|
|
|
|
\item 在OpenBox-S4上运行二层交换程序
|
|
|
|
|
|
|
|
|
|
在串口登录界面或网络登录界面输入命令:l2switch,如下图所示:
|
|
|
|
|
用串口或网线连接用户操作主机与设备,通过串口登录界面或网络登录界面控制设备,在界面终端输入命令:l2switch,如图\ref{fig:a:ob_f16}所示:
|
|
|
|
|
|
|
|
|
|
\begin{figure}[!htp]
|
|
|
|
|
\begin{figure}[H]
|
|
|
|
|
\centering
|
|
|
|
|
\includegraphics[width=11cm]{f16}
|
|
|
|
|
\caption{二层交换命令启动输出图}
|
|
|
|
@ -217,9 +148,9 @@ OpenBox-S4是一款软硬件全功能可编程网络实验平台的具体型号
|
|
|
|
|
|
|
|
|
|
\item 在PC两端进行PING测试
|
|
|
|
|
|
|
|
|
|
在主机B的CMD (命令提示符) 程序中。输入并执行命令ping 192.168.1.111 即可测试两台主机之间的联通性。测试结果如下所示:
|
|
|
|
|
在主机B的CMD (命令提示符) 程序中。输入并执行命令ping 192.168.1.111 即可测试两台主机之间的联通性。测试结果如图\ref{fig:a:ob_f17}所示:
|
|
|
|
|
|
|
|
|
|
\begin{figure}[!htp]
|
|
|
|
|
\begin{figure}[H]
|
|
|
|
|
\centering
|
|
|
|
|
\includegraphics[width=11cm]{f17}
|
|
|
|
|
\caption{二端主机PING通结果图(二层交换)}
|
|
|
|
@ -233,19 +164,20 @@ OpenBox-S4是一款软硬件全功能可编程网络实验平台的具体型号
|
|
|
|
|
\begin{enumerate}
|
|
|
|
|
\item 搭建三层路由拓扑
|
|
|
|
|
|
|
|
|
|
\begin{figure}[!htp]
|
|
|
|
|
|
|
|
|
|
三层路由实验的两台测试主机要根据主机端IP地址配置和网关配置,分别连接到主机对应网关的接口上。连错线会导致实现失败。测试主机的IP地址配置及连接拓扑如图\ref{fig:a:ob_f18}所示:
|
|
|
|
|
\begin{figure}[H]
|
|
|
|
|
\centering
|
|
|
|
|
\includegraphics[width=11cm]{f18}
|
|
|
|
|
\caption{三层路由拓扑}
|
|
|
|
|
\label{fig:a:ob_f18}
|
|
|
|
|
\end{figure}
|
|
|
|
|
|
|
|
|
|
其中主机A的IP地址设置为192.168.0.111,主机B的IP地址设置为192.168.2.119。
|
|
|
|
|
\item OpenBox-S4上运行三层路由程序
|
|
|
|
|
|
|
|
|
|
在串口登录界面或网络登录界面输入命令:l3router,如下图所示:
|
|
|
|
|
用串口或网线连接用户操作主机与设备,通过串口登录界面或网络登录界面控制设备,在界面终端输入命令:l3router,如图\ref{fig:a:ob_f19}所示:
|
|
|
|
|
|
|
|
|
|
\begin{figure}[!htp]
|
|
|
|
|
\begin{figure}[H]
|
|
|
|
|
\centering
|
|
|
|
|
\includegraphics[width=11cm]{f19}
|
|
|
|
|
\caption{运行三层路由程序}
|
|
|
|
@ -254,9 +186,9 @@ OpenBox-S4是一款软硬件全功能可编程网络实验平台的具体型号
|
|
|
|
|
|
|
|
|
|
\item 在PC两端进行PING测试
|
|
|
|
|
|
|
|
|
|
在主机A的CMD (命令提示符) 程序中。输入并执行命令ping 192.168.2.119 即可测试跨路由功能。测试结果如下所示:
|
|
|
|
|
在主机A的CMD (命令提示符) 程序中。输入并执行命令ping 192.168.2.119 即可测试跨路由功能。测试结果如图\ref{fig:a:ob_f20}所示:
|
|
|
|
|
|
|
|
|
|
\begin{figure}[!htp]
|
|
|
|
|
\begin{figure}[H]
|
|
|
|
|
\centering
|
|
|
|
|
\includegraphics[width=11cm]{f20}
|
|
|
|
|
\caption{端主机PING通结果图(三层路由)}
|
|
|
|
@ -270,30 +202,31 @@ OpenBox-S4是一款软硬件全功能可编程网络实验平台的具体型号
|
|
|
|
|
\begin{enumerate}
|
|
|
|
|
\item 搭建SDN交换拓扑
|
|
|
|
|
|
|
|
|
|
\begin{figure}[!htp]
|
|
|
|
|
|
|
|
|
|
SDN交换实验的两台测试主机可以随意连接到设备的数据接口位置(网口0到网口4均可),SDN控制器主机的网线一定要连接在设备的管理网口(MGMT)。控制器主机和测试主机的IP地址配置及连接拓扑如图\ref{fig:a:ob_f21}所示:
|
|
|
|
|
\begin{figure}[H]
|
|
|
|
|
\centering
|
|
|
|
|
\includegraphics[width=11cm]{f21}
|
|
|
|
|
\caption{SDN交换拓扑}
|
|
|
|
|
\label{fig:a:ob_f21}
|
|
|
|
|
\end{figure}
|
|
|
|
|
|
|
|
|
|
其中主机A的IP地址设置为192.168.2.111,主机B的IP地址设置为192.168.2.119。
|
|
|
|
|
\item 在192.168.1.3的主机中启动SDN控制器
|
|
|
|
|
\item 在SDN控制器主机中启动SDN控制器
|
|
|
|
|
|
|
|
|
|
在终端命令行下输入 java –jar target/floodlight.jar,即启动floodlight控制器。如下所示:
|
|
|
|
|
在终端命令行下输入 java –jar target/floodlight.jar,即启动floodlight控制器。如图\ref{fig:a:ob_f22}所示:
|
|
|
|
|
|
|
|
|
|
\begin{figure}[!htp]
|
|
|
|
|
\begin{figure}[H]
|
|
|
|
|
\centering
|
|
|
|
|
\includegraphics[width=11cm]{f22}
|
|
|
|
|
\caption{启动floodlight控制器}
|
|
|
|
|
\label{fig:a:ob_f22}
|
|
|
|
|
\end{figure}
|
|
|
|
|
|
|
|
|
|
\item 在可编程网络平台上运行SDN交换程序
|
|
|
|
|
\item 在设备平台上运行SDN交换程序
|
|
|
|
|
|
|
|
|
|
在串口登录界面或网络登录界面输入命令:xofp -4 192.168.1.3 –i obx0,obx1,obx2,obx3 , 连接Floodlight控制器。如下所示:
|
|
|
|
|
在串口登录界面或网络登录界面输入命令:xofp -4 192.168.1.3 –i obx0,obx1,obx2,obx3 , 连接Floodlight控制器。如图\ref{fig:a:ob_f23}所示:
|
|
|
|
|
|
|
|
|
|
\begin{figure}[!htp]
|
|
|
|
|
\begin{figure}[H]
|
|
|
|
|
\centering
|
|
|
|
|
\includegraphics[width=11cm]{f23}
|
|
|
|
|
\caption{运行SDN交换程序}
|
|
|
|
@ -302,9 +235,9 @@ OpenBox-S4是一款软硬件全功能可编程网络实验平台的具体型号
|
|
|
|
|
|
|
|
|
|
\item 访问floodlight控制器首页
|
|
|
|
|
|
|
|
|
|
在控制器主机打开浏览器,在浏览器地址栏输入:127.0.0.1:8080/ui/index.html ,访问floodlight控制器首页。界面如下所示:
|
|
|
|
|
在控制器主机打开浏览器,在浏览器地址栏输入:127.0.0.1:8080/ui/index.html ,访问floodlight控制器首页。界面如图\ref{fig:a:ob_f24}所示:
|
|
|
|
|
|
|
|
|
|
\begin{figure}[!htp]
|
|
|
|
|
\begin{figure}[H]
|
|
|
|
|
\centering
|
|
|
|
|
\includegraphics[width=11cm]{f24}
|
|
|
|
|
\caption{访问floodlight控制器首页}
|
|
|
|
@ -313,9 +246,9 @@ OpenBox-S4是一款软硬件全功能可编程网络实验平台的具体型号
|
|
|
|
|
|
|
|
|
|
\item 在PC两端进行PING测试
|
|
|
|
|
|
|
|
|
|
在主机A的CMD (命令提示符) 程序中。输入并执行命令ping 192.168.2.119 即可测试两台主机之间的联通性。测试结果如下所示:
|
|
|
|
|
在主机A的CMD (命令提示符) 程序中。输入并执行命令ping 192.168.2.119 即可测试两台主机之间的联通性。测试结果如图\ref{fig:a:ob_f25}所示:
|
|
|
|
|
|
|
|
|
|
\begin{figure}[!htp]
|
|
|
|
|
\begin{figure}[H]
|
|
|
|
|
\centering
|
|
|
|
|
\includegraphics[width=11cm]{f25}
|
|
|
|
|
\caption{端主机PING通结果图(SDN交换)}
|
|
|
|
@ -324,5 +257,12 @@ OpenBox-S4是一款软硬件全功能可编程网络实验平台的具体型号
|
|
|
|
|
|
|
|
|
|
\end{enumerate}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
\subsection{FAST开源社区}
|
|
|
|
|
由于FAST架构设计的独特优势,用户无需关心平台的分组网络IO、存储和加速方法,只专注于创新架构的设计和核心技术研究,极大的加快网络创新技术的落地与应用。来自全国的近100家的高校、科研院所和设备厂商单位都加入的FAST开源社区。FAST开源社区致力于网络领域的基础网络技术分析与实现,热门网络技术跟踪研究与原型实现和未来网络技术探索与研究。更多的网络前沿技术及FAST的实现方法以及FAST的编程开发方法请关注FAST社区公众号及相关服务网站。
|
|
|
|
|
\begin{figure}[H]
|
|
|
|
|
\centering
|
|
|
|
|
\includegraphics[width=5cm]{fast-w}
|
|
|
|
|
\caption{FAST公众号}
|
|
|
|
|
\label{fig:a:ob_fast-w}
|
|
|
|
|
\end{figure}
|
|
|
|
|
FAST官网:http://www.fastswitch.org
|
|
|
|
|