What's new? cFosSpeed
* New feature
! Software change requires modification of your configuration
- Information only
Revision history: ---------------------------------------------------------
cFosSpeed 12.01 build 2519
+ The built-in UI HTTP server now prefers its own mime types. This prevents
UI loading problems if Windows mime types have the wrong values.
x Fixed a bug where "Expires" HTTP header was sometimes garbled.
- Old .HTA functionality that was removed in cFosSpeed 10.20 is available
cFosSpeed 12.01 build 2517
- Update for Windows 11.
- Updated Visual Studio.
- Updated multi-language files.
cFosSpeed 12.01 build 2516
+ Added pcnt statistics for RSC and LSO packets. Use "spd pcnt" to display.
cFosSpeed 12.01 build 2515
- Improved name tags for the frequency usage graph.
cFosSpeed 12.01 build 2514
+ The "Adapter Info" UI now displays WiFi frequency usage graphs for the
2.4 GHz, 5 GHz, and 6+ GHz bands. This can help you optimize the used WiFi
channels for optimal performance.
cFosSpeed 12.00 build 2512 -- 15-Jun-2021
* Much improved dialogs!
We completely reworked the cFos Speed configuration dialogs. They now use a
comprehensive HTTP API (see https://www.cfos.de/de/cfosspeed/documentation/web-api.htm )
and Vue.js and Bootstrap and are thus responsive and easier to maintain.
We hope you enjoy the new design! :-)
In addition, cFosSpeed can now use Chromium Webview2 to display its dialogs.
This means that the new dialogs are displayed in our own window, instead of
the default web browser window. This allows for improved visual experience
* Finally, due to public demand: Added port prioritization to preferences UI.
You can specify local and remote ports (both TCP and UDP ports will be
matched), either individual ports, a range, or a combination of both.
E.g. "80,443,1000:1010" will match ports 80 and 443, and ports 1000-1010.
See below for the new filter expression.
+ New commands "setkey" and "querysect", which are slightly changed versions
of "addkey" and "showsect". Syntax is as follows:
setkey set = in
querykey query from
delkey delete from
querysect query section can have a filename in front, separated by a "/". Otherwise, the
file is settings.ini.
+ All port filter expressions (-[sdlr]port, -tcp-[sdlr]port, -udp-[sdlr]port)
now accept sections in .ini files as well. This can be mixed with regular
port ranges. Example in settings.ini:
filter=-lport 1,2:4,@user.ini/higherlports -c higher
+ The current connections dialogs now "freeze" when closed, to save CPU time
when not used.
+ Added "spd gset worker_threads" setting, default is 0, which means using
half the number of cores. Any number between 1 and the actual number of
cores can be set. You MUST use "spd gset worker_threads XXX -save" and
restart cFosSpeed, since the number is only used on driver start.
This selects the number of threads used for data transfer. Higher numbers
might improve thruput, but might also lead to short freezes.
x Fixed a very slow handle leak.
x When changing monitor resolution, cFosSpeed will move now its status window
to a formerly saved position or the default position. Thanks to John E. G.
for bug report.
x Sometimes the usage graph didn't allow the selection of elements. Fixed.
x Fix for ProtonVPN and Speedify VPN (and maybe other VPN services as well):
the window for the VPN connection is now displayed correctly. Thanks to
Dima S. for bug report.
x Burst code could have selected an unusable pinger. Fixed.
x Fixed a rare, ancient crash when unloading.
- Meta dumps now also include the space method by which traffic is counted.
For more info, see collected-data.txt.
- Added debugging aid for a rare bluescreen.
cFosSpeed 11.10 build 2483 -- 04-Jan-2021
x Fixed a handle leak. Many thanks to Tin Yeuk for the report.
x Fixed a bluescreen if cFosSpeed was used in bridged mode.
- Added more games to settings.ini.
- Added CPU speed measurement in "spd ver".
- Changes for new C++ compiler.
cFosSpeed 11.08 build 2473 -- 10-Nov-2020
x Fixed erroneous ping ballon on WAN connections. Thanks to Avatar for
report and testing.
x Fixed a long-standing bug (since 10.59) caused by copying all NDIS
information types. Now gset copy_oob = 0 is default. Thanks to Michael B
and Andreas B for testing.
Added gset oob_bits = 0xffffffff, meaning it's enabled for all supported NDIS
information types (currently 1, 8, 9, 11, 12, and 14).
cFosSpeed 11.06 build 2462 -- 30-Oct-2020
* Speed-up for high-speed connections. Now you should get full thruput, even
on slower machines. Please report how that works for you.
+ Added new passthru mode 3; old modes 3 and 4 are now 4 and 5. Added a
passthru mode 6, which causes the whole NET_BUFFER_LIST chain to be ignored.
+ Status window position is now stored with respect to monitor resolution.
Thanks to Frank H. for the idea!
x Fixed problems with WAN Dial-Up if you had only one of IPv4 and IPv6
x Fixed a crash in status window. Thanks to Michael S. for dumps.
x Fixed a spurious bluescreen when RX shaping was active. Thanks to Avatar
x Fixed a bluescreen in the 32-bit version.
x cFosSpeed accessed RSC structures on NDIS < 6.30, where such structures are
not yet supported. This led to all kinds of statistical miscalculations.
x Fixed wrong average transfer units (spd cons -atu). This is used in rx
shaping as well.
x Some users experienced mouse hangs while downloading heavily. Now the
number of worker threads has been limited to half the number of CPU cores to
x Fixed installation problem on Windows 8.1.
x Improved cFosSpeed thruput on Gigabit connections. Thanks to Thomas Q. and
all the others for testing.
x Default program icon image was always small -- fixed.
x Finally fixed spd.exe crash! That bug was ancient, but now it's gone.
x Finally fixed hanging downloads with NordVPN when RWIN expansion was used.
This turned out to be poor programming of NordVPN's driver. Thanks to
Contor for traces and tests.
x Fixed dumping of LSO/RSC packets.
x Fixed motionless HTML skin window. Thanks to Luis R. for the report.
x cFosSpeed will no longer lower the MSS when RWIN expansion is used. This
could have resulted in slower downloads on high bandwidth connections.
Thanks to Reinhold G. for tests.
x Fixed a bluescreen when data was transferred in multiple MDLs. Thanks to
Pedro S. for dump file.
x Fixed a bluescreen when RWIN expansion was used. Thanks to Johann S. for
- Support for Windows 20H2 (version 2009).
- Added gset copy_oob. It can be disabled for debug purposes.
cFosSpeed 11.04 build 2440 -- 28-May-2020
+ Adapter Info no longer includes adapters that have neither any traffic nor
are purely virtual adapters.
x Fixed a bug when downloading a key with a proxy server.
x Sometimes HTML dialog files are not properly generated resulting in
empty dialogs. While the problem is not yet fixed, the next start of
cFosSpeed will at least detect that and generate proper dialogs.
x Sometimes the system would bluescreen when the Ethernet plug was pulled.
- Improved readability of items in Adapter Info dialog.
cFosSpeed 11.02 build 2436 -- 07-May-2020
+ cFosSpeed will now disconnect (and reset all stats, etc.) when your WiFi
loses connection or when you pull the Ethernet plug.
+ Much better dumping of packets when task offloading is active.
x Fixed sending net_talk packets. Was broken in v11.0.
x Fixed bug in NDIS packet handling. This fixes problems with the Killer
network card and others.
x If a second monitor was used to the right of your main monitor, cFosSpeed
could have erroneously closed the window for a fullscreen window on
monitor 2. Fixed.
x Fixed issues in RWIN expansion and DNS TTL patching where checksums were
corrupted. Thanks to all the tests and traces I got from Contor, Kasiusz J,
Robert K, Vladimir V, BlankFX and Mathias S.
x Do not handle packets that have a header/data split at an unusual point.
x Fixed bug in setup where key file is downloaded. This fixes connection
problems for users from China. Thanks to Yan, 310856638 and Ziqing for
testing and traces.
x Fixed bug in handling of WAN devices. This prevented some VPNs from
working. Thanks to Ralf for testing and traces.
x Fixed crash in installer.
x Fixed rare bluescreen. Thanks to gobletfire for kernel dump.
x Fixed NDIS func_trace output.
- Support for May 2020 update of Windows 10, version 2004, codename 20H1.
- Added proper counting of header errors and unsupported header/data split
- Improved readability of NDIS traces.
- Added more trace output for key download.
cFosSpeed 11.00 build 2420 -- 21-Apr-2020
* Extensive re-write of the cFosSpeed core networking code:
-- Special speed-up for pass-through LAN traffic (not traffic shaped)
-- Designed to keep all out-of-band packet info intact, resulting in
improved ad hoc VPN compatibility
-- Improved analysis of networking edge cases
-- Support for NDIS header/data split
-- Additional speed improvements of Traffic Shaping path
-- Support for Task Offloading: Checksum Offloading (IP and TCP/UDP), Large
Segment Offloading (LSO) and Receive Segment Coalescing (RSC)
With the new networking code cFosSpeed has only barely noticeable CPU load
even at full blast 10 GBit/s LAN traffic!
* Added a new API to get current connections info, which is 20(!) times faster
than the old one.
The current connections dialog now displays a CPS history of the last 15
* If several routes to the Internet exist simultaneously, cFosSpeed can now
use all of them for Traffic Shaping. This is especially useful if you have
a balancing setup, e.g., one LAN adapter and one mobile adapter in use at
the same time.
* Added new pingers: UDPv6. This should make cFosSpeed's pings even more
+ Removed "idle" class. Now every connection with set L7-protocol and known
program name gets a class assigned right away.
+ Added new "spd gset passthru" modes. So far we had:
0 = switch off passthru mode - data is put through driver.
1 = do as little as possible to hand packets to the next driver.
2 = do all the port handling, but don't analyze or modify packet.
Now we add:
3 = tx data: like 1, rx data: like 2.
4 = tx data: like 2, rx data: like 1.
Debugging purpose only.
+ All dialog pages are now integrated into the main navigation.
+ Reaction time in RWIN expansion was speeded thus increasing throughput.
+ Changed HTTP requests so they are hopefully more compatible with certain
+ For click-through-auto mode, you can now configure the time needed to switch
off click-through (the time you need to hover the mouse pointer over the
cFosSpeed window). To change that time, set the key
in file %LOCALAPPDATA%\cfos\cfosspeed\user_data.ini, section [All]. Default
is 3 secs. Thanks to leon479959891 for the suggestion.
+ Added "spd flush_usage_logs". Speeded "spd flush".
+ To save processing power, the cFosSpeed service now uses routing / address /
interface change notifications to monitor route changes instead of a
+ Optimized handling of how used programs are tracked and stored. It is now
faster and more consistent.
+ Used tech from cFos Personal Net to make the internal web server of the
cFosSpeed service more responsive.
+ "spd pcnt" will only work if new flag global_counters is set to 1. Enable
it with "spd gset global_counters 1".
+ Added time to "X" type line of metadata dump. This line is printed when a
TCP or UDP connection is killed.
+ cFosSpeed can now display a toast notification under Win 10 Build 17763+.
A click on the new version update notification leads to our web page, where
you can download the installation archive.
+ By default, full screen detections requires that the full screen window is
on the same monitor as the cFosSpeed status window. You can change it so
full screen is detected even if the full screen window is on a different
monitor than the cFosSpeed status window, by setting
"per_monitor_fullscreen=0" in the file
section [All]. Thanks to Ori for the suggestion.
Added a setting where you can turn off full screen detection if the
fullscreen window is not on the same monitor.
+ Added IPv6 support for IPlists. The format is the same as for IPv4, just
with IPv6 addresses instead. Since IPv6 addresses contain ':', it is assumed
that Protowall format IPlists do not use ':' in the "name" portion. If that
becomes a problem, use Emule format instead.
cFosSpeed will only use the prefix, i.e., the upper 64 bits of an IPv6
address, since the lower 64 bits are the interface identifier and are
+ When the stored password to your license is lost or wrong, the screen that
asks for it anew will now also accept your 30-char serial number, if that is
how you got your key.
x Sometimes the language selected at installation time wasn't used in the
demon. Likewise, a language change in the daemon would not change the
language for the next installation. Fixed.
x Fixed a condition that could lead to starving TCP connections when RWIN
expansion was used.
x Sometimes packets were leaked if expand_rwin was active, i.e., some packets
were never freed. This lead to memory problems and hangs when uninstalling/
reinstalling cFosSpeed. This was a long-standing bug. Fixed.
x Fixed TCP connection problem on connections without TCP WSCALE if RWIN
expansion was enabled.
x Fixed bug in bulk detection: if downloading with HTTP, bulk streams would be
re-classified as HTTP_C for a short time after each new GET. Fixed.
x Fixed "spd tcb ". You can specify a wildcard for the remote
address:port pair. The wildcard is case-insensitive, IPv6 addresses
are in "" and IPv6 addresses are written as short as possible (omitting
leading zeros and using the "::" abbreviation.
x Fixed a long-standing bug in RWIN expansion that could lead to slow
x When cFosSpeed was transferring lots of data, spd commands and current
connections could sometimes answer very slowly. Fixed.
x Fixed a display bug in "current connections" which didn't indicate user-
x Fixed bug which caused 100% load on one core.
x Fixed a bug where the cFosSpeed status window would not regard the position
of the system taskbar with auto-arrange. Thanks to George H.
x Many of the fixes could only be done with help of many friendly users that
send traces and dump files, like: ckcampbell1963, aleksxp, a11111135,
Daniel H, myfootstep, leozhdan, Priben K, Drool and Contor. Thanks to you
- RWIN expansion will now by default negotiate windows that allow full blast
downloads with an RTT of 200 ms. Change expand_rwin_dest_time if you want
a different time.
- When allocating memory, only nonpaged memory will now be used. No more
allocation and locking of paged memory is performed. This worked only
very rarely anyway.
- Update to Visual Studio 2019.
- Removed variables mtu_limit, data_compression_*, vj_compression_*,
fixed_speed and add_overhead_*.
- (Re)setting the prio class will now have immediate visual effect, even if
there is no data on the connection.
- Support for Windows 19H2, November 2019 Update and Windows 19H1 (version
- Removed the option to disable the taskbar icon. You can use the Windows
taskbar configuration dialog to hide the taskbar icon if you want.
- Removed WMI and keyboard LED support. All variables / values are available
via our built-in web server.
cFosSpeed 10.50 build 2338 -- 21-Mar-2019
* In the Prioritize Programs dialog you can now select to display the used
programs only (instead of all programs).
* settings.ini and thereby the list of default program priorities is now
updated automatically. If you don't want this, delete the key named
'version' in the section [All] at the end of the file.
There is an option in the program update menu to enable / disable this
* Install and uninstall now also clean the driver store from cFosSpeed
INF files. If an install is still unsuccessful or results in
"driver not loaded" problems, you can run the installation, ignore
errors and then run a deinstall. This should clean the driver store from
old cFosSpeed INF files.
* cFosSpeed now tracks the host name from HTTP, TLS and QUIC connections.
It can be displayed with "spd cons -host". This will print the host name
instead of the remote address. If you want both, use "-host2" or
"-host -remote" instead.
This new feature is also available in the "current connections (advanced)"
* Advanced connection overview (and "spd cons" as well) now only keeps one
UDP pseudo-connection per DNS server. This prevents a load of UDP DNS
pseudo-connections that were just used for one DNS query.
* Added installer checkbox to allow us to occasionally (max. once a year!)
collect some anonymous metadata from your connections (we clear out your IP
address). This is to help us develop a new and improved form of traffic
class detection. Please switch it on, we need real live traffic data to
develop this new feature.
For a detailed list of collected data, see http://www.cfos.de/collected-data.txt
* click-through now has its own sub-menu. You can now choose between "off",
"click-through" (always) and "click-through (auto)". In auto mode, the
window will change to click-opaque mode if you hover with your mouse cursor
over it for 4 seconds (and will revert back to click-through mode if the
cursor is not in the window for 4 seconds). So, if the skin window
prevents you from interacting with other windows, you can use the click-
through mode. Thanks to Death_Master for the suggestion.
+ The list of used programs is now updated periodically and not only when
the usage graph is opened.
+ Status window positions are now stored per network adapter, regardless of
router MAC. This should eliminate confusion when the network adapter is
used with different routers.
+ Improved usability of the context menu.
+ Advanced connection overview (and "spd cons" as well) is now by default
sorted by protocol (first TCP, then UDP), then by local IP address:port,
then remote. IPv4 is sorted in front of IPv6.
+ Added more games and other programs to the program prioritization UI.
+ Fixed and improved sorting in advanced connection overview: column "class"
is now ordered by prio, "prot" by protocol/local/remote and the columns
have a default order that makes sense (i.e., the most important at the top
+ The entries in the current connections dialog are now sorted according to
+ Skin window position is now stored relative to the nearest corner of the
current monitor. Thereby the position is always fixed relative to that
corner if you change monitor resolution.
+ cFosSpeed now tracks DUPACKs to be able to assess connection quality.
"spd ns" has now a row with "Duplicate ACKs".
+ "spd cons" has now rows for tx'ed DUPACKs (an indicator for receive quality)
and tx resends (an indicator for transmit quality).
+ "spd cons" now accepts a "-head:" parameter to only print the first
+ Optimized amount of in-flight data that cFosSpeed allows (sort of a global
RWIN) for lower ping times. This should lower your ping times by about
30 msec if your are transferring data at the same time.
+ If low latency mode is switched on and non-cooperative mode is selected,
cFosSpeed will act as if in cooperative mode, that is, we're trading
high bandwidth for low ping time.
+ cFosSpeed's foreground window detection will automatically grant high prio
to data from the current foreground process (as long as it's in the
foreground). This could lead to the case where you upload/download and
all that data is set to high, effectively congesting the whole line, even
for small high-prio data (like DNS or VoIP).
This is now fixed: only non-bulk data from foreground processes is set to
high and bulk data is now elevated to normal. That's still better than low,
which is where it would normally go.
+ cFosSpeed version and build numbers are saved to registry to
+ When using "spd tcb" command you can now add a wildcard to specify which
connection to display, like "spd tcb 8.*:80" or "spd tcb 8.*:*".
+ Added new TCP counter in "spd netstat": Data segments. This will only be
increased if the segment contains any data (i.e., is non ACK-only). It now
allows for a more accurate calculation of resent percentage.
+ Added support for Windows 10 version 1803, a.k.a. Spring Creators Update,
a.k.a. Redstone 4.
+ Added L7 detection of certain QUIC packets.
+ Improved evaluation of the User-Agent string for the L7 protocol detection.
+ The L7 protocol data field now contains the HTTP Host header field in
addition to the Content-Type.
+ Improved "spd ports" display.
x Fixed multiple bugs where the status window didn't re-open after hibernate/
x Fixed a bug where auto-hide on fullscreen hid the status window even if the
fullscreen window was on a different monitor.
x Fixed a bug in the update of used programs.
x Actions on buttons in skin windows were disabled. Fixed.
x Fixed a bug where the program list in the add new program dialog was not
updated correctly. Thanks to Tim M for reporting it.
x Fixed a very old bug that could lead to a bluescreen in rare circumstances.
Thanks to Philippe B for dump file.
x Fixed a possible deadlock (freeze).
x Improved dumping speed.
x Clicking on the status windows turned off auto-arrange. Pressing ESC while
moving the window did not restore it to the original position. Fixed,
thanks to Kikka.
x Fixed an old bug that could have lead to erroneous detection or rejection
of RST segments in cFosSpeed.
x Fixed constant deletion/creation and trace writing if VM virtual adapter
switched his MAC address on and off constantly.
x Fixed a spurious problem with opening the browser. Thanks to Stefan W
for bug report.
x Fixed detection of IPv6 address of router.
x When using "spd cons" or the advanced connection overview, the sorting will
now sort TCP and UDP connections together.
x Fixed detection of UDP protocols.
- Removed old, long unused code. Removed filter rules -ppp, -mp-header,
-mp-begin, -mp-end, -mp-frag, -pppp that were always false anyway (since
cFosSpeed would never get PPP frames).
- Internal modernization of interlocked variables.
- Tested with Windows 10 October 2018 Update, version 1809, codename
- New SDK used. This includes mitigation against certain Spectre attacks.
- Added / corrected several games in prioritization list. Thanks to Sc3ed.
- Added some trace output to find a problem where LAN ports will open and
close with a frequency of about 10 seconds. If this still happens to you,
please contact us!
- Switched to new compiler.
- Traffic Shaping setting is now by default "not cooperative" owing to the
fact that usually there are other non-cFosSpeed clients on the LAN as well
(smartphones, consoles, etc.)
cFosSpeed 10.26 build 2312 -- 19-Feb-2018
x Fixed "manual subnet override" feature. Thanks to Horst K for bug report.
x Fixed a bug where cFosSpeed LAN port would appear and disappear every
minute or so. Thanks to stdedos.
x The link speed of the network adapter is now always the current link speed,
instead of the maximum link speed.
- All links to www.cfos.de are now using HTTPS.
- Corrected a lot of program classifications in settings.ini and
added new popular games to settings.ini, so they can be prioritized by
cFosSpeed accordingly. Thank you all for your suggestions in the
- Switched to latest compiler.
cFosSpeed 10.24 build 2304 -- 02-Nov-2017
+ Tested with Windows 10 Fall Creator's Update, a.k.a. Redstone 3.
x Fixed the rare bluescreen with code IRQL_UNEXPECTED_VALUE (c8). Thanks to
Jens B for testing and cardfanta and Daniel Sch for kernel dumps.
x Removed a now useless check for net_talk when using subnet_override feature.
Thanks to orplid for report.
x Fixed handling of HTTP response codes 3xx in installer. This should avoid
problems with users from esp. China when registering their keys.
x Changed method of Internet Connection Sharing activation used in Wi-Fi
access points so it works again with Microsoft Windows 10 Build 15063
(aka Creator's Update).
cFosSpeed 10.22 build 2290 -- 30-Mar-2017
* The Metro skin now has a button in the right lower corner to toggle the
current speed variables and the new current max speed variables. So you
always can check what speed your connection achieved recently.
Added curr_max_rx and _tx variables that hold the current line speed, in
contrast to maxrx, maxtxacked and maxtxraw that hold the maximum speeds
ever achieved. These variables are also available for skins and WMI as
curr_rx_scale and curr_tx_scale.
+ The "Add Program" dialog now lets you select between currently used
programs and all programs you used.
x Fixed empty values in usage graph, thanks to Stef.
x Fixed help links in settings dialogs.
x Fixed a possible CPU hog in the cFosSpeed service if adapters had empty
x The "\ProgramData\cFos\cFosSpeed\logs" sub-directory wasn't created. Fixed.
This bug was introduced in v10.15.2281. Thanks to Contor, again. :)
x The list of used programs was not properly updated when adding a program to
the program priority list. Fixed, thanks to Contor.
x Fixed ping statistics dialog.
x Fixed a caching problem with the new dialogs. The "restore defaults"
button should now work again.
x Fixed empty statistics values in the usage graph.
- Internal changes for upcoming, new product feature. (No, don't ask yet :) )
- Changed avg_time settings: 2 sec for the PPPoE/A, PPTP, AAL5 and VDSL modes,
4 sec for all others, including adaptive. This setting is the minimum
time for speed measurements to calculate max speeds, so it evens out spikes
in traffic speed.
cFosSpeed 10.20 build 2282 -- 22-Sep-2016
! Drivers are now signed my Microsoft, thus they should work even under the
Anniversary Update of Windows 10, version 1607 (Redstone1). Plus they are
signed by us with an EV certificate, so Windows SmartScreen always approves
them as genuine.
+ Changed the dialogs from HTA to normal HTML. Since they are displayed in
the normal browser, they are much faster now.
+ The "Add Program" feature in the program prioritization dialog now only
takes .exe files, which are currently used for data transmission. This
prevents a lot of .exe files entered into the prioritization which never
actually transfer data. As a consequence you need to run the program
which you want to prioritize in order to appear in the list.
x Fixed IP block list handling in new dialogs. Thanks to Stef and Contor.
x Fixed missing text in dialog. Thanks to Frank B.
- Due to browser security, the IP blocklist in the dialog is now hard-
coded to blocklist.txt in c:\programdata\cfos\cfosspeed. You can still
use other names or directories if you change the user.ini file manually.
- Switched to Visual Studio 2015 Update 3.
cFosSpeed 10.14 build 2274 -- 29-Jun-2016
x Fixed bug in expand_rwin feature for IPv6 against servers that don't support
window scaling. Many thanks to Thomas A for his help.
x DNS names are not stored if the query returns an error. This should reduce
periodic DNS queries quite a bit.
x Removed troublesome and old VM detection.
- Updated performance statistics.
cFosSpeed 10.12 build 2262 -- 05-Apr-2016
! Removed support for Windows XP and Windows Vista. Now, the minimum
supported operating system is Windows 7. If you require cFosSpeed for
Windows XP or Vista, you can download version 10.10.2238 from
+ Added a lot of games and other programs to the list of prioritized
programs. Thanks to Armor Darks for carefully checking the .exe files.
+ cFosSpeed may now remove more expired DNS names from the refresh list.
+ New experimental feature: setting "spd gset patch_dns_ttl XXX" enforces
a minimum DNS TTL of seconds. This may be useful to prevent constant
DNS refreshes of names with very low TTLs.
+ cFosSpeed can now distinguish between used and unused domains for the DNS
x Fixed problems with Driver Verifier under Windows 8 and up. Thanks to
Raymond K for the bug report.
x Fixed IPV6 DNS detection.
x Used new SHA256 code signing certificate. This should prevent the erroneous
SmartScreen warning when installing the downloaded distribution from the web.
x One more fix for a degenerate case in IPv6 packet handling.
x Tried to fix an IPv6 problem where local traffic is not detected as such
and erroneously shaped. Thanks Ingo A for testing.
x Fixed IPv6 address detection problem when ping_dest was specified only for
IPv4. This also caused spd.exe to use up a lot of CPU time. Thanks to
Andrey Ch for bug report and testing.
x Fixed bugs in IPv6 address detection and improved trace output.
x Fixed a bug in setup.
x Fixed mouse handling of tray icons for Windows 10.
x Fixed a bug in selecting the shared network connection for WiFi access point.
x Fixed display of full line speed in some rare cases.
x Ignore more UPnP bogus bitrates.
- Added trace output and handling for possible spd.exe full throttle problem.
- Restored DNS cache refresh dialog option. DNS cache refresh is now on by
- Switched to new Visual Studio 2015 compiler and Windows 10 SDK/WDK.
- Switched off TCP checksumming in cFosSpeed. If you desire, you can switch
it back on by using "spd gset checksum_tcp 1 -save", but it is quite
time consuming and its use is marginal.
cFosSpeed 10.10 build 2238 -- 09-Sep-2015
+ The DNS cache refresh is now disabled when the DNSCACHE service is not
running. Thanks to Hirschgoulasch.
+ Added automatic DNS cache refresh. Commonly used host names are now
refreshed, so they are always available if needed. This helps to speed up
web surfing and other activities when DNS servers or particular DNS
queries are slow. You can use the "spd gset store_dns_names 1" command
or an option in the preferences dialog to enable or disable it. It is
switched off by default.
+ Fixed handling of UPnP URLs. Now more UPnP router info can be be handled
by cFosSpeed. Also added another workaround for the "1.3mbit" problem.
+ cFosSpeed can now display ping statistics of the last 5 minutes. You can
open the Ping Statistics dialog from the cFosSpeed context menu. If you
experience lag, you can open the statistics and see if your ping increased
in the last minutes.
x Fixed rare crash when disconnecting.
x Fixed bogus error message when loading.
x Fixed memory leaks.
x Ignored more bogus UPnP rates.
x Fixed adapter names with non-latin characters.
x Fixed RX data duplication issue with VMware. Set "spd gset filter_fix 1"
x Fixed several problems under Windows 10.
- Added diagnostic for service crashes.
- Protocols IMAP4_C, NNTP_C, POP3_C and SSL_C_BULK are now by default set to
"Low" priority, since we count them as volume transfers.
- Added more trace output for configuration of ICS.
- Due to user requests we changed the opening of dialog pages back to
browser defaults (open in new tab in many cases), instead of forcing
a new browser window.
- Sometimes a reinstall does not reinstall the driver (for reasons unknown).
The status window will now check that at least the version between driver
and daemon match. If not, a reboot should fix the problem.
- Switched char/wchar conversion from thread to system CP.
cFosSpeed 10.08 build 2216 -- 17-Apr-2015
+ UPnP traffic stats are now only determined for LAN connections.
x Re-worked UPnP device code to fix a crash and a memory leak.
- Changed virtual Wi-Fi stop dialog.
cFosSpeed 10.06 build 2206 -- 26-Mar-2015
+ Added more SSDP variants to detect more UPnP capable routers.
+ UPnP support can now be switched on and off in Preferences dialog.
+ Relaxed limiting of max rx/tx rates on basis of UPnP settings. Hopefully
this avoids problems with routers that return incorrect bandwidths.
+ Increased the number of possible secondary IPv6 addresses to 32.
+ IPv6 prefix lengths are now checked for range 1 - 128 and a default of 64
is used if the prefix length is out of range. Thanks to Walter E. for
+ The Virtual Wi-Fi can now be started by cFosSpeed automatically at system
start time and when the system is resumed (after sleep, suspend, etc.).
Virtual Wi-Fi autostart now waits for one minute for the network to become
available. This feature can be activated in the Wi-Fi Access Point menu.
Thanks to Fernando.
x Fixed a bug which prevented use of UPnP services in many cases.
x cFosSpeed will now disconnect and reconnect if it finds itself connected
through a new router (i.e., the router MAC changed), even if the interface
(i.e., the network card) stayed the same. For example, this happens when
your laptop was sleeping and wakes up and connects to a new WLAN.
x Fixed switching of medium on basis of UPnP discovered medium.
x Fixed virtual adapter detection. Thanks to Georgios N.
x Fixed several bluescreens and a memory leak. Thanks to vaultizen and
- Ignored even more junk speed values reported by modems and NICs.
- Kademlia protocol is now low, since it is usually used for BitTorrent
cFosSpeed 10.04 build 2195 -- 11-Feb-2015
+ The Traffic Shaping setup now only shows adapters with supported interfaces,
i.e., Ethernet or WWAN.
+ Certain UPnP max downstream/upstream values are now ignored for cable users,
like 64, 125 kbytes/s and 1.25, 12.5 and 125 mbytes/s and very small values
as well. This workaround should fix the "525k" and "1.3m" bug. Thanks to
ayanamist, Mister X, liujohn, pictus, Bax and leon.
+ You can now change the interval between route change checks by setting
routing_check_interval=XX in file global.ini, section [param] with the
value in msec as XX. The minimum value is 1000.
x Fixed missing import for XP. Thanks to Vamp67. Anyway... People, it's time
to move on. Upgrade your Windows sometime soon!
x Installer now displays a message box if the driver installation can only be
performed after a reboot.
x Fixed slowing of VPN connections. Thanks to Georgios N.
x Corrected prioritization info for League of Legends. Thanks to BlankFX.
- cFosSpeed driver does no longer read its file locations from registry
System branch, but from SOFTWARE. If you experience start problems, please
This should keep cFosSpeed working even after a Windows upgrade from one
major version to the next.
cFosSpeed 10.02 build 2180 -- 22-Jan-2015
x Fixed UPnP line speed evaluation for dsl-forum routers.
x Sometimes the cFosSpeed directory under Program Files wasn't deleted.
x Fixed bluescreen. Thanks to matt4x and aleksej.
- Added new version check if a crash is detected.
cFosSpeed 10.00 build 2173 -- 19-Jan-2015
! cFosSpeed now uses another API to get information about routing interfaces.
You may need to configure your Traffic Shaping settings in the Options ->
Settings -> Preferences Traffic Shaping settings. We hope to address
conflicts with other network components with this change.
! In "spd speed" and in Options/Settings/Adapter Info only volumes are
in binary units, i.e., K=1024, M=1048576, G=1073741824, etc. Speeds are
displayed in decimal units, i.e., K=1000, etc. This is more like today's
* Added UPnP discovery of router speeds. Use "spd gset router_info 0 -save"
to disable or in file c:\programdata\cfos\cfosspeed\global.ini, section
[param] set key router_info=0.
Router speed info helps to find the real line speeds quicker. Speed values
are displayed on "spd speed" under "router=". If the medium of your Internet
connection is detected and cFosSpeed's medium setting is still on "Adaptive",
it is changed accordingly.
The values of maxrx, maxtxacked and maxtxraw are checked against the router
provided values. If cFosSpeed's values are too high, they are limited to the
ones provided by the router.
* Windows 10 tested.
+ If the network class installer is locked by another program, the cFosSpeed
installer now displays the culprit.
+ Added "spd slot show" and "spd slot reset" commands.
+ The current connections dialog now displays the program icon. Also the
'+' and '-' buttons highlight to make it clearer that you can temporarily
change the priority.
+ Improved Layer-7 DNS detection for IPv6. Thanks to Ale for the dumps.
x Under rare circumstances (e.g. with teaming) cFosSpeed sent packets to the
wrong adapter. Thanks to ASUS for tests.
x Fixed several crashes and bluescreens. Thanks to josef, Willian O,
ya.leva22, MISTER X and offchu.
x Fixed flickering context menu on right-click.
x Fixed a longstanding, yet rare bug that caused a bluescreen if RWIN expansion
x Fixed bogus string evaluation of network card name.
x Fixed an spd.exe service crash in the UPnP device detection. This should
also fix the problem with non-functioning current connections dialog.
x Expiration pop-ups came up with every start. Fixed.
x Fixed a bug in setting up Internet Connection Sharing while creating a
wireless access point for Virtual Wi-Fi.
x Window auto arrange is no longer done when window positions are locked.
x Fixed a bug where the LAN adapter link speeds were not properly handled.
x Fixed adapter speed displays. Now proper bytes/s values are displayed
(instead of bit/s, oops).
x Fixed load of assert_crash_bugchecks variable.
- Included taskbar icons with better resolution for high-res displays.
- Skin updates.
- The service spd.exe will now automatically restart if crashed. If you want
to stop it, you need to use the "sc stop cfosspeeds" (that's "cfosspeed" with
an "s") command from an admin console.
- Burst can now be aborted by setting "spd gset auto_burst 0" or by disabling
- Increased trace.txt buffers.
- cFosSpeed will not modify network bindings anymore, regardless of the
Traffic Shaping settings. If you want to unbind cFosSpeed from a certain
network card, you can do this in the standard Windows adapter settings
- Improved resilience against other filter drivers messing up cFosSpeed's area
in NDIS packets.
- Internal changes of library use.
- Now "spd speed" fits into 80 chars window width.
- Debugging through "spd gset assert_crash_bugchecks" is now possible.
cFosSpeed 9.64 build 2144 -- 21-Jul-2014
+ Added VDSL as medium. Setting this and switching on MTU optimization
could result in a 2% speed increase. :) Thanks to -Alex- for inspiration.
+ Connections with protocols UNKNOWN and UNKNOWN_BULK are first matched
against program names and only afterwards against protocols. Thus,
if no proper protocol is detected, program prios take over (if possible,
that is, if the program is listed and its prio is != normal) and only if
those don't match, then protocol prio is used (but again, only if that is
not set to normal).
x Fixed a bluescreen when sleeping/waking up.
x Fixed bug in TCP MSS optimization. This could have fixed a bug in bulk
detection as well. Thanks to -Alex- for bug report.
x Hopefully fixed a bluescreen while uninstalling.
- Removed install warning with Qihoo 360safe and newer products.
- Changed headings and switches in "spd cons" from mss/lss/ass to mtu/ltu/atu,
since they now show IP-agnostic values (MTU is TCP segment size minus
TCP/IP header length, which is different in IPv4 and IPv6).
cFosSpeed 9.62 build 2135 -- 03-Jun-2014
* Added foreground window detection: connections of the window in foreground
automatically have high priority. You can switch off this feature by the
"spd gset fg_detect 0 -save" command.
This feature can be used manually through the -fp-prog, -tcp-fp-prog and
-udp-fg-prog switches that return true if the packet in question is sent
from the program whose window is currently in the foreground.
* Added setup for an Wi-Fi access point. Windows 7 and above can use your
Wi-Fi/WLAN adapter as an ad hoc Wi-Fi access point, so other devices can
connect to your Windows 7/8/8.1 PC. In combination with cFosSpeed, these
devices can benefit from cFosSpeed Traffic Shaping. If your PC is connected
to the router via Wi-Fi/WLAN, you can share the same adapter for the ad hoc
Wi-Fi access point. Or you can use the Wi-Fi adapter exclusively for the Wi-Fi
access point if your PC is connected to the router via network cable.
cFosSpeed now has additional context menu option to activate / stop
the Wi-Fi access point.
For more info see:
+ cFosSpeed now detects and records HTTP content-types and SSL TLS server
names. The command "spd cons -data" can show them.
x Right-click on an icon skin wouldn't start the context menu. Fixed,
thanks to Fördős L :)
x Web server startup could have delayed the speed service startup. Fixed.
x Fixed a bug that caused packet duplication in Wireshark and with VMware in
bridged network card mode. Maybe this bug also fixes problems encountered
with Kaspersky Anti-Virus. This fix can be disabled with the command
"spd gset filter_fix 0 -save". The count of filtered packets is printed
with the "spd fcstat" command. Please report if this works.
x Tried to fix a rare bluescreen.
x The saved window position is now used if at least one corner of the
window is visible on one monitor. Thanks to Marc Sch.
x Fixed a bluescreen when port was opened/closed. Thanks to cloverdew.
x Fixed a bug under Win XP where the current connections dialog produced an
error when started from the skin window.
x Fixed bluescreen in TLS protocol detection. Thanks to OliMuc.
- Changed context menu internals. If you had problem with context menu
in the past, please test again.
cFosSpeed 9.60 build 2114 -- 29-Apr-2014
* cFosSpeed now supports IPv6. IPv6 traffic is displayed in the status window,
and RWIN expansion, shaping, filters, ping latency measurement and firewall
all support IPv6. GUI and CUI output has been adapted to longer IPv6
* Added Phone-Skin support. You can now access the cFosSpeed status
window from other devices within your LAN via HTTP. For example open the
web page http://192.168.2.100:1487/cfosspeed/index.htm from your
smartphone or tablet to access the cFosSpeed status (assuming your local
IP address is 192.168.2.100). This is especially useful in fullscreen mode,
when you play a game or watch a video. Phone-Skin support keeps you
informed about your network activity even when the normal cFosSpeed
status window is not visible.
If you try it with the browser on your local machine, no username/pwd is
needed. From other machines, the user name is "cfosspeed" and the password
can be setup by specifying the server_password= key in the file
c:\programdata\cfos\cfosspeed\global.ini, section [All]. Use ! as first
letter. That will cause it to be encrypted on first use.
You can also open the Current Connections dialog from your phone or tablet
and view or prioritize individual connections. Use this URL on your phone
http://[Your IP address]:1487/cfosspeed/console.htm
+ The advanced current connections dialog now displays the RTT for TCP
+ Added "spd filter_call_stats" for counting of NDIS 6 filter driver calls
and "spd filter_call_stats_clear" or "spd fcsclear" to clear them.
+ Added Layer 7 SRTP detection for SSL connections. If your Voice over
IP connection is encrypted with SSL, cFosSpeed can now detect this
and prioritize accordingly.
+ In preparation for the upcoming HTTP/2.0 standard, we improved Layer 7
SSL SPDY detection. This also reduces false positives.
+ Skin Windows can now also auto-arranged at the top right corner of the
screen. You can select this in the "Window settings" menu.
+ Added three more columns to "spd perf" output for debugging.
+ New current connection dialogs.
+ Your local IP addresses are now displayed in the context menu.
+ Improved Layer-7 detection of HTTP based protocols, e.g. most of the
+ cFosSpeed now tries to detect MPEG transport streams
(see http://en.wikipedia.org/wiki/MPEG_transport_stream ). Thanks to
Ben Yee Hua and Caio E for their help :)
+ Added Google SPDY detection in SSL, classified as SSL_SPDY_C or
SSL_SPDY_S (client or server). Since the browsers which use SPDY
prioritize different HTTP streams according to their content, cFosSpeed
prioritizes it as normal.
+ Added TLS 1.2 protocol detection, classified as SSL_C or SSL_S (client
+ MPEG DASH is now a separate L7 protocol and (as HSTREAM_C) prioritized
+ Added -ipv4, -ipv6 rules.
+ Added -icmpv6-type rule that only matches IPv6 packets.
+ Re-introduced avg. segment size display in "spd cons". Use "spd cons -ass" :)
+ Improved "spd -tcpview" output.
+ MPEG Dash is now detected if the content-type is either "text" or
"application/...". Thanks again Lo0olz for dumps.
+ Added support for Windows 8.1.
+ Improved stream detection for Youtube. They are using MPEG Dash and
report the content-type as text. So cFosSpeed now tries to look into
the first few bytes of the HTTP body to detect video streams. Thanks
to Lo0olz for the help.
+ From the data we see in the crash reports you send us, we see a lot of
crashes caused by viruses or malfunction of security software. So from
now on the crash handler will try to report if the crash was caused by a
virus or malfunctioning software (which installs "hooks"). So you can
take measures to increase system stability, e.g. clean your system,
update your security software, etc.
+ Added new "spd gset dump_sessions 5": delete dump file if no RWIN expansion
+ If the number of connections is exhausted, cFosSpeed will no longer fill the
trace file with error messages. Thanks to rolfy for inspiration.
+ Now the completely new Russian translation is actually included! :)
Thanks to Armor Darks.
x Fixed bug that caused long DPC execution times and thus could cause
stuttering in music playback. Thanks to Ben Yee Hua.
x Fixed broken window lock feature.
x Fixed a bug where window position would not remembered correctly. Thanks
x All spd commands were a bit slow in responding, since trace.txt was always
flushed to disk. That bug was introduced in v9.03.2042. Fixed. Thanks
to Ben Yee Hua.
x Fixed a bug with window positions, when no previous position was given.
x Improved the way multiple skin windows are auto-arranged. Thanks to Ben
Yee Hua again.
x Fixed a rare crash when displaying current connections.
x The Current Connections dialog would not start under XP when skin button
was used. Fixed.
x Worked around some problem with overwriting files after installation. This
lead to unavailable dialogs.
x Fixed a bug which caused incorrect UDP connections to be selected
in the advanced connections dialog.
x Fixed changing the medium under Preferences / Current Connection and "spd
set medium" command. Thanks to Andrea Torre for bug report.
x Fixed bug for "Direct" functions in NDIS 6.2.
x Fixed missing status window under Windows XP for WAN connections. Thanks
to Dirk Boschatzke for bug report.
x Fixed floating point problem that caused bluescreen.
x Fixed faulty lowering of statistical max. rx-speed when port was opened.
Thanks to unknown cfosspeed user.
x Fixed a bug in RWIN expansion that caused TCP streams to stop.
x Fixed half-open session counter after "spd ns".
x Fixed version checker that queried for new versions too often.
x Fixed "spd ns" and "spd nsclear".
x Hopefully fixed a rare bluescreen where cFosSpeed ran out of kernel stack
space, if RWIN expansion was enabled. Thanks to BenYeeHua for bug report
and dump file.
x Fixed a bug in RWIN expansion that caused downloads to hang. Thanks to
MaXzzz for testing and dump files.
x Fixed a blue screen in cFosSpeed that sometimes occurred when cFosSpeed went
to sleep. Thanks to Philipp Kafka for the dump file.
x Fixed crashes in speedsrv.dll, while installing, in prioritization dialog,
in status window and a bluescreen. Thanks to Ben Yee Hua, chris birk, M.
- If no content-type was found in the windows registry, cFosSpeed now uses
some default mime types for the most common document types. This should
help in cases where the new *.htm dialogs were not displayed, but the
browser offered to save them, instead. Thanks to Barthez.
- cFosSpeed console no longer requests Admin privileges.
- SSL_C_BULK now has priority 'normal', because many video streams use
- Added new state 8 (at least one FIN-ACK) for -tcp-session rule.
- The msslimit variable has been removed and replaced by the mtu_limit
variable. In IPv4 MTU = MSS+40, so if you had msslimit set to 1400,
you want to set mtu_limit now to 1440.
- The "spd stat_infos" command has been renamed to "spd port_stats".
- "Open cFosSpeed console" is now available as well in the context menu under
Traffic Shaping, since Win8 doesn't offer the start menu any more.
- Added "enter serial number" to Start and context menu. This only applies
to users who have a 30-digit serial number.
- Added more trace output to dump.txt file.
cFosSpeed 9.04 build 2051 -- 19-Apr-2013
* New skin in Metro style. Have fun! :-)
+ Tweaked behavior of auto hide on fullscreen, so it respects manual window
closing and auto-open/hide settings better.
+ After the status windows was closed 3 times, cFosSpeed will now ask you if
you want to disable auto-open/auto-hide.
+ RWIN expansion now opens the window more eagerly.
x When TS was switched off, RWIN expansion was still on. Fixed.
x Fixed a bug in RWIN expansion which caused some downloads to start very slow.
Connection startup should be faster now.
x Total Net talk speed is now always greater or equal local speed. Due to
rounding there could have been some inaccuracies. Fixed.
x Fixed slot configuration button in skins.
x Fixed a bug in current connections dialog with spaces in filename.
x Fixed a bug introduced in 9.01 build 2030 that caused too much spd.exe CPU
load. Thanks to schkubey and Litfal for bug reports.
x Removed some useless checks at Setup start that failed with some users.
x Fixed console pair prioritization.
x Fixed errors and improved crash dump handling in installer.
cFosSpeed 9.02 build 2032 -- 14-Feb-2013
+ Improved crash handling.
+ Skins can now display a simple bar, instead of a bitmap, for the
ANIMATION and SLIDER methods.
See http://www.cfos.de/en/skin/skin-reference.htm for details.
+ Tamed querying of TCP/UDP programs names. Thanks to Litfal for bug report.
x Fixed a bug where some of the preferences settings would not be saved
permanently. Thanks to Norbert & Contor.
x Fixed multiple rare bugs found through crash dumps sent to us by users.
x Fixed bugs in the budget configuration dialog. Thanks to dj_hetick.
x Fixed range and mode settings in Budget Graph dialog. Thanks to Vel.
x Fixed a bug in the full screen detection routine. Thanks to DJ Deipotent
for persistently reporting it :-)
x Fixed a hang in installation.
x Fixed missing images for dialogs.
x Usage graph is back.
- After you click on a "new version available" balloon tip only newer
versions than the one indicated will show a new balloon tip.
- Switched slot order so that net talk is now in the last slot.
cFosSpeed 9.00 build 2020 -- 29-Jan-2013
* Re-vamped dialogs. They are now easier to use, faster and in the new
Window 8 style.
As part of the dialog re-vamp we changed the Traffic Analysis dialogs
so it is easier to use and consistent with the prioritization dialogs.
Instead of adding protocols/programs to slots, you now assign groups
as they appear in the prioritization dialogs. If you like to also
add individual programs or protocols, you can do so with spd commands.
* Added new filters -tx-lite, -rx-lite and -lite. The idea is to detect
"lite data streams", i.e., streams of data that are low volume and not bulk
data in nature.
+ Added "spd slot X get/set/add categories CAT1:CAT2:..." command. This will
set the slot X programs and protocols to all programs/protocols that are in
one the listed categories. A category is the text before the frist "," in
settings.ini/user.ini. Example: the line "gw2.exe=Games,Guild Wars 2" in
section [highprogs] puts the program "gw2.exe" in the category "Games".
+ Added "spd slot show" command to show all settings for all slots.
+ Added nettalk_tx, nettalk_rx and nettalk_max modes for slots.
+ Fixed a bug in the adapter info display.
+ If setup crashes, it can now send us a dump of the crash to help us fix
+ Made the prioritization buttons in the current connections dialog
+ Added support to set priority if program name is "unknown" or "routed".
+ Link to features.htm on desktop is no longer created for prereleases.
Thanks to Sublogics and Contor for the idea.
+ Added "spd prioritize pair " command to set
temporary prios for the program/protocol pair. The new Standard Current
Connections dialog now uses this command.
+ cFosSpeed setup will pop up a warning box if programs are running which are
known to cause (at least sometimes) problems when installing/uninstalling.
We recommend you close these programs before continuing the setup.
+ Added percentage display for resent packets in "spd netstat".
+ New current connections dialog.
+ Sending of usage reports added.
+ Added Unknown_Bulk l7-protocol with default priority.
+ Improved bulk detection; it should be more stable now. Please report if
there is unexpected behavior.
+ Added -bulk, -tx-bulk, -rx-bulk filter expressions. They are true if any
direction, resp. direction rx, resp. direction tx is in bulk mode. Only
TCP connections can be in bulk mode, not UDP.
+ Improved HTTP Layer 7 detection. Now cFosSpeed also checks re-used
HTTP connections for streaming. This way especially Youtube videos
should be detected more reliably.
+ Added global variable min_hops. Usually, cFosSpeed will start with TTL 2
or 3 for ping timings and increase the TTL until a decent destination is
found. The min_hops setting can be used to force cFosSpeed to use a higher
minimum TTL. Thanks to Kullorki for inspiration.
+ Added a messagebox that is opened if cFosSpeed driver was not loaded.
This could happen when you upgrade your system from Windows 7 to Windows 8.
You need to reinstall cFosSpeed on Windows 8 to fix that.
x More trace output when the driver would not install.
x Added prioritization of program/protocol pair to Advanced Current
x Temporary prioritizations are now deleted when the Internet connection is
terminated or the machine is rebooted.
x Fixed a locking problem with multiple ports.
x Changed minimum speeds for bulk data detection to 30 kb/s rx and 6 kb/s tx.
Thanks to Michael32 for the hint.
x Temporary prioritizations will now affect newly created connects as well.
They are deleted if you manually override them or when the machine is
x When prioritizing a connection to lowest, it vanished from the list. Fixed.
x Fixed bug in checking of product news.
x Fixed a problem with Youtube bulk-sending with BSTREAM protocol (which is
set to "default" priority). The connection would be classified as "low".
In our protocol and program logic "default" means "fall-through" and then
the last -bulk rule changes the class to low. In general, this is intended,
but not with BSTREAM, so we excluded it from the -bulk rule. Thanks to
Ukjent for his report.
x Fixed bad ping values in "spd ts" display.
x Added a fix to avoid kernel stack exhaustion. Thanks to tonyhsie for report
x Fixes in Setup to improve handling of rare update-installation issue:
On update install, Windows might report the need to reboot after removal of
the old cFosSpeed devices, before you can install them again. Setup now
x Fixed bug where update install requires system reboot between uninstall and
x Fixed printing of who opened our devices.
x Installer now keeps "Program Files" folder read-only as Microsoft requests.
x Fixed several crashes. Thanks to Burkhard Menzler and others for dump files.
x Some fixes to comply with Win8 logo tests.
x Fixed problems in current connections dialog with filename that contain
x Fixed a Windows 8 bluescreen with DPC_WATCHDOG_VIOLATION (0x133). Thanks to
kittler2 for the dump files.
x Deinstallation will now work gracefully if driver was not installed, but
service was still installed.
- The Current Connections dialogs (old and new) now have the same application
ID as the options dialogs. Only one of them can be used at the same time.
This prevents overwriting prioritization settings from one dialog with
another when both dialogs would be open simultaneously.
- Switched to new compiler.
- Re-arranged context menu a bit. Removed the "Effects" menu. cFosSpeed now
always uses fade-in and slide animations. Also moved "Always on Top",
"Auto-Open", "Click Through" options to the "Window Settings" menu and made
them global for all windows.
- Unknown, Unknown_Bulk, Teredo and Teredo_Bulk l7-protocols all have default
priority. We recommend not to assign a different priority, because with
default priority the program prioritization will take care of it. And if
there is not entry for the program the final bulk rule will classify bulk
data as "low" and non-bulk as "default".
- Changes in column sorting in console dialog.
cFosSpeed 8.02 build 1972 -- 02-Jul-2012
+ Added expand_rwin variables to output of "spd tcb".
+ The WMI provider in cFosSpeed now also supports GetObject/GetObjectAsync,
so more flexible WMI scripts are possible.
x Fixed a bug in RWIN expansion. This bug caused prevented connections to
certain servers. Thanks to Marcus Rüppel for his help.
This could improve download speed with some servers as well.
x It could have happened that class delays were still set after rx-shaping was
switched off (you could see that with "spd classes"). That would have
resulted in unnecessary delays. Fixed.
x If the un/update-installation fails because the service could not be
deinstalled, the installed will now return a proper error message asking you
to reboot and try again.
x Fixed a problem where an update install would sometimes fail, because
spd.exe could not be deleted.
x Improved error handling if cFosSpeed service could not be deleted on update
x Hopefully fixed a crash. Thanks to Bartosz Polański for dump files.
x Small fix for RWIN expansion and added more debug output. Thanks to
- If you had several IPs set for your network card, cFosSpeed would have used
them in unspecific order, depending on the ARP requests sent. Now cFosSpeed
should always use the primary IP.
cFosSpeed 8.00 build 1946 -- 07-May-2012
! cFosSpeed will now automatically expand Windows' TCP RWIN as needed!
With our new "Automatic RWIN expansion" cFosSpeed will expand the RWIN (and
the matching window scaling) to a value that allows a download with full
speed and a delay of 100 msec.
This makes system-wide settings of "GlobalMaxTcpWindowSize" or
"TcpWindowSize" (under XP) superfluous and will keep your downloads fast even
if Windows 7 "auto-tuning" feature doesn't work for you.
As an added goodie it will provide fast download even for programs that
can not achieve full download speed because they provide too small buffers to
the Windows TCP/IP interface, like Cygwin SCP.
You can change the maximum delay (i.e., TCP round trip time), but that affects
memory consumption: cFosSpeed needs (delay in seconds) * (download speed in
bytes/sec) bytes, i.e. for a DSL line with 25 mbits/s (about 3000 kbytes/s)
the memory requirement is 0.1 sec * 3000000 bytes/sec = 300 kbytes. To
change this time use the "spd gset expand_rwin_dest_time "
* Added WMI support. cFosSpeed creates a WMI class 'cfosspeed_perf_data'
in the namespace \root\cfos which has all known skin variables as
properties (see www.cfos.de/en/skin/skin-reference.htm for details).
This allows WMI utilities to display the same information as in the
cFosSpeed status window. There is a little demo of how to access the
cFosSpeed WMI data: wmi_demo.hta in the cFosSpeed dialog folder.
* To help cFosSpeed work with mobile connections it now dynamically tries ping
TTL values until someone answers, max with TTL 24. This should help some
users, where the first 10 or so hops would not answer.
+ Skin section now has an optional parameter 'print_allowed'. You can set
it to 0 to disable this section when not rendered as normal window on
+ Added Slovenian language. That makes a total of 33 languages supported.
Even more languages are downloadable from our website, here:
+ cFosSpeed now checks every 2 days for program news. If there are any,
it displays the mail symbol in the status window and opens a url when
clicked. This feature is on by default. If you are not interested in
program news, you can turn it off in the context menu under "Options".
x Fixed a bug with negation of -s-iplist, -d-iplist, -r-iplist, -l-iplist
rules. Thanks to Oliver Niebur for the report.
x Added work-around for a Windows XP bug which prevented opening of web
x Fixed a bug in the XL skins, where Mbytes per seconds were not displayed
correctly. Thanks to Cody.
x cFosSpeed now installs on Windows 8 Consumer Preview. Thanks for all
x Fixed a bug which prevented connections to be displayed by the keyboard
LED script. Thanks to yashpalshah for the report.
x On some machines spd.exe consumed a lot of CPU power and accessed the
registry heavily. Fixed. Thanks to Empyter.
x On some machines the status window is not always displayed after sleep.
x The on-the-fly prioritization dialog did not allow you to permanently
prioritize programs, which weren't already permanently prioritized.
- Integrated keyboard LED support into cFosSpeed.exe. It no longer uses
the scripting host.
- Program news will not be displayed immediately after first installation.
- Changed COM initialisation.
- Improved setupapi log file support.
- Added memory debugging.
- OEM versions no longer notify the user about updates.
cFosSpeed 7.00 build 1901 -- 08-Nov-2011
* Added manual prioritization for connections, i.e. you can set connections
to a desired class based on their addresses, l7-protocols or programs.
Use the "spd prio" (or prioritize or prioritize) command to set the prio
on the command line:
prioritize prog , , and may contain '?' and '*' wildcards.
prioritize tcp 192.168.8.204:52437 18.104.22.168:80 default
prioritize udp 192.168.8.204:* 22.214.171.124:53 high
prioritize prot *BULK low
prioritize prog utorrent.exe lowest
An upcoming version will have a GUI to set priorities.
* cFosSpeed now has class delay management: this regulates the delay of each
traffic class (which is user configurable) based on the amount of traffic
in the class in comparison to other classes.
Example: if you have a lot of traffic in your 'low' class and your 'high'
class traffic doesn't get enough bandwidth, cFosSpeed will introduce some
delay for the 'low' class, so it sends less rapidly and your 'high' class
streams get some additional performance.
This should greatly help heavy downloaders like torrent users.
* cFosSpeed will now actively slow down the rx-speed of download streams if
they are prioritized lower than other streams which run at the same time.
In other words: if you are watching a video stream in your browser (high
prio) and downloading at the same time (low prio), cFosSpeed will slow down
the downloads to make sure you get enough bandwidth for the the video.
But if the video is stopped, all bandwidth is again available for the
This can be switched off by "spd gset throttle_fast 0". Default is on.
"spd classes" and "spd cons -wquot" et al. show a column named "wquot",
which is a quotient that shows how fast a stream resp. class is in
comparison to how fast it should be. E.g. a quotient of 1.00 means
perfect, 1.5 means 50% too fast, 0.8 means 20% too slow.
! To comply with the Windows design guides, cFosSpeed now stores all global
and Traffic Shaping related data in \ProgramData\cFos\cFosSpeed directory.
All user specific data, like selected language and skins, are stored in
! The -weight class parameter that is specified in the default settings does
now specify the weight of all rx-streams in a class and no longer the weight
of a single stream. This helps to keep fast sending streams of low priority
(like P2P) slower and higher prio streams faster. A exacter regulation is
still in development.
* Added On-the-fly prioritization. The "current connections" dialog now
has the option to prioritize a connection, protocol or program temporary
or easily add it to the prioritization scheme. Just click on a connection
to change its priority. In many cases it will be easier to use this dialog
than the normal program and protocol prioritization dialogs. So, for example,
while you work/play on your computer and notice a certain connection uses
too much bandwidth, you can click it and reduce its priority without changing
the general prioritization system.
+ You can now undo the change of priority by using a "spd prio none"
command (i.e. by specifying a command with the class name "none"). The class
is then reset to the value before the setting.
Only classes that are no longer 'idle' or 'working' can be changed in their
priority. Otherwise, they are not in use anyway, since 'idle' or 'working'
are only set on fresh connections were the priority could not yet been
+ Added filter expression -manual. It's true for packets on connections that
have been manually changed in their priority.
+ The "spd perf" setting is now automatically saved.
+ Added Indonesian & British English language. That makes a total of 32
languages supported. Even more languages are downloadable from our website,
+ The L7 detector now recognizes Bittorrent uTP.
+ -class rule works now for UDP connections as well.
+ "spd classes" command shows stats for all classes in table form.
+ Added -delay parameter for classes. With this you can make sure packets in
that class are sent only after a minimum delay time in the queue. That is,
-delay can add some ADDITIONAL delay for packets. By default, all delays
are set to 0, i.e. no additional delays are introduced.
+ Added -class filter expression. This allows filtering after the class of a
TCP stream, i.e. you could use the filter "-tx -higher -class lower -c lower"
to filter out all TCP ACKs of streams that are classified as lower.
+ The program and protocol prioritization dialogs now have a button
to restore the prioritization settings to their default values.
+ The program prioritization dialog now allows you to suggest a newly added
program to the cFos team, so we can include it in future releases.
+ Changed the look of the current connections dialog. It also now has a
"Freeze" button to stop periodical update of the current connections.
+ Speeded protocol and program prioritization dialogs. This also
fixes the bug where IE9 causes page display problems when switching to
the games section.
+ Skins now support an x- and y- positioning offset. By specifying
x_ofs= and y_ofs= in the [all] section of the skin .INI you
can move the skin's default position by pixels to the right and
pixels to the bottom. This is useful if the skins have shadows.
+ Auto-hide on fullscreen now also works after you opened/closed the
window manually. However, if you turn off auto-open/auto-hide
Auto-hide on fullscreen is also deactivated.
+ Due to popular demand, we added an option to lock the window position to
the window settings sub-menu.
+ Added Layer-7 stream detection for VLC and Media Player Classic.
+ From now on, installation archives contain both x86 and x64 flavours of
cFosSpeed ("fat" archives). The right Setup is started automatically.
Furthermore, the archives are packed with LZX, resulting in a higher
- Status window auto-arrange is now turned off when you manually move the
- Added "spd echo ..." command that just echos the text to the trace file and
x Fixed the 2 window problem and disabled line calibration / send test pings in
cfosspeed context menu.
x Fixed several bugs in the Online Budget/Counter dialogs.
x Fixed truncated l7-protocol names in connection overview.
x Fixed a crash. Thanks to Norbert Paradowski for dump file.
x When you press the freeze button in the current connections dialog and
then click on one of the sorter tabs, the current connections are still
refreshed and sorted.
x Fixed a bug where net_talk_bcast would not be saved properly and was lost
after the next restart. Thanks to Михаил Монахов for his bug report.
x Fixed bugs in rx-shaping code.
x Fixed a long-standing bug, where the status window would disappear
after stand-by/wake up.
x Fixed a bug where newer dialog html files would not overwrite the old
ones during an update installation.
x Fixed a bug that caused the driver not to load sometimes after booting.
x If a ping_dest has been set by the user we accept ping replies ("pongs")
to any TTL. Otherwise, only ping replies to TTLs 2-4 are accepted. Thanks
to tomtores for inspiration.
x Fixed a rare bluscreen.
x Added check against NULL pointer in Windows 7 mobile broadband driver status
messages. Thanks to marmal for bug report and dump file.
cFosSpeed 6.60 build 1852 -- 11-May-2011
* Added support for Logitech G15 and G19 Gamer keyboards. When cFosSpeed
detects such a keyboard, it offers a the option to display the status
window on the display of the G15 or G19 display. If you enable it,
the skin windows will then be displayed on the keyboards display,
thereby offering all cFosSpeed Traffic Shaping information during
fullscreen mode apps / games. In addition, you can switch between
low latency / favour bandwidth wit the Button 1 on the G15 and the
UP Button on the G19.
Skins for Logitech G15 & G19 were donated by Ingo Günther.
* Added keyboard LED indicators. cFosSpeed can indicate certain
traffic shaping values by blinking the Num Lock and Scroll Lock
LEDs. See http://www.cfos.de/en/cfosspeed/documentation/keyboard-leds.htm
for more information.
+ When the traffic class is still not set (at the beginning of a connection)
the class column will display "working" or nothing. If more traffic is
coming, the class name will be shown or when no rule matches and no class
has yet been set for a connection the class is set to default.
+ If traffic shaping is (partly) inactive, this is now shown in "spd speed"
+ Added -udp-vol rule: it counts the volume of an UDP pseudo-connection.
Volume in this sense are all bytes including the IP and UDP header.
Added -udp-cnt rule: it counts the number of UDP packets in an UDP
+ Extended arguments for -tcp-seq and -tcp-cnt rules to 64 bit.
+ Added gset variable tx_shape, default 1, to en/disable tx-shaping globally.
x TCP SYNs were not properly prioritized. Fixed.
x Uploads do now slow down downloads less than before.
x Fixed behavior of overlapping active areas in skins. Now the topmost one
catches the mouse click.
x For troubleshooting, you can now specify the Net Talk broadcast address.
Use "spd set net_talk_bcast x.x.x.x" to do that, address 0.0.0.0 means
use default, which is 255.255.255.255 or the subnet broadcast address like
192.168.0.255. Thanks to Drool for inspiration.
x Fixed serious bug in -l7-prot, -udp-prog, -tcp-prog and -prog filter rules
when they were used with negation (like -l7-prot !@user.ini/normalprots).
This caused program and protocol settings to malfunction if you had made
changes to them (changes are recorded in user.ini and filter rules contain
negations to read them properly). This bug was introduced in since
v5.13.1694. Thanks to km for his bug reports.
x The installer started the status window with elevation. Fixed.
x Fixed installation problems where cfosspeed.exe could not be overwritten.
x Fixed a potential problem when stopping a system service. Thanks to Richard
B. for testing.
x Skins would not display more than 21Mb/s speed. Fixed. Thanks to kamcm for
x Fixed a long-standing problem where cFosSpeed might perform poorly after a
wakeup from standby. Notably, UDP connections would not time-out and ever
increase in numbers.
x Fixed a error where certain skins would be incorrectly loaded and thus not
displayed at all.
x Fixed a bug in -prog and -l7-prot filters: they did not properly accept
multiple arguments separated by commas. Thanks to Thomas Quella for his bug
x Large ping values were always displayed as 999ms. Fixed.
x On some machines the status window was always topmost. Fixed.
x Fixed a spurious freeze. Thanks to Andrey Chernov for dump file.
x For Windows 7 the main icon is not hidden as long as at least one icon skin
is displayed. Otherwise Windows cannot remember the icon settings. If you
don't want to see the main icon, you can disable it in the context menu. For
older OSes the main icon is hidden as long as at least one icon skin is
x Variance accommodation now works for satellite connections with their very
long ping times as well. Thanks to ipcopter.de for help and support.
x No pinger boot will be done if both rx_shape and tx_shape are 0.
x Better tracking if test-pings reached the destination. If so, pinger will
not be used for burst and pingstat line starts with a '+'.
- Tested cFosSpeed with "teaming". We used an Intel Gigabit ET Dual Port
Server Adapter and their most recent teaming software v16.2. Please note:
The route to the Internet must go through the virtual teaming adapter,
not through one of the individual teamed adapters.
- Important notifications, e.g. the calibration notification and the trial
period expiration messages are now indicated by a symbol in the status window
if the skin supports it. Otherwise, the usual browser popup is used.
If you click on the symbol the corresponding website is displayed.
- The options menu is now also available for non-admins.
- More trace output for an installation problem where the service can not be
- By default max_trace_size is now 10 mbytes.
- Switched to new compiler.
- If for some reason test-pings reach their destination (i.e. they are not
returned with "TTL exceeded"), we inhibit further test-pings with that TTL.
cFosSpeed 6.50 build 1810 -- 09-Feb-2011
* cFosSpeed now features packet loss avoidance. Some Internet connections
have a very small packet buffer for incoming data. This buffer is quickly
overrun when too much data is received, leading to packet loss. The packet
loss is then detected by the sending TCP and the rate of transmission is
lowered. Nevertheless, this leads to higher ping times and packet loss
for all data received, even UDP data used for Gaming or VoIP. Tests show
that the packet loss rate can be as high as 5%.
Now cFosSpeed detects this packet loss in TCP streams and keeps the streams
from sending too much data. This avoids packet loss, leading to much lower
loss rates, fewer SACKs and sometimes much better throughput.
The feature is on by default, but can be switched off by setting
"spd gset avoid_loss 0 -save" or switching off "Packet loss avoidance" under
Options, Settings, Preferences.
* New parameters to set the desired ping delays in both directions: tx_delay,
tx_width, rx_delay and rx_width. cFosSpeed tries to keep the ping between
tx_delay and tx_delay + tx_width when sending and between rx_delay and
rx_delay + rx_width when receiving. The values are in usec. Removed
Added delay_auto setting, true by default. If set, it will automatically
set rx_delay and rx_width to sensible values. If you want your own values
in rx_delay and rx_width, you just assign some value to them or switch off
+ Rx-shaping is now more precise. It limits sending streams quicker to
a proper speed.
+ Tx-shaping has now a better average ping time, since cFosSpeed doesn't try to
increase the send speed so often, much less so in low latency mode. This
lowers average ping time by about 8 msec in pure upload tests here.
+ Added Bulgarian language. That makes a total of 29 languages supported.
Even more languages are downloadable from our website, here:
+ Increased installation speed.
+ Even if "Automatic MSS (MTU) optimization" is off (default), a set msslimit
and the intrinsic limit of the medium (like 1492 for PPPoE) will be used to
change the MSS. Therefore, it's good to set the medium properly. Plus,
it helps rx-shaping.
+ Classes can now have -tos switch set to set TOS byte on all outgoing
packets. Since TOS and DSCP both are stored in the same byte, they are
incompatible to one another: you can not use both at the same time.
+ Added dumping of TOS values for "spd dump ...".
+ Added "spd vari" command to show variance sample data. It accepts parameters
-clean to force cleaning of old values, -clear to clear all values and -set
to force use of the calculated variance.
+ Added SACK statistics in "spd netstat" and "spd perf on" output.
+ Added "nsclear" command to clear the "netstat" counters.
+ Added filter expressions -l, -r, -l-mynet, -r-mynet, -l-bcast, -r-bcast,
-l-iplist and -r-iplist. They work like the -s and -d, etc. pendants, just
for local and remote addresses, i.e. invariant of the direction of traffic.
+ Added gset variable "max_hops" (default 8) to allow cFosSpeed to ping with
higher TTLs. Allowed TTL values are 8 - 16. If you change it, you should
use "spd pingboot" afterwards. Thanks to gj090879 for inspiration.
+ Added global variable "vari_trace". When switched off new variance data is
no longer dumped to trace.txt; that is the default now.
+ Added information about cFosSpeed ports to "Options", "Settings",
"Adapter Info" dialog.
x Fixed a bug in RWIN calculation of rx-shaping. Fixed another bug in rx_limit
code and other fixes in rx-shaping.
x Fixed a serious bug that affected TCP volume counting of sent traffic.
Thanks to Toxic for his trace.
x Setting a new iplist name under preferences didn't read the IPlist into
memory right away, but only on the next start. Fixed. Thanks to Laurentius
Węckowski for bug report.
You can list all loaded IPlists with the command "spd showiplists".
x Fixed a problem where variance would not be properly calculated after pinger
was changed. Thanks to Gothico for the trace.
x Fixed another bug that affected volume counting when net_talk was enabled,
but no other user was using cFosSpeed.
x Fixed bug in medium settings for media cable, frame_count, cable_mixed, 3g.
x Fixed a problem where cFosSpeed could cause too much delay in tx direction.
x "spd set ..." settings made on the command line would be lost if changes were
made in the HTA applets afterwards. Fixed. Thanks to Toxic for his tests.
x Fixed a problem where maxtxraw might become too large. Thanks to
Toxic for the trace.
x Setting msslimit to 536 with medium PPPoE had no effect. Fixed.
x Removed the additional up to 4 pings per second; it's again sending only 2
pings per second.
x Fixed a freeze with WLAN cards. Thanks to Stefan Goerick for his dump.
x Switching an adapter On/Off didn't bind/unbind it immediately. Fixed.
x The TCP MSS will no longer be lowered if the medium "adaptive" is set. If
you know the type of your connection, set it properly under Options,
Settings, Traffic Shaping, , Options. If you have some DSL variant
cFosSpeed might reduce the TCP MSS on your connections to gain up to 3%
speed if "Automatic MSS (MTU) optimization" is switched on.
x Fixed some erroneous UTF-8 BOMs in settings.ini.
x Fixed a problem where data would sometimes not be written properly to
data.ini. Thanks to AndyC for his case.
- Thanks for the help of bandbreite, Shaori, noname, Toxic, Pinhead, Schimi
and Gothico for their tests!
cFosSpeed 6.10 build 1774 -- 02-Dec-2010
+ If your line is fast cFosSpeed will send up to 4 pings per second to probe
for congestion. This will provide more accurate results.
+ Added "calibrated" value to "spd speed" output to show how well calibrated
cFosSpeed already is; a value of 0 means "not at all", 100 means "fully".
+ cFosSpeed is now trying harder to keep starting TCP streams from congesting
the downstream path.
+ Improvements for key registration when user has IPv6, but connectivity fails
+ Added gset variable "max_hops" (default 8) to allow cFosSpeed to ping with
higher TTLs. Allowed TTL values are 8 - 16. If you change it, you should
use "spd pingboot" afterwards. Thanks to gj090879 for inspiration.
x Tamed Kaspersky hint. It is now displayed only 3 times.
x Fixed a bug with key registration behind a proxy server.
x TTL 1, broadcast and multicast were erroneously considered Internet traffic.
x Increased value for avg_time to improve accuracy of maximum speed
- Removed TCP pinger.
- Added more trace output when key activation fails.
cFosSpeed 6.04 build 1753 -- 19-Nov-2010
! Removed cfosspeed.dll which was needed for installation under Windows 2000.
+ Added automatic check for new versions. cFosSpeed checks every 7 days for a
new release. You can also set it to check for new beta versions, which are
checks for every 2 days. If you don't like to update, you can choose to
skip the new version. Then there will be displayed no balloon tips for this
version any more. Otherwise, a click on the balloon brings you to our
+ Net_talk packets are tamed and sent out only every 15 seconds if there is no
other cFosSpeed found.
+ Speeded ICMP packet handling. Thanks to Archer for report.
+ Added option to context menu to send test pings for 60 seconds. This works
even if traffic shaping is disabled.
+ Improved pinger selection when ping reliability is low.
+ No pings are sent when there was no traffic for some time. This is to help
+ Added "Unknown" protocol to priority dialogs as well.
x If net_talk was switched off, received net_talk packets were ignored as well.
Now even then, received packets are used, although no packets are sent out.
If you want to disable listening to net_talk packets as well, switch off
x Fixed some program priorities and bugs in dialog. Again thanks to Yochanan.
x Fixed bug in service startup code.
x Fixed a bug where the installer would ask for your email address even if he
already did so in some earlier installation after you changed the installer
x Fixed bug in Adapter Info dialog.
- License keys that included a limited 1-year update right and were sold until
July 2008 for a special price no longer work now. If you want to continue to
use cFosSpeed, please purchase an update.
- Added hint to upgrade to Kaspersky Internet Security 2011 if a 2010 version
is found under Vista or higher.
- Reorganized context menu. Moved the Traffic Shaping menu options into
a new Traffic Shaping menu.
cFosSpeed 6.02 build 1722 -- 22-Sep-2010
+ Changed the routing detection. This should make the "redetect routes"
option obsolete and help automatically find the Traffic Shaping route,
even if other programs don't report their route changes correctly.
Thanks to Armor Darks for the advice.
x Fixes for IE 9 beta in the dialog scripts.
x Some improvements for skins.
cFosSpeed 6.00 build 1700 -- 13-Sep-2010
* cFosSpeed can now communicate with other cFosSpeed drivers on your LAN to
share statistical data of how much each of them sent. This increases the
accuracy of traffic shaping with more than one machine. We call this
feature "net_talk". Statistics are sent out as UDP packets (by default on
port 889) five times a second with TTL 1 to your local subnet broadcast
address, so they will never leave your LAN.
cFosSpeed will show other party's traffic in the Liquid Crystal skins
together with your own traffic, just less intensely coloured. The Traffic
Analysis skins show the total traffic as small bars under the numerical
There is the new command "ts" or "talkstat" to see which other machines on
your LAN use cFosSpeed. The variable "net_talk" can be set to 0 to disable
this feature. You can change the UDP port number with the global variable
"net_talk_port"; it must be the same on all machines in the LAN.
* cFosSpeed now measures the variance of ping packets and uses this value
when shaping. Usually the variance is quite small (e.g. with DSL 16 mbit/s
it's about 4ms), but with wireless networks it can be substantially higher.
This value can be accessed via variable "variance" (spd set variance). If
you don't want this value to be automatically changed by cFosSpeed, set the
global variable "vari_fixed" to 1 (spd gset vari_fixed 1 -save).
The "variance" variable will not be automatically changed if you have
selected the variable non-cooperative algorithm, since cFosSpeed will not
know if changes in ping time are due to variance or traffic from other LAN
users. If you use more than one machine on the LAN, be sure to use cFosSpeed
on all of them with variable cooperative algorithm.
The statistical data on which the variance calculation is based will decay
after 15 minutes, so values that are too old will not be used.
* New skins added: "TA Insight Skin", with Windows 7 look and real-time
analysis. Both traffic analysis skins now have a ping variance display and
a traffic shaping indicator. The ping variance display shows the variance
and statistical certainty of the ping times of your connection. The traffic
shaping indicator flashes whenever a packet is prioritized, i.e. when it is
sent faster than it would without traffic shaping.
* Technology update: cFosSpeed is now an NDIS 6 driver for Vista and Windows 7.
Thereby cFosSpeed supports the improved performance of the new network
* Mobile Broadband Plattform of Windows 7 is now supported. So users of UMTS,
WCDMA, CDMA2000, etc. equipment with native mobile broadband drivers can now
enjoy the benefits of cFosSpeed Traffic Shaping.
* The "Programs" and "Protocols" dialogs under "Settings" now allow setting
tx-limits per program resp. per protocol, i.e. maximum send speeds. See
below for "limit classes and filters" for a more technical explanation of the
* New adapter info dialog to display info about the network cards in your
system. There is detailed info for WLAN and WWAN. For WLAN you can
try to use the channel recommendation for best throughput in "crowded"
areas. But remember the frequency usage may change from minute to minute.
For WWAN (Win 7 mobile broadband adapters) you get detailed information
about the state of your UMTS/WCDMA/Wi-Max/etc. device.
+ Ingo Günther (our graphics artist) donated again a new icon skin which nicely
displays LAN traffic with the Net Talk feature.
+ Added "DivX" to the list of streaming agents for the layer-7 protocol
+ HTTP GET requests are now sent to the high queue regardless of the class of
+ The skins can now load images with GDI+, thus supporting the formats PNG,
TIFF, JPG and GIF. Images of dialogs are now in PNG format. The skins can
now use XRGB 32bit bitmap files, in addition to the ARGB format.
+ Added download option for more skins in the context menu.
+ Two more languages added: Ukrainian & Vietnamese. That makes a total of 28
languages supported. Even more languages are downloadable from our website,
+ The count of connections displayed in skin windows now by default displays
the sum of TCP + UDP connections (formerly it was only TCP connections), but
can be switched to either only TCP, only UDP or both by clicking on the
+ Global variables (accessible through "spd gset") are now written to the
registry as well, so cFosSpeed can use them when booting.
+ Added l7-detection for Teredo (and Teredo bulk) IPv6 tunnelling. Thanks to
Zbig for inspiration.
+ Global variable checksum_ip may now be set to 2 as well, meaning that IP
checksum will only be checked on incoming packets.
+ cFosSpeed now uses link speeds as reported by Windows as upper limits.
! gset variable default_reg_id is now called reg_id_default.
! Variables rx_dest_width and tx_dest_width have been replaced with only one
x Pinging with UDP is now preferred over ICMP, if both work. UDP pinging is
more reliable. This should fix Traffic Shaping not working properly with
x "spd ports" now shows the correct port numbers. These port numbers can be
used to send spd commands directly to a certain port, like "spd 1 cstat".
Thanks to Jacques Zurbriggen for his help.
x Fixed a bug in filter rules: when a protocol or program is set to non-normal
priority by factory defaults and the user changed the priority to normal, it
would have no effect, i.e. the factory default priority would still be used
instead or the normal priority the user had set. Thanks to Peter Chamberlin
for his bug report.
x Fixed sending priority of pings. This should increase reliability of
x cFosSpeed caused delay before sleep or hibernate. Fixed.
x The program and protocols dialogs will now automatically save their settings
when you switch to another dialog page by clicking on menu on the left.
x Fixed slow Sleep/Hibernate problems.
x Fixed missing tracing for spd.exe and missing trace output under strange
conditions in speedsrv.dll.
x Fixed double dumping of settings to trace at the beginning of connection.
x When uninstalling (or doing an update install), Setup will wait for the
sdp.exe service to be deleted before going on. This should fix a problem
where after an update install the status window is gone. Thanks to
Richard B. for bug report.
x Switching the language did not change the language of the dialogs. Fixed.
x IPlist's were not loaded at program start, only with
"spd reload -iplist". Fixed. Thanks to bazolo for bug report.
x Fixed a bug that crashed some Vista & Windows 7 systems when uninstalling.
Thanks to Ingo Günther, Peter Fischer and others for dump files.
x Now handle_mss is 0 by default, i.e. TCP MSS is not changed by cFosSpeed.
This should fix problems with some strange websites.
x Fixed a problem where the installer would sometimes not find old
- UDP checksum checking is now off by default.
- cFosSpeed queues now by default outgoing data for a maximum of 1 sec instead
of 3 secs. This forces TCP to adjust to line conditions faster. You can
change this settings by setting "spd gset max_queue_time