Panabit开发指南XX0830.docx

上传人:b****8 文档编号:10228681 上传时间:2023-02-09 格式:DOCX 页数:43 大小:37.51KB
下载 相关 举报
Panabit开发指南XX0830.docx_第1页
第1页 / 共43页
Panabit开发指南XX0830.docx_第2页
第2页 / 共43页
Panabit开发指南XX0830.docx_第3页
第3页 / 共43页
Panabit开发指南XX0830.docx_第4页
第4页 / 共43页
Panabit开发指南XX0830.docx_第5页
第5页 / 共43页
点击查看更多>>
下载资源
资源描述

Panabit开发指南XX0830.docx

《Panabit开发指南XX0830.docx》由会员分享,可在线阅读,更多相关《Panabit开发指南XX0830.docx(43页珍藏版)》请在冰豆网上搜索。

Panabit开发指南XX0830.docx

Panabit开发指南XX0830

1.Panabit开发指南XX0830

系统诊断命令要紧用来对硬件配置及性能进行诊断,目前要紧提供以下诊断功能:

1)HT(HyperThreading)问题诊断

2)硬件性能评估

1.1HT问题诊断(jflowstat)

Panaos在某些打开了CPUHT(HyperThreading)选项主机上CPU调度功能不能正常工作,要紧表现为数据处理CPU不能正确切换,因此,要想确保Panaos的调度能正常工作,一样需要在BIOS里关闭HT。

通过jflowstat命令能够发觉Panaos的调度是否正常工作。

下面是执行一次该命令的屏幕输出:

#floweyejflowstat

jflow_pkt_count=0

jflow_loop_count=404695071

jflow_mbuf=0x0

jflow_stage=21

event_qsize=2047

event_count=0

event_reader=0

event_writer=0

要紧看jflow_loop_count那个计数器,假如在两次命令执行之间,那个参数一直没有变化,或者第一次执行时,那个参数为0,那么就表示Panaos的调度没有正常工作,HT确信被打开了,需要在BIOS里将HT关掉。

1.2硬件性能评估(ifsendpkt)

为了方便合作伙伴快速并方便的诊断自己采购的硬件设备的性能,Panabit在10.04版本中集成了一个用来测试设备网络性能的工具,那个工具由ifsendpkt来触发。

下面先介绍一下如何构建测试的环境。

构建测试环境的工作专门简单,只需要被测试机和一根或几根网线即可。

假如想测试设备上em0和em1两个网络端口之间的性能,能够如下实现:

1)将em0和em1设置成网桥模式(注意:

必须属于同一个网桥)

2)将em0和em1用网线连接起来

3)使用ifsendpkt命令发种子包

4)使用ifstat命令查看实时em0和em1上的实时统计结果

Ifsendpkt命令格式如下:

Ifsendpktif-namepacket-numpacket-size

其中:

1)if-name:

网卡的名称,比如em0或em1

2)packet-num:

发送种子包的个数,一样使用32或64

3)packet-size:

发送种子包的长度,比如64、128和256等等

例如:

ifsendpktem03264,就表示发送32个长度为64字节的UDP数据包(注意,Panabit使用UDP数据包作为测试种子包,目前还不支持其它类型的数据包)。

使用那个命令后,就能够测试从em0到em1方向上的64字节数据包时的性能。

假如想同时测试两个方向的性能,只需要执行一次ifsendpktem13264命令即可,ifstat命令会显示两个方向上的统计结果。

假如只想测试硬件的裸体性能(确实是不通过Panabit业务逻辑),能够在执行ifsendpkt命令之前,先将网卡设置成软件bypass模式(注意不是硬件bypass),具体命令如下:

#floweyeifsetname=em0bypass=1

#floweyeifsetname=em1bypass=1

2.对象统计分析

依照对象类型,网络流量统计命令能够分为几个大类:

1)网卡流量统计:

统计网卡流量以及收发包信息

2)应用流量统计:

统计应用或应用组流量信息

3)IP流量统计:

统计某个内网IP流量信息

4)应用对象统计:

统计QQ号码,MSN账号和共享用户等信息

5)数据库信息显示

2.1网卡流量统计(ifstat,ifget)

Ifstat命令要紧用来查看网卡数据速率(bps),收发包速率(pps)和TCP、UDP以及网卡上面的寄存器信息,它的格式为:

Ifstat[if-name]

假如指定网卡名称(if-name),则显示该网卡内部驱动所统计到的信息,比如寄存器信息,网卡队列信息等等。

假如不指定任何网卡,则显示所有网卡的统计信息,下面是一个统计例子:

ix39823.46M9823.48M959322959324009823.46M9823.48M0095932295932400

ix19823.48M9823.46M959324959322009823.48M9823.46M0095932495932200

上面输出总共有15列,每列顺序如下:

namebps-inbps-outpps-inpps-outbps-tcpinbps-tcpoutbps-udpinbps-udpoutpps-tcpinpps-tcpoutpps-udpinpps-udpoutpps-synpps-synack

其中:

1)name表示网卡名称

2)bps是bitpersecond的简写

3)pps是packetpersecond的简写

4)in表示输入,out表示输出

5)syn表示TCP的SYN包

6)synack表示TCP的SYN-ACK包

ifget命令用来猎取某个网卡上的统计信息,比如下面的输出:

quota=20

mtu=1500

zone=inside

mode=0

ifdesc=82545EM_COPPER

peer=none

driver=PANAOS

link-state=up

macaddr=00:

0C:

29:

67:

51:

F7

rx-byte=185973

rx-pkt=1417

rx-tcp-byte=168970

rx-tcp-pkt=1328

rx-udp-byte=14543

rx-udp-pkt=48

tx-byte=0

tx-pkt=0

tx-tcp-byte=0

tx-tcp_pkt=0

tx-udp-byte=0

tx-tcp-pkt=0

invalid-pkt=0

no-buffer=0

tx-drop=0

watchdog-events=0

big-packets=0

bps-in=0

bps-out=0

bps-tcp-in=0

bps-tcp-out=0

bps-udp-in=0

bps-udp-out=0

pps-in=0

pps-out=0

pps-tcp-in=0

pps-tcp-out=0

pps-udp-in=0

pps-udp-out=0

上面每一行的输出含义自明,那个地点不再赘述。

2.2应用流量统计(appstat)

应用流量统计命令能够依照用户指定的参数或选项显示对应的应用流量统计信息,这些统计信息包括如下内容:

1)当前连接数

2)当前节点数

3)累计上下行流量和总流量

4)最近10分钟上下行流量和总流量

5)流量所占列表项的百分比

6)当前的上下行速率和总速率

下面是appstat的命令格式:

appstat[app=XXX][sort=xxx][bridge=xxx][showsum]

其中:

1)app表示应用名称或应用组名称。

比如app=p2p表示显示P2P协议组里的所有应用统计信息;

2)sort表示排序方式。

sort=all表示按照累计总流量排序;sort=last表示按照最近10分钟总流量排序;sort=bpsup表示按照当前上行速率排序;sort=bpsdn表示按照当前下行速率排序;sort=bps表示按照当前总速率排序;sort=allup表示按照累计上行流量排序;sort=alldn表示按照累计下行流量排序;sort=lastup表示按照最近10分钟上行流量排序;sort=lastdn表示按照最近10分钟下行流量排序;sort=flow表示按照当前连接数排序;

3)bridge表示网桥编号。

0表示整个系统;1~4分别表示网桥1至网桥4;5~8表示虚拟链路1至4;

4)showsum表示是否在最后显示一行汇总信息,假如没有那个参数,则表示不显示汇总信息;

下面是一次输出结果:

default未知应用00155.18K0155.18K81.66135.78K0135.78K87.61000

sS80584.43K0584.43K3.16124.89K0124.89K4.36000

….

thunder迅雷000000.000000.00000

每列的含义依次如下:

应用英文名;

应用中文名;

应用连接数;

应用节点数;

累计上行流量;

累计下行流量;

累计上下行流量之和;

累计流量所占百分比;

最近10分钟上行流量;

最近10分钟下行流量;

最近10分钟累计上下行流量之和;

最近10分钟累计流量所占百分比;

上行速率;

下行速率;

上下行总速率。

2.3内网IP流量统计(ipobjget,ipobjlistflow,ipobjlistipa,ipobjlist)

当打开“内网IP统计”选项后,Panabit就会记录并统计每个它所检测到的内网IP的相关信息,这些信息包括:

1)汇总信息(比如流入和流出速率,TCP和UDP连接数)

2)身份信息(比如QQ号码,MSN账号,POP3账号)

3)共享用户信息

4)连接数信息

5)当前应用流量信息

Ipobjget命令用来猎取汇总信息,它的格式为:

ipobjgetip-address

#floweyeipobjget192.168.0.2

addr=192.168.0.2

ttl=600

life=6181

inbytes=692.30K

outbytes=1.04M

bpsin=0

bpsout=0

flowcnt=2

tflowpassed=0

uflowpassed=0

bindmac=0

mac=00.1c.bf.83.26.57

其中ttl表示该IP的生存期,假如在那个时刻内没有流量的话,该IP对象就会从系统那个中删除掉;bindmac表示是否做IP和MAC地址绑定(目前那个字段只是保留,并没有实现);life字段表示该IP从第一次检测到现在所存在的时刻;其它字段不言自明,那个地点就不赘述了。

ttl和life的单位均为秒。

Ipobjlistflow命令用来列出某个IP地址当前所有的TCP和UDP连接信息,它的格式为:

ipobjlistflowip-addr[app]。

app为可选参数,假如指定app,则只显示属于该app的连接,app能够是一个单独的应用,也能够是一个应用组比如ipobjlistflow192.168.0.2p2p显示192.168.0.2的所有p2p连接。

下面是一条连接的信息:

67Stcp192.168.0.2:

2855--192.168.0.20:

44316243040834664[00]

其中:

1)67表示这条连接从创建到现在存在了67每秒;

2)S表示这是一条S应用连接;

3)tcp表示这是一条TCP连接;

4)192.168.0.2:

2855-192.168.0.20:

443包含连接的IP地址和端口信息;

5)1624和3040为连接正反两个方向的流量分别为1624Bytes和3040Bytes,4664是这两个数之和;

6)83表示该连接的剩余生存期为83秒

身份信息和共享用户信息使用appobjlist命令显示,请参考它的使用说明。

Panabit会实时记录分析内网IP的当前流量信息,用户能够使用ipobjlistipa命令,命令使用方式如下:

ipobjlistipa–ipxxx.xxx.xxx.xxx–sin|out|all–appapp-name

其中:

1)-ip参数表示指定IP地址,能够指定某个IP地址,也能够指定一段IP地址或一个子网段;

2)-s参数指定排序方式,in表示按照管用流入速率排序,out表示按照管用流出速率排序,all表示按照管用总速率排序。

3)-app指定应用或应用组

ipobjlistipa命令输出的每一行格式如下:

ip地址应用英文名称应用中文名称应用流入速率应用流出速率应用总速率

那么,用户如何能得到目前在线的内网IP列表呢?

这能够使用ipobjlist命令,ipobjlist命令格式如下:

ipobjlist[-ipip-addr][-sall|in|out|allbps|inbps|outbps|flowcnt|ipaddr|account|natip][-nxx]

其中:

1)-ip参数指定要显示的IP地址及其范畴,比如10.1.1.1-10.1.1.255,也能够指定单个IP地址;

2)-s参数指定如何对显示结果排序,all、in和out分别对应总流量、流入流量和流出流量;allbps、inbps和outbps分别对应总速率、流入速率和流出速率;flowcnt指按照连接数排序;ipaddr表示按照IP地址排序;account表示按照身份信息个数排序;natip表示按照共享用户数排序;

3)-nxx参数表示只显示前xx项;

Ipobjlist命令针对每个IP,输出一行信息,每行信息对应的字段含义从前到后依次为:

1)IP地址

2)在线时刻(以秒为单位)

3)TTL

4)连接数

5)MAC地址

6)流入流量

7)流出流量

8)流入速率

9)流出速率

10)身份信息数

11)共享用户数

2.4应用对象统计(appobjlist)

在Panabit中,像MSN账号、QQ号码、POP3账号以及共享用户等信息差不多上作为应用对象(ApplicationObject)来治理的。

能够使用appobjlist命令来显示系统中的所有应用对象。

需要注意的是,那个命令没有提供过滤功能,因此需要自己使用grep或其它的方式进行过滤。

appobjlist命令显示的每一行为一个对象,每行格式如下:

typetype-descriptionobject-idip-addresslast-time

其中:

1)type为对象的类型.qq表示对象为QQ号码;msn表示对象为MSN账号;lip表示共享用户;

2)type-description是对对象类型的描述性信息;

3)object-id依照对象类型不同,内容也不一样。

假如type为qq,那么object-id确实是QQ号码,其它类推;

4)ip-address为该对象所属的内网IP地址;

5)last-time为该对象最后一次检测到的时刻;

2.5数据库信息显示(chartdump,chartrowlist)

Panabit有一个进程叫ipe_datamon,那个进程要紧功能确实是爱护Panabit数据库,它要紧负责下面的情况:

1)定期从Panaos采集各种数据对象的信息(目前缺省的是5分钟采集一次),比如网卡流量信息,应用流量信息等;

2)所有数据都储存在内存中,最多储存30天的数据记录;

3)每隔5小时将内存中的数据刷新到CF卡或硬盘上,储存的数据文件名为panabit.rrd;

4)同意floweye的数据库操作命令,比如chartdump命令;

chartdump命令使用方式如下:

chartdump[bridge=n][hours=nn][tmend=nnn][tag=tag1][tag=tag2]…[tag=tagN]

其中:

1)bridge参数用来指定要显示的网桥或虚拟链路,0表示整个系统,1~4表示网桥1~网桥4,5~8表示虚拟链路1~4;

2)hours和tmend两个参数决定了要显示时段的数据,命令显示的时段为[tmend–hours*3600,tmend];不在时段之外的数据不显示;

3)tag参数用来指定要显示的字段。

比如p2p.thunder.flow表示迅雷连接数;p2p.thunder.bpsout表示迅雷上下速率;p2p.thunder.bpsin表示迅雷下行速率;p2p.thunder.bps表示迅雷总速率;em0.ppsin表示网卡em0的流入pps;em0.ppsout表示网卡em0的流出pps;em0.pps表示网卡em0的总pps。

具体tag参数能够参见Web界面脚本里的实现。

关于每个tag,chartdump输出如下内容:

TAGtag-nametag-desc

DATAtimevalue

……

上面的TAG和DATA为关键字,time的单位为秒,value是该时刻的值。

需要注意的是,chartdump会自动依照时长给出相应间隔的数据,比如1周时长的时段的数据实际上确实是数据库里若干条数据平均后的结果。

用户也能够使用chartrowlist命令显示最后一次采集的数据,具体显示的内容其含义不言自明,那个地点离就不举例了。

2.6IP群组

1)添加IP群组

floweyetableadd群组名称

2)删除IP群组

floweyetableremove群组序号

1)添加IP

floweyetableaddip群组序号添加的IP

2)删除IP

floweyetablermvip群组序号添加的IP

群组序号是依照IP群组名称下拉列表从上而下,从1开始依次加1

3.配置治理

Panabit的配置治理要紧包括:

1)网络配置

2)应用参数配置

3)节点治理

4)内网伪IP防护

5)网桥带宽配置

6)内网IP统计选项配置

3.1网络配置(ifconfig,route,ifset,emsetspeed)

Panabit的网络配置方面比较简单,要紧包括:

1)治理口配置

2)数据口配置

治理口由FreeBSD直截了当治理,因此它的配置是使用FreeBSD的ifconfig(配置接口)和route(配置路由)命令。

比如,将治理口fxp0的IP地址配置成192.168.1.100/24,使用下面命令即可做到:

#ifconfigfxp0192.168.1.100/24

或者

#ifconfigfxp0192.168.1.100netmask255.255.255.0

route命令用来增加或删除路由,比如下面的命令用来添加缺省网关为192.168.1.1:

#routeadddefault192.168.1.1

数据口要紧使用floweye的ifset命令,它的使用方法如下:

Ifsetname=if-name[mode=n][zone=inside|outside]

其中:

1)if-name为网卡名称,如em0,em1等等;

2)mode为网卡模式,0表示监控模式,1,2,3和4分别表示网桥1,网桥2,网桥3和网桥4;

3)zone表示网卡接入位置,inside表示接内网,outside表示接外网;

假如数据接口是Intel千M卡(比如82571/2/3/3/5/6芯片),那么能够使用emsetspeed命令设置网卡的协商模式(如自动协商、强制1000M全双工等)。

emsetspeed命令使用方式为emsetspeedif-namespeed,其中:

1)if-name为网卡名称,如em0,em1等;

2)speed为网卡协商速率设置,auto表示自动协商,1000LX表示单模强制全双工,1000SX表示多模强制全双工,1000T表示电口强制全双工;

需要注意的是,设置网卡协商模式命令发出后,Panaos会reset网卡,因此会显现短暂的断网,请尽量幸免在有高流量的时候做设置。

3.2应用参数配置(appset)

关于每个应用协议,目前有三个标准参数可供配置:

1)连接老化时刻,指连接没有通过流量时的最大生存时刻,以秒为单位。

2)节点老化时刻,指节点没有新建连接时的最大生存时刻,以秒为单位。

3)是否缓存节点,指是否缓存节点,游戏协议一样会打开此选项。

appset命令格式为:

appsetapp-name[flowttl=nnn][nodettl=nnn][cachesn=yes|no]

其中,flowttl、nodettl和cachesn分别对应上述三个参数。

3.3节点治理(nodeadd,noderemove)

节点在Panabit中是一个专门重要的概念,它对性能的提升有着专门重要的作用。

所谓节点,实际上确实是一个IP地址和端口的二元组,比如一个游戏服务器的IP地址和端口。

Panabit所识别的专门多应用协议都打开了节点缓存功能,在某些极端情形下,节点缓存会导致一些误识别,在显现如此的情形下,能够通过nodeadd命令强制将误识别的节点修正或使用noderemove强制将它删除。

它们的使用方法如下:

nodeaddip-addressportapp-nametype

noderemoveip-addressport

其中:

1)ip-address为节点的IP地址

2)port为节点的端口号

3)app-name为节点应用类型

4)type为节点的4层协议类型,如tcp表示TCP类型,udp表示UDP类型,both表示既是TCP,又是UDP

3.4内网伪IP防护(ipverifyaddip,ipverifyrmvip,ipverifyclearip,ipverifyenable,ipverifydisable)

由于网络中病毒的问题,经常会显现一些恶意攻击包,其中有专门多攻击包的源地址是伪造的,这些非正常的数据包会给Panabit带来一系列的问题:

1)内网IP池专门快被耗尽,导致正常的IP流量不能统计。

2)连接池专门快被耗尽,导致正常的连接信息不能记录,因而无法分析网络流量。

基于上述两个缘故,同时出于Panabit自身功能正常运转的目的,Panabit内置了一个内网伪IP防护模块。

那个模块的工作原理如下:

1)用户通过ipverifyaddip命令将内网合法的IP地址或IP段告诉Panabit

2)当Panabit接收到一个IP包后,它先判定其源IP(假如是从内网卡进来的包)或目的IP(假如是从外网口进来的包)是否在合法IP表中,假如在,就进入正常的应用分析模块;假如不在,直截了当将此数据包当做“内网伪IP”应用,进入策略处理模块。

Panabit缺省情形下,对这种类型的数据包是做放行处理的,假如用户需要对此类数据包进行处理,就需要在策略组中添加相应的处理策略。

另外,在缺省情形下,内网伪IP防护模块是没有打开的,用户能够使用ipverifyenable命令打开此模块,也能够使用ipverifydisable功能关闭它。

需要注意的是,假如打开此功能模块而没有将合法的内网IP地址或地址段告诉Panabit,那么正常的流量就会被Panabit标记成“内网伪IP”,从而阻碍设备的正常使用。

用户能够使用ipverifyaddip将合法内网IP地址添加到IP池进行操作,比如:

1)ipverifyaddip192.168.1.1,将192.168.1.1添加到池中

2)ipverifyaddip192.168.1.1-192.168.1.3,将192.168.

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1