HTTP is a stateless protocol: it provides no way for a server to recognize that a sequence of requests are all from the same client. Privacy advocates may consider this a feature, but it causes problems because many web applications are not stateless. The shopping cart application is a classic example, a client can put items in his virtual cart, accumulating them until he checks out several page requests later. Other examples include sites that offer stock brokerage services or interactive data mining.
The HTTP state problem can best be understood if you imagine an online chat forum where you are the guest of honor. Picture dozens of chat users, all conversing with you at the same time. They are asking you questions, responding to your questions, and generally making you wish you had taken that typing course back in high school. Now imagine that when each participant writes to you, the chat forum does not tell you who is speaking. You only see a series of questions and statements mixed in with each other. In this kind of forum, the best you can do is hold simple conversations, perhaps answering direct questions. If you try to do anything more, such as ask someone a question in return, you will not necessarily know when the answer comes back. This is exactly the HTTP state problem. The HTTP server sees only a series of requests and needs extra help to know exactly who is making a request.
1) Your Phone rings
2) Kate: Can I have Jim's number.
3) Receiver: His number is 555-1234
4) Your phone rings and you say hello
5) Kate: Can I have Sue's number?