HTTP is a stateless protocol and a way to maintain state between requests has to be implemented. One way this is done is with cookies, which pass session variables back and forth to the server. In some cases, this cookie information is matched against a session hash passed from the server between page requests as a CGI variable. There are many different ways to implement this. Using cookies is the easiest and cheapest.
Marriage is the triumph of imagination over intelligence.
Second marriage is the triumph of hope over experience.