Protocolo de comunicación

format_list_bulleted Contenido keyboard_arrow_down
ImprimirCitar

Un protocolo de comunicación es un sistema de reglas que permite que dos o más entidades de un sistema de comunicaciones transmitan información a través de cualquier tipo de variación de una cantidad física. El protocolo define las reglas, la sintaxis, la semántica y la sincronización de la comunicación y los posibles métodos de recuperación de errores. Los protocolos pueden implementarse mediante hardware, software o una combinación de ambos.

Los sistemas de comunicación usan formatos bien definidos para intercambiar varios mensajes. Cada mensaje tiene un significado exacto destinado a provocar una respuesta de una gama de posibles respuestas predeterminadas para esa situación en particular. El comportamiento especificado suele ser independiente de cómo se va a implementar. Los protocolos de comunicación tienen que ser acordados por las partes involucradas. Para llegar a un acuerdo, un protocolo puede convertirse en un estándar técnico. Un lenguaje de programación describe lo mismo para los cálculos, por lo que existe una estrecha analogía entre los protocolos y los lenguajes de programación: los protocolos son para la comunicación lo que los lenguajes de programación son para los cálculos. Una formulación alternativa establece que los protocolos son para la comunicación lo que los algoritmos son para la computación..

Múltiples protocolos a menudo describen diferentes aspectos de una única comunicación. Un grupo de protocolos diseñados para trabajar juntos se conoce como conjunto de protocolos; cuando se implementan en el software, son una pila de protocolos.

Los protocolos de comunicación de Internet son publicados por el Grupo de Trabajo de Ingeniería de Internet (IETF). El IEEE (Instituto de Ingenieros Eléctricos y Electrónicos) maneja las redes alámbricas e inalámbricas y la Organización Internacional de Normalización (ISO) maneja otros tipos. El ITU-T maneja protocolos y formatos de telecomunicaciones para la red telefónica pública conmutada (PSTN). A medida que la PSTN e Internet convergen, los estándares también se están orientando hacia la convergencia.

Sistemas de comunicación

Historia

Uno de los primeros usos del término protocolo en un contexto de conmutación de datos ocurre en un memorando titulado A Protocol for Use in the NPL Data Communications Network escrito por Roger Scantlebury y Keith Bartlett en abril de 1967.

En ARPANET, el punto de partida para la comunicación de host a host en 1969 fue el protocolo de 1822, que definía la transmisión de mensajes a un IMP. El Protocolo de control de red (NCP) para ARPANET se implementó por primera vez en 1970. La interfaz NCP permitió que el software de aplicación se conectara a través de ARPANET mediante la implementación de protocolos de comunicación de nivel superior, un ejemplo temprano del concepto de estratificación de protocolos.

La investigación de redes realizada a principios de la década de 1970 por Robert E. Kahn y Vint Cerf condujo a la formulación del Programa de control de transmisión (TCP). Su especificación RFC 675 fue escrita por Cerf con Yogen Dalal y Carl Sunshine en diciembre de 1974, todavía un diseño monolítico en este momento.

El Grupo de Trabajo de Redes Internacionales acordó un estándar de datagramas sin conexión que se presentó al CCIT en 1975 pero no fue adoptado por la UIT ni por ARPANET. La investigación internacional, en particular el trabajo de Rémi Després, contribuyó al desarrollo del estándar X.25, basado en circuitos virtuales por el ITU-T en 1976. Los fabricantes de computadoras desarrollaron protocolos patentados como Systems Network Architecture (SNA) de IBM, Digital Equipment DECnet y Xerox Network Systems de Corporation.

El software TCP se rediseñó como una pila de protocolos modulares. Originalmente denominado IP/TCP, se instaló en SATNET en 1982 y en ARPANET en enero de 1983. El desarrollo de un conjunto completo de protocolos en 1989, como se describe en RFC 1122 y RFC 1123, sentó las bases para el crecimiento de TCP. /IP como un conjunto completo de protocolos como componente central de la Internet emergente.

El trabajo internacional sobre un modelo de referencia para estándares de comunicación condujo al modelo OSI, publicado en 1984. Durante un período a fines de la década de 1980 y principios de la de 1990, los ingenieros, las organizaciones y las naciones se polarizaron sobre la cuestión de qué estándar, el modelo OSI o Internet. conjunto de protocolos, daría como resultado las mejores y más sólidas redes informáticas.

Concepto

La información intercambiada entre dispositivos a través de una red u otros medios se rige por reglas y convenciones que se pueden establecer en las especificaciones del protocolo de comunicación. Estas especificaciones definen la naturaleza de la comunicación, los datos reales intercambiados y cualquier comportamiento dependiente del estado. En los sistemas informáticos digitales, las reglas se pueden expresar mediante algoritmos y estructuras de datos. Los protocolos son para la comunicación lo que los algoritmos o los lenguajes de programación son para los cálculos.

Los sistemas operativos suelen contener un conjunto de procesos cooperativos que manipulan los datos compartidos para comunicarse entre sí. Esta comunicación se rige por protocolos bien entendidos, que pueden integrarse en el propio código de proceso. Por el contrario, debido a que no hay memoria compartida, los sistemas de comunicación deben comunicarse entre sí utilizando un medio de transmisión compartido. La transmisión no es necesariamente confiable y los sistemas individuales pueden usar hardware o sistemas operativos diferentes.

Para implementar un protocolo de red, los módulos de software de protocolo se interconectan con un marco implementado en el sistema operativo de la máquina. Este marco implementa la funcionalidad de red del sistema operativo. Cuando los algoritmos de protocolo se expresan en un lenguaje de programación portátil, el software de protocolo puede hacerse independiente del sistema operativo. Los frameworks más conocidos son el modelo TCP/IP y el modelo OSI.

En el momento en que se desarrolló Internet, las capas de abstracción habían demostrado ser un enfoque de diseño exitoso tanto para el compilador como para el diseño del sistema operativo y, dadas las similitudes entre los lenguajes de programación y los protocolos de comunicación, los programas de red originalmente monolíticos se descompusieron en protocolos cooperativos. Esto dio lugar al concepto de protocolos en capas que hoy en día forma la base del diseño de protocolos.

Los sistemas normalmente no usan un solo protocolo para manejar una transmisión. En su lugar, utilizan un conjunto de protocolos de cooperación, a veces denominado conjunto de protocolos. Algunas de las suites de protocolos más conocidas son TCP/IP, IPX/SPX, X.25, AX.25 y AppleTalk.

Los protocolos se pueden organizar según la funcionalidad en grupos, por ejemplo, hay un grupo de protocolos de transporte. Las funcionalidades se asignan a las capas, cada capa resuelve una clase distinta de problemas relacionados con, por ejemplo: funciones de aplicación, transporte, Internet e interfaz de red. Para transmitir un mensaje, se debe seleccionar un protocolo de cada capa. La selección del siguiente protocolo se logra extendiendo el mensaje con un selector de protocolo para cada capa.

Tipos

Hay dos tipos de protocolos de comunicación, según su representación del contenido que se transmite: basado en texto y binario.

Basado en texto

Un protocolo basado en texto o un protocolo de texto sin formato representa su contenido en un formato legible por humanos, a menudo en texto sin formato.

La legibilidad humana inmediata contrasta con los protocolos binarios que tienen beneficios inherentes para su uso en un entorno informático (como la facilidad de análisis mecánico y la utilización mejorada del ancho de banda).

Las aplicaciones de red tienen varios métodos para encapsular datos. Un método muy común con los protocolos de Internet es una representación orientada al texto que transmite solicitudes y respuestas como líneas de texto ASCII, terminadas con un carácter de nueva línea (y generalmente un carácter de retorno de carro). Ejemplos de protocolos que utilizan texto legible por humanos para sus comandos son FTP (Protocolo de transferencia de archivos), SMTP (Protocolo simple de transferencia de correo) y el protocolo finger.

Los protocolos basados ​​en texto generalmente están optimizados para el análisis y la interpretación humanos y, por lo tanto, son adecuados siempre que se requiera la inspección humana del contenido del protocolo, como durante la depuración y durante las primeras fases de diseño del desarrollo del protocolo.

Para ser claros, toda la comunicación digital es fundamentalmente binaria. Los protocolos basados ​​en "Texto" que se mencionan aquí usan solo contenido binario, que se hace "humanamente legible" por un editor de texto (u otro software similar).

Binario

Un protocolo binario utiliza todos los valores de un byte, a diferencia de un protocolo basado en texto que solo usa valores correspondientes a caracteres legibles por humanos en codificación ASCII. Los protocolos binarios están destinados a ser leídos por una máquina y no por un ser humano. Los protocolos binarios tienen la ventaja de ser breves, lo que se traduce en velocidad de transmisión e interpretación.

Binary se ha utilizado en los documentos normativos que describen estándares modernos como EbXML, HTTP/2, HTTP/3 y EDOC. Una interfaz en UML también puede considerarse un protocolo binario.

Requerimientos básicos

Obtener los datos a través de una red es solo una parte del problema de un protocolo. Los datos recibidos deben evaluarse en el contexto del progreso de la conversación, por lo que un protocolo debe incluir reglas que describan el contexto. Se dice que este tipo de reglas expresan la sintaxis de la comunicación. Otras reglas determinan si los datos son significativos para el contexto en el que tiene lugar el intercambio. Se dice que este tipo de reglas expresan la semántica de la comunicación.

Los mensajes se envían y reciben en los sistemas de comunicación para establecer la comunicación. Por lo tanto, los protocolos deben especificar las reglas que rigen la transmisión. En general, se debe abordar gran parte de lo siguiente:Formatos de datos para el intercambio de datosSe intercambian cadenas de bits de mensajes digitales. Las cadenas de bits se dividen en campos y cada campo contiene información relevante para el protocolo. Conceptualmente, la cadena de bits se divide en dos partes llamadas encabezado y carga útil. El mensaje real se transporta en la carga útil. El área de encabezado contiene los campos relevantes para el funcionamiento del protocolo. Las cadenas de bits más largas que la unidad de transmisión máxima (MTU) se dividen en partes de tamaño apropiado.Formatos de dirección para el intercambio de datosLas direcciones se utilizan para identificar tanto al remitente como a los destinatarios previstos. Las direcciones se transportan en el área de encabezado de las cadenas de bits, lo que permite a los receptores determinar si las cadenas de bits son de interés y deben procesarse o ignorarse. Una conexión entre un remitente y un receptor se puede identificar utilizando un par de direcciones (dirección del remitente, dirección del receptor). Por lo general, algunos valores de dirección tienen significados especiales. Se podría considerar que una dirección de todos 1 significa un direccionamiento de todas las estaciones en la red, por lo que enviar a esta dirección daría como resultado una transmisión en la red local. Las reglas que describen los significados del valor de la dirección se denominan colectivamente esquema de direccionamiento.Mapeo de direccionesA veces, los protocolos necesitan asignar direcciones de un esquema a direcciones de otro esquema. Por ejemplo, para traducir una dirección IP lógica especificada por la aplicación a una dirección MAC Ethernet. Esto se conoce como mapeo de direcciones.EnrutamientoCuando los sistemas no están conectados directamente, los sistemas intermediarios a lo largo de la ruta hacia los destinatarios previstos deben reenviar los mensajes en nombre del remitente. En Internet, las redes se conectan mediante enrutadores. La interconexión de redes a través de enrutadores se denomina interconexión de redes.Detección de errores de transmisiónLa detección de errores es necesaria en redes donde es posible la corrupción de datos. En un enfoque común, se agrega un CRC del área de datos al final de los paquetes, lo que hace posible que el receptor detecte las diferencias causadas por la corrupción. El receptor rechaza los paquetes en las diferencias de CRC y organiza de alguna manera la retransmisión.AgradecimientosSe requiere el reconocimiento de la recepción correcta de paquetes para la comunicación orientada a la conexión. Los acuses de recibo se envían de los receptores a sus respectivos remitentes.Pérdida de información: tiempos de espera y reintentosLos paquetes pueden perderse en la red o retrasarse en tránsito. Para hacer frente a esto, según algunos protocolos, un remitente puede esperar un acuse de recibo de la recepción correcta del receptor dentro de un cierto período de tiempo. Por lo tanto, en tiempos de espera, el remitente puede necesitar retransmitir la información. En caso de un enlace roto permanentemente, la retransmisión no tiene efecto por lo que el número de retransmisiones es limitado. Superar el límite de reintentos se considera un error.Dirección del flujo de informaciónLa dirección debe abordarse si las transmisiones solo pueden ocurrir en una dirección a la vez como en enlaces semidúplex o desde un remitente a la vez como en un medio compartido. Esto se conoce como control de acceso a los medios. Se deben hacer arreglos para acomodar el caso de colisión o disputa donde dos partes transmiten o desean transmitir simultáneamente respectivamente.control de secuenciaSi las cadenas de bits largas se dividen en partes y luego se envían por la red individualmente, las partes pueden perderse o retrasarse o, en algunos tipos de redes, tomar diferentes rutas hacia su destino. Como resultado, las piezas pueden llegar fuera de secuencia. Las retransmisiones pueden resultar en piezas duplicadas. Al marcar las piezas con información de secuencia en el remitente, el receptor puede determinar qué se perdió o duplicó, solicitar las retransmisiones necesarias y volver a ensamblar el mensaje original.Control de flujoEl control de flujo es necesario cuando el remitente transmite más rápido que el receptor o el equipo de red intermedio puede procesar las transmisiones. El control de flujo se puede implementar mediante mensajes del receptor al remitente.haciendo colaLos procesos de comunicación o las máquinas de estado emplean colas (o "búferes"), generalmente colas FIFO, para tratar los mensajes en el orden en que se envían y, en ocasiones, pueden tener varias colas con diferentes prioridades.

Diseño de protocolo

Se han aplicado principios de ingeniería de sistemas para crear un conjunto de principios de diseño de protocolos de red comunes. El diseño de protocolos complejos a menudo implica la descomposición en protocolos cooperativos más simples. Este conjunto de protocolos de cooperación a veces se denomina familia de protocolos o conjunto de protocolos, dentro de un marco conceptual.

Los sistemas de comunicación operan simultáneamente. Un aspecto importante de la programación concurrente es la sincronización del software para recibir y transmitir mensajes de comunicación en la secuencia adecuada. La programación concurrente ha sido tradicionalmente un tema en los textos de teoría de sistemas operativos. La verificación formal parece indispensable porque los programas concurrentes son notorios por los errores ocultos y sofisticados que contienen. Un enfoque matemático para el estudio de la concurrencia y la comunicación se conoce como comunicación de procesos secuenciales (CSP).La concurrencia también se puede modelar utilizando máquinas de estados finitos, como las máquinas de Mealy y Moore. Las máquinas de Mealy y Moore se utilizan como herramientas de diseño en sistemas electrónicos digitales que se encuentran en forma de hardware utilizado en telecomunicaciones o dispositivos electrónicos en general.

La literatura presenta numerosas analogías entre la comunicación informática y la programación. En analogía, un mecanismo de transferencia de un protocolo es comparable a una unidad central de procesamiento (CPU). El marco introduce reglas que permiten al programador diseñar protocolos de cooperación independientemente unos de otros.

Capas

En el diseño de protocolo moderno, los protocolos se superponen para formar una pila de protocolos. La estratificación es un principio de diseño que divide la tarea de diseño del protocolo en pasos más pequeños, cada uno de los cuales cumple una parte específica, interactuando con las otras partes del protocolo solo en una pequeña cantidad de formas bien definidas. La estratificación permite que las partes de un protocolo se diseñen y prueben sin una explosión combinatoria de casos, manteniendo cada diseño relativamente simple.

Los protocolos de comunicación que se utilizan en Internet están diseñados para funcionar en entornos diversos y complejos. Los protocolos de Internet están diseñados para la simplicidad y la modularidad y se ajustan a una jerarquía general de capas funcionales definidas en Internet Protocol Suite. Los primeros dos protocolos cooperativos, el Protocolo de control de transmisión (TCP) y el Protocolo de Internet (IP), resultaron de la descomposición del Programa de control de transmisión original, un protocolo de comunicación monolítico, en esta suite de comunicación en capas.

El modelo OSI se desarrolló a nivel internacional en base a la experiencia con redes anteriores a Internet como modelo de referencia para la comunicación general con reglas mucho más estrictas de interacción de protocolos y capas rigurosas.

Por lo general, el software de aplicación se basa en una sólida capa de transporte de datos. Detrás de esta capa de transporte hay un mecanismo de enrutamiento y entrega de datagramas que normalmente no tiene conexión en Internet. La retransmisión de paquetes a través de redes ocurre en otra capa que involucra solo tecnologías de enlace de red, que a menudo son específicas de ciertas tecnologías de capa física, como Ethernet. La estratificación brinda oportunidades para intercambiar tecnologías cuando es necesario, por ejemplo, los protocolos a menudo se apilan en un arreglo de túnel para acomodar la conexión de redes diferentes. Por ejemplo, IP se puede tunelizar a través de una red de modo de transferencia asíncrona (ATM).

Capas de protocolo

La estratificación de protocolos constituye la base del diseño de protocolos. Permite la descomposición de protocolos únicos y complejos en protocolos cooperativos más simples. Cada una de las capas de protocolo resuelve una clase distinta de problemas de comunicación. Juntas, las capas forman un esquema o modelo de capas.

Los cómputos se ocupan de algoritmos y datos; La comunicación implica protocolos y mensajes; Entonces, el análogo de un diagrama de flujo de datos es algún tipo de diagrama de flujo de mensajes. Para visualizar las capas de protocolos y los conjuntos de protocolos, en la figura 3 se muestra un diagrama del flujo de mensajes en y entre dos sistemas, A y B. Los sistemas, A y B, utilizan el mismo conjunto de protocolos. Los flujos verticales (y protocolos) están dentro del sistema y los flujos de mensajes horizontales (y protocolos) están entre sistemas. Los flujos de mensajes se rigen por reglas y formatos de datos especificados por protocolos. Las líneas azules marcan los límites de las capas de protocolo (horizontales).

Capas de software

Los protocolos de soporte de software tienen una organización en capas y su relación con la estratificación del protocolo se muestra en la figura 5.

Para enviar un mensaje en el sistema A, el módulo de software de la capa superior interactúa con el módulo directamente debajo de él y entrega el mensaje para ser encapsulado. El módulo inferior completa los datos del encabezado de acuerdo con el protocolo que implementa e interactúa con el módulo inferior que envía el mensaje a través del canal de comunicaciones al módulo inferior del sistema B. En el sistema receptor B sucede lo contrario, por lo que finalmente el mensaje se entrega en su forma original al módulo superior del sistema B.

La traducción del programa se divide en subproblemas. Como resultado, el software de traducción también está en capas, lo que permite que las capas del software se diseñen de forma independiente. El mismo enfoque se puede ver en las capas de TCP/IP.

Los módulos debajo de la capa de aplicación generalmente se consideran parte del sistema operativo. Pasar datos entre estos módulos es mucho menos costoso que pasar datos entre un programa de aplicación y la capa de transporte. El límite entre la capa de aplicación y la capa de transporte se denomina límite del sistema operativo.

Capas estrictas

Adherirse estrictamente a un modelo en capas, una práctica conocida como capas estrictas, no siempre es el mejor enfoque para la creación de redes. La estratificación estricta puede tener un impacto negativo en el rendimiento de una implementación.

Si bien el uso de capas de protocolo es hoy omnipresente en el campo de las redes informáticas, muchos investigadores lo han criticado históricamente porque abstraer la pila de protocolos de esta manera puede hacer que una capa superior duplique la funcionalidad de una capa inferior, siendo un buen ejemplo recuperación de errores tanto por enlace como de extremo a extremo.

Patrones de diseño

Los problemas comúnmente recurrentes en el diseño e implementación de protocolos de comunicación pueden abordarse mediante patrones de diseño de software.

Especificación formal

Los métodos formales populares para describir la sintaxis de comunicación son la Notación de sintaxis abstracta uno (un estándar ISO) y la forma Backus-Naur aumentada (un estándar IETF).

Los modelos de máquinas de estado finito se utilizan para describir formalmente las posibles interacciones del protocolo. y comunicando máquinas de estado finito

Desarrollo de protocolo

Para que se produzca la comunicación, se deben seleccionar los protocolos. Las reglas se pueden expresar mediante algoritmos y estructuras de datos. La independencia del hardware y del sistema operativo se mejora al expresar los algoritmos en un lenguaje de programación portátil. La independencia de la fuente de la especificación proporciona una interoperabilidad más amplia.

Los estándares de protocolo se crean comúnmente al obtener la aprobación o el apoyo de una organización de estándares, que inicia el proceso de estandarización. Los miembros de la organización de estándares acuerdan adherirse al resultado del trabajo de forma voluntaria. A menudo, los miembros tienen el control de grandes cuotas de mercado relevantes para el protocolo y, en muchos casos, las normas se hacen cumplir por ley o por el gobierno porque se cree que sirven a un interés público importante, por lo que obtener la aprobación puede ser muy importante para el protocolo.

La necesidad de normas de protocolo

La necesidad de estándares de protocolo se puede demostrar observando lo que sucedió con el protocolo bi-sync (Binary Synchronous Communications) (BSC) inventado por IBM. BSC es uno de los primeros protocolos de nivel de enlace que se usa para conectar dos nodos separados. Originalmente no estaba destinado a ser utilizado en una red multinodo, pero al hacerlo reveló varias deficiencias del protocolo. En ausencia de estandarización, los fabricantes y las organizaciones se sintieron libres de mejorar el protocolo, creando versiones incompatibles en sus redes. En algunos casos, esto se hizo deliberadamente para disuadir a los usuarios de utilizar equipos de otros fabricantes. Hay más de 50 variantes del protocolo bi-sync original. Se puede suponer que un estándar habría evitado que al menos algo de esto sucediera.

En algunos casos, los protocolos dominan el mercado sin pasar por un proceso de estandarización. Dichos protocolos se denominan estándares de facto. Los estándares de facto son comunes en mercados emergentes, nichos de mercado o mercados que están monopolizados (u oligopolizados). Pueden mantener un mercado en un agarre muy negativo, especialmente cuando se utilizan para ahuyentar a la competencia. Desde una perspectiva histórica, la normalización debe verse como una medida para contrarrestar los efectos nocivos de las normas de facto. Existen excepciones positivas; un sistema operativo estándar de facto como Linux no tiene este control negativo en su mercado, porque las fuentes se publican y mantienen de manera abierta, lo que invita a la competencia.

Organismos de normalización

Algunas de las organizaciones de estándares relevantes para los protocolos de comunicación son la Organización Internacional de Normalización (ISO), la Unión Internacional de Telecomunicaciones (ITU), el Instituto de Ingenieros Eléctricos y Electrónicos (IEEE) y el Grupo de Trabajo de Ingeniería de Internet (IETF). El IETF mantiene los protocolos en uso en Internet. El IEEE controla muchos protocolos de software y hardware en la industria electrónica para dispositivos comerciales y de consumo. La UIT es una organización paraguas de ingenieros de telecomunicaciones que diseñan la red telefónica pública conmutada (PSTN), así como muchos sistemas de comunicación por radio. Para la electrónica marina se utilizan los estándares NMEA. El World Wide Web Consortium (W3C) produce protocolos y estándares para tecnologías web.

Se supone que las organizaciones de estándares internacionales son más imparciales que las organizaciones locales con un interés propio nacional o comercial a considerar. Las organizaciones de estándares también investigan y desarrollan los estándares del futuro. En la práctica, las organizaciones de normalización mencionadas cooperan estrechamente entre sí.

El proceso de estandarización

En la ISO, el proceso de estandarización comienza con la puesta en marcha de un grupo de trabajo del subcomité. El grupo de trabajo emite borradores de trabajo y documentos de discusión a las partes interesadas (incluidos otros organismos de normalización) para provocar debates y comentarios. Esto generará muchas preguntas, mucha discusión y, por lo general, algún desacuerdo. Estos comentarios se tienen en cuenta y el grupo de trabajo elabora un proyecto de propuesta. Después de la retroalimentación, la modificación y el compromiso, la propuesta alcanza el estatus de borrador de norma internacional y, en última instancia, de norma internacional. Los estándares internacionales se vuelven a publicar periódicamente para manejar las deficiencias y reflejar los puntos de vista cambiantes sobre el tema.

Estandarización OSI

Una lección aprendida de ARPANET, el predecesor de Internet, fue que los protocolos necesitan un marco para funcionar. Por lo tanto, es importante desarrollar un marco de trabajo de propósito general, preparado para el futuro, adecuado para protocolos estructurados (como protocolos en capas) y su estandarización. Esto evitaría estándares de protocolo con funcionalidad superpuesta y permitiría una definición clara de las responsabilidades de un protocolo en los diferentes niveles (capas). Esto dio lugar al modelo de interconexión de sistemas abiertos (modelo OSI), que se utiliza como marco para el diseño de protocolos y servicios estándar que se ajustan a las especificaciones de varias capas.

En el modelo OSI, se supone que los sistemas de comunicación están conectados por un medio físico subyacente que proporciona un mecanismo de transmisión básico. Las capas superiores están numeradas. Cada capa proporciona servicio a la capa superior utilizando los servicios de la capa inmediatamente inferior. La capa superior proporciona servicios al proceso de aplicación. Las capas se comunican entre sí por medio de una interfaz, denominada punto de acceso al servicio. Las capas correspondientes en cada sistema se denominan entidades pares. Para comunicarse, dos entidades pares en una capa determinada utilizan un protocolo específico de esa capa que se implementa mediante el uso de servicios de la capa inferior.Para cada capa, hay dos tipos de estándares: estándares de protocolo que definen cómo se comunican las entidades pares en una capa determinada y estándares de servicio que definen cómo se comunica una capa determinada con la capa superior.

En el modelo OSI, las capas y su funcionalidad son (de la capa más alta a la más baja):

  • La capa de Aplicación puede proporcionar los siguientes servicios a los procesos de aplicación: identificación de los socios de comunicación previstos, establecimiento de la autoridad necesaria para comunicarse, determinación de disponibilidad y autenticación de los socios, acuerdo sobre mecanismos de privacidad para la comunicación, acuerdo sobre responsabilidad por error recuperación y procedimientos para garantizar la integridad de los datos, sincronización entre procesos de aplicaciones cooperantes, identificación de cualquier restricción en la sintaxis (por ejemplo, juegos de caracteres y estructuras de datos), determinación del costo y calidad aceptable del servicio, selección de la disciplina de diálogo, incluidos los procedimientos requeridos de inicio y cierre de sesión.
  • La capa de presentación puede proporcionar los siguientes servicios a la capa de aplicación: una solicitud para el establecimiento de una sesión, transferencia de datos, negociación de la sintaxis que se utilizará entre las capas de aplicación, cualquier transformación de sintaxis necesaria, formateo y transformaciones de propósito especial (por ejemplo, datos compresión y cifrado de datos).
  • La capa de sesión puede proporcionar los siguientes servicios a la capa de presentación: establecimiento y liberación de conexiones de sesión, intercambio de datos normal y acelerado, un servicio de cuarentena que permite a la entidad de presentación emisora ​​instruir a la entidad de sesión receptora para que no libere datos a su entidad de presentación sin permisos, gestión de interacciones para que las entidades de presentación puedan controlar a quién le toca realizar ciertas funciones de control, resincronización de una conexión de sesión, notificación de excepciones irrecuperables a la entidad de presentación.
  • La capa de transporte proporciona una transferencia de datos confiable y transparente de una manera rentable según lo requiera la calidad de servicio seleccionada. Puede admitir la multiplexación de varias conexiones de transporte en una conexión de red o dividir una conexión de transporte en varias conexiones de red.
  • La capa de red realiza la configuración, el mantenimiento y la liberación de rutas de red entre entidades pares de transporte. Cuando se necesitan retransmisiones, esta capa proporciona las funciones de enrutamiento y retransmisión. La calidad del servicio se negocia entre la red y las entidades de transporte en el momento en que se establece la conexión. Esta capa también es responsable del control de la congestión de la red.
  • La capa de enlace de datos realiza la configuración, el mantenimiento y la liberación de las conexiones de enlace de datos. Los errores que ocurren en la capa física se detectan y pueden corregirse. Los errores se informan a la capa de red. Esta capa define el intercambio de unidades de enlace de datos (incluido el control de flujo).
  • La capa física describe detalles como las características eléctricas de la conexión física, las técnicas de transmisión utilizadas y la configuración, el mantenimiento y la limpieza de las conexiones físicas.

En contraste con el esquema de capas de TCP/IP, que asume una red sin conexión, RM/OSI asumió una red orientada a la conexión. Las redes orientadas a conexión son más adecuadas para redes de área amplia y las redes sin conexión son más adecuadas para redes de área local. La comunicación orientada a la conexión requiere alguna forma de sesión y circuitos (virtuales), por lo tanto, la capa de sesión (en el modelo TCP/IP que falta). Los miembros constituyentes de ISO se preocuparon principalmente por las redes de área amplia, por lo que el desarrollo de RM/OSI se concentró en las redes orientadas a la conexión y las redes sin conexión se mencionaron por primera vez en un apéndice de RM/OSI y luego se incorporaron en una actualización de RM/OSI.

En ese momento, el IETF tuvo que lidiar con esto y con el hecho de que Internet necesitaba protocolos que simplemente no existían. Como resultado, el IETF desarrolló su propio proceso de estandarización basado en un "consenso aproximado y código en ejecución". El proceso de estandarización se describe en RFC 2026.

Hoy en día, el IETF se ha convertido en una organización de estándares para los protocolos en uso en Internet. RM/OSI ha ampliado su modelo para incluir servicios sin conexión y, debido a esto, tanto TCP como IP podrían convertirse en estándares internacionales.

Taxonomías

Los esquemas de clasificación de los protocolos generalmente se enfocan en el dominio de uso y función. Como ejemplo de dominio de uso, los protocolos orientados a la conexión y los protocolos sin conexión se utilizan en redes orientadas a la conexión y redes sin conexión, respectivamente. Un ejemplo de función es un protocolo de tunelización, que se usa para encapsular paquetes en un protocolo de alto nivel para que los paquetes puedan pasar a través de un sistema de transporte usando el protocolo de alto nivel.

Un esquema de capas combina la función y el dominio de uso. Los esquemas de estratificación dominantes son los desarrollados por el IETF y por la ISO. A pesar del hecho de que las suposiciones subyacentes de los esquemas de estratificación son lo suficientemente diferentes como para justificar la distinción de los dos, es una práctica común comparar los dos relacionando los protocolos comunes con las capas de los dos esquemas. El esquema de estratificación del IETF se denomina estratificación de Internet o estratificación de TCP/IP. El esquema de estratificación de ISO se denomina modelo OSI o estratificación ISO.

En la configuración de equipos de red, a menudo se establece una distinción de términos técnicos: el término protocolo se refiere estrictamente a la capa de transporte y el término servicio se refiere a los protocolos que utilizan un protocolo para el transporte. En el caso común de TCP y UDP, los servicios se distinguen por números de puerto. La conformidad con estos números de puerto es voluntaria, por lo que en los sistemas de inspección de contenido, el término servicio se refiere estrictamente a los números de puerto, y el término aplicación se usa a menudo para referirse a los protocolos identificados a través de las firmas de inspección.

Contenido relacionado

Dnix

Protocolo de Control de Transmisión

Visión por computador

La visión por computadora es un campo científico interdisciplinario que se ocupa de cómo las computadoras pueden obtener una comprensión de alto nivel a...
Más resultados...
Tamaño del texto:
Copiar