Version 3.5 provides support for the PPMd compression algorithm to Xceed Zip for .NET. PPMd is a PPM-based predictor algorithm used in zip files created with Winzip 11.0 and up. In our tests, especially with text files and XML files, the PPMd method generally produced the smallest compressed output. Xceed recommends that the PPMd compression method be selected when dealing with text files, XML files, and other files with high redundancy, as this is where the PPMd algorithm is able to create smaller files than the other compression methods.
The PPMd algorithm uses a custom memory management system called SubAllocator. In a zip file, the memory size the SubAllocator uses is defined in the WinZip PPMd header for the compressed file and this header's value is used when decompressing the data. In general, WinZip uses 64Mb. Since the algorithm used was not optimized from the original PPMd version I revision 1, the SubAllocator initially requires the total amount of memory specified in the PPMd compressor. This means you must have at least 64 MB of RAM free when using this compression method.
MODE Z support has been added to Xceed FTP for .NET, which allows data to be compressed before sending to an FTP server and decompressed when received from a server. In addition, support for "Knowledge of Extra Capabilities", also known as the FEAT command, has also been implemented, which allows an FTP client to query an FTP server in order to know if it supports one or more extra capabilities, which are "add-ons" to the standard FTP protocol.
Last but not least, Xceed FTP for .NET now offers the possibility to send the Telnet interrupt signal before the QUIT command is sent to an FTP server, allowing an FTP server to be notified that the connection will be terminated. This feature is not supported by Xceed FTP for .NET Compact Framework.