Age | Commit message (Collapse) | Author | Files | Lines |
|
With the new feature we can:
1. Measure how big the bursts are for a video streams (it uses sliding window algorithm) 2. Measure how big the output buffer should be that no packet drop will occur (it uses Leaky bucket algorithm)
3. Detect if we have loses inside the MPEG2 video stream (if there are already MPEG2 packets missing) - this part of code is not added yet, see Limitations
The addition is called Multicast streams and works as follows:
- it uses the TAP system
- the main "stream" logic is taken from rtp_strems.* files
- the TAP system checks for UDP packets where the destination MAC address starts with "01:00:5E" (ethernet multicast address)
- it creates an entry for every new multicast stream
- based on sliding window and leaky bucket algorithm it calculates for every stream average BW, max BW, burst size, max buffer needed, some alarms if the limits are exceeded,...
- the same calculation is done for all streams together
- inside the window dialog you can specify the burst interval, the alarm limits and output speeds
To do & limitations:
- Currently the analysis can be done only for multicast streams, it means that VoD (Video on demand) or PayTV streams, which are normally unicast can not be analysed.
- since the MPEG2 is patended I don't know if decoding of MPEG2 packets is allowed? Can we look inside this packets and calculate packets drops based on some counter information inside the payload? Can someone please answer this question? If we can do this, I will post this part of code too.
- some more flexibility will be added
svn path=/trunk/; revision=17980
|
|
The Windows-native routines were integrated by inserting
#if GTK_MAJOR_VERSION >= 2 && _WIN32
win32_native_routine(GDK_WINDOW_HWND(top_level->window));
return;
#endif
at the beginning of each GTK+ file routine. There's probably a prettier
way to do this.
Some of the sizes need to be tweaked in win32-file-dlg.rc, but everything
seems to work.
Fix up whitespace.
svn path=/trunk/; revision=17285
|
|
svn path=/trunk/; revision=17188
|
|
Composite Expert statistics, see:
http://www.ethereal.com/lists/ethereal-dev/200511/msg00002.html
and the following discussions
svn path=/trunk/; revision=16593
|
|
that it doesn't appear to be part of GTK+.
svn path=/trunk/; revision=15501
|
|
gtk/tap_dfilter_dlg.c; don't export it.
That means that gtk/tap_dfilter_dlg.h is no longer useful; get rid of
it.
Rename "gtk_tap_dfilter_dlg_cb()" to "tap_dfilter_dlg_cb()", as it's
inside GTK+-specific code, so there's no need to distinguish it from
non-GTK+ callbacks.
Update some comments to reflect the name change and the new API for
registering tap_dfilter_dlg stats.
Make the AFP and SMB stats use the gtk/tap_dfilter_dlg.c stuff.
svn path=/trunk/; revision=15496
|
|
filter as an argument on the command line and have a dialog box to enter
the display filter through the GUI. Use it for all stats using
"gtk_tap_dfilter_dlg_cb()".
Add a top-level "stat_menu.h" file to declare "REGISTER_STAT_GROUP_E"
for the benefit of the declaration of "register_dfilter_stat()" in the
top-level "tap_dfilter_dlg.h". Rename the "stat_menu.h" in the gtk
directory to "gtk_stat_menu.h", so as not to have two headers with the
same name.
Get rid of headers not declaring any functions not being used in the
module.
svn path=/trunk/; revision=15493
|
|
svn path=/trunk/; revision=15477
|
|
named ui_util.h in / dir
svn path=/trunk/; revision=15465
|
|
and "Statistics" menu items into "stat.h" and "stat.c", to separate them
from the core tapping APIs. A tap could conceivably not register as a
"-z" command-line argument or "Statistics" menu item, and a stat could
conceivably not be implemented as a tap, and dissectors that implement
tapping points don't need the UI-related stuff from "stat.h", they just
want the tap-related stuff in <epan/tap.h>.
svn path=/trunk/; revision=15427
|
|
returned quite a list of files. Add them to MAINTAINERCLEANFILES.
Whitespace changes (replace multiple spaces by TABs, in a few cases this
needed to be done at the beginning of Makefile lines.
svn path=/trunk/; revision=14891
|
|
to NDIS specific driver information, upper second GTK part)
svn path=/trunk/; revision=14407
|
|
capturing "Multiple Files"/ringbuffer) and jump from one file of it to the next/previous one
svn path=/trunk/; revision=14231
|
|
files. Do this with GENERATED_HEADER_FILES, GENERATED_C_FILES, and
GENERATED_FILES macros in Makefile.common files, along the lines of what
wiretap/Makefile.common has.
Clean up "*~" files with "make clean" rather than only "make distclean"
in some additional places.
Add "maintainer-clean" rules to the Makefile.nmake files, paralelling
the ones in the automake-generated Makefile.in files, using the
GENERATED_FILES macros from Makefile.common files. In some cases, move
the cleanup of files from "make distclean" to "make maintainer-clean",
and in other cases, put in a comment indicating why we're not doing that
(because some files that are distributed in the source tarballs, namely
Flex output, were built with a UN*X Flex and won't compile on Windows,
so we get rid of them with "make distclean" so you can clean up stuff
that *has* to be re-generated for Windows).
Clean up some *CLEANFILES definitions - get rid of ones that no longer
apply as files were moved or that add to the definition a name that's
already there.
svn path=/trunk/; revision=13402
|
|
It is superseded by the superior Voip Call analysis.
svn path=/trunk/; revision=13353
|
|
- make VoIP Call Analysis work if, called from command line
- should also work now while capturing with packet list
updated in "real time" (to be tested)
- give each tap listener a unique identifier, so ethereal
won't mix them up
- various cleanups
- compile by default
Todo:
- add support for "tap display filter"
- reimplement function to add rtp streams to the call flow.
svn path=/trunk/; revision=13232
|
|
svn path=/trunk/; revision=12460
|
|
svn path=/trunk/; revision=12250
|
|
h323_analysis.h \
h323_conversations.h \
h323_conversations_dlg.h \
svn path=/trunk/; revision=12144
|
|
Ethereal needs to capture the DCE-RPC bind sequence, to get a relationsship between the interface UUID and the current conversation. If this binding wasn't captured, one can use "Decode As" and choose the interface from a list corresponding to a specific conversation. Currently "only" implemented for connectionoriented (TCP) DCE-RPC, but connectionless is a work in progress.
svn path=/trunk/; revision=11924
|
|
svn path=/trunk/; revision=11920
|
|
as they're now (theoretically) toolkit-independent (modulo changes that
might be required to the code to update filter lists when a new filter
is read in).
svn path=/trunk/; revision=11500
|
|
declared in a toolkit-independent header file. Get rid of
"gtk/color_utils.h", as there's nothing left in it.
svn path=/trunk/; revision=11498
|
|
the top-level directory.
svn path=/trunk/; revision=11494
|
|
combination with the hostlist/endpoints table
(some code refactoring still needs to be done in table.c/.h).
svn path=/trunk/; revision=11439
|
|
stuff appropriately.
svn path=/trunk/; revision=11438
|
|
they have LF at the end of the line on UN*X and CR/LF on Windows;
hopefully this means that if a CR/LF version is checked in on Windows,
the CRs will be stripped so that they show up only when checked out on
Windows, not on UN*X.
svn path=/trunk/; revision=11400
|
|
"gtk/isprint.h", and include that in "follow_dlg.c" (which wasn't
including "gtkglobals.h" and thus wasn't getting the redefinition) and
"proto_draw.c" (which was including "gtkglobals.h" but now needs to
include "isprint.h" as well).
svn path=/trunk/; revision=11355
|
|
svn path=/trunk/; revision=11247
|
|
- moved doxygen.cfg to doxygen.cfg.in and let configure to the substitution
on unix. Adapted the namke files accordingly.
- Don't add doxygen as a dependency for libethereal and libui: As doxygen is
an unconditional target, this would cause the applications to be rebuild
every time make was called, even when nothing changed in the meantime.
This means that by now we need to do "make doxygen" manually in case we
want updated documentation.
svn path=/trunk/; revision=11238
|
|
Rename "browser_open_program_file()" to "browser_open_data_file()", and
make it open files relative to the application's data directory, as
that's where data files such as HTMLized man pages would be put. (That
happens to be the program directory on Windows, but it's a different
directory on UN*X - and you aren't guaranteed to be able to find the
program directory on UN*X by looking at argv[0] in any case.) Move it
to "gtk/webbrowser.c".
Fix "filename2url()" to put "file://", not just "file:", in front of
pathnames on UN*X.
svn path=/trunk/; revision=11216
|
|
do some font related renaming/code cleanup
svn path=/trunk/; revision=11166
|
|
svn path=/trunk/; revision=11130
|
|
svn path=/trunk/; revision=11128
|
|
defining them.
Move declarations of some callbacks outside the source files using them
into the appropriate header, and arrange that the appropriate header is
included by those source files.
Move the SAT_E definition into a "sat.h" file, included both by
"endpoint_talkers_table.h" and "hostlist_table.h", so that both of the
latter headers can be included by the same file ("menu.c" has to include
both, as per the change in the previous paragraph).
svn path=/trunk/; revision=11096
|
|
svn path=/trunk/; revision=11044
|
|
embedding a declaration in "gtk/about_dlg.c".
Do the Authors page in the About dialog on UN*X as well as on Windows.
svn path=/trunk/; revision=10951
|
|
"create an About dialog" function's declaration to "gtk/about_dlg.h".
svn path=/trunk/; revision=10941
|
|
also added some preferences and a new preference page for this
svn path=/trunk/; revision=10729
|
|
svn path=/trunk/; revision=10667
|
|
and put it into new range_utils files. This will avoid:
a) duplicate code in save and print dialog and
b) yet another code duplication for future dialogs (export, ...)
svn path=/trunk/; revision=10665
|
|
svn path=/trunk/; revision=10182
|
|
svn path=/trunk/; revision=10120
|
|
svn path=/trunk/; revision=10110
|
|
"tap_menu.h" file, and have the Ethereal taps include that rather than
"menu.h", so we don't have to worry about making sure we've included
<stdio.h> to define FILE, etc. just because some "menu.h" functions
require it.
svn path=/trunk/; revision=10031
|
|
"Makefile.nmake"), and rename it to "noinst_HEADERS", as that's what
automake requires.
svn path=/trunk/; revision=9780
|
|
including sources common in Makefile.am and Makefile.nmake
svn path=/trunk/; revision=9776
|
|
svn path=/trunk/; revision=9770
|
|
saving the states in the recent file
svn path=/trunk/; revision=9726
|
|
to add functionality or improve performance, although, until we make it
work on GTK+ 1.3[.x] and 2.x, we shouldn't count on the performance
improvements, or make its API different from that of the GtkClist API
(other than names).
Move all the code that knows about the packet list into
gtk/packet_list.c, so that the GtkClist vs. EthClist stuff is
encapsulated inside it.
svn path=/trunk/; revision=9608
|