Changelog

 

Changelog

v1.5 Release

commit eb5fbe0
Author: Hagen Paul Pfeifer 
Date:   2013-09-18

    timesequence: add gnuplot size ratio option
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 06021fa
Author: Hagen Paul Pfeifer 
Date:   2013-09-18

    timesequence: add option (-g) to pass gnuplot options
    
    Currently implemented options are:
    
    1. no-title
    2. title="Foo Bar"
    3. x-logscale
    4. y-logscale
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 8768b61
Author: Hagen Paul Pfeifer 
Date:   2013-08-29

    timesequence: 0 is valid value for range
    
    Signed-off-by: Hagen Paul Pfeifer 

commit cba333d
Author: Hagen Paul Pfeifer 
Date:   2013-08-29

    timesequence: concrete debug output for timeframe
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 8ec9ff0
Author: Hagen Paul Pfeifer 
Date:   2013-07-29

    timesequence: code indent style fixes
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 065ff4f
Author: Hagen Paul Pfeifer 
Date:   2013-07-29

    timesequence: fix null data gnuplot warning
    
    Signed-off-by: Hagen Paul Pfeifer 

commit c5ee9a4
Author: Hagen Paul Pfeifer 
Date:   2013-07-18

    statistic: fix bug where accounting pure ACKs failed
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 1158902
Author: Hagen Paul Pfeifer 
Date:   2013-07-18

    statistic: truncate precision for output
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 482dddc
Author: Hagen Paul Pfeifer 
Date:   2013-07-18

    statistic: rename title in normal output
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 42178e2
Author: Hagen Paul Pfeifer 
Date:   2013-07-18

    timesequence: add option to hide advertised TCP window
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 1729c54
Author: Hagen Paul Pfeifer 
Date:   2013-07-16

    statistic: display throughput as float limit to .2
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 4bfd671
Author: Hagen Paul Pfeifer 
Date:   2013-07-16

    statistic: support throughput output
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 14797be
Author: Hagen Paul Pfeifer 
Date:   2013-07-16

    statistics: account per flow duration
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 1628064
Author: Hagen Paul Pfeifer 
Date:   2013-07-16

    statistics: add short option for extended mode
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 91227cc
Author: Hagen Paul Pfeifer 
Date:   2013-06-26

    make: consider  and help dist installers
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 098ce4a
Author: Hagen Paul Pfeifer 
Date:   2013-06-26

    core: new version string
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 46af81b
Author: Hagen Paul Pfeifer 
Date:   2013-06-25

    core: update version string
    
    Signed-off-by: Hagen Paul Pfeifer 

commit a554476
Author: Hagen Paul Pfeifer 
Date:   2013-06-25

    credits: new entry
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 6ab05ce
Author: Hagen Paul Pfeifer 
Date:   2013-06-25

    throughput: fix indent length
    
    Signed-off-by: Hagen Paul Pfeifer 

commit fcec9d3
Author: Yoshiaki Kasahara 
Date:   2013-06-25

    throughput: add an option --per-second (-p) to normalize values and graph
    
    also fix a typo in the description of --mode.

commit 6310bab
Author: Yoshiaki Kasahara 
Date:   2013-06-25

    throughput: Unit conversion is missing in the final summary output

commit 1cee845
Author: Yoshiaki Kasahara 
Date:   2013-06-25

    throughput: data_len belongs to the next time slot should be added to
    self.data after the previous time slot is processed

commit bb00a87
Author: Hagen Paul Pfeifer 
Date:   2013-06-24

    core: add PPP support
    
    This patch add PPP support. NS3 and real PPP traces are supported now
    and the ppp dpkt disector is now enabled. Fixes #8
    
    Reported-by: Clemens John 
    Signed-off-by: Hagen Paul Pfeifer 

commit 634e31a
Author: Hagen Paul Pfeifer 
Date:   2013-05-10

    credits: update
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 1738936
Author: Hagen Paul Pfeifer 
Date:   2013-05-10

    statistic: reformat code sections
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 393dd7f
Author: Hagen Paul Pfeifer 
Date:   2013-05-10

    statitic: make numpy module optional required
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 3ec3fcd
Merge: 7d89b5d 74285c0
Author: Hagen Paul Pfeifer 
Date:   2013-05-02

    Merge branch 'master' of http://github.com/fixje/captcp into fixje-master

commit 7d89b5d
Merge: 8ed21d2 44ef634
Author: Hagen Paul Pfeifer 
Date:   2013-05-02

    Merge branch 'master' of http://github.com/hgn/captcp

commit 74285c0
Author: Markus Fuchs 
Date:   2013-05-01

    added tcp inter-arrival times to extended statistic

commit f0f3138
Author: Markus Fuchs 
Date:   2013-05-01

    fixed format (removed tabs)

commit 063267f
Author: Markus Fuchs 
Date:   2013-05-01

    changed tcp packet size statistics => payload size
    
    counting the size of pure ACKs does not make sense to me

commit 5ca2b19
Author: Markus Fuchs 
Date:   2013-05-01

    added duration to statistic

commit 6207468
Author: Markus Fuchs 
Date:   2013-05-01

    added --extended flag to statistic mod

commit 1e1180c
Author: Markus Fuchs 
Date:   2013-05-01

    formatting issues

commit 44ef634
Merge: 09b083e b1f2d67
Author: Hagen Paul Pfeifer 
Date:   2013-04-23

    Merge pull request #6 from fixje/master
    
    Fix to analyze IPv6 traffic

commit b1f2d67
Author: Markus Fuchs 
Date:   2013-04-23

    added packet size to statistics

commit 9ccb119
Author: Markus Fuchs 
Date:   2013-04-22

    Hack to fix crash when examining IPv6-only traces
    
    This fix provides a support for analyzing traces with IPv6 packets.
    It will solve the problem for Unix platforms only, because
    socket.inet_ntop is not available on other platforms acording to the
    documentation.
    
    This is what I got for a trace with IPv6 traffic only:
    $ captcp statistic youtube-20130422-03-filtered.pcap
    I experienced the following exception:
    Traceback (most recent call last):
      File "/usr/bin/captcp", line 4290, in 
        sys.exit(captcp.run())
      File "/usr/bin/captcp", line 4261, in run
        pcap_parser.run()
      File "/usr/bin/captcp", line 552, in run
        self.callback(dt, packet.data)
      File "/usr/bin/captcp", line 826, in internal_pre_process_packet
        self.cc.update(ts, packet)
      File "/usr/bin/captcp", line 2459, in update
        c = Connection(packet)
      File "/usr/bin/captcp", line 2264, in __init__
        TcpConn.__init__(self, packet)
      File "/usr/bin/captcp", line 2155, in __init__
        self.sip       = Converter.dpkt_addr_to_string(ip.src)
      File "/usr/bin/captcp", line 480, in dpkt_addr_to_string
        iaddr = int(struct.unpack('I', addr)[0])
    struct.error: unpack requires a string argument of length 4

commit 8ed21d2
Merge: 698d8c6 09b083e
Author: Hagen Paul Pfeifer 
Date:   2013-03-18

    Merge branch 'master' of http://github.com/hgn/captcp

commit 09b083e
Author: Hagen Paul Pfeifer 
Date:   2013-02-27

    timesequence: change scaling option
    
    -t behavior is changed: until not the data set skips unwanted data. This
    leads to several problem with zero option and window size calculation
    because the first packets are not traced. The new method simple generate
    all data but gnuplots xrange option is used to zoom in a specific area.
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 698d8c6
Author: Hagen Paul Pfeifer 
Date:   2013-02-19

    throughtput: enhance help output
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 005a22e
Author: Hagen Paul Pfeifer 
Date:   2013-02-19

    throughput: always show transfered bytes, throughput
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 2d790c1
Author: Hagen Paul Pfeifer 
Date:   2013-02-18

    throughtput: display transfer unit correctly
    
    Signed-off-by: Hagen Paul Pfeifer 

commit ed62242
Author: Hagen Paul Pfeifer 
Date:   2013-02-16

    templates: linepoints to lines for inflight template
    
    Signed-off-by: Hagen Paul Pfeifer 

commit f1105b6
Author: Hagen Paul Pfeifer 
Date:   2013-02-16

    throughput: print usage message
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 410d73a
Author: Hagen Paul Pfeifer 
Date:   2013-02-16

    througput: add link-layer mode
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 39ed5f2
Author: Hagen Paul Pfeifer 
Date:   2013-02-16

    throughput: print usage if no argument is given
    
    Signed-off-by: Hagen Paul Pfeifer 

commit eb595d3
Author: Hagen Paul Pfeifer 
Date:   2013-02-12

    core: add IP ECN constants
    
    Signed-off-by: Hagen Paul Pfeifer 

commit df52ebf
Author: Hagen Paul Pfeifer 
Date:   2013-02-12

    statistic: point out that these are TCP flags
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 2263572
Author: Hagen Paul Pfeifer 
Date:   2013-02-11

    timesequence: draw CWR marker darker
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 45ad170
Author: Hagen Paul Pfeifer 
Date:   2013-02-11

    timesequence: draw ECN flags for ACK (RX) side
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 14d20b4
Author: Hagen Paul Pfeifer 
Date:   2013-02-11

    timesequence: draw ECN flags for DATA (TX) side
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 4507f1c
Author: Hagen Paul Pfeifer 
Date:   2013-02-11

    timesequence: add color definitions for ECN flags
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 02dfa47
Author: Hagen Paul Pfeifer 
Date:   2013-02-10

    timesequence: re-format init method
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 2cea7c3
Author: Hagen Paul Pfeifer 
Date:   2013-02-10

    timesequence: support data sender flow
    
    Signed-off-by: Hagen Paul Pfeifer 

commit e5d10cb
Author: Hagen Paul Pfeifer 
Date:   2013-02-10

    timesequence: add duration calculation
    
    Signed-off-by: Hagen Paul Pfeifer 

commit a4cd92c
Author: Hagen Paul Pfeifer 
Date:   2013-02-10

    timesequence: add PUSH flag visualization
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 146b144
Author: Hagen Paul Pfeifer 
Date:   2013-02-10

    timesequence: refactor code - II
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 671f3d2
Author: Hagen Paul Pfeifer 
Date:   2013-02-10

    timesequence: refactor code and make variable smaller
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 3074230
Author: Hagen Paul Pfeifer 
Date:   2013-02-10

    timesequence: add string template system
    
    Gnuplot files as well as all other template files are currently copied
    in the output directory without any modification. To extend the format
    and add _conditional_ additional information to the GPI file we must
    change to content. Via python string.Template class we can simple change
    file content. Without any regex magic.
    
    Signed-off-by: Hagen Paul Pfeifer 

commit e18a98c
Author: Hagen Paul Pfeifer 
Date:   2013-02-09

    make: include animation js data for install tgt
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 3de4bcd
Author: Hagen Paul Pfeifer 
Date:   2013-02-09

    statistic: add ECN flag support (ECE/CWR)
    
    Enable possibility to check for ECN bits on the wire.
    
    Signed-off-by: Hagen Paul Pfeifer 

commit cb8f781
Author: Hagen Paul Pfeifer 
Date:   2013-02-09

    core: captcp 1.1
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 9f6828b
Author: Hagen Paul Pfeifer 
Date:   2013-02-09

    core: rename sequence graph in flow graph
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 81015e0
Author: Hagen Paul Pfeifer 
Date:   2013-02-08

    statistic: re-format output to meet smaller terminals
    
    Signed-off-by: Hagen Paul Pfeifer 

commit db6c20a
Author: Hagen Paul Pfeifer 
Date:   2013-02-08

    core: python may locate anywhere[TM]
    
    Signed-off-by: Hagen Paul Pfeifer 

commit b98706b
Author: Hagen Paul Pfeifer 
Date:   2013-02-08

    core: change captcp URL in header
    
    Signed-off-by: Hagen Paul Pfeifer 

commit a12da62
Author: Hagen Paul Pfeifer 
Date:   2013-02-08

    core: more code indent to meet 80 char limit
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 9440ce4
Author: Hagen Paul Pfeifer 
Date:   2013-02-08

    sequencegraph: don't recalc pi/2 every time
    
    Signed-off-by: Hagen Paul Pfeifer 

commit eecf424
Author: Hagen Paul Pfeifer 
Date:   2013-02-08

    core: code indent to meet 80 char limit
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 1fe5135
Author: Hagen Paul Pfeifer 
Date:   2013-02-08

    core: create common packet info class
    
    Signed-off-by: Hagen Paul Pfeifer 

commit e1bfd3b
Author: Hagen Paul Pfeifer 
Date:   2013-02-08

    core: indedent module description
    
    Just to align the code on the 80 chars coding style
    pseudo rule.
    
    Signed-off-by: Hagen Paul Pfeifer 

commit f898e6e
Author: Hagen Paul Pfeifer 
Date:   2013-02-05

    core: hide trace directory, intro out dirs
    
    Signed-off-by: Hagen Paul Pfeifer 

commit e8d67fc
Author: Hagen Paul Pfeifer 
Date:   2013-02-05

    time-sequence: code cleanup
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 2e55412
Author: Hagen Paul Pfeifer 
Date:   2013-02-05

    time-sequence: add TCP ACK and SACK offsets
    
    The introduced offset information with zero option was missed for ACK
    and SACK (selective ACKs) packets. So we add support here.
    
    Signed-off-by: Hagen Paul Pfeifer 

commit d1b2f74
Author: Hagen Paul Pfeifer 
Date:   2013-02-05

    core: print error and exit if snaplen is to short.
    
    Signed-off-by: Hagen Paul Pfeifer 

commit d490660
Author: Hagen Paul Pfeifer 
Date:   2013-02-05

    time-sequence: modify help/usage output
    
    If the user forgot to provide a pcap filename the short description is
    outputed. Now - because I think the user has no idea if he specify no
    argument the whole usage() is printed too.
    
    This should increase the user experience[TM].
    
    Signed-off-by: Hagen Paul Pfeifer 

commit a8e5c70
Author: Hagen Paul Pfeifer 
Date:   2013-02-05

    sequence-container: fix numpy module import
    
    numpy has no second level class support or whatever is intended. Just
    import first level instance and things work magically.
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 1c0a70d
Author: Hagen Paul Pfeifer 
Date:   2013-02-05

    time-sequence: add zero option
    
    Large TCP sequence number can be hard to read. Often the absolute number
    is not required, a delta timestamp, starting with 0 is often superior.
    The --zero (-Z) option just provide this information.
    
    Signed-off-by: Hagen Paul Pfeifer 

commit e1ed512
Author: Hagen Paul Pfeifer 
Date:   2013-02-02

    core: add function to get unwinded class instance
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 37fba28
Author: Hagen Paul Pfeifer 
Date:   2013-02-02

    core: make module reference to packet info visible
    
    Start to wrap() connection and flow id via PacketInfo class.
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 46a403e
Author: Hagen Paul Pfeifer 
Date:   2013-02-02

    core: make PacketInfo superclass
    
    All packet info class wrappers must subclass from this class.
    
    Signed-off-by: Hagen Paul Pfeifer 

commit 51ed70d
Author: Hagen Paul Pfeifer 
Date:   2013-02-01

    core: captcp v1.0
    
    Signed-off-by: Hagen Paul Pfeifer 

v1.0 Release

commit 99e8503
Date:   2013-01-29

    data: integrate stop button
    
commit c4d2d4d
Date:   2013-01-29

    animation module: functioning state

commit 1597690
Date:   2013-01-28

    animation: add rtt calcalation functionality
    
commit c11a600
Date:   2013-01-28

    packetinfo: rename function to something shorter
    
commit 69649ef
Date:   2013-01-28

    packetinfo: add is_udp_packet method
    
commit 725e60e
Date:   2013-01-28

    core: fix merge conflict

commit 278fcc5
Date:   2013-01-28

    core: add PacketInfo class
    
    This time this info has no network or transport layer specifics. Just a
    multiplexer class.
    
commit b2a7da0
Date:   2013-01-28

    core: rename PacketInfo in TcpPacketInfo
    
commit e3cca58
Date:   2013-01-28

    core: add function to copy a directory structure
    
    Needed for the much larger html file set for the animation module. May
    be needed for other modules as well.
    
commit 3c24078
Date:   2013-01-28

    animation-mod: add output directory
    
    Current option honor the output file, which is wrong for this module.
    
commit 6ebd3b8
Date:   2013-01-28

    animation-mod: add commandline parser
    
    Parse required arguments for animation module, this includes
    
    o verbose level
    o pcap file path
    o output directory
    o connection (flow) id
    
commit 896a09f
Date:   2013-01-28

    animation-mod: add infrastructure code
    
    Simple add main class as well as all methods and hook into captcp
    infrastructure. This commit can be used as a Hello World example.
    
commit 64a1135
Date:   2013-01-28

    core: rename init function
    
    pre_initialize was the method name where a module implement all pre
    initializtion things. pre initilization is done twice - one
    "initialization" is enough. So this patch renames all things.
    
commit 4e80f0a
Date:   2013-01-28

    core: extend help/usage output
    
    This patch increase the output of usage()/help() by providing a short
    description of each module:
    
    Usage: captcp [-h | --help] [--version]  [] 
    Available modules:
       stacktrace      - Hook into Linux Kernel to trace cwnd, ssthresh, ...
       show            - Tcpdump/tshark like mode
       spacing         - Time between packets and acks
       statistic       - Show statistic about all connections
       payloadtimeport - Show distribution of data over ports
       timesequence    - Plot a Time-Sequence graph
       geoip           - Show country/location information about peers
       inflight        - Visualize all packets in flight and not ACKed
       sound           - Play sound based on payload/ack packets
       connection      - Visualize all communicating peers
       throughput      - Graph the throughput over time graph
       template        - Metamodule to generate template files for Gnuplot
       sequencegraph   - Graph a TCP sequencegraph (flow graph)
    
commit 0f61448
Date:   2013-01-28

    core: format print_usage()
    
    Just some tidy coding style cleanups
    
commit f0b7390
Date:   2013-01-28

    timesequence mod: bring gnuplot arrows in foreground
    
		Larger graphs show many sequncenumber graphs as well as ack graphs.
		These lines will hide data-retransmission graphs - this should not
		be the case. Just bring ACK and SACK info to foreground.
    
commit a2426f0
Date:   2013-01-27

    animation-mod: integrate alpha release
    
    This patch adds the required HTML/JS infrastructure. Captcp.py
    functionality is added in a follow-up patch.

v0.9 Release

commit 1c543a2
Date:   2013-01-25

    core: add new decoder functionality
    
    Due to python-pcap removal the packet decoder was enforced to interpret
    every packet as Ethernet - which will not be true in every case.
    
    This patch check for some common types (Ethernet, Loopback, Linux) and
    if not correct we enforce a Ethernet encoding - which will _probably_
    not be correct, but it is better then nothing. A big warning message is
    printed.
    
commit 2ff025a
Date:   2013-01-25

    core: remove pcap library dependency
    
    Pcap library was slightly used for link layer definitions, to get the
    right dpkt decode. We not consider every packet as a ethernet frame.
    
commit 0efc431
Date:   2013-01-25

    core: handle non-existing numpy package
    
    Copy-paste error in code do not handle the module-not-exist-excetion
    properly
    

v8 Release

commit 284ea25
Date:   2013-01-23

    core: adjust copyright year string
    
    Just to stay in time ...
    
commit af09e75
Date:   2013-01-23

    core: add version option
    
    Sometimes it is handy to know what captcp is used. --version will now
    print the current version and exit the program.
    
commit 40ba3d1
Date:   2013-01-23

    core: refactor usage() output
    
    Provide usage() by a single function now - not several time in code.
    
commit f9ac182
Date:   2013-01-21

    throughputmod: format code
    
    Just cleanup to stick to our coding rules
    
commit 31a687b
Date:   2013-01-21

    throughputmod: add reference time option
    
    Via --reference-time (-r) it is now possible to GNUplot all connections
    from one pcap file with the same time-offset. Until now (without -r) the
    start-time for GNUplot graphs is the particular connection (time 0.0).
    With -r, the reference time is now the first packet in the capture file.
    
    This option makes it possible to draw several flows starting to
    different times without align then on the time-axis.