Panabit_logo Panabit.com P2P Controlling Solution Provider
Panabit 2010&2008
V10.06管理配置手册
V8.05管理配置手册
PanaOS 新特性
PanaOS性能测试数据
Panabit 2008 安装
2008 Live CD 使用说明
Panabit 2008 FAQ
CD->HD快装BSD 6.2
FreeBSD 6.2 图解安装
FreeBSD 6.2 精简系统
Panabit 2007
Live CD使用说明
Panabit运行实例简介
快捷安装文字版
Panabit系统简介
FAQ 问与答
Panabit白皮书
Panabit安装指南
Panabit简明配置手册
FreeBSD 4.11图解安装
制作FreeBSD精简系统
Lan Bypass 实例
Panabit硬件配置参考
某网通2005年测试报告
某电信GE链路测试报告
 
Panabit 2008 PanaOS新特性

1、要解决的问题

Panabit 2007的Panabit Core是作为一个Kernel Loadable Module(KLD)运行在Kernel空间,KLD是一种非常好的扩展Kernel功能的机制,但是运行在Kernel空间会带来一些问题:
(1) 任何微小的KLD BUG都有可能导致整个系统crash;
(2) Kernel的虚拟地址空间有限,只有1G,这个有限的空间很难支持更大规模的并发连接数;
(3) 由于运行在Kernel空间,因此要适应不同的Kernel变化,系统得移植性变得困难,特别是当移植到不同的平台(如Linux)时,工作量非常大;
(4) 由于运行在Kernel空间,因此当出现crash后,现场难以保存,难于调试。

最近1年,硬件特别是多核CPU的发展非常之快,在今后,估计很难在市场上买到单核的CPU。而目前象FreeBSD和Linux等OS的调度器都是针对线程进行调度的,而对于象Panabit这样的网络类型的系统而言,其调度的对象是数据包(Packet)和流(Flow),因此通用的进程调度算法并不适合网络类应用,不能发挥硬件的最大性能。所以,Panabit也有必要设计出一套自己的基于Packet和Flow的调度算法和平台。

2、新的架构

新架构主要基于以下思想:
(1) Panabit出现问题不能导致系统crash;
(2) Panabit必须能够在其依赖的运行机制不变的情况下独立运行;
(3) Panabit是高性能的;
(4) Panabit是容易调试的;
(5) Panabit的特征库是可描述的。
基于上述思想,一套独立的运行于通用OS(如FreeBSD和Linux)之上的OS被设计出来,我们称这个OS为PanaOS,相比以前的版本称之为PanaOS 2.0。
另外,一种独立的专门用来描述协议特征的语言PSDL(Protocol Signature Description Language)也被设计出来。有了PSDL,Panabit在支持新的协议时,不在需要更改代码,而是扩展一个特征库即可。

3、PanaOS 2.0主要特性

PanaOS主要是针对于多核或多CPU系统,但是在单CPU(或核)系统上依然保持现有性能。
PanaOS是一个运行于FreeBSD或Linux等传统OS之上的OS,但是同时它具备自己的调度策略。为了确保PanaOS能够获取有保证的CPU时间,PanaOS接管了系统的调度器,然后根据自己的需要应用自己的调度策略。同时,PanaOS实现了自己的驱动架构,这个驱动架构实现比传统意义上的"Zero Copy"更好的性能,这个驱动架构同样运行于PanaOS之上。
为了保证稳定性,PanaOS实现了双OS备份机制,当MASTER OS出现问题时,SLAVE OS就会自动切换,这个切换的时间小于1ms。
同一般的调度器不一样,PanaOS所调度的单位为Packet和Flow,如果PanaOS运行在多个核或CPU单元上,这些核或CPU通过lock free ring进行通信,由于其lock free特性,因此核之间可以完全并行处理。

4、PSDL

PSDL是一个基于state chart的描述性语言,由于基于state chart,因此它可以描述协议的流程,这是很多厂家现有描述性语言所不具备的。

协议的特征主要表现在两个方面:数据特征和流程特征。
PSDL所描述的流程由一个起始节点开始,这个起始节点在PSDL中被称之为一个trigger,然后经由这个trigger的action可以引出一系列的watcher或其它action。
"Trigger,Action,Watcher"为PSDL的三个要素,由这简单的三个要素,Panabit可以构建一个简单而灵活的协议特征框架。

北京三棱镜软件工作室 2006-2009 Panabit,All Rights Reserved