¿Por qué el protocolo HTTP se llama protocolo sin estado?

HTTP Protocol significa Hyper Text Transfer Protocol, también es un protocolo de capa de aplicación para WWW. Es el protocolo utilizado para transmitir información de la World Wide Web (WWW). El protocolo HTTTP es un protocolo sin estado y sin conexión. HTTP se llama como un protocolo sin estado porque cada comando se ejecuta de forma independiente, sin ningún conocimiento de las solicitudes que se ejecutaron antes. Es el protocolo utilizado para la web. Se basa en un paradigma de solicitud / solicitud. En este protocolo, la comunicación generalmente se realiza a través de un protocolo TCP / IP.

Un protocolo sin estado no requiere que el servidor retenga información o estado sobre cada usuario durante la duración de múltiples solicitudes.

Pero algunas aplicaciones web pueden tener que rastrear el progreso del usuario de una página a otra, por ejemplo, cuando se requiere un servidor web para personalizar el contenido de una página web para un usuario. Las soluciones para estos casos incluyen:

• el uso de cookies HTTP.

• sesiones del lado del servidor,

• variables ocultas (cuando la página actual contiene un formulario), y

• Reescritura de URL utilizando parámetros codificados por URI, por ejemplo, /index.php?session_id=some_unique_session_code.

Lo que hace que el protocolo sea apátrida es que el servidor no está obligado a rastrear el estado en múltiples solicitudes, no es que no pueda hacerlo si lo desea. Esto simplifica el contrato entre el cliente y el servidor, y en muchos casos minimiza la cantidad de datos que necesitan ser transferidos. E Internet es un entorno de desarrollo sin estado “a menudo se usa. Esto simplemente significa que el HTTP que es la columna vertebral de la Web no puede retener un recuerdo de la identidad de cada cliente que se conecta a un sitio web y, por lo tanto, trata cada solicitud de una página web como una conexión única e independiente, sin relación alguna con las conexiones que la precedieron.

Métodos de solicitud HTTP:

1) Método GET: El método Get se usa para obtener los datos del servidor. El método Get agrega los parámetros pasados ​​como cadena de consulta a una URL, en forma de pares clave-valor. por ejemplo, si un parámetro es name = Williams, esta cadena se agregará a la URL. Por defecto, el método es Get.

2) Método POST: El método post se utiliza para enviar datos al servidor. En el método de publicación, la cadena de consulta se agrega a lo largo del objeto de solicitud, no se agregan en la URL, por lo que los parámetros se transfieren en forma oculta.

3) Método HEAD: cuando un usuario quiere saber sobre los encabezados, como los tipos MIME, charset, Content-Length, entonces usamos el método Head. Con esto no se devuelve el contenido del cuerpo.

Estos tres son métodos comúnmente utilizados de jsp, mientras que los métodos Get y Post son los más utilizados. Hay más métodos de protocolos http que rara vez se utilizan, ya que se han proporcionado aquí para su conocimiento.

4) Método de RASTREO: El rastreo en el recurso jsp devuelve el contenido del recurso. Pide un bucle de retorno del mensaje de solicitud, para que el usuario pueda ver lo que se recibe del otro lado.

5) Método DELETE: se utiliza para eliminar los recursos, archivos en la URL solicitada

6) Método OPTIONS: enumera los métodos Http a los que puede responder la cosa en la URL solicitada.

7) Método PUT: coloca la información adjunta en la URL solicitada.

8) Método CONNECT: se conecta con el propósito de hacer túneles.

El servidor envía los archivos solicitados a los clientes sin almacenar ninguna información de estado sobre el cliente. Si un cliente en particular solicita el mismo objeto dos veces en un período de unos pocos segundos, el servidor no responde diciendo que acaba de entregar el objeto al cliente, sino que el servidor reenvía el objeto, ya que ha olvidado por completo lo que hizo anteriormente. . Dado que un servidor HTTP no mantiene información sobre los clientes, se dice que HTTP es un protocolo sin estado.

Algunas de las razones por las cuales HTTP se llama protocolo sin estado son:

  • HTTP tiene Cookies HTTP, que permiten al servidor rastrear el estado del usuario, el número de conexiones, la última conexión, etc.
  • Tiene conexiones persistentes y se pueden enviar varias solicitudes a través de la misma conexión TCP.
  • Se pueden enviar múltiples solicitudes a través de la misma conexión HTTP y el servidor no ofrece ningún significado especial para que lleguen a través del mismo socket. A través del rendimiento inteligente, se pretende minimizar el tiempo / ancho de banda que de otra manera se gastaría restablecer una conexión para cada solicitud.

HTTP es un protocolo sin estado, lo que significa que una vez que finaliza la transacción, también se pierde la conexión entre el navegador y el servidor.

Si HTTP obtiene el protocolo completo del estado, no será inútil. El navegador utiliza una conexión única para comunicarse con el servidor web para varias solicitudes dadas a la aplicación web, lo que da la oportunidad a la ventana del navegador de conectar las conexiones entre la ventana del navegador y los servidores web para mantenerlos en estado inactivo durante mucho tiempo. Esto podría resultar en alcanzar las conexiones máximas del servidor web a pesar de que la mayoría de las conexiones en los clientes están inactivas.

HTTP se llama un protocolo sin estado porque cada comando se ejecuta de forma independiente, sin ningún conocimiento de los comandos anteriores. Esta es la razón principal por la que es difícil implementar sitios web que reaccionen de manera inteligente a la entrada del usuario. Esta deficiencia de HTTP se está abordando en una serie de nuevas tecnologías, incluidas ActiveX, Java, JavaScript y cookies.

HTTP es un protocolo sin estado, en otras palabras, el servidor olvidará todo lo relacionado con el estado del cliente / navegador. Debido a que un protocolo sin estado no requiere que el servidor retenga información de la sesión o el estado de cada socio de comunicaciones durante la duración de múltiples solicitudes. HTTP es un protocolo sin estado, lo que significa que la conexión entre el navegador y el servidor se pierde una vez que finaliza la transacción.

Porque HTTP no mantiene ninguna sesión. Cada solicitud de un usuario para una página web o URL da como resultado que se sirvan las páginas solicitadas, pero sin que el servidor Web ( HTTP ) recuerde la solicitud más adelante. En otras palabras, no hay continuidad registrada. Por lo tanto, HTTP utiliza cookies para cambiarlo a un protocolo con estado .

Es porque a la llegada de las solicitudes http, el servidor no necesita atacar ningún significado especial o manejo para el mismo. Http es la solicitud independiente y tiene que llevar suficiente información por sí misma para llevar a cabo cualquier funcionalidad requerida.

En general, debido a su funcionalidad como un proceso o transacción independiente que no está relacionado con el servidor, se llama protocolo sin estado.

El protocolo HTTP es un protocolo sin estado porque no mantiene ninguna información de estado de ningún usuario. Es una entidad sin estado.

HTTP es un protocolo sin estado, lo que significa que la conexión entre el navegador y el servidor se pierde una vez que finaliza la transacción.