- 博客(10)
- 资源 (36)
- 收藏
- 关注
转载 Iperf 源代码分析(九)
Listener类在服务端,main函数通过命令行或环境变量设置了测量参数之后,生成Listener类的实例。由该Listener类的实例在指定的端口上等待客户端的连接。Listener类是Thread类的PerfSocket和Thread类的派生类。它的定义和实现位于文件src/Listener.hpp和src/Listener.cpp中。一个Thread函数就是一个独立的执
2009-08-21 15:14:00 2525
转载 Iperf 源代码分析(八)
Iperf发送的数据包结构在Iperf的测量过程中,说者线程会向听者线程发送一组数据包。在这些数据包中,除了使数据包达到指定大小而使用的填充数据外,还用以下主要信息:数据包本身的信息,如编号(id)、发送时间戳(timestamp)。主要用在UDP连接中。客户端向服务器端报告所使用的测量参数的信息,服务器端利用这些信息来发起反向连接,这些信息包含在client_hdr结构中。
2009-08-21 15:13:00 3621
原创 Iperf 源代码分析(七)
下面以程序的执行为主线,简要分析一下Iperf源代码的实现。 main函数 main函数在文件main.cpp中定义,它是程序的入口点。/* ------------------------------------------------------------------- * global variables * ------------------------
2009-08-21 15:12:00 2997
转载 Iperf 源代码分析(六)
perf中主要的类Iperf的实现中主要的类及其相互间的派生关系如下图所示。PerfSocket类PerfSocket类以Socket为基类派生而来。该类实现了Iperf用于通信的大多数功能,像发送UDP包(SendUDP),接收UDP包(Recv_UDP),发送TCP数据(Send_TCP),接收TCP数据(Recv_TCP)以及传输初始化、报告网络参数、发送/回
2009-08-21 15:11:00 2494
转载 Iperf 源代码分析(五)
Iperf的工作机制Iperf是基于Server-Client模式实现的。在测量网络参数时,Iperf区分听者和说者两种角色。说者向听着发送一定量的数据,由听者统计并记录带宽、时延抖动等参数。说者的数据全部发送完成后,听者通过向说者回送一个数据包,将测量数据告知说者。这样,在听者和说者两边都可以显示记录的数据。如果网络过于拥塞或误码率较高,当听者回送的数据包无法被说者收到时,说者就
2009-08-21 15:10:00 3441 1
转载 Iperf 源代码分析(四)
Socket 类Socket的定义和实现分别在文件Socket.hpp和Socket.cpp中。它的主要功能是封装了socket文件描述符、此socket对应的端口号,以及socket接口中的listen,accept, connect和close等函数,为用户提供了一个简单易用而又统一的接口。同时作为其他派生类的基类。Socket类的定义如下: * -----------
2009-08-21 15:09:00 2338
原创 Iperf 源代码分析(三)
SocketAddr类SocketAddr类定义在lib/SocketAddr.hpp中,实现在lib/SocketAddr.cpp中。SocketAddr类封装了网络通信中经常用到的地址结构以及在这些结构上进行的操作。地址解析也是在SocketAddr的成员函数中完成的。首先讨论一下Socket编程中用于表示网络地址的数据结构。网络通信中的端点地址可以一般化的表示为 (地址族,该
2009-08-21 15:08:00 2653
转载 Iperf 源代码分析(二)
Thread类 Thread类封装了POSIX标准中的多线程机制,提供了一种简单易用的线程模型。Thread类是Iperf的实现中比较重要的类,使Iperf实现多线程并行操作的核心。Thread类的定义在文件lib/Thread.hpp中,其实现位于lib/Thread.cpp中。/* ------------------------------------------
2009-08-21 15:07:00 3394
转载 Iperf 源代码分析(一)
概述前段时间学习Linux网络编程的有关知识,希望看一看这些网络编程的技术在实际的代码中是如何运用的。正巧实验室的项目中使用了开源网络性能测试软件Iperf,于是便初步分析了Iperf的源代码。现将分析代码的点滴收获写在我的Blog上,希望各位高人多多指教。Iperf 是美国伊利诺斯大学(University ofIllinois)开发的一种网络性能测试工具。可以用来测
2009-08-21 15:06:00 8425 4
转载 iperf 使用总结
Iperf 是一个 TCP/IP 和 UDP/IP 的性能测量工具,能够提供网络吞吐率信息,以及震动、丢包率、最大段和最大传输单元大小等统计信息;从而能够帮助我们测试网络性能,定位网络瓶颈。参数说明-s 以server模式启动,eg:iperf -s-c 以client模式启动,host是server端地址,eg:iperf -c 222.35.11.23
2009-08-20 14:44:00 2253
Linux窗口程序设计Qt4精彩实例分析.part04
2011-03-07
Linux窗口程序设计Qt4精彩实例分析附源码03
2011-03-07
Linux窗口程序设计Qt4精彩实例分析附源码02
2011-03-07
Linux窗口程序设计Qt4精彩实例分析及其源码.part01
2011-03-06
Socket编程学习资料
2008-11-19
深入理解linux内核(中文版)
2008-11-16
华为面试题集锦(超值版)
2008-11-14
编程插代码实用工具PIN
2008-11-14
TCP/UDP传送文件源程序
2008-11-04
Linux窗口程序设计Qt4精彩实例分析.part22
2011-03-07
Linux窗口程序设计Qt4精彩实例分析.part21
2011-03-07
Linux窗口程序设计Qt4精彩实例分析.part20
2011-03-07
Linux窗口程序设计Qt4精彩实例分析.part19
2011-03-07
Linux窗口程序设计Qt4精彩实例分析.part18
2011-03-07
Linux窗口程序设计Qt4精彩实例分析.part17
2011-03-07
Linux窗口程序设计Qt4精彩实例分析.part16
2011-03-07
Linux窗口程序设计Qt4精彩实例分析.part15
2011-03-07
Linux窗口程序设计Qt4精彩实例分析.part14
2011-03-07
Linux窗口程序设计Qt4精彩实例分析.part13
2011-03-07
Linux窗口程序设计Qt4精彩实例分析.part12
2011-03-07
Linux窗口程序设计Qt4精彩实例分析.part11
2011-03-07
Linux窗口程序设计Qt4精彩实例分析.part10
2011-03-07
Linux窗口程序设计Qt4精彩实例分析.part09
2011-03-07
Linux窗口程序设计Qt4精彩实例分析.part08
2011-03-07
Linux窗口程序设计Qt4精彩实例分析.part07
2011-03-07
Linux窗口程序设计Qt4精彩实例分析.part06
2011-03-07
Linux窗口程序设计Qt4精彩实例分析.part05
2011-03-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人