Server hog
   HOME

TheInfoList



OR:

{{citations needed, date=November 2013 A server hog is a user, program or system that places excessive load on a
server Server may refer to: Computing *Server (computing), a computer program or a device that provides functionality for other programs or devices, called clients Role * Waiting staff, those who work at a restaurant or a bar attending customers and su ...
such that the server performance as experienced by other clients is degraded, or such that the server itself is so heavily loaded that it fails to perform routine housekeeping for its own maintenance.


History

In the early years of
time-sharing In computing, time-sharing is the sharing of a computing resource among many users at the same time by means of multiprogramming and multi-tasking.DEC Timesharing (1965), by Peter Clark, The DEC Professional, Volume 1, Number 1 Its emergence a ...
computer systems in the 1960s it was common for a single institutional mainframe to control many interactive terminals. In such an environment server
lag Lag, or similar, may refer to: Lag * Łąg, Poland * Lag (company), a French guitar maker * Lag (cue sports), a brief pre-game competition to determine which player will go first * Latency (engineering), a slower response time in computing, commu ...
is acutely perceived. Furthermore, in many operating environments, scarce server resources such as CPU-seconds were often metered and charged against the account of the user running the program. An unintentional server hog could prove extremely costly in financial terms. These programs were often called run-away programs or endless loops.


Resource contention

Server performance has many dimensions. Any subsystem that becomes excessively loaded can compromise the performance of other clients contending for that subsystem. Common forms of hardware contention include CPU cycles, interrupt latency, I/O bandwidth, available system memory, or aggregate system memory bandwidth. At the software level, contention can arise for buffers, queues, spools, or
page table A page table is the data structure used by a virtual memory system in a computer operating system to store the mapping between virtual addresses and physical addresses. Virtual addresses are used by the program executed by the accessing process, ...
s.


Known hogs

It is an accepted practice that servers are appropriately sized by system administrators for the workload (or mixture of workloads) expected, and server performance is closely monitored to establish performance baselines. The server load might include well known server hogs, such as system backup. These tasks are generally scheduled for time periods of light demand, such as in the very early hours on a Sunday morning, with an accepted administrative policy to discourage or prohibit other demands on the server during those time periods.


Unexpected hogs

More often, the term server hog is used to designate an unusual load condition where the server performance falls short of the culturally accepted baseline. A common scenario in the early years of computing was an overload condition known as thrashing where the aggregate server performance becomes severely degraded, such as when two departments of a large company attempt to run a heavy report concurrently on the same mainframe. In such a situation, the designation of the server hog becomes a political matter of pointing fingers, as the termination of either long-running report would restore the server to normal performance.


Internet era

In the
internet The Internet (or internet) is the global system of interconnected computer networks that uses the Internet protocol suite (TCP/IP) to communicate between networks and devices. It is a '' network of networks'' that consists of private, pub ...
era, the nature of server loads greatly changed, as the clients became increasingly dispersed geographically, and often increasingly anonymous, as for example, any member of the public with internet access can request a web server in any part of the world to deliver a web page. In this context, a server hog most commonly designates a malicious server hog—a program written expressly for the purpose of overloading a remote server with excessive requests or excessively difficult requests (such as complex search). Use of a deliberate server hog is known as a
denial-of-service attack In computing, a denial-of-service attack (DoS attack) is a cyber-attack in which the perpetrator seeks to make a machine or network resource unavailable to its intended users by temporarily or indefinitely disrupting services of a host connect ...
, a behaviour exhibited by many
viruses A virus is a submicroscopic infectious agent that replicates only inside the living cells of an organism. Viruses infect all life forms, from animals and plants to microorganisms, including bacteria and archaea. Since Dmitri Ivanovsky's 1 ...
,
worms Worms may refer to: *Worm, an invertebrate animal with a tube-like body and no limbs Places *Worms, Germany, a city **Worms (electoral district) *Worms, Nebraska, U.S. *Worms im Veltlintal, the German name for Bormio, Italy Arts and entertainme ...
and
trojan horses The Trojan Horse was a wooden horse said to have been used by the Greeks during the Trojan War to enter the city of Troy and win the war. The Trojan Horse is not mentioned in Homer's ''Iliad'', with the poem ending before the war is concluded, ...
. It is also possible for a petulant or vindictive computer user to manually overload a remote server by unleashing a crap flood.


Bots

A special case is that of a run-away bot, a program that was designed to be helpful by automating a drudgerous task, but due to poor programming or poorly understood circumstances, goes out of control and hammers a server unceasingly at a high rate. A common case is a
web spider A Web crawler, sometimes called a spider or spiderbot and often shortened to crawler, is an Internet bot that systematically browses the World Wide Web and that is typically operated by search engines for the purpose of Web indexing (''web spid ...
which accesses too many pages on a web server too quickly at the expense of the server's intended audience.


References

Scheduling (computing)