commit eb5fbe0 Author: Hagen Paul PfeiferDate: 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
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.
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
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.