1.谷歌翻译的码详mininet教程
2.Trex--高性能压测的dream tools
3.网络性能测试工具 iperf 的使用
4.飞思卡尔的IMX6Q芯片好用吗?有核心板+底板的吗?
谷歌翻译的mininet教程
第1部分:日常Mininet使用
使用Mininet启动选项显示帮助消息,命令为:$ sudo mn -h。码详演练将涉及启动选项的码详典型用法。在后台打开Wireshark,码详输入过滤器 of,码详并在Wireshark中选择回送接口(lo)进行启动。码详hishop 6.2 源码确保Wireshark已安装在Mininet VM映像中,码详如未安装,码详可通过Mininet的码详install.sh脚本安装,使用命令:$ cd ~ $ git clone github.com/mininet/mini...。码详若Wireshark安装成功但无法运行,码详查阅FAQ: /mininet/mininet/wiki/FAQ#wiki-x-forwarding。码详正确设置X将允许运行GUI程序和xterm终端仿真器。码详
与主机和交换机交互:启动最小拓扑并输入CLI:$ sudo mn。码详显示节点、码详链接和所有节点信息的命令分别为:mininet> nodes、mininet> net、mininet> dump。在主机上运行命令:mininet> h1 ifconfig -a,查看主机h1-eth0和loopback(lo)接口。调度编程源码交换机命令:mininet> s1 ifconfig -a,显示交换机接口以及VM的连接输出(eth0)。突出显示主机已分离的网络状态,运行arp和route命令。将主机、交换机和控制器置于隔离网络名称空间,除非需要复制复杂的多控制器网络,Mininet支持此操作,通过--innamespace选项实现。
测试主机之间的连接:确认可以从主机0 ping到主机1。运行其他实例arp和route命令。Mininet CLI内置pingall命令执行全对操作ping。
运行Web服务器和客户端:在主机上启动简单HTTP服务器,并通过请求运行客户端,随后关闭Web服务器。退出CLI:mininet> exit。
清理:如果Mininet崩溃,使用$ sudo mn -c命令清理。
第2部分:高级启动选项
运行回归测试:$ sudo mn --test pingpair,修改ffmpeg源码创建最小拓扑,启动OpenFlow参考控制器,进行全对ping测试,并拆除拓扑和控制器。另一个测试是iperf:$ sudo mn --test iperf,创建相同的Mininet,在一台主机上运行一台iperf服务器,在第二台主机上运行一台iperf客户端,并解析带宽。
改变拓扑的大小和类型:使用--topo选项,创建其他拓扑。例如,验证一台交换机和三台主机的所有对ping连接:$ sudo mn --test pingall --topo single,3。线性拓扑示例:$ sudo mn --test pingall --topo linear,4。
参数化拓扑是Mininet最有用和最强大的功能之一。链接变化:使用--link选项设置链接参数。例如,$ sudo mn --link tc,bw=,delay=ms,启动内核交换机,yy源码查询运行iperf,使用命令:mininet> iperf,执行ping测试:mininet> h1 ping -c h2。延迟设置对RTT有影响。
可调详细度:默认详细级别为info,打印启动和拆卸期间的操作。使用-v参数比较debug输出。设置output可以仅显示CLI输出,其他几乎没有输出。在CLI外部,可以使用其他详细级别。
第3部分:Mininet命令行界面(CLI)命令显示选项
使用$ sudo mn -h命令查看CLI选项列表。在Python解释器中使用命令:运行python、dir()函数查看方法和属性、help()函数获取方法信息、评估变量方法。
第4部分:Python API示例
Mininet源代码树中的 examples目录包含Python API示例和潜在有用代码。示例包括在每个主机上运行SSH守护程序,允许从另一个终端进入并运行交互式命令,网址提交源码退出SSH示例mininet,以及openflow官网教程。在另一个shell中启动控制器,cd ~/pox,运行./pox.py log.level --DEBUG misc.of_tutorial命令,并使用tcpdump命令进行网络监控。
Trex--高性能压测的dream tools
在高性能转发设备的测试中,选择一款合适的高性能压测工具显得至关重要。传统工具如iperf、wrk、ab等在性能方面并不足够,尤其是当设备基于dpdk实现时,它们的性能往往无法充分挖掘设备潜力。在这样的需求下,dpdk-pktgen成为了一个基本能满足性能要求的选项,然而,它在灵活性方面存在显著不足,无法在不修改源码的情况下调整如TCP标志等特性。
这时,Cisco在年开源的trex脱颖而出,成为高性能压测的理想工具。trex不仅基于dpdk实现,确保了高性能,而且提供了高度自由的包编辑能力,满足了在不修改源码的情况下调整各种参数的需要。相较于dpdk-pktgen,trex更显优势。
为理解trex,不妨先探讨scapy,一个强大的Python数据包操纵库。scapy允许按层次逐级构建数据包,以代码为例,可以轻松创建一个基于vxlan的ipv6 syn包。通过自定义层次,scapy支持构建任意所需的包,包括插入自定义协议,如自定义的TCP选项、代理协议或nsh等。
trex通过Python SDK中的STLPktBuilder接口,与scapy无缝集成,使得构建复杂数据包成为可能。trex的数据面基于dpdk实现,通过json-rpc接口对外提供控制,支持CLI、PYTHON SDK和GUI三种方式,对于开发者而言,PYTHON SDK无疑是首选。基于此SDK,自动化构建性能测试工具,为每个版本提供全面的测试数据,无疑是一种高效且便捷的方法。
整体架构方面,trex官网提供了详尽的帮助文档和实例,清晰展示了其工作原理和配置步骤。针对负载均衡(LB)测试,关注的关键指标包括CPS(每秒处理请求数)、BPS(每秒字节传输量)、PPS(每秒包传输量)以及特殊报文处理能力,如会话同步、NAT等。
trex的无状态模式提供了一系列优势,包括自动化框架、流编排和报文变量设置等。通过例如stl_bi_dir_flows.py、burst_3st_loop_x_times.py和syn_attack_fix_cs_hw.py等脚本,可以实现高效且精确的测试流程,从而深入挖掘设备性能。
网络性能测试工具 iperf 的使用
在网络服务中,带宽是指单位时间内数据流量的大小,常用单位有b/s、Kb/s、Mb/s等,其中1 Byte=8 bit。为了测试带宽性能,专业的网络性能测试工具Iperf3因其功能强大而被推荐。
Iperf3不仅可以测试TCP和UDP的最大带宽,还提供延迟抖动和数据包丢失的报告,适用于各种操作系统。在 CentOS 7.2 中,推荐使用rpm包安装,如果需要,也可选择源码编译,但后者过程较为繁琐。Windows 用户则需从iperf.fr下载安装包,解压后将关键文件复制到指定目录并确保防火墙关闭。
Iperf3分为客户端和服务器模式,它拥有一系列参数供用户根据需要调整。具体使用方法和详细参数可参考相关博客。运行iperf3后,结果分为两类:客户端显示的即时数据,以及通过--get-server-output获取的服务端详细报告。
理解并有效利用iperf3的输出报告,如带宽峰值、丢包率等,是优化网络性能的重要步骤。通过实践和学习,用户可以更好地掌握这个实用工具,提升网络测试的准确性和效率。
飞思卡尔的IMX6Q芯片好用吗?有核心板+底板的吗?
飞思卡尔的IMX6Q不错,4核运算,最高主频可达1.2Hz,而且支持高清视频(有高清端口,LCD、LVDS、VGA、HDMI)。虽然说国外的一些开发板都是单板结构,但是国内也有一些不错的厂商开发的核心板+底板的开发平台。这里,推荐天嵌科技的TQIMX6Q_BASEC开发板,比较高的性价比。