参考:

NetMagic Simple Overview

NetMagic 是什么?

NetMagic is a programmable hardware platform with many network interfaces based on FPGA, just like NetFPGA(www.netfpga.org).

NetMagic是一个基于FPGA的多网口可编程硬件平台,与NetFPGA类似。

为什么提出 NetMagic?

虽然NetFPGA很成功,但是有以下缺点:

  • NetFPGA不是一个100%的开源平台,没有专业的开发团队。

  • NetFPGA不是一个独立的、可拓展性好的网络设备,需要插入PC的PCI插槽才能工作。

  • NetFPGA的软件依赖于特定的操作系统,如果需要在其他的操作系统如Win7下开发需要安装特定的驱动。

NetMagic 主要特点

  • 是一台独立且拓展性良好的设备,为研究人员和学生的实验提供良好的支持;

  • 即插即用,就像是一台以太网交换机一样,无需为新的运行环境配置工具;

  • 开发人员能够在不同的OS环境下使用;

  • 便于软件和硬件的开发。

Platform Overview

  • NetMagic平台 = NetMagic BOX+外部主机

  • NetMagic Box是一个单纯的硬件设备

  • NetMagic Box仍然需要CPU的控制,但可以和CPU物理分离,这一次很彻底,所有控制功能在外部主机上完成

  • NMAC协议存在于NetMagic Box和外部主机之间

硬件方面只需关心UM的功能设计, 软件方面只需实现自己的控制程序:


(Graph: System Overview)

NMAC协议

NMAC: NetMagic Access Control protocol

  • 是一个自定义的协议,基于以太网传输控制命令

  • 基于LibNet和Libpcap开发,向上提供API。


(Graph: NMAC通信框架 - Controller-NetMagic_Box)

2017.4.27

NetMagic Simple Overview的更多相关文章

  1. JavaScript Module Pattern: In-Depth

    2010-03-12 JavaScript Module Pattern: In-Depth The module pattern is a common JavaScript coding patt ...

  2. SAP Gateway简介

    SAP Gateway在S4/HANA时代的ABAP开发模型中有着重要的地位.SAP Gateway是什么?它对ABAP开发有怎样的影响?可以为我们提供哪些方便?这篇译文将浅要地讨论这些话题. SAP ...

  3. javascript 模块化编程

    The module pattern is a common JavaScript coding pattern. It’s generally well understood, but there ...

  4. Oracle下如何收集 Systemstate dump

    2: dump (不包括lock element) 10: dump 11: dump + global cache of RAC 256: short stack (函数堆栈) 258: 256+2 ...

  5. A Simple OpenGL Shader Example

    A Simple OpenGL Shader Example eryar@163.com Abstract. OpenGL Shading Language, the high-level progr ...

  6. Overview and Evaluation of Bluetooth Low Energy: An Emerging Low-Power Wireless Technology

    转自:http://www.mdpi.com/1424-8220/12/9/11734/htm Sensors 2012, 12(9), 11734-11753; doi:10.3390/s12091 ...

  7. Mount NAS Storage in Linux Overview 转载

    Mount NAS Storage in Linux Overview Mounting your NAS Storage to a device that runs on a Linux-based ...

  8. TCP keepalive overview

    2. TCP keepalive overview In order to understand what TCP keepalive (which we will just call keepali ...

  9. (转) An overview of gradient descent optimization algorithms

    An overview of gradient descent optimization algorithms Table of contents: Gradient descent variants ...

随机推荐

  1. Filter与Servlet的区别与联系

    Filter与Servlet的区别与联系 转自 http://blog.csdn.net/gaibian0823/article/details/51027495 在我们写代码时,在web.xml中总 ...

  2. PAT 1067 Sort with Swap[难]

    1067 Sort with Swap(0,*) (25)(25 分) Given any permutation of the numbers {0, 1, 2,..., N-1}, it is e ...

  3. PAT 1016 Phone Bills[转载]

    1016 Phone Bills (25)(25 分)提问 A long-distance telephone company charges its customers by the followi ...

  4. 优化Ubuntu 16.04系统的几件事

    安装完Ubuntu 16.04后,要更换为国内的软件源: sudo gedit /etc/apt/sources.list #用文本编辑器打开源列表 在文件开头添加下面的阿里云的软件源: deb ht ...

  5. linux 使用文件作为交换分区

    sudo fallocate -l 4G /swapfile sudo chmod 600 /swapfile sudo mkswap /swapfile sudo swapon /swapfile ...

  6. [ps] 灰度和通道基础知识

    灰度.灰度值.灰度图像 灰度:灰度使用黑色调来表示物体,即用黑色为基准色,不同饱和度的黑色来显示图像.每个灰度对象都具有从0%(白色)到100%(黑色)的亮度值.使用黑白或灰度扫描仪生成的图像通常以灰 ...

  7. C# 拓展方法实例

    namespace BenJi{ class Program { static void Main(string[] args) { Console.WriteLine("你要调试程序吗?y ...

  8. VS2010/MFC编程入门之五十(图形图像:GDI对象之画笔CPen)

    上一节中鸡啄米讲了CDC类及其屏幕绘图函数,本节的主要内容是GDI对象之画笔CPen. GDI对象 在MFC中,CGdiObject类是GDI对象的基类,通过查阅MSDN我们可以看到,CGdiObje ...

  9. 浏览器css hack

    (1)*:  IE6+IE7都能识别*,而标准浏览器FF+IE8是不能识别*的; (2)!important: 除IE6不能识别 !important外,  FF+IE8+IE7都能识别!import ...

  10. js 变量 作用域及内存

    由于Javascript是松散型的,所以其变量只是在特定时间用于保存特定值的一个名字而已,并不存在某个变量必须保存某种类型的值的规则,变量的值以及其数据类型都可以在脚本的声明周期内改变 一.基本类型与 ...