NOX-A Network Operating System for OpenFlow

Sina WeiboBaiduLinkedInQQGoogle+RedditEvernote分享

(3个打分, 平均:4.33 / 5)

Open Source SDN Controller: Floodlight

(2个打分, 平均:2.00 / 5)

Open Source . SDN/Open Flow Projects

Project Description URL
Big Switch Managing Floodlight http://www.bigswitch.com/about-us/
CloudPolice Provides very customized security policy control for virtual OSs within the host http://www.eecs.berkeley.edu/~minlanyu/writeup/hotnets10.pdf
Floodlight Java-based OpenFlow controller http://floodlight.openflowhub.org/
FlowScale Divides and distributes traffic over multiple physical switch ports http://www.openflowhub.org/display/FlowScale/FlowScale+Home
FlowVisor Creates network slices that can be delegated to different controllers http://www.openflow.org/wk/index.php/FlowVisor
FortNOX Extends the OpenFlow security controller to become a security mediation service http://www.openflowsec.org/FortNOX_Sigcomm_HotSDN_2012.pdf
Indigo OpenFlow implementation on physical switches http://indigo.openflowhub.org/
Mininet Prototyping for SDNs http://yuba.stanford.edu/foswiki/bin/view/OpenFlow/Mininet
OFTest Framework and set of tests for testing OpenFlow switches http://oftest.openflowhub.org/
Open vSwitch Multi-layer virtual switch under the open source Apache 2.0 license http://vswitch.org/
RouteFlow Being leveraged to run and replicate a virtual topology in OpenFlow switches https://sites.google.com/site/routeflow/
(1个打分, 平均:5.00 / 5)

OSDI’10 Best Paper: Efficient System-Enforced Deterministic Parallelism

(没有打分)

NSDI 2012 Best Paper

(1个打分, 平均:5.00 / 5)

淘宝 。《大型互联网站性能优化》

(没有打分)

从逻辑规则到数据驱动——人工智能杂谈

传统的人工智能的书,翻开书前几章基本都会讲谓词演算等逻辑推理的方法,甚至有的人工智能的书花了大量篇幅就在讲这个东西。一方面,这可以看出,早期的人工智能是基于规则与逻辑的,另一方面,这其实也是一种误导。因为现在的人工智能被机器学习所主导,机器学习与传统的人工智能很不同,现在的机器学习很大程度上都是数据驱动的,因此当初我看规则与逻辑推理后,却不知道能做什么,什么专家系统的都太遥远。当然了,key point不在于这种变化对于一个初学者的影响,而是人工智能整个发展趋势所给人的反思与启发。人们很清楚的看到从规则与逻辑到了数据与统计这种发展主线,我们想做的东西也不多,就是希望能够让机器看懂我们看懂的、让机器听懂我们听懂的、让机器能懂我们的思考、能像我们一样思考,但这条路,这么多学者在走,却走的如此困难。我们能发现知识、拥有知识、玩弄知识,但却难以让机器像我们一样拥有知识。

一个最基本的问题是:什么是知识?这就是知识的表示问题。早期研究者觉得逻辑就是知识,可以用来做一些推理,但是很直接的一个问题是,对于机器视觉,当机器看到许许多多的像素点的时候,那些谓词逻辑显得那么无力。于是,我们开始认为数据中的某些pattern就是知识,大家就开始寻找各种特征、各种子空间。数据驱动开始盛行。然而,哪怕这种方法多么有效的解决了如机器视觉中浅层知识表示的问题,但回到文本知识上,它却仍然非常无力。

文本,或许是最丰富的知识载体吧,因为它包含各种抽象。对于文本本身,不过是一些ASCII码而已,把这些ASCII码建立倒排表,我们可以索引,把这些ASCII码做矩阵分解(pLSI),我们可以搞一些浅层语义分析,但我们觉得这还不够,我们用LDA这种generative方法来描述文本,认为文本是bag of words,是由topics产生的。当然,这种方法有道理,很intuitive,而且也确实让人们迈出了很大的一步,慢慢开始理解ASCII码统计背后隐藏的语义。然而,这就到了终点了吗?我们就满足了吗?别忘了,我们的目标是要让机器明白我们的知识、运用我们的知识。要做到这一点,bag of words肯定是不够的,topics肯定是不够的,我们要重新提出我们的知识表示模型。于是,另一种思想,也就是knowledge base的思路出现了,每个节点是实体,不同类型的实体,实体是唯一的,不同实体之间有边来连接,表示不同的关系。然而,尽管语言学家和计算机学家研究了很多年,即便能够用这种方法更好理解用户的问题、改善搜索结果,但也仍然没有通过这种表示方式让计算机真正懂知识,知识的表示仍然模糊。或许,知识是一个很高维度的空间,而word只是这个空间中的稀疏样本,我们要通过这些词来重建那些知识是一件很难的问题,但是,这并不该是停止的理由。

为什么要建模那种基于文本的抽象知识呢?一个很简单的理由就是,每个人在知识的高维空间上都有自己的子空间和独特的拓扑,当我们面对一个task的时候,我们需要知识,当我们不懂的时候,我们要花很大代价去得到那不懂的一小部分,这一小部分,往往不是人类的空白,而是落在其他人或文献的知识子空间中,如果我们能够建模这种抽象知识,我们就能把这一切连接起来,让人们真正能够互相share知识。

总的来说,本文的主要观点就是人工智能从逻辑规则驱动到现在的数据驱动,我们都是尝试去让机器去理解各种人类面临的各种不同的task中的不同的知识,我们可能在形象知识、数据密集的知识上面有不错的精确度,但是,对于抽象知识的建模却做得非常有限。未来一定会往这个方向发展的,或许规则与数据会结合,或许我们需要通过很多中间层、中间步骤才能走到那里,但是这并没有阻止我们回头看看我们走了多远,没有阻止我们抬头看看前面的路,更无法阻止人类知识不断前进的步伐。未来在这里,一切都很interesting。

(原创来自http://chentingpc.me/article/article.php?id=862)

(1个打分, 平均:5.00 / 5)

VMWare 范承工: 云时代的大数据:思考和展望

(9个打分, 平均:2.78 / 5)

国内开源的嵌入式实时Linux:XtimesLinux

作者email:guohui703@163.com

引言:

Linux实时化研究是业界一个很老的话题,自从RTLinux在1999年采用独创的双内核方式实现Linux实时化以后,采用双内核方式一直是Linux实时研究的一个重要方向。在2005年左右,MontaVista公司在Linux2.6内核上使用抢占补丁的方式实现了linux的软实时,使得Linux内核的实时响应性能大为提升。目前桌面版本的Linux内核大多使用了抢占功能。

采用抢占补丁的方式比双内核方式的一个最大优点在于其编程接口的统一性。在抢占补丁方式中,实时应用与非实时使用可以使用统一的Linux API接口,他们之间的通信方式仍然采用传统的进程间通信方式即可。抢占补丁方式可以实现软实时,在硬实时方面仍然能力不足。MontaVista公司为了实现硬实时,在抢占补丁的基础上使用较为复杂的技术比如将自旋锁改成互斥量、高精度定时器、中断线程化等机制,这些机制的修改涉及到驱动程序已有的运行机理,因此会影响到Linux内核的稳定性,这对于稳定性要求高的场合,比如无线通信以及电信级应用,并不合适。经过业界测试表明,MontavistaLinux对于硬实时系统并不合适。

RTLinux引领的双内核方式通过中断虚拟化的方式能够很好地实现硬实时,虽然其需要为实时任务专门设计一套编程接口,而且实时任务与非实时任务的通信也要使用的专门通信机制,但由于其硬实时性,在一些工业控制等实时要求高地领域有重要的应用之地。在双内核方式中,实时内核接管中断,而非实时内核(即Linux)使用一个软件标志位作为其虚拟中断,虚拟中断的方式把中断控制器完全交给了实时内核,因而能达到很好地实时响应性能。双内核方式除了编程接口的不统一之外,也还有其他不足之处,比如实时内核没有自己的内存管理功能,在内存的分配仍然依赖于Linux; 实时内核虽然接管了中断,但中断的现场仍然是Linux来保存和恢复的。可以说实时内核和非实时内核是紧密耦合的,这对于系统的维护以及稳定性非常不利。

RTLinux在07年被WindRiver收购后,在开源社区就变得不活跃了。不过RTLinux的变种RTAI仍然活跃于开源社区。RTAI是完全免费,开放的,不受RTLinux专利的限制。RTAI代表“Real-Time Application Interface”,它必须与Adeos补丁一起工作。Adeos实现了一个硬件抽象层,其最重要的功能仍然是中断虚拟化,不过它比RTlinux时代的中断虚拟化功能更加完善。硬件抽象层的存在以及其功能完善,使得实时内核和非实时内核之间由紧耦合关系变为松耦合关系,这对于系统的稳定性以及代码维护是非常重要的。硬件抽象层使得Linux所需的物理资源或者从硬件抽象层获得,或者直接访问硬件(针对于Linux专属设备),套用虚拟化术语,Linux已作为实时内核的客户操作系统被调度运行。

RTAI/ADEOS 将Linux作为客户操作系统运行于实时内核之上的方式实际上是嵌入式虚拟化的内容。嵌入式虚拟化(embedded virtualization,又名Hypervisor)是最近几年热门的研究内容,它是为了弥补传统操作系统在实时性、安全性、多核扩展方面的不足而提出的。针对系统实时性的Hypervisor的方案目前主要有WindRiver hypervisor,OKL4,Lynx OS,Xenomai等。嵌入式虚拟化代表了解决Linux实时问题的目前最为先进的方法,但目前正处于推广阶段,开源的方案也比较少,上述方案中只有Xenomai是开源的,但Xenomai一般这针对某个芯片平台提供一个参考的源代码版本,如果要应用到具体平台中,还需要深入的源代码阅读才能完成移植工作,这对于一些设备厂商而言,无疑是一项高的门槛。

针对Xeonmai在平台支持方面的欠缺,笔者所在团队用了近2年半时间开发了XtimesLinux,专门针对ARM平台,而且针对特定开发板提供板级的实时方案,降低使用门槛,而且代码完全开放,希望能被工业控制,信号处理、通信等领域试用,以图在国外厂商所占据的实时基础软件市场中取得立足之地。
阅读全文»

(2个打分, 平均:3.00 / 5)

SoLoMo,美国手机与互联网趋势研究

(2个打分, 平均:5.00 / 5)