Monday, October 19, 2009

Virtual private server

A virtual private server (VPS, also referred to as Virtual Dedicated Server or VDS) is a method of partitioning a physical server computer into multiple servers such that each has the appearance and capabilities of running on its own dedicated machine. Each virtual server can run its own full-fledged operating system, and each server can be independently rebooted.

The practice of partitioning a single server so that it appears as multiple servers has long been common practice in mainframe computers, but has seen a resurgence lately with the development of virtualization software and technologies for other architectures.

Overview

The physical server boots normally. It then runs a program that boots each virtual server within a virtualization environment (similar to an emulator). The virtual servers have no direct access to hardware and are usually booted from a disk image.

There are two kinds of virtualizations: software based and hardware based. In a software based virtualization environment, the virtual machines share the same kernel and actually require the main node's resources. This kind of virtualization normally has many benefits in a web hosting environment because of quota incrementing and decrementing in real time with no need of restarting the node. The main examples are Xen, Virtuozzo, Vserver, and OpenVZ (which is the open source and development version of Parallels Virtuozzo Containers).

In a hardware based virtualization, the virtualization mechanism partitions the real hardware resources. In typical implementations, no burst and/or realtime quota modification is possible; the limits are hard and can only be modified by restarting a virtual machine instance[citation needed]. This kind of environment is potentially more secure in the sense that it is less subject to "Quality of Service crosstalk" between VM instances[citation needed]; on the other hand, its security is typically dependent on the correctness of a larger and more complicated Trusted Computing Base[citation needed]. It is more commonly used in enterprise/commercial deployments[citation needed]. Examples include Microsoft Virtual Server, VMware ESX Server, and Xen.

[edit] Uses

Virtual private servers bridge the gap between shared web hosting services and dedicated hosting services, giving independence from other customers of the VPS service in software terms but at less cost than a physical dedicated server. As a VPS runs its own copy of its operating system, customers have superuser-level access to that operating system instance, and can install almost any software that runs on the OS. Certain software does not run well in a virtualized environment, including firewalls, anti-virus clients, and indeed virtualizers themselves; some VPS providers place further restrictions, but they are generally lax compared to those in shared hosting environments. Due to the number of virtualization clients typically running on a single machine, a VPS generally has limited processor time, RAM, and disk space.

Due to their isolated nature, VPSs have become common sandboxes for possibly-insecure public services or update testing. For example, a single physical server might have two virtual private servers running: one hosting the production-level (live) website, and a second which houses a copy of it. When updates to crucial parts of software need to be made, they can be tested in the second VPS, allowing for detailed testing to be conducted without requiring several physical servers.

Virtual private servers are also sometimes employed as honeypots, allowing a machine to deliberately run software with known security flaws without endangering the rest of the server. Multiple honeypots can be quickly set up via VPSs in this fashion.[1]

[edit] Virtual private server hosting

A growing number of companies offer virtual private server hosting, or virtual dedicated server hosting as an extension for Web hosting services. Some web hosting companies call a Virtual Private Server a Virtual Dedicated Server/Dynamic Dedicated Server or the other way around.

[edit] Managed Hosting

The hosting provider takes an active role in monitoring and administering your hosting services.

[edit] Unmanaged Hosting

The customer is left to monitor and administer their own server.

[edit] Unmetered Hosting

Similar to unmanaged hosting but a fixed bitrate is offered so that it is not possible to exceed a monthly budget.

[edit] Virtualization software

For some of the software packages commonly used to provide platform virtualization, see comparison of platform virtual machines

Clustered hosting

Clustered hosting is a type of web hosting that spreads the load of hosting across multiple physical machines ("nodes"), increasing availability and decreasing the chances of one service (for example FTP, or email) affecting another - for example web or database (e.g. MySQL). Many large websites run on clustered hosting solutions, for example, large discussion forums will tend to run using multiple front-end webservers with multiple back-end database servers.

Typically, most hosting infrastructures are based on the paradigm of using a single physical machine to host multiple hosted services, including web, database, email, FTP and others. A single physical machine is not only a single point of failure, but also has finite capacity for traffic, that in practice can be troublesome for a busy website or for a website that is experiencing transient bursts in traffic.

By clustering services across multiple hardware machines, and using load balancing you can eliminate single points of failure increasing availability of your website and other web services beyond that of ordinary single server hosting. A single server can require periodic reboots for software upgrades and the like, whereas in a clustered platform you can stagger the restarts such that the service is still available whilst still upgrading all necessary machines in the cluster.

Clustered hosting is similar to cloud hosting, in that the resources of many machines are available for a website to utilize on demand, making scalability a large advantage to a clustered hosting solution.

Reseller web hosting

Reseller hosting is a form of web hosting wherein the account owner has the ability to use his/her allotted hard drive space and bandwidth to host websites on behalf of third parties. The reseller purchases the host's services wholesale and then sells them to customers for a profit. A certain portion of hard drive and bandwidth is allocated to the reseller account. The reseller may rent a dedicated server from a hosting company, or resell shared hosting services. In the latter case, the reseller is simply given the permission to sell a certain amount of disk space and bandwidth to his own customers without renting a server from a web hosting company he signed for a reseller account with.

The typical web hosting reseller might be a web design firm, web developer or systems integrator who offers web hosting as an add-on service. Reseller hosting is also an inexpensive way for web hosting entrepreneurs to start a company. Most reseller hosting plans allow resellers to create their own service plans and choose their own pricing structure. In many cases, resellers are able to establish their own branding via customized control panels and name servers.

Reseller hosting does not require extensive knowledge of the technical aspects of web hosting. Usually, the data center operator is responsible for maintaining network infrastructure and hardware, and the dedicated server owner configures, secures, and updates the server. A reseller is responsible for interfacing with his/her own customer base, but any hardware, software and connectivity problems are typically forwarded to the server provider from whom the reseller plan was purchased. It should be noted that being a profitable reseller firm usually involves extensive advertising to get customers. While the monthly fees with major hosts are only a few dollars a month, it's a low margin business, and resellers must devote large advertising budgets to compete with established competitors. However, web hosting is one of the biggest online businesses, because every website needs hosting.

Resellers can set up and manage customer accounts via a web interface, usually point and click "Control Panels."

Well-known Control Panels List:


Dedicated hosting service

A dedicated hosting service, dedicated server, or managed hosting service is a type of Internet hosting in which the client leases an entire server not shared with anyone. This is more flexible than shared hosting, as organizations have full control over the server(s), including choice of operating system, hardware, etc. Server administration can usually be provided by the hosting company as an add-on service. In some cases a dedicated server can offer less overhead and a larger return on investment. Dedicated servers are most often housed in data centers, similar to colocation facilities, providing redundant power sources and HVAC systems. In contrast to colocation, the server hardware is owned by the provider and in some cases they will provide support for your operating system or applications.

Operating system support

Availability, price and employee familiarity often determines which operating systems are offered on dedicated servers. Variations of Linux (open source operating systems) are often included at no charge to the customer. Commercial operating systems include Microsoft Windows Server, provided through a special program called Microsoft SPLA. Red Hat Enterprise is a commercial version of Linux offered to hosting providers on a monthly fee basis. The monthly fee provides OS updates through the Red Hat Network using an application called yum. Other operating systems are available from the open source community at no charge. These include CentOS, Fedora Core, Debian, and many other Linux distributions or BSD systems FreeBSD, NetBSD, OpenBSD.

Support for any of these operating systems typically depends on the level of management offered with a particular dedicated server plan. Operating system support may include updates to the core system in order to acquire the latest security fixes, patches, and system-wide vulnerability resolutions. Updates to core operating systems include kernel upgrades, service packs, application updates, and security patches that keep server secure and safe. Operating system updates and support relieves the burden of server management from the dedicated server owner.

[edit] Bandwidth and connectivity

Bandwidth refers to the data transfer rate or the amount of data that can be carried from one point to another in a given time period (usually a second) and is often represented in bits (of data) per second (bit/s). For example, visitors to your server, web site, or applications utilize bandwidth as the traffic moves from your server to the Internet and vice versa. Connectivity refers to the “access providers” that supply bandwidth, or data transfer rate, through various connection points across a network or footprint to one or multiple data centers where dedicated servers are housed.

Bandwidth measurements are defined (per telecom standards) as the following:

  • First – 95th (measured using average bits and speed of transfer)
  • Second – Unmetered (measured in speed or bits)
  • Third – Total Transfer (measured in bytes transferred)

95th Method: line speed, billed on the 95th percentile, average or peak usage, refers to the speed in which data flows from the server or device. Line speed is measured in bits per second (or kilobits per second, megabits per second or gigabits per second).

Unmetered Method: The second bandwidth measurement is unmetered service where providers cap or control the “top line” speed for a server. Top line speed in unmetered bandwidth is the total Mbit/s allocated to the server and configured on the switch level. For example, if you purchase 10 Mbit/s unmetered bandwidth, the top line speed would be 10 Mbit/s. 10 Mbit/s would result in the provider controlling the speed transfers take place while providing the ability for the dedicated server owner to not be charged with bandwidth overages. Unmetered bandwidth services usually incur an additional charge.

Total Transfer Method: Some providers will calculate the Total Transfer, the measurement of actual data leaving and arriving, measured in bytes. Measurement between providers varies, though it is either the total traffic in, the total traffic out, whichever is the greater or the sum of the two.

One of the reasons for choosing to outsource dedicated servers is the availability of high powered networks from multiple providers. As dedicated server providers utilize massive amounts of bandwidth, they are able to secure lower volume based pricing to include a multi-provider blend of bandwidth. To achieve the same type of network without a multi-provider blend of bandwidth, a large investment in core routers, long term contracts, and expensive monthly bills would need to be in place. The expenses needed to develop a network without a multi-provider blend of bandwidth does not make sense economically for hosting providers.

Many dedicated server providers include a service level agreement based on network uptime. Some dedicated server hosting providers offer a 100% uptime guarantee on their network. By securing multiple vendors for connectivity and using redundant hardware, providers are able to guarantee higher uptimes; usually between 99-100% uptime if they are a higher quality provider. One aspect of higher quality providers is they are most likely to be multi-homed across multiple quality uplink providers, which in turn, provides significant redundancy in the event one goes down in addition to potentially improved routes to destinations.

Bandwidth consumption over the last several years has shifted from a per megabit usage model to a per gigabyte usage model. Bandwidth was traditionally measured in line speed access that included the ability to purchase needed megabits at a given monthly cost. As the shared hosting model developed, the trend towards gigabyte or total bytes transferred, replaced the megabit line speed model so dedicated server providers started offering per gigabyte.

Prominent players in the dedicated server market offer large amounts of bandwidth ranging from 500 gigabytes to 3000 gigabytes using the “overselling” model. It is not uncommon for major players to provide dedicated servers with 1Terabyte (TB) of bandwidth or higher. Usage models based on the byte level measurement usually include a given amount of bandwidth with each server and a price per gigabyte after a certain threshold has been reached. Expect to pay additional fees for bandwidth overage usage. For example, if a dedicated server has been given 3000 gigabytes of bandwidth per month and the customer uses 5000 gigabytes of bandwidth within the billing period, the additional 2000 gigabytes of bandwidth will be invoiced as bandwidth overage. Each provider has a different model for billing. As of yet, no industry standards have been set.

[edit] Management

To date, no industry standards have been set to clearly define the management role of dedicated server providers. What this means is that each provider will use industry standard terms, but each provider will define them differently. For some dedicated server providers, fully managed is defined as having a web based control panel while other providers define it as having dedicated system engineers readily available to handle all server and network related functions of the dedicated server provider.

Server management can include some or all of the following:

Dedicated hosting server providers define their level of management based on the services they provide. In comparison, fully managed could equal self managed from provider to provider.

Administrative maintenance of the operating system, often including upgrades, security patches, and sometimes even daemon updates are included. Differing levels of management may include adding users, domains, daemon configuration, or even custom programming.

Dedicated server hosting providers may provide the following types of server managed support:

  • Fully Managed - Includes monitoring, software updates, reboots, security patches and operating system upgrades. Customers are completely hands-off.
  • Managed - Includes medium level of management, monitoring, updates, and a limited amount of support. Customers may perform specific tasks.
  • Self Managed - Includes regular monitoring and some maintenance. Customers provide most operations and tasks on dedicated server.
  • Unmanaged - Little to no involvement from service provider. Customers provide all maintenance, upgrades, patches, and security.

Note: The provider will continue to maintain security on the network regardless of support level.

[edit] Security

Dedicated hosting server providers utilize extreme security measures to ensure the safety of data stored on their network of servers. Providers will often deploy various software programs for scanning systems and networks for obtrusive invaders, spammers, hackers, and other harmful problems such as Trojans, worms, eggdrops and crashers (Sending multiple connections). Linux and Windows use different software for security protection.

[edit] Software

Providers often bill for dedicated servers on a fixed monthly price to include specific software packages. Over the years, software vendors realized the significant market opportunity to bundle their software with dedicated servers. They have since started introducing pricing models that allow dedicated hosting providers the ability to purchase and resell software based on reduced monthly fees.

Microsoft offers software licenses through a program called the Service Provider License Agreement. The SPLA model provides use of Microsoft products through a monthly user or processor based fee. SPLA software includes the Windows Operating System, Microsoft SQL Server, Microsoft Exchange Server, Microsoft SharePoint and shoutcast hosting, and many other server based products.

Dedicated Server Providers usually offer the ability to select the software you want installed on a dedicated server. Depending on the overall usage of the server, this will include your choice of operating system, database, and specific applications. Servers can be customized and tailored specific to the customer’s needs and requirements.

Other software applications available are specialized web hosting specific programs called control panels. Control panel software is an all inclusive set of software applications, server applications, and automation tools that can be installed on a dedicated server. Control panels include integration into web servers, database applications, programming languages, application deployment, server administration tasks, and include the ability to automate tasks via a web based front end.

Most dedicated servers are packaged with a control panel. Control panels are often confused with management tools, but these control panels are actually web based automation tools created to help automate the process of web site creation and server management. Control panels should not be confused with a full server management solution by a dedicated hosting provider.

Limitations

Many providers do not allow IRC (bots, clients or daemons). This is due to rogue IRC users triggering DDoS attacks against the provider, which may overwhelm their networks, lowering service quality for all customers.

  • Adult content is disallowed by many providers as it may either be of questionable legality or consume large amounts of bandwidth.
  • Copyright violation Hosting copyrighted material of which you do not own the copyright to is almost always against the terms of service of all hosting companies.

Shared web hosting service

A shared web hosting service or virtual hosting service or derive host refers to a web hosting service where many websites reside on one web server connected to the Internet. Each site "sits" on its own partition, or section/place on the server to keep it separate from other sites. This is generally the most economical option for hosting as many people share the overall cost of server maintenance.

Description

The hosting service must include system administration since it is shared by many users; this is a benefit for users who do not want to deal with it, but a hindrance to power users who want more control. In general shared hosting will be inappropriate for users who require extensive software development outside what the hosting provider supports. Almost all applications intended to be on a standard web server work fine with a shared web hosting service. But on the other hand, shared hosting is cheaper than other types of hosting such as dedicated server hosting. Shared hosting usually has usage limits and most hosting providers have extensive reliability features in place. [1]


Shared hosting typically uses a web-based control panel system, such as cPanel, Ensim, DirectAdmin, Plesk, InterWorx, H-Sphere or one of many other control panel products. Most of the large hosting companies use their own custom developed control panel. Control panels and web interfaces can cause controversy however, since web hosting companies sometimes sell the right to use their control panel system to others. Attempting to recreate the functionality of a specific control panel is common, which leads to many lawsuits over patent infringement.[2]

In shared hosting, the provider is generally responsible for managing servers, installing server software, security updates, technical support, and other aspects of the service. Most servers are based on the Linux operating system and LAMP (software bundle), which is driven by the low cost of open source software. But some providers offer Microsoft Windows-based or FreeBSD-based solutions. For example, the Plesk and Ensim control panels are both available for two operating systems, Linux and Windows. Versions for either OS have very similar interfaces and functionality, with the exception of OS-specific differences (for example: ASP.NET, SQL Server and Access support under Windows; MySQL under Linux).

There are thousands of shared hosting providers in the United States alone. They range from mom-and-pop shops and small design firms to multi-million-dollar providers with hundreds of thousands of customers. A large portion of the shared web hosting market is driven through pay per click (PPC) advertising or Affiliate programs.

Shared web hosting can also be done privately by sharing the cost of running a server in a colocation centre; this is called cooperative hosting.

[edit] Implementation

Shared web hosting can be accomplished in two ways: name-based and IP-based, although some control panels allow a mix of name-based and IP-based on the one server.

[edit] Name-based

In name-based virtual hosting, also called shared IP hosting, the virtual hosts serve multiple hostnames on a single machine with a single IP address.

When a web browser requests a resource from a web server using HTTP/1.1 it includes the requested hostname as part of the request. The server uses this information to determine which web site to show the user.

[edit] IP-based

In IP-based virtual hosting, also called dedicated IP hosting, each virtual host has a different IP address. The web server is configured with multiple physical network interfaces, or virtual network interfaces on the same physical interface. The web server software uses the IP address the client connects to in order to determine which web site to show the user. The primary reason for a site to use a dedicated IP is to be able to use its own SSL certificate rather than a shared certificate.

[edit] Disadvantages

Name-based virtual hosts have some disadvantages:

  • They do not properly support secure websites (HTTPS). All name-based virtual hosts using the same IP address must share the same digital certificate. This is because the SSL/TLS handshake takes place before the hostname is sent to the server. Thus the server doesn't know which encryption key to use when the connection is made. An extension to the TLS protocol, part of RFC 3546 - Transport Layer Security (TLS) Extensions, specifies a way for the client to provide the requested host name as part of the handshake, but it is not yet widely implemented. Some of the shared hosting providers require their customers to get Unique IP in order to properly set up HTTPS.
  • If the Domain Name System is malfunctioning, it is harder to use a name-based virtually-hosted website. Ordinarily, in this case, the user could fall back to using the IP address to contact the system, as in http://192.0.2.0/ (invalid IP for example only). However, the web browser doesn't know what hostname to send to the server, but a name-based virtual host requires it. In this case, the default web host is sent back to the browser for that IP address. Therefore most hosters offer an alternative access method like http://192.0.2.0/~virtualhostname to provide access in such cases.
  • They will not work with browsers that do not send the hostname as part of requests. This is true for older HTTP/1.0 browsers that have not retrofitted the host field feature from the HTTP/1.1 protocol. (The "Host" header that distinguishes between various DNS names sharing a single IP address was optional in HTTP/1.0; it is mandatory in HTTP/1.1, issued in 1999 as RFC 2616.) Since nearly every webbrowser that is currently used supports the HTTP/1.1 protocol and thus also virtual hosting, this is not a real issue.
  • Improperly configured file permissions with shared file systems might give other (compromised) users or processes system-wide access to these files, such as credential files for database access or modification of existing files.

Methods of giving out web hosting

A few methods of giving out Free Webhosting to people by Webhosts

[edit] Instant Activation

Due to the risks of illegal, inappropriate, and abusive website, hosts with instant activation usually give very little storage space and monthly bandwidth. Other restrictions will likely also be in effect. The webhosts usually either require the users' web pages to display their banner ads, textlink ads, or popups; or else the users' files to be uploaded through a web-based file manager that display ads to the user uploading files.

Hosts with instant activation are often abused, such as link spamming.

[edit] Post for Hosting

Some free hosts require posting in a forum. Forum-based free hosting requires users to either reach a certain amount of posts before getting a free hosting account, or be an active contributor in the forum. Forum-based free hosting often work on a system of points where posts give points to a user and can be used as credits toward getting a hosting account or more resources. Typically, the forum where users have to post contains advertising as the hosts way of making a profit.

[edit] Forum applications

This method is popular, as the hosts can decide which applications to deny and allow. This is common when a popular forum has free hosting as an add-on service, rather than the other way around.

[edit] File hosting on webhosts

Most free web hosts discourage using their services for file or image hosting only, with no web page, since advertising is displayed on the web page. Because of this, hotlinking is usually disallowed on free hosts. Some free webhosts will also disallow files over a certain size (for example, 5 MB). However, there are free file hosting services which allow large files as well as hotlinking.

[edit] Co-branding and resellers

Some services offer co-branding services. These let you brand fixed plans with your own company. Other services, offer WHM or panel reselling. This allows the client to develop his or her own web hosting plans and business

Free web hosting service

A free web hosting service is a web hosting service that is free, usually advertisement-supported. Free web hosts will usually provide a subdomain (yoursite.example.com) or a directory (www.example.com/~yourname). In contrast, paid web hosts will usually provide a second-level domain along with the hosting (www.yourname.com). Many free hosts do allow use of separately-purchased domains. Rarely, a free host may also operate as a domain name registrar.

Profitting from free webhosting

The majority of the hosting companies use free hosting to introduce their services, and as an entry point to their more expensive offerings. Generally they recoup their costs in one of a few ways:

  • Advertising - Selling online advertising on the customer sites is generally considered a fair trade - the reasoning is that high traffic sites are more expensive to host, but the additional traffic allows for additional ad impressions therefore covering the cost. For the web master, it can be a good trade if the advertising is of good quality and non-competitive. This is one of the main reasons that businesses do not use free hosting for their website. The majority of free hosting companies use this method.
  • Referrals - Using a simple form of viral marketing, these providers rely on the users to spread the offer. The ratio of free to paid accounts is known, and by having each free user refer a number of friends, the hosting provider is able to get enough paid accounts to cover the cost.
  • Resell Hosting - This is where someone starts up a hosting company, attracts lots of visitors, then sells the hosting company to someone else once it can no longer support itself. Once sold, this individual uses the money to start up multiple hosting ventures and sells each in turn.

Some hosting companies are using hybrid approaches that mix these tactics