Grid computing
Grid computing is a form of distributed computing whereby a "super and virtual computer" is composed of a cluster of networked, loosely-coupled computers, acting in concert to perform very large tasks. This technology has been applied to computationally-intensive scientific, mathematical, and academic problems through volunteer computing, and it is used in commercial enterprises for such diverse applications as drug discovery, economic forecasting, seismic analysis, and back-office data processing in support of e-commerce and web services.
What distinguishes grid computing from typical cluster computing systems is that grids tend to be more loosely coupled, heterogeneous, and geographically dispersed. Also, while a computing grid may be dedicated to a specialized application, it is often constructed with the aid of general purpose grid software libraries and middleware.
Operating systems
Home servers can run any operating system; some can run without graphical user interfaces (which makes more resources available for other tasks), and can be administered remotely through a command shell, or graphically through programs such as VNC, Webmin, or many others.
Users of Microsoft Windows may purchase additional copies (around US$85 to ~$400 and beyond) to use on a home server, or opt for free, open source solutions such as Linux or BSD UNIX that can be installed on any number of machines with minimal (if any) license restrictions.
Home server scenarios
Most home networks do not have or need servers, but hobbyists find good use for them. Most of the home servers today do not offer any services to the public internet, and operate as simple media-oriented devices. Many are simply glorified Network Attached Storage devices and other consumer devices to integrate TVs and gaming consoles with the PC and sometimes the internet.
Centralized storage
Home servers often act as network-attached storage providing the major benefit that all users' files can be centrally and securely stored, with flexible permissions applied to them. Such files can be easily accessed 24/7 from any other system on the network, provided the correct credentials are supplied. This also applies to shared printers.
Such files can also be shared over the internet to be accessible from anywhere in the world using services such as FTP.
Media serving
Home servers are often used to serve multi-media content, including photos, music, and video to other devices in the household (and even to the Internet; see Place Shifting and Orb). Using standard protocols such as DLNA or proprietary systems such as iTunes users can access their media stored on the home server from any room in the house. Windows XP Media Center Edition and Windows Vista can act as a home server, supporting a particular type of media serving that streams the interactive user experience to Media Center Extenders including the Xbox 360.
A typical MythTV menu.
On a Linux server, there are many free, open-source, fully-functional, all-in-one software solutions for media serving available. One such program is LinuxMCE, which allows other devices to boot off a hard drive image on the server, allowing them to become appliances such as set-top boxes. Asterisk, Xine, MythTV (another media serving solution), VideoLAN, SlimServer, and many other open-source projects are fully integrated for a seamless home theater/automation/telephony experience. Such services, if offered in a proprietary package, would cost around $100,000 (including hardware and tailored household programming)[1].
Because a server is typically always on, it is often a more logical choice to put a TV tuner or radio tuner for recording broadcasts into a server, than it is to use e.g. a desktop for recording, as it allows recording to be scheduled at any time.
On an Apple Macintosh server (or peer-to-peer node), Front Row may be used.
Remote access
The Webmin Interface as it would appear in a standard browser.
A home server can be used to provide remote access into the home from devices on the Internet, using remote desktop software and other remote administration software. For example, Windows Home Server provides access to files stored on the home server via a web interface as well as access to Remote Desktop sessions on PCs in the house. Enthusiasts often use VPN technologies as well.
On a Linux server, two popular tools are (among many) VNC and Webmin. VNC allows clients to remotely view a server GUI desktop as if the user was physically sitting in front of the server. A GUI need not be running on the server console for this to occur; there can be multiple 'virtual' desktop environments open at the same time. Webmin allows users to control many aspects of server configuration and maintenance all from a simple web interface. Both can be configured to be accessed from anywhere on the internet.
Servers can also be accessed remotely using the command line-based Telnet and SSH protocols.
Web serving
Some users choose to run a web server in order to share files easily and publicly (or privately, on the home network). Others set up web pages and serve them straight from their home, although this may be in violation of some ISPs terms of service[2]. Sometimes these webservers are run on a nonstandard port in order to avoid the ISP's port blocking. The most widely used web server is the open source Apache daemon. It is easily configured, flexible, free, and runs on most recent operating systems.
Many other webservers are available; see Comparison of web servers.
Web proxy
Some networks have a HTTP proxy which can be used to speed up web access when multiple users visit the same websites, and to get past blocking software while the owner is using the network of some institution that might block certain sites. Public proxies are often slow and unreliable and so it is worth the trouble of setting up one's own private proxy.
Some proxies can be configured to block websites on the local network from being viewed if it is set up as a transparent proxy.
E-mail
Many home servers also run e-mail servers that handle e-mail for the owner's domain name. The advantages are having much bigger mailboxes and maximum message size than most commercial e-mail services. Access to the server, since it is on the local network is much faster than using an external service. This is also good for privacy as e-mails don't reside on an off-site server where they could possibly be viewed by disgruntled administrators.
BitTorrent
Home servers are ideal for utilizing the BitTorrent protocol for downloading and seeding files as some torrents can take days, or even weeks to complete and perform better on an uninterrupted connection. There are many command-line based clients such as rTorrent and web-based ones such as TorrentFlux available for this purpose. BitTorrent also makes it easier for those with limited bandwidth to distribute large files over the internet.
Gopher
An uncommon and outdated service is the Gopher protocol that came about in the early 1990s before HTTP. Many of the remaining gopher servers are run off home servers utilizing PyGopherd and the Bucktooth gopher server.
Home automation
Home automation requires a device in the home that is available 24/7. Often such home automation controllers are run on a home server.
Security monitoring
Relatively low cost CCTV DVR solutions are available that allow recording of video cameras to a home server for security purposes. The video can then be viewed on PCs or other devices in the house.
A series of cheap Universal serial bus-based webcams can be connected to a home server as a makeshift CCTV system. Optionally these images and video streams can be made available over the internet using standard protocols. This solution is usually cheaper, although not as compact as stand-alone IP cameras.
Family applications
Home servers can act as a host to family oriented applications such as a family calendar, to-do lists, and message boards.
IRC and instant messaging
Because a server is always on, an IRC client or IM client running on it will be highly available to the Internet. This way, the chat client will be able to record activity that occurs even while the user is not at the computer, e.g. asleep or at work or school. Textual clients such as Irssi and tmsnc can be detached using GNU Screen for example, and graphical clients such as Pidgin can be detached using xmove. Home servers can also be used to run personal jabber servers and IRC servers as these protocols can support a large number of users on very little bandwidth
Online gaming
Some MMORPGs such as Continuum, Tremulous and World of Warcraft have server software available which users may download and use to run their own private game server. Some of these servers are password protected, so only a selected group of people such as guild members can gain access to the server. Others are open for public use and may move to colocation or other forms of paid hosting if they gain a large number of players.
See also
Operating systems
BSD UNIX
Various Linux distributions - some are specifically made for home servers
Mac OS X
Windows Home Server and other variants of Microsoft Windows
Generally, Windows Operating Systems are the most commonly used for Home Servers. They provide a platform that can provide access to the network, upload and download files, host websites, share media files and data. Since the Home Server is on 24/7, there is the risk that the system can be hacked. This is why third party firewall software is required as the built-in Windows one-way firewall was not designed for Home Server use.
Technologies
Client-server architecture
File server
Home computer
Home network
Network-attached storage
Residential gateway
Media serving software
Front Row - Mac OS X
LinuxMCE
MythTV
Server software
Comparison of web servers
List of mail servers
List of FTP server software
List of Jabber server software
Samba (software)

0 comments on "Grid computing"