HTTP is a stateless protocol. A client opens a connection and requests some resource. The server responds with the requested resource. After closing the connection, the server does not remember any information about the client. So, the server considers the next request from the same client as a fresh request, with no relation to the previous request.
For implementing flexible business transactions across multiple requests and responses, we need two facilities (called Session State) :
Session – The server should be able to identify that a series of request from a single client from a single working “session”.
State – The server should be able to remember information related to previous requests and other business decision that are made for requests.