NodeScan is a combination of a traditional client/server and peer-to-peer network. It is a hybrid which combines the advantages of both types of networks while eliminating their respective disadvantages. Here's how it works...
The application consists of two individual components - a client and a server. Both have graphical user interfaces. The server requires little pre-configuration and once operational provides various services to the NodeScan clients which connect to it. At present available services include Chat, File Sharing, Searching and Audio Streaming. In addition there are some administrative services including Remote server administration and User Registration.

The NodeScan server-to-server network operates as a distributed, automatic indexing engine. When a client uploads a file to the server it is indexed and specific information about the file is recorded. Users can search this information to find files which match specific criteria.
File indexing allows each server to maintain a searchable database of all the files which have been uploaded to it. In addition servers forward file information to, and receive information from, other servers. This means that a file uploaded to any server can be located and downloaded by any client on the network.
Since the indexing is done continuously in the background by the servers, search requests and results do not need to be inefficiently propagated around the network in the way some other peer-to-peer networks operate. Since the NodeScan server network does not depend on only one main server it maintains the advantages derived from a redundant, scalable, peer network.
The work of indexing and serving files is also distributed across the network meaning that the system, in effect, combines the power of many smaller servers to create one "virtual" server. The NodeScan server network neatly hides all the complexity of this inter-server communication and the user does not need to be concerned about which server actually contains the data. When the file is requested the client connects directly to the server node which contains it and downloads it.

In more detail
Both the client and server components of NodeScan are written 100% in Java. Over time the number of services written for NodeScan should expand along with the number of deployment platforms, increasing the breadth and scope of the network. NodeScan supports all kinds of file types (not limited to only mp3 files). There is no centralized, "main" server and the system maintains a high degree of redundancy, matching or exceeding pure peer to peer networks. The NodeScan server is designed to operate alongside other kinds of Internet servers such as Web and FTP servers.
What is NodeScan for?
NodeScan is intended to be used by people to share and communicate. While the World Wide Web has been a great advancement, it is also sometimes intimidating and awkward for people who want to find specific information or share documents and files. Search engines and portals help but they do not alleviate the basic problem. The true power of the Internet is derived from the connections between computers and sites, however too often there is a fundamental lack of meaningful communication between them. They are like islands of information with the course between them left for us to navigate. This is causing the Internet to become more centralized. While there are millions of web sites there are less than 100 most people access most of the time.
The original raison d'etre of the Internet itself - to enable all users to be able to contribute and access network resources - is being hampered by the increasing difficulty to locate information.
NodeScan was designed to change that, to allow meaningful information to flow and become decentralized. It is built on the basic principle that information should be shared and be accessible from any point on the network. A network shouldn't depend on an individual or organization to map and organize it, instead it should be continually updating and organizing itself.
The NodeScan server is not just a peer-to-peer file server. It is an extensible platform, a foundation upon which any conceivable service can be added.
NodeScan was not designed to be an easy way for people to share files which they do not own or have the right to distribute. Instead we hope that NodeScan will be used by many kinds of groups and organizations, and allow individuals to find information, share and communicate to the fullest extent enabled by the network.
Potential applications
Main page | About NodeScan | Search | File Sharing | Chat | Audio Streaming | Download | Acknowledgements