3.53 / July 2, 2004
3.54 Beta 4
|Operating system||Microsoft Windows|
WinMX (Windows Music Exchange) was a freeware peer-to-peer file sharing program authored by Frontcode Technologies that ran on Microsoft Windows operating systems of the time, created in 2000. According to one study, it was the number one source for online music in 2005 with an estimated 2.1 million users. Frontcode itself abandoned development of WinMX in September 2005, but a community of developers brought the service back online within a few days by releasing patches or new host files. In North America, WinMX has been eclipsed by other networks such as gnutella and eDonkey as well as to the BitTorrent file transfer protocol.
In May 2011 the WinMX WPNP network came under attack that caused WPNP network searches to return random results. Many users of the WinMX software are still utilising the OpenNap functionality which remains unaffected by the attacks. Efforts are still under way to develop a new client that will be compatible with the old one, which is believed to no longer be affected by such WPNP specific network attacks. In December 2016 the attacks ceased and it became clear that the userbase had shrunk during the attacks. There have been clear signs of a slow userbase recovery in the form of increased chat room listings and chat room participants.
WinMX began its life as an OpenNAP client capable of connecting to several servers simultaneously, although Frontcode later created a proprietary protocol, termed WinMX Peer Network Protocol (WPNP), which was used starting with WinMX 2 in May 2001. Frontcode had operated several cache servers to aid WPNP network operation.
Downloads could be very fast for popular songs since the user can run a "multi-point download" that simultaneously downloads the same file in small pieces from several users. Some considered WinMX to be much safer than many other file sharing software, mainly because no spyware or adware came with WinMX. Note that only sharing of individual files was supported. Folders could not be shared. For music albums this led to wrapping all the tracks into a single file. Or ripping the album into a single file.
The WinMX program housed a few built-in features such as bandwidth monitoring, short messaging, and hosting chatrooms and functions as an OpenNap client. Users could negotiate an exchange of their files with the help of the short messaging system or chat. After the transfers started each had the option of selecting bandwidth for the other to make sure both transfers end more or less at the same time. There are a few drawbacks of the program itself. It was reported to use large amounts of memory when run for a long time with third party add-ons. There is an upper limit to the size of files that can be shared (2GB), this design decision was to maintain Windows98 support. The program will run correctly on XP, Vista, Windows 7 and Windows 10 Operating systems as long as the relevant Microsoft C++ run time libraries are present.
To get started, users connected to the WinMX Peer Network (WPN) either as a primary or secondary user. A majority of the functions on the WPN were available to both users, but primary users need to spend more bandwidth, tend to have better connections, and have the ability to host chat rooms. Secondary users use very little idle bandwidth, but their prolonged connection to the network is not always stable.
Sharing files in WinMX
WinMX users could share nearly every type of file using the network. The most common file types such as audio, video, images, and archive files were available by default, and all others could be configured in the program's settings. It was also considered a safe network with a limited number of viruses. WinMX had a file-size restriction limiting shared files to 2GB in size. A user could also only share 5,000 visible files for a Primary connection (unknown if other files would be shared but not listed), and 3,000 files (maximum sent to the primary) for a Secondary connection. These limitations did not apply on OpenNap servers.
Searching for files
Users could search for almost any file in WinMX. When a user sent out a search, the search was spread throughout the network. If a file was found, the hash of the file along with IP address and Primary node details of the user with the file was sent to the user who made the search. Searches could also be made with hashes instead of words and numbers.
Even before the WinMX network was originally shut down in 2005, there were increasing reports of fake files and corrupted data in the networks. The people hosting the files, called 'flooders', connected as secondary users. If certain trigger words were included by a user when searching for a file, that user got many results that were not real. Along with wasting the user's time, the resulting large bandwidth sometimes crashed the client. This flooding continued when the efforts of third parties resurrected WinMX days after its closure. However, the later community patches blocked the sources of these connections as well as the search results they generated.
WinMX allowed a person to host chatrooms with its built-in Chat function. There were some rooms reserved for chat, some for trading files, and some which allow both. The WinMX community at large came to embrace chat as a fundamental part of the program; at its height WinMX typically had around 1,500 to 2,000 chatrooms at any given time in a multitude of languages. WinMX also allowed its users to message each other using its Private Message function regardless of whether or not they were in the same chat room or are downloading from/uploading to each other. However, settings allowed any user to block messages from users if they choose. It was also possible to host chatrooms in languages other than English, such as Japanese, German, French and Italian.
WinMX started out as a Peer-to-Peer program that connected to OpenNap servers. It can still connect to many OpenNap servers. These servers enable users to connect to a wider userbase and also receive many more search results. Two advantages of running OpenNap is the ability to have a permanent list of friends called a hotlist and the ability to display an unlimited number of files for sharing.
WinMX is natively English, but language files could be installed to translate menus into the following languages: Chinese, Dutch, Finnish, French, German, Greek, Hungarian, Italian, Japanese, Norwegian, Polish, Portuguese, Russian, Sardinian, Spanish and Swedish.
On September 13, 2005, Frontcode Technologies received a cease and desist letter from the RIAA demanding that they either implement filters to make it impossible for users to download copyrighted material from WinMX, or shut down. On September 21, 2005, the network and the WinMX homepage were officially confirmed as offline.
By September 23, 2005, users were able to download two unofficial patches for WinMX from two unrelated websites. These patches worked by modifying the DNS lookup WinMX uses to find peer caches. When WinMX tries to find the Frontcode peer caches (central servers essential for the operation of WinMX), it is instead directed to look up one of the new peer caches set up by the WinMX communities. Although these patches reconnected users, the official closure caused the user base to decrease, and those who remained were split between the patches, causing rifts between them. Each group wanted users to get reconnected using their patch and not the patch of the other group.
In 2008 a new patch was released to coincide with the third anniversary of the two previous patches' release date. Known as the "WinMX Community Patch", it was created through the joint effort of an independent, third-party programmer and the cooperative input and testing from the two communities. Supported and available for download by both groups, it is intended to replace the previous patches being used, allowing all users to once again connect to a single set of peer caches, unifying all users for the first time since the official closure of WinMX in 2005.
Commencing on May 2011 the WinMX network had been under protocol level attack from a disgruntled developer who disagreed with those operating the network support infrastructure (user support forums & peer cache operators). As a result of those attacks the WPNP network searches would return random query results (alongside relevant results) that where unrelated to the specific term searched for, and also users where unable to receive a full chat room list. A web based WinMX Chat Room List was set up for users to retrieve a full room list, and also offered the ability to manually add chat rooms to the web list. In addition to offering a live list of chat rooms, it also offered a one click solution for joining chat rooms in WinMX via the web page itself with the WinMX Link Handler. As mentioned above, the protocol level attacks have ceased and the network has been operating normally albiet with a reduction in network users, its currently too early to assess the percentage of "lost" users but it most certainly exceeds several thousand and may act as a warning for other P2P networks that have protocol weaknesses that can be exploited.
An initial project called WinPY attempted to make a replacement open source WinMX client. The WinPY project was the most successful replacement client project as a preview alpha version with limited basic functionality was released; however, it quickly stalled due to lack of interest. There have also been several attempts to start new projects to create replacement clients however most have stalled before releasing anything fully completed. One project announced on a major WinMX community site was initially scheduled to be released in November 2012, however there were many published delays due to lack of skilled programming support. The project was finally released to public testers as a beta version on September 22nd 2013 and under a new name (OurMx) and further releases will continue to be made prior to a formal client release. Historical information regarding the OurMX client progress can be viewed by following the link below.
In addition to the program and patches, developers and WinMX users created third party programs to either enhance the chat room function or to control uploading by other peers.
Most of the software was made by third-party developers for use in the WinMX chat rooms. They include bots, servers to host rooms, and plugins. Bots were used in the chat rooms to either make it more lively, introduce games, or to moderate users, maintain lists of the files a user in a chat room has, and more. Other plugins performed automatic functions including displaying music files currently playing on the user's computer and aid in posting colored ASCII pictures in rooms.
Third party chat servers were used primarily to host chat rooms on the network. This is because of the improved administration systems in third party servers as well as the ability to host a chat room without having to use the winmx client. Some Third party chat clients also contained useful shortcuts or menus to make administrating a channel easier. For normal users, chat clients or the WinMX client itself could be used to view rooms independently of the server. Web listings of the chat room were also available.
Upload managers (MxMonitor and Leechhammer) can be used to control the upload rate of peers and can block certain kinds of peers from downloading, including those who do not share any files.
- "iTunes more Popular than most P2P services." DMN Newswire
- Slyck.com: "Resurrecting WinMX" (September 23, 2005)
- Announcement of the WinMX Community Patch
- New wpn client preview
- Archive of WinMX homepage (from November 2004, site is defunct as of September 2005[update])
- What Happened to the WinMX Network? - September 29, 2005 About.com article