capa de aplicación
Modelo de aplicación web
modelo cliente/servidor
En el modelo cliente/servidor (Cliente/Servidor, CS) , hay un host siempre activo llamado servidor, que atiende muchas solicitudes de otros hosts llamados clientes. Su flujo de trabajo es el siguiente:
El servidor está en el estado de aceptación de solicitudes.
El cliente realiza una solicitud de servicio y espera a recibir el resultado
Después de recibir la solicitud, el servidor la analiza, realiza el procesamiento necesario, obtiene el resultado y lo envía al cliente.
Las principales características del modelo cliente/servidor son: el cliente es el solicitante del servicio y el servidor es el proveedor del servicio.
modelo P2P
El rendimiento del servidor en el modelo CS determina el rendimiento de todo el sistema.Cuando una gran cantidad de usuarios solicitan servicios, el servidor inevitablemente se convertirá en el cuello de botella del sistema. La idea del modelo P2P es que el contenido de transmisión en toda la red ya no se almacena en el servidor central, y cada nodo tiene la función de descargar y cargar al mismo tiempo, y sus derechos y obligaciones son aproximadamente iguales.
Sistema de nombres de dominio [DNS]
Espacio de nombres jerárquico
Internet adopta un método de nomenclatura de estructura de árbol jerárquico. Con este método de denominación, cualquier host o enrutador conectado a Internet tiene un nombre de estructura jerárquica único, es decir, un nombre de dominio . Un dominio es una división manejable de un espacio de nombres
Se deben tener en cuenta los siguientes puntos sobre la etiqueta en el nombre de dominio:
El inglés en la etiqueta no distingue entre mayúsculas y minúsculas
Los signos de puntuación que no sean el guión ((-) no se pueden usar en las etiquetas
Cada etiqueta no debe exceder los 63 caracteres, y la longitud máxima de un nombre de dominio completo compuesto por varias etiquetas no debe exceder los 255 caracteres.
El nombre de dominio con el nivel más bajo se escribe en el extremo izquierdo y el nombre de dominio de nivel superior con el nivel más alto se escribe en el extremo derecho
servidor de nombres de dominio
El sistema de nombres de dominio de Internet está diseñado como un sistema de base de datos distribuida en línea y adopta el modelo cliente/servidor. La resolución del nombre de dominio a la dirección P se completa con el programa que se ejecuta en el servidor de nombres de dominio
proceso de resolución de nombres de dominio
La resolución de nombres de dominio se refiere al proceso de asignar nombres de dominio a direcciones IP o asignar direcciones IP a nombres de dominio . El primero se llama análisis directo y el segundo se llama análisis inverso. Cuando el cliente necesita la resolución de nombres de dominio, construye un mensaje de solicitud de DNS a través del cliente de DNS local y lo envía al servidor de nombres de dominio local en forma de datagrama UDP.
Hay dos formas de resolución de nombres de dominio: consulta recursiva y consulta que combina recursión e iteración
Protocolo de transferencia de archivos [FTP]
principio de funcionamiento
El Protocolo de transferencia de archivos es el protocolo de transferencia de archivos más utilizado en Internet. FTP proporciona acceso interactivo , permite a los clientes especificar el tipo y el formato de los archivos y permite que los archivos tengan derechos de acceso
FTP adopta el método de trabajo de cliente/servidor
FTP adopta el método de trabajo de cliente/servidor y utiliza el servicio de transmisión confiable TCP . Un proceso de servidor FTP puede proporcionar servicios para múltiples procesos de clientes al mismo tiempo. El proceso del servidor de FTP consta de dos partes: un proceso principal , que se encarga de recibir nuevas solicitudes; y varios procesos esclavos , que se encargan de procesar las solicitudes individuales.
Sus pasos de trabajo son los siguientes
Abra el conocido puerto 21 (puerto de control), para que el proceso del cliente pueda conectarse
Espere a que el proceso del cliente envíe una solicitud de conexión.
Inicie el proceso esclavo para manejar la solicitud enviada por el proceso del cliente. El proceso maestro y el proceso esclavo se ejecutan simultáneamente, y el proceso esclavo finaliza después de procesar la solicitud del proceso del cliente.
Regrese al estado de espera y continúe recibiendo solicitudes de otros procesos del cliente
Usar dos conexiones TCP paralelas
conexión de control y conexión de datos
FTP utiliza dos conexiones TCP paralelas en el trabajo: una es una conexión de control (número de puerto 21) y la otra es una conexión de datos (número de puerto 20)
Conexión de control: la conexión de control se utiliza para transmitir información de control (como solicitudes de conexión, solicitudes de transferencia, etc.) y permanece abierta durante toda la sesión (puerto 21)
Conexión de datos: Hay dos modos de transmisión, el modo activo transmite datos es el puerto donde el "servidor" se conecta al "cliente"; el modo pasivo transmite datos es el puerto donde el "cliente" se conecta al "servidor" (puerto 20)
correo electrónico
La estructura del sistema de correo electrónico.
Un sistema de correo electrónico debe tener tres componentes principales, a saber, el agente de usuario, el servidor de correo y el protocolo utilizado por el correo electrónico.
Protocolo de envío de correo y protocolo de lectura: los agentes de usuario utilizan el protocolo de envío de correo para enviar correo a o entre servidores de correo, como SMTP; los agentes de usuario utilizan el protocolo de lectura de correo para leer correo de servidores de correo, como POP3
SMTP usa el método de comunicación "Push" y POP3 usa el método de comunicación "Pull"
MIME (Extensiones de correo de Internet multipropósito)
Dado que SMTP solo puede transmitir códigos ASCII de cierta longitud, muchos otros caracteres de idiomas distintos del inglés (como el chino, el ruso e incluso el francés o el alemán con acentos) no se pueden transmitir, y los archivos ejecutables y otros objetos binarios no se pueden transmitir.
SMTP
SMTP utiliza una conexión TCP con un número de puerto de 25 . La comunicación SMTP tiene las siguientes tres etapas de establecimiento de conexión: después de que el correo del remitente se envía al caché de correo del servidor de correo del remitente, el cliente SMTP escanea el caché de correo a intervalos regulares. Si se encuentra correo, establezca una conexión TCP
Transmisión de correo: Después de establecer la conexión, se puede enviar el correo. La transmisión del correo comienza desde el comando MAIL, y está la dirección del remitente después del comando MAIL
Liberación de la conexión: Después de enviar el correo, el cliente SMTP debe enviar el comando QUIT. La información devuelta por el servidor SMTP es 221 (servicio cerrado), lo que indica que SMTP acepta liberar la conexión TCP
POP3
POP también usa el método de trabajo de cliente/servidor, usa TCP en la capa de transporte y el número de puerto es 110 .
POP funciona de dos maneras:
"Descargar y conservar" y "Descargar y eliminar"
Internet mundial [WWW]
concepto
La World Wide Web (World Wide Web, www) es un espacio de almacenamiento de información en línea distribuido, en este espacio: la misma cosa útil se denomina "recurso" y se identifica mediante un "Localizador uniforme de recursos" (URL) global. Estos recursos se transmiten al usuario a través del Protocolo de transferencia de hipertexto (HTTP), y este último obtiene el recurso haciendo clic en el enlace
La parte central de la World Wide Web se compone de tres estándares:
Localizador Uniforme de Recursos (URL) . Responsable de identificar varios documentos en la World Wide Web y hacer que cada documento tenga una URL de identificación única dentro del alcance de toda la World Wide Web
Protocolo de transferencia de hipertexto (HTTP) . Un protocolo de capa de aplicación que utiliza conexiones TCP para una transmisión confiable, HTTP es un protocolo que debe seguirse estrictamente para las interacciones entre los programas de cliente y los programas de servidor de la World Wide Web.
Lenguaje de marcado de hipertexto (HTML) . Un lenguaje de marcado para la estructura del documento, que utiliza algunas etiquetas acordadas para describir diversa información (incluyendo texto, sonido, imagen, video, etc.) y formatos en la página.
Proceso de trabajo:
El usuario web utiliza un navegador (URL especificada) para establecer una conexión con el servidor web y envía una solicitud de navegación; el servidor web convierte la URL en una ruta de archivo y devuelve la información al navegador web; la comunicación se completa y la conexión se cierra
Composición
HTTP
Proceso de operación HTTP del Protocolo de transferencia de hipertexto (HTTP)
La secuencia de eventos que ocurren después de que el usuario hace clic con el mouse es la siguiente
- El navegador analiza la URL de la página a la que apunta el enlace
- El navegador solicita DNS para resolver la dirección IP
- El sistema de nombres de dominio DNS resuelve la dirección IP del servidor del sitio web
- El navegador establece una conexión TCP con el servidor
- El navegador hace una solicitud HTTP
- El servidor envía el archivo al navegador a través de una respuesta HTTP
- liberar conexión TCP
Características de HTTP
HTTP utiliza TCP como protocolo de capa de transporte para garantizar una transmisión de datos fiable. HTTP no tiene que considerar cómo se retransmiten los datos después de descartarlos durante la transmisión
HTTP no tiene estado. Es decir, cuando el mismo cliente visita la página en el mismo servidor por segunda vez, la respuesta del servidor es la misma que cuando fue visitada por primera vez.
HTTP puede usar tanto conexiones no persistentes como conexiones persistentes.
Para conexiones no persistentes, la transmisión de cada objeto de elemento web (como gráficos JPEG, 'Flash, etc.) necesita establecer una conexión TCP separada.
Una conexión persistente significa que el servidor World Wide Web aún mantiene esta conexión después de enviar una respuesta, de modo que el mismo cliente (navegador) y el servidor pueden continuar transmitiendo solicitudes HTTP posteriores y mensajes de respuesta en esta conexión.
Resumen de protocolos de capa de aplicación comunes
https://www.bilibili.com/video/BV1Ha411r745?p=6&spm_id_from=pageDriver