[Spread-cvs] commit: r679 - in trunk: . daemon docs include

jschultz at spread.org jschultz at spread.org
Wed Jan 22 22:28:48 EST 2014


Author: jschultz
Date: 2014-01-22 22:28:48 -0500 (Wed, 22 Jan 2014)
New Revision: 679

Added:
   trunk/release_announcement_4.4.txt
Removed:
   trunk/release_announcement_4.3.txt
   trunk/release_announcement_accelerated_ring.txt
Modified:
   trunk/Readme.txt
   trunk/configure.in
   trunk/daemon/Changelog
   trunk/daemon/spread_params.h
   trunk/docs/sample.spread.conf
   trunk/include/sp.h
Log:
Updating version numbers, Changelog and release announcement in
preparation for 4.4.0 RC1 release.


Modified: trunk/Readme.txt
===================================================================
--- trunk/Readme.txt	2014-01-22 18:27:33 UTC (rev 678)
+++ trunk/Readme.txt	2014-01-23 03:28:48 UTC (rev 679)
@@ -3,7 +3,7 @@
 
 /=============================================================================\
 | The Spread Group Communication Toolkit - Accelerated Ring Research Version  |
-| Copyright (c) 1993-2013 Spread Concepts LLC                                 |
+| Copyright (c) 1993-2014 Spread Concepts LLC                                 |
 | All rights reserved.                                                        |
 |                                                                             |
 | The Spread package is licensed under the Spread Open-Source License.        |
@@ -49,17 +49,50 @@
 | WWW    : http://www.spread.org  and  http://www.spreadconcepts.com          |
 | Contact: info at spreadconcepts.com                                            |
 |                                                                             |
-| Version 4.3.0  Accelerated Ring Experimental version built 2/July/2013      |
+| Version 4.4.0 built 22/January/2014                                         |
 \=============================================================================/
 
-July 2, 2013 Ver 4.3.0 Final
------------------------------
+January 22, 2014 Ver 4.4.0 RC1
+------------------------------
 Features:
- - Accelerated Ring Experimental protocol tailored for data center networks.
+
+ - New accelerated ring protocol tailored for data center networks.
    This protocol provides 30%-50% higher throughput and 20-35% lower latency 
    in modern local area networks. Both the original protocol and the accelerated
-   ring experimental protocol are supported by this version.
+   ring protocol are available in this version.
 
+ - More efficient packet packing.
+
+ - Windows project files now build again.
+
+ - New spread-service project to make Spread into a proper Windows service.
+	- Needs testing from the community!
+
+ - Additional and improved MEMB and PROTOCOL logging.
+
+Bug fixes:
+
+ - EVS bugs:
+	- Set Aru to 0 when we transition to EVS.
+	- Ignore Token->seq when in EVS.
+	- Fixed Backoff_membership referring to wrong packet when ring breaks in EVS.
+	- Fixed token retransmissions while transitioning from EVS to OP.
+
+ - Token bugs:
+	- Token->aru calculaton fixed; Set_aru eliminated.
+	- Ignore tokens from wrong membership + sender.
+
+ - Alarm on Windows:
+	- Alarm(EXIT) now exits with non-zero code instead of aborting.
+	- Fixed long log lines crash bug.
+
+ - Allow ports >= 2^15 to be used.
+
+ - Turned off Nagle algorithm in Java library.
+
+July 2, 2013 Ver 4.3.0 Final
+----------------------------
+
 June 11, 2013 Ver 4.3.0 Final
 -----------------------------
 Features:
@@ -68,12 +101,10 @@
 April 4, 2013 Ver 4.3.0 RC3
 ----------------------------
 Features:
-
  - Updated copyright
 
 March 25, 2013 Ver 4.3.0 RC1
 ----------------------------
-
 Features:
 
  - C library supports using a single <port> value as the spread name to connect 
@@ -118,92 +149,19 @@
  - Performance bug fix to protocol.c to only decrement retrans_allowed when we 
 actually request a retransmission.
 
-
-June 18, 2012 Ver 4.2.0
------------------------
-This release has one significant bugfixe over RC2.
-
-1) Fix regression from 4.1 release in which daemons were not connecting 
-when using multicast groups in a configuration with limited interfaces 
-for clients and daemons. This includes updating included libspread-util 
-version to 4.2.0rc1. 
-
-
-May 03, 2012 Ver 4.2.0 RC2
---------------------------
-This release has two significant bugfixe over RC1.
-
-1) Fix regression from 4.1 release in which daemons were not connecting 
-when using multicast groups.
-
-2) Fix crashes when a new configuration is loaded while the daemons are running.
-This is a bug from the previous 4.1 release. 
-
-
-March 20, 2012 Ver 4.2.0 RC1
-----------------------------
-This release has a large number of small changes which include bugfixes,
-very specific performance improvements, and general improvements to the code 
-and build process.
-
-Details of all changes can be found in the daemon/Changelog file. Note with 
-the new libspread-util library broken out into it's own package, to see the 
-changes to that library (which used to be included as code in the daemon
-directory) read the libspread-util/Changelog file. 
-
-Features:
-
--) Added Keepalive support to client-server TCP connections. Requires correct
-operating system values set for keepalives in order to be useful. 
--) Switch internal code to use MONOTONIC clocks when available and appropriate
-to remove chance of system clock changes (from the clock being set) from affecting
-message processing
--) Break out events, memory, data_link and alarm code into separate 
-libspread-util package. This package also has a number of improvements in
-the functionality of those code files which are listed in the internal
-package release notes. 
-
-Fixes:
-
--) Fix bug with structure size on 64 bit platforms causing crash.
--) Fix several deadlocks and race conditions in java Listener code.
--) Fix 100 ms timeout in java socket handling code so it does not corrupt 
-messages that take a long time to arrive. 
--) Fix java disconnect bug that prevented client from reconnecting until restarted.
--) Fix crash when adding array of groups in java library. . 
--) Improve mutex initialization on Windows and POSIX systems.
--) Remove cause of slow message delivery when a client is receiving a lot of
-messages and gets into a badger state. 
--) Print useful help messages for spmonitor and correct error messages when bad
-commandline options provided. 
--) Remove printf calls in libspread that should not be there as they interrupt
-client program output. 
--) Fix token hurry bug that caused messages to have a 2 second latency in 
-specific circumstances.
--) Fix Solaris linker compile bug.
--) Build fixes for sprecv program.
--) Fix autoconf so it correctly detects the endianness of PPC systems. 
-
-Known Regressions:
-
-1) The Windows build is broken by the separation of the libspread-util library
-into a separate package. The code is intended to be Windows compatible, but 
-requires build changes and testing in order to work. 
-
-
 SOURCE INSTALL:
 ---------------
 
 The source install uses autoconf and make to support many Unix and unix-like 
 platforms as well as Windows 95+.
 
-Windows is supported by a set of Visual Studio desktop and project files in
+Windows is supported by a set of Visual Studio project files in
 the win32 subdirectory. These files build the daemon, libraries, and user
 programs.
 
-Any not-specifically supported
-platform that has reasonably close to normal sockets networking should also 
-be easily portable. See the file PORTING for hints on porting.
+Any not-specifically supported platform that has reasonably close to normal 
+sockets networking should also  be easily portable. See the file PORTING for 
+hints on porting.
 
 From the directory where you unpacked the Spread source distribution do 
 the following:
@@ -217,9 +175,9 @@
 
 4) Create a spread.conf file appropriate to your local configuration. For 
 more info on how to do this look at the sample file "sample.spread.conf"
-or below in the binary install instructions.
+in docs or below in the binary install instructions.
 
-5) To build the java library and documentation see the Readme.txt file 
+5) To build the java library and documentation, see the Readme.txt file 
 in the java directory.
 
 6) To build the perl library see the README file in the perl directory.
@@ -231,7 +189,7 @@
 for several platforms, such as through the FreeBSD Ports system or as 
 RPMs for Linux distributions. The Spread binary release consists of 
 prebuilt binaries for several OS's that can be run without being installed
-offially into the system.
+officially into the system.
 
 We recommend that if you are experimenting with spread you create a special
 'spread' directory (for example /usr/local/spread or /opt/spread) and keep
@@ -263,7 +221,6 @@
 
     You can run "spread usage" to see the spread running options.
 
-
 To use the Java classes and examples you need to have a copy of the 
 main 'spread' daemon running.  Then the class files give you the 
 equivelent of the libspread.a as a set of java classes.  The user.java,  
@@ -271,43 +228,42 @@
 Under the java/docs directory is a full verison of the Spread Java API
 provided by javadocs. 
 
-For Microsoft Windows systems use the spread.exe daemon and the libspread.lib 
-to link with your programs.
+For Microsoft Windows systems use the spread.exe executable or spread-service.exe
+service and the libspread.lib to link with your programs.
 
-
 OVERVIEW:
 ---------
 
 Spread consists of two parts, an executable daemon which is executed on 
 each machine which is part of the heavyweight 'machine' group, and a library
- which provides a programming interface for writing group multicast 
+which provides a programming interface for writing group multicast 
 applications and which is linked into the application.
 
-	The daemon, called "spread", should be run as a non-priveledged 
+The daemon, called "spread", should be run as a non-priveledged 
 user (we created a 'spread' user) and only needs permissions to create a 
 socket in /tmp and read its config file which should be in the same 
 directory as the executable.  By default the daemon binds to and runs 
 off the non-priveledged port 4803 unless the config file indicates otherwise.
-	Each daemon can be started independently and if it does not find 
+
+Each daemon can be started independently and if it does not find 
 any other members of its defined configuration currently active it runs as 
 a machine group of 1 machine.  When other daemons are started they will join
 this machine group.
 
-	The machines which are running a daemon with a common config file 
+The machines which are running a daemon with a common config file 
 form a 'machine group' (in contrast to a 'process group').  The daemons 
 handle multicasting mesages between each other,providing ordering and 
 delivery guarantees, detecting and handling failures of nodes or links, and 
 managing all applications which are connected to each daemon.
 
-	Each application utilizing the spread system needs to link with 
+Each application utilizing the spread system needs to link with 
 the 'libspread.a', 'libtspread.a', 'libtspread.lib' or 'libspread.lib' 
 library and needs to use the calls defined in the 'sp.h' and 'sp_func.h' 
 header files. Documentation for the interface is currenly incomplete, but 
 a basic application must do at least the following:
 
 1) Before using any other spread calls you need to 'connect' to a daemon 
-   by calling the
-	SP_connect(...) call.  This will set a mbox which is an integer 
+by calling the SP_connect(...) call.  This will set a mbox which is an integer 
 representing your connection to the daemon.  You use this when making other
 spread calls.  You CAN connect to daemons multiple times from the same 
 application (and we know of times when this is very useful).
@@ -357,7 +313,6 @@
 For more detail, much of which IS important, see papers on 
 Extended Virtual Sychrony, Transis and Totem.
 
-
 UTILITY PROGRAMS:
 -----------------
 

Modified: trunk/configure.in
===================================================================
--- trunk/configure.in	2014-01-22 18:27:33 UTC (rev 678)
+++ trunk/configure.in	2014-01-23 03:28:48 UTC (rev 679)
@@ -1,4 +1,4 @@
-AC_INIT(Spread, 4.3.0)
+AC_INIT(Spread, 4.4.0)
 
 AC_CONFIG_AUX_DIR(buildtools)
 AC_CONFIG_HEADERS(daemon/config.h)

Modified: trunk/daemon/Changelog
===================================================================
--- trunk/daemon/Changelog	2014-01-22 18:27:33 UTC (rev 678)
+++ trunk/daemon/Changelog	2014-01-23 03:28:48 UTC (rev 679)
@@ -1,3 +1,117 @@
+January 22, 2014 Ver 4.4.0 RC1
+------------------------------
+
+r676 | jschultz | 2014-01-22 03:21:47 -0500 (Wed, 22 Jan 2014)
+	Bugfix in Conf_previous().
+
+r675 | jschultz | 2014-01-22 03:20:59 -0500 (Wed, 22 Jan 2014) 
+r674 | jschultz | 2014-01-22 02:53:22 -0500 (Wed, 22 Jan 2014)
+r673 | jschultz | 2014-01-22 02:12:08 -0500 (Wed, 22 Jan 2014)
+	More MEMB token logging.
+
+r672 | jschultz | 2014-01-22 01:24:57 -0500 (Wed, 22 Jan 2014)
+	Add membership id to EVS/OP token. Further bugfix to prevent getting tokens 
+	from wrong transmitter.
+
+r671 | jschultz | 2014-01-22 01:17:58 -0500 (Wed, 22 Jan 2014)
+	Partial cleanup of code -- mostly white space changes. 
+	Eliminated some redundant / pointless #defines. 
+	Improved and largely eliminated retry logic in DL_send.
+
+r670 | jschultz | 2014-01-21 22:45:18 -0500 (Tue, 21 Jan 2014)
+	Cleanup of membership prototypes to be explicit; spacing; prints
+
+r669 | jschultz | 2014-01-21 21:40:17 -0500 (Tue, 21 Jan 2014)
+	Added bounds checks to Create_form1, Fill_form1 and Read_form2.
+
+r668 | jschultz | 2014-01-21 18:36:16 -0500 (Tue, 21 Jan 2014)
+	Partial bugfix for getting live token from wrong transmitter.
+
+r666 | jschultz | 2014-01-21 18:20:18 -0500 (Tue, 21 Jan 2014)
+	Change windows return code from Alarm to be non-zero
+
+r667 | jschultz | 2014-01-21 18:26:55 -0500 (Tue, 21 Jan 2014)
+r663 | jschultz | 2014-01-20 22:49:35 -0500 (Mon, 20 Jan 2014)
+	Bugfix to set Aru = 0 when we transition to EVS.
+	Added invariants that Aru may not decrease.
+	Bugfix to Token->aru calculation: eliminate Set_aru and simplify logic.
+	Moved Just_Installed to Memb_Just_Installed in membership.c
+	Added more PROTOCOL and MEMB logging.
+
+2014-01-19 r658, r659 Jonathan Stanton  <jonathan at spreadconcepts.com>
+	Fix function prototype warnings on windows by defining _event callback 
+	functions with correct prototype and calling them or the direct functions 
+	as needed.  Move standard libraries later in linking path to avoid errors 
+	on some platforms for sptmonitor.
+
+2014-01-17 r655, r656, r657 John Schultz <jschultz at spreadconcepts.com>
+	Updates to libspread-util windows project files.
+	Updates to windows project files.
+	Got rid of warnings from windows compile:
+        	- un/signed comparisons
+        	- prototypes of fcns called from event system
+
+2014-01-17 r654 John Schultz <jschultz at spreadconcepts.com>
+	alarm.c: Bugfix for alarm on windows for large log lines.
+
+2014-01-17 r647, r648 John Schultz <jschultz at spreadconcepts.com>
+	Added new spread-service projects to win32.
+	Added winservice.c to daemon directory.
+
+	-- Thanks to Johann Lochner for this contribution!
+
+2014-01-14 r645 John Schultz <jschultz at spreadconcepts.com>
+	Updates to default window, personal window and accelerated window.
+
+2014-01-14 r644 John Schultz <jschultz at spreadconcepts.com>
+	Added spu_system.h.win32. Fixed a couple of minor Windows compile errors.
+
+2014-01-14 r641, r642, r643 John Schultz <jschultz at spreadconcepts.com>
+	win32/*, libspread-util/win32/*: Updated MS visual studio project files.
+	
+2014-01-14 r640 John Schultz <jschultz at spreadconcepts.com>
+	* daemon/arch.c: Removed: was previously exported out to libspread-util.
+
+2014-01-06 r632, r633 John Schultz <jschultz at spreadconcepts.com>
+	* alarm.c, data_link.c, scatter.h, spread.c, protocol.c, daemon/arch.h: 
+	Alarm(EXIT) no longer calls abort on Windows.  Eliminated some warnings
+	on Windows.
+
+	-- Thanks to Juan Pizzorno for these ideas!
+
+2014-01-06 r631 John Schultz <jschultz at spreadconcepts.com>
+	* sp.c, fl.c, scatp.c: Eliminated redundant comparisons.
+
+2014-01-06 r630 John Schultz <jschultz at spreadconcepts.com>
+	* membership.c configuration.[ch], config_parse.y:
+	Added default logic for use of accelerated ring.
+
+2013-12-17 r629 John Schultz <jschultz at spreadconcepts.com>
+	* Most files: Added accelerated ring protocol.
+
+	-- Thanks to Amy Babay for this major contribution!
+
+2013-11-18 r627, r628 John Schultz <jschultz at spreadconcepts.com>	
+	* spread.c, network.c, membership.c, protocol.c, arch.h, flooder.c:
+	Bugfix for token retransmissions when transitioning from EVS to OP.
+	Bugfix to not consider Token->seq in EVS when updating Token->aru.
+	Changed flooder to not use RELIABLE_MESS due to known issue that they
+	can be delivered before groups state transfer is complete.  Added
+	a good bit of MEMB and PROTOCOL logging.  Added initialization logic 
+	for random number generators.
+
+2013-10-09 r594 John Schultz <jschultz at spreadconcepts.com>
+	* SpeadConnection.java: Turn off Nagle algorithm in Java library.
+
+2013-09-23 r592 John Schultz <jschultz at spreadconcepts.com>
+	* membership.c: Bugfix for Backoff_membership referring to wrong packet.
+
+2013-08-08 r584, r585 John Schultz <jschultz at spreadconcepts.com>
+	* configuration.[ch], session.c, s.c, r.c: Changed 16b ports to be unsigned.
+
+June 11, 2013 Ver 4.3.0 
+-----------------------
+
 Tue Jun 11 23:40:30 2013  Jonathan Stanton  <jonathan at spreadconcepts.com>
 
 	* protocol.c, flow_control.c (FC_signal_conf_reload): Reload flow control 

Modified: trunk/daemon/spread_params.h
===================================================================
--- trunk/daemon/spread_params.h	2014-01-22 18:27:33 UTC (rev 678)
+++ trunk/daemon/spread_params.h	2014-01-23 03:28:48 UTC (rev 679)
@@ -37,12 +37,12 @@
 #define INC_SPREAD_PARAMS
 
 #define		SP_MAJOR_VERSION	4
-#define         SP_MINOR_VERSION        3
+#define         SP_MINOR_VERSION        4
 #define         SP_PATCH_VERSION        0
 
 #define         SPREAD_PROTOCOL         3
 
-#define         SPREAD_BUILD_DATE       "02/July/2013"
+#define         SPREAD_BUILD_DATE       "22/January/2014"
 
 #define		DEFAULT_SPREAD_PORT	4803
 

Modified: trunk/docs/sample.spread.conf
===================================================================
--- trunk/docs/sample.spread.conf	2014-01-22 18:27:33 UTC (rev 678)
+++ trunk/docs/sample.spread.conf	2014-01-23 03:28:48 UTC (rev 679)
@@ -235,20 +235,23 @@
 # networks. If no letter is listed before the interface address then ALL types of 
 # events are handled on that interface.
 
-# AcceleratedRing flag indicates which protocol to use. If false, the normal Spread
-# ring protocol is used. If true, a currently experimental accelerated ring protocol
-# is used. Note that daemons can only talk with daemons that run the same protocol - they
-# will not agree to talk with daemons that run the other protocol. The accelerated ring
+# AcceleratedRing indicates which protocol to use. If false, the normal Spread
+# ring protocol is used. If true, the accelerated ring protocol is used. Note that 
+# daemons can only talk with daemons that run the same protocol - they
+# will refuse to talk with daemons that run the other protocol. The accelerated ring
 # protocol uses a flow control algorithm similar to the normal protocol, with the
 # exception that up to AcceleratedWindow packets out of the PersonalWindow packets
-# are sent after the token is sent (the token still reflects these packets).
-AcceleratedRing = true
+# are sent after the token is sent (the token still reflects these packets).  In
+# general, the closer AcceleratedWindow is to PersonalWindow the more acceleration
+# can be expected -- up to a point.
+#
+#AcceleratedRing = true
 
 # Flow Control Parameters
 #
-Window = 100
-PersonalWindow = 20
-AcceleratedWindow = 20
+#Window = 160
+#PersonalWindow = 20
+#AcceleratedWindow = 15
 
 # Membership Timeouts (in terms of milliseconds)
 # 

Modified: trunk/include/sp.h
===================================================================
--- trunk/include/sp.h	2014-01-22 18:27:33 UTC (rev 678)
+++ trunk/include/sp.h	2014-01-23 03:28:48 UTC (rev 679)
@@ -61,7 +61,7 @@
 
 #define		DEFAULT_SPREAD_PORT	4803
 
-#define         SPREAD_VERSION          ( (4 << 24) | ( 3 << 16) | 0 )
+#define         SPREAD_VERSION          ( (4 << 24) | ( 4 << 16) | 0 )
 
 #define		MAX_GROUP_NAME		32
 #define         MAX_PRIVATE_NAME        10 /* largest possible size of private_name field of SP_connect() */

Deleted: trunk/release_announcement_4.3.txt
===================================================================
--- trunk/release_announcement_4.3.txt	2014-01-22 18:27:33 UTC (rev 678)
+++ trunk/release_announcement_4.3.txt	2014-01-23 03:28:48 UTC (rev 679)
@@ -1,49 +0,0 @@
-This version is an experimental version based on the Spread
-Toolkit 4.3. The file release_announcement_accelerated_ring.txt contains
-the release announcement relevant to the experimental version.
-Below is the original announcement of the Spread Toolkit version 4.3.0.
-
-Spread 4.3.0  http://www.spread.org
-
-Spread Concepts LLC is happy to announce the release of a 
-new stable version, 4.3.0, of the Spread toolkit. 
-
-The Spread 4.3 release is an important release focusing on improved out-of-the-box
-performance for the Spread toolkit. 
-This release has a large number of small changes which include bugfixes,
-very specific performance improvements, and general improvements to the code 
-and build process.
-
-The main new features of this release are:
-
-1) Performance improvements to membership timing and system throughput. 
-2) Provide runtime configurability for membership timers and flow control 
-parameters via the spread.conf file. 
-3) Redesign of C library locking to improve throughput and remove blocking. 
-4) Smarter autodetection of both the best client-server connection method 
-(local system unix sockets or tcp) and the local hostname when starting daemons.
-
-It also includes a number of bug fixes. For details check the Readme.txt file. 
-
-This release does not include any API changes, so applications should
-be able to be relinked or recompiled with the new Spread library without
-changes. 
-
-The Spread toolkit provides a high performance messaging service
-that is resilient to faults across local and wide area networks.
-Spread functions as a unified message bus for distributed applications, 
-and provides highly tuned application-level multicast, group communication, 
-and point to point support. Spread services range from reliable messaging 
-to fully ordered messages with virtual synchrony delivery guarantees, even in case 
-of computer failures and network partitions.
-
-Please be aware, that under the Spread Open Source License, the toolkit may 
-be freely used only under some conditions. For example, the license includes 
-the requirement that all advertising materials (including web pages) 
-mentioning software that uses Spread display a specific acknowledgment. 
-Please review the license agreement for more details.
-http://www.spread.org/license/
-
-Other commercial licenses or other licensing arrangements are available. 
-Please contact info at spreadconcepts.com. 
-

Copied: trunk/release_announcement_4.4.txt (from rev 676, trunk/release_announcement_4.3.txt)
===================================================================
--- trunk/release_announcement_4.4.txt	                        (rev 0)
+++ trunk/release_announcement_4.4.txt	2014-01-23 03:28:48 UTC (rev 679)
@@ -0,0 +1,62 @@
+Spread 4.4.0 RC1 http://www.spread.org
+
+Spread Concepts LLC is happy to announce the release of a 
+new release candidate version, 4.4.0 RC1, of the Spread toolkit. 
+
+The Spread 4.4 release is an important release that incorporates a new,
+accelerated ring protocol.  This protocol is tailored for data center networks 
+and can provide 30%-50% higher throughput and 20-35% lower latency in modern 
+local area networks  This version also supports Spread's old ring protocol.
+
+A new AcceleratedRing parameter has been added to Spread's configuration file.
+If this parameter is set to true, then the accelerated ring protocol will be used.  
+If it is set to false, then the old ring protocol will be used.  If it is left 
+unspecified, then Spread will try to determine which protocol is likely better for 
+your environment.  If your configuration looks like it might be a LAN (i.e. - all 
+daemon IPs are in the same /16 network) rather than a WAN, then Spread will use 
+the accelerated protocol.  Otherwise, it will use the original protocol.  All the
+daemons in a configuration must use the same ring protocol.  Daemons with different
+protocols will refuse to communicate with one another.
+
+A new AcceleratedWindow parameter, with a value between 0 and the value of the 
+PersonalWindow parameter, should be specified as a flow control parameter in the 
+spread.conf file.  The higher the parameter the more acceleration is expected --
+up to a point.  The sample.spread.conf file included in this experimental 
+release has appropriate settings for these parameters that enable the 
+Accelerated Ring protocol, as well as a description of their functions.
+
+The main new features of this release are:
+
+1) Accelerated Ring protocol to improve both throughput and latency in local area networks.
+
+2) Redesigned message-packing, reducing overhead for small messages.
+
+3) Updated MSVS project files for Windows source builds.
+
+4) Several important bugfixes that make Spread less likely to exit under high loss.
+
+5) Expanded and improved logging.
+
+For details check the Readme.txt file. 
+
+This release does not include any API changes, so applications should
+be able to be relinked or recompiled with the new Spread library without
+changes. 
+
+The Spread toolkit provides a high performance messaging service
+that is resilient to faults across local and wide area networks.
+Spread functions as a unified message bus for distributed applications, 
+and provides highly tuned application-level multicast, group communication, 
+and point to point support. Spread services range from reliable messaging 
+to fully ordered messages with virtual synchrony delivery guarantees, even in case 
+of computer failures and network partitions.
+
+Please be aware, that under the Spread Open Source License, the toolkit may 
+be freely used only under some conditions. For example, the license includes 
+the requirement that all advertising materials (including web pages) 
+mentioning software that uses Spread display a specific acknowledgment. 
+Please review the license agreement for more details.
+http://www.spread.org/license/
+
+Other commercial licenses or other licensing arrangements are available. 
+Please contact info at spreadconcepts.com. 

Deleted: trunk/release_announcement_accelerated_ring.txt
===================================================================
--- trunk/release_announcement_accelerated_ring.txt	2014-01-22 18:27:33 UTC (rev 678)
+++ trunk/release_announcement_accelerated_ring.txt	2014-01-23 03:28:48 UTC (rev 679)
@@ -1,21 +0,0 @@
-The Spread Toolkit Accelerated Ring Experimental release 4.3 is a research version 
-of the Spread toolkit based on the Spread Toolkit 4.3 public release available 
-at www.spread.org. 
-
-This experimental release features an experimental protocol tailored for
-data center networks that can provide 30%-50% higher throughput and 20-35% lower
-latency in modern local area networks. Of course, the version also supports 
-the original Ring protocol.
-
-The new features of this experimental release are:
-
-1) Accelerated Ring protocol to improve both throughput and latency in local area networks.
-
-2) Redesigned message-packing, reducing overhead for small messages.
-
-To use the experimental protocol, the AcceleratedRing parameter must be set to
-"true" in the spread.conf file, and an AcceleratedWindow with a value between 0
-and the value of the PersonalWindow parameter should be specified as a flow
-control parameter in the spread.conf file. The sample.spread.conf file included
-in this experimental release has appropriate settings for these parameters that i
-enable the Accelerated Ring protocol, as well as a description of their functions.




More information about the Spread-cvs mailing list