What's new? 'cFos' ISDN Driver Family --------------------------------------------------------------------------- Legend: * New feature + Minor improvement ! Software-change requires modification of your configuration x Bugfix - Information only Revision history: --------------------------------------------------------- cFos 8.01 build 3134 x TCP SYNs were not properly prioritized. Fixed. x Uploads do now slow down downloads less than before. x Fixed behaviour of overlapping active areas in skins. Now the topmost one catches the mouse click. x When no rule matches and no class has yet been set for a connection the class is set to default. This partially reverts the change from build 3133. cFos 8.01 build 3133 + When the traffic class is still not set (at the beginning of a connection) the column will display "working" or nothing. If more traffic is coming, the class name will be shown. + If traffic shaping is (partly) inactive, this is now shown in "spd speed" command. x When no rule matches and no class has yet been determined for a connection we set the class to default, otherwise we leave it unchanged. 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 v8.01.3128. Thanks to km for his bug reports. x Skins would not display more than 21Mb/s speed. Fixed. Thanks to kamcm for bug report. x Fixed a long-standing problem where cFos might perform poorly after a wakeup from standby. Notably, UDP connections would not time-out and ever increase in numbers. - Removed superfluous .htm files from distribution. cFos 8.01 build 3132 + 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 pseudo-connection. + 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 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 report. x Large ping values were always displayed as 999ms. Fixed. 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 '+'. - By default max_trace_size is now 10 mbytes. - 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. - Switched to new compiler. cFos 8.01 build 3131 * cFos 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 cFos 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 "cfo gset avoid_loss 0 -save" or switching off "Packet loss avoidance" under Options, Settings, Preferences. + 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 "cfo dump ...". + Added "cfo 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. + Tx-shaping has now a better average ping time, since cFos 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. + New parameters to set the desired ping delays in both directions: tx_delay, tx_width, rx_delay and rx_width. cFos 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 variable dest_width. If receive speed is too low, because cFos is too agressive in keeping a small ping, increase the rx_* values. Added delay_auto setting, true by default. If set, it will automatically set rx/tx_delay and rx/tx_width to sensible values. If you want your own values in rx/tx_delay and rx/tx_width, you just assign some value to them or switch off delay_auto. This is still work in progress where the assignment might change in the future. + Added SACK statistics in "cfo netstat" and "cfo perf on" output. + Numerous fixes and improvements for rx-shaping. + 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 cFos to ping with higher TTLs. Allowed TTL values are 8 - 16. If you change it, you should use "cfo 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. + 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. x Fixed a problem where variance would not be properly calculated after pinger was changed. Thanks to Gothico for the trace. x Fixed a serious bug that affected TCP volume counting of sent traffic. Thanks to Toxic for his trace. x Fixed bug in medium settings for media cable, frame_count, cable_mixed, 3g. x Fixed a problem where cFos could cause too much delay in tx direction. x Hopefully 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 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 cFos 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. cFos 8.01 build 3128 + Added "calibrated" value to "cfo speed" output to show how well calibrated cFos already is; a value of 0 means "not at all", 100 means "fully". + We're now trying harder to keep starting TCP streams from congesting the downstream path. + Speeded ICMP packet handling. Thanks to Archer for report. + Improved pinger selection when ping reliability is low. + No pings are sent when there was no traffic for some time. This is to help disconnect-on-idle functionality. + Added "Unknown" protocol to priority dialogs as well. + 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. + Added "DivX" to the list of streaming agents for the layer-7 protocol detection. + HTTP GET requests are now sent to the high queue regardless of the class of their connection. + Pinging with UDP is now preferred over ICMP, if both work. UDP pinging is more reliable. + The skins can now load images with GDI+, thus supporting the formats PNG, TIFF, JPG and GIF. + The skins can now use XRGB 32bit bitmap files, in addition to the ARGB format. x Increased value for avg_time to improve accuracy of maximum speed measurements. x Fixed some program priorities. Thanks to Yochanan. 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 pingers. - Removed TCP pinger. - 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 cFos, please purchase an update. - UDP checksum checking is now off by default. - Images of dialogs are now in PNG format. - cFos 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 "cfo gset max_queue_time