ECv2 stands for External Connections 2.0.
This new version (starting from aMule 2.0.0-rc8) is incompatible with any previous version.
The necessity to redisign the External Connections code came from a security hole a user reported and had to be quickly patched. After fixing it, it became obvious that the protocol's design wasn't flexible, secure and fast enough to have it as a standard protocol for any future application trying to connect to aMule.
The main goal of this protocol is to make it binary (up to now, it was strings-driven) and to enforce its security. Apart from that, much care has been taken in making it as fast and flexible as possible. It has become so complex that it can now be considered an Application layer (in the OSI model).
The new protocol's design specification can be found in the docs that come along with the aMule tarball.