El protocolo de red hermano de código pequeño desde la entrada hasta el principio subyacente MJ Great God

1. Comprender los conceptos básicos de la Web y la red. La
familia de protocolos TCP / IP se puede dividir en las siguientes cuatro capas según el nivel:

  1. La capa de aplicación
    determina las actividades de comunicación cuando se brindan servicios de aplicación a los usuarios. Hay varios servicios de aplicación generales almacenados previamente en el conjunto de protocolos TCP / IP. Por ejemplo, los servicios FTP (Protocolo de transferencia de archivos) y DNS (Sistema de nombres de dominio) son dos de ellos, HTTP El protocolo también está en esta capa.

  2. Capa de transporte
    Proporciona transmisión de datos entre dos computadoras en una conexión de red para aplicaciones de capa superior. Hay dos protocolos diferentes en la capa de transporte: TCP (Protocolo de control de transmisión) y UDP (Protocolo de datagramas de usuario)

  3. La capa de red se
    utiliza para procesar los paquetes de datos que fluyen en la red. El paquete de datos es la unidad de datos más pequeña de la red. Esta capa especifica la ruta (la llamada ruta de transmisión) para llegar a la computadora de la otra parte y transmitir el paquete de datos a la otra parte. Cuando se transmite con la otra computadora a través de varias computadoras o dispositivos de red, la función de la capa de red es seleccionar una ruta de transmisión entre muchas opciones.

  4. La capa de enlace se
    utiliza para procesar la parte de hardware de la red de conexión, incluido el sistema operativo de control, los controladores de dispositivos de hardware, las NIC, las fibras ópticas y otras partes físicamente visibles (incluidos los conectores y todos los medios de transmisión). La categoría de hardware se encuentra en la capa de enlace Dentro del ámbito de actuación.

Cuando se utiliza el conjunto de protocolos TCP / IP para la comunicación de red, se comunicará con la otra parte en un orden jerárquico. El remitente baja de la capa de aplicación y el receptor sube a la capa de aplicación. Tome el cliente del remitente en la capa de aplicación ( Protocolo HTTP) Envíe una solicitud HTTP para ver una determinada página web como ejemplo, como se muestra en la siguiente figura:
Proceso de comunicación de red HTTP

Cuando el remitente transmita datos entre capas, se marcará con la información del encabezado de la capa cada vez que pase por ella. Por el contrario, cuando el extremo receptor transmita datos entre capas, colocará la información correspondiente. Se elimina la primera parte Este método de empaquetar información de datos se llama encapsulación.
El protocolo IP responsable de la transmisión: la función es enviar varios paquetes de datos a la otra parte, que indica la dirección a la que está asignado el nodo, y la dirección MAC se refiere a la dirección fija a la que pertenece la tarjeta de red. La comunicación entre IPs depende de la dirección MAC. En la red, Es raro que las dos partes que se comunican estén en la misma red de área local. Por lo general, pueden conectarse entre sí mediante la transferencia de varias computadoras y dispositivos de red. Durante la transferencia, la dirección MAC del dispositivo de transferencia de la siguiente estación se utilizará para buscar el siguiente destino de transferencia. , Utilizará el protocolo ARP (ARP es un protocolo utilizado para resolver direcciones, y la dirección MAC correspondiente se puede recuperar de acuerdo con la dirección IP de la parte comunicante). En la figura se muestra un ejemplo:
Proceso de envío de datos de comunicación del protocolo IP El protocolo
TCP utiliza una estrategia de protocolo de enlace de tres vías para entregar datos con precisión al destino. El proceso de protocolo de enlace utiliza tres indicadores: FLAG-SYN y ACK. El proceso es el siguiente Figura:
Diagrama esquemático del protocolo de enlace de tres vías para la comunicación TCP

Nota: Si ocurre una interrupción inexplicable en una determinada etapa del proceso de reconocimiento, el protocolo TCP enviará los mismos paquetes de datos en el mismo orden nuevamente.
El servicio DNS es un protocolo en la capa de aplicación como el protocolo HTTP. Proporciona servicios de resolución entre nombres de dominio y direcciones IP. La relación entre los dos se muestra en la figura:

Proceso de análisis de solicitudes de URL HTTP
La relación entre varios protocolos y el protocolo HTTP se muestra en la figura:

El protocolo HTTP usa la comunicación del protocolo TCP para obtener el diagrama de flujo de la página.
URI usa caracteres para identificar un determinado recurso de Internet, y URL representa la ubicación del recurso (ubicación en Internet), por lo que URL es un subconjunto de URI.

El formato de URI generalmente incluye lo siguiente:

Información de inicio de sesión
Dirección del servidor (IP o nombre de dominio)
Número de puerto del servidor
Ruta de archivo jerárquica
Cadena de consulta
Identificación de fragmentos El
ejemplo de formato de URI se muestra en la figura:

Ejemplo de solicitud de URL
Negro: Nombre de protocolo
Rojo: Información de inicio de sesión (autenticación)
Verde claro: Dirección del servidor
Azul claro: Número de puerto del servidor
Púrpura: Ruta de archivo con jerarquía
Azul oscuro: Cadena de consulta
Verde oscuro: Identificador de fragmento
Dos, simple
Mensaje de solicitud de protocolo HTTP : se compone de método de solicitud, URI de solicitud, versión del protocolo, campo de encabezado de solicitud opcional y entidad de contenido.
Mensaje de respuesta: básicamente consta de la versión del protocolo, el código de estado (código digital que indica el éxito o el fracaso de la solicitud), la frase de motivo utilizada para explicar el código de estado, el campo de encabezado de respuesta opcional y el cuerpo de la entidad.

Ejemplo de contenido de mensaje de solicitud

Ejemplo de contenido de mensaje de respuesta
HTTP es un protocolo que no guarda el estado, es decir, no retiene toda la información del mensaje de respuesta o solicitud anterior. Para resolver este problema, muchos sitios web han introducido la tecnología de cookies, por ejemplo: muchos sitios web de inicio de sesión utilizan tecnología de cookies Para permanecer conectado.
Hay varios métodos HTTP para informar al servidor de la intención:

GET: Obtiene el recurso. Si el recurso solicitado es texto, regresará como está. Si es un programa como CGI, devolverá el resultado de salida después de la ejecución.
POST: Se utiliza principalmente para transmitir el cuerpo de la entidad, no para obtener el cuerpo de la respuesta.
PUT: Para transferir archivos, se requiere que el mensaje de solicitud contenga el contenido del archivo, pero el método HTTP / 1.1 PUT en sí no tiene un mecanismo de autenticación. Cualquiera puede cargar archivos. Hay problemas de seguridad. Por lo tanto, generalmente los sitios web que desarrollan esta función cooperarán con la Web. Mecanismo de verificación de la aplicación, como: mecanismo REST.
HEAD: en lugar de obtener el cuerpo del mensaje devuelto, obtiene los campos de encabezado como la validez del URI y la fecha y hora de la actualización del recurso.
DELETE: se utiliza para eliminar archivos, pero el método HTTP / 1.1Delete en sí no tiene un mecanismo de verificación. Cualquiera puede eliminar archivos. Hay problemas de seguridad. Por lo tanto, generalmente los sitios web que desarrollan esta función cooperarán con el mecanismo de verificación de las aplicaciones web. Tales como: mecanismo REST.
OPCIONES: se utiliza para consultar el recurso especificado para el URI de solicitud.
TRACE: cuando lo use para enviar una solicitud, complete el valor en el campo de encabezado Max-Forwards y disminuya el número en 1 cada vez que pase por un servidor. Cuando el valor se reduce a 0, deja de seguir transmitiendo y finalmente recibe la solicitud El servidor devuelve una respuesta con un código de estado 200 OK, por lo que puede consultar cómo se procesa y modifica la solicitud enviada.
CONNECT: Se requiere establecer un túnel al comunicarse con el servidor proxy para realizar la comunicación TCP con el protocolo del túnel El contenido de la comunicación es principalmente encriptado a través del túnel de red después de los protocolos SSL y TLS.
Conexión persistente HTTP: la característica de Keep-Alive (conexión persistente) es que mientras ninguno de los extremos proponga explícitamente desconectarse, el estado de la conexión TCP se mantiene. La ventaja es que reduce la sobrecarga adicional causada por el establecimiento y la desconexión repetidos de conexiones TCP y reduce La carga en el lado del servidor también se reduce y la parte del tiempo para la sobrecarga se reduce, y la solicitud y respuesta HTTP se pueden completar antes.

La diferencia entre una conexión no persistente y una conexión de retención La
tecnología Pipeline permite al cliente enviar múltiples solicitudes en paralelo al mismo tiempo sin esperar una respuesta una por una.

HTTP es un protocolo sin estado. La ventaja es que reduce el consumo de la CPU del servidor y los recursos de memoria, pero no puede mantener el estado anterior para el procesamiento de solicitudes, por lo que debe estar en la página web de autenticación de inicio de sesión, y cada solicitud para saltar a la página debe autenticarse nuevamente. Inicie sesión o adjunte los parámetros de autenticación de la solicitud, por lo que para solucionar este problema puede utilizar la tecnología Cookie, el proceso se muestra en la figura:

Proceso de generación y uso de cookies

Cookie fine civilization solicita que
el código de error HTTP enumere
todos los códigos de estado HTTP y sus definiciones.

El código indica que
2xx tiene éxito y
200 es normal; la solicitud se ha completado.
201 Normal; seguido del comando POST.
202 OK; se ha aceptado para su procesamiento, pero el procesamiento aún no se ha completado.
203 Normal; información parcial: la información devuelta es solo una parte.
204 OK; Sin respuesta: la solicitud se ha recibido, pero no hay información para devolver.
3xx Redirect
301 movido: los datos solicitados tienen una nueva ubicación y el cambio es permanente.
302 Encontrado: los datos solicitados tienen temporalmente un URI diferente.
303 Ver otro: la respuesta a la solicitud se puede encontrar en otro URI y se debe utilizar el método GET para recuperar esta respuesta.
304 No modificado: el documento no se modificó como se esperaba.
305 Usar proxy: se debe acceder al recurso solicitado a través del proxy proporcionado en el campo de ubicación.
306 Sin usar: ya no se usa; conserve este código para uso futuro.
Error
400 en el cliente 4xx: solicitud incorrecta: hay un problema de sintaxis en la solicitud o no se puede satisfacer la solicitud.
401 Unuthorized-Client no está autorizado a acceder a los datos.
402 Pago requerido: indica que el sistema de facturación es válido.
403 Prohibido: no es necesario acceder incluso si está autorizado.
404 Not Found: el servidor no puede encontrar el recurso dado; el documento no existe.
407 Solicitud de autenticación de proxy: el cliente primero debe utilizar el proxy para autenticarse.
415 Tipo de medio no admitido: el servidor se negó a atender la solicitud porque el formato de la entidad solicitante no es compatible.
Error en el servidor 5xx
500 Error interno: el servidor no pudo completar la solicitud debido a una condición inesperada.
501 No implementado: el servidor no admite la herramienta solicitada.
502 Puerta de enlace incorrecta: el servidor recibió una respuesta no válida del servidor ascendente.
503 No se puede obtener el servicio: el servidor no pudo procesar la solicitud debido a una sobrecarga temporal o mantenimiento.
El código indica
400 solicitud
no válida 401.1 No autorizado: inicio de sesión fallido
401.2 No autorizado: inicio de sesión fallido debido a problemas de configuración del servidor
401.3 ACL acceso prohibido a los recursos
401.4 No autorizado: autorización denegada por el filtro
401.5 No autorizado: ISAPI o autorización CGI fallida
403 Prohibido acceder a
Internet 403 El acceso al administrador de servicios (HTML) está limitado a Localhost
403.1 Acceso prohibido: Prohibido el acceso ejecutable
403.2 Acceso prohibido: Prohibido el acceso de lectura 403.3 Acceso prohibido:
Prohibido el acceso de escritura
403.4 Acceso prohibido: Requiere SSL
403.5 Acceso prohibido: Requiere SSL 128
403.6 Prohibido el acceso: Dirección IP denegada
403.7 Prohibido: Certificado de cliente
403.8 Prohibido: Acceso prohibido al sitio 403.9 Prohibido:
Demasiados usuarios conectados
403.10 Prohibido: Configuración no válida 403.11 Prohibido:
Cambio de contraseña
403.12 Prohibido: Mapeador denegado el acceso
403.13 Acceso prohibido: el certificado del cliente ha sido revocado 403.15 Acceso prohibido:
demasiados permisos de acceso del cliente
403.16 Prohibido: el certificado del cliente no es confiable o no es válido
403.17 Prohibido: el certificado del cliente ha caducado o aún no ha
entrado en vigor 404.1 No se puede encontrar el sitio web
404 No se puede encontrar el archivo
405 El recurso está prohibido
406 Inaceptable
407 Se requiere autenticación de proxy
410 Nunca disponible
412 Requisito previo fallido
414 Solicitud de URI demasiado larga

Supongo que te gusta

Origin blog.csdn.net/weixin_52772147/article/details/112851928
Recomendado
Clasificación