La pila OSI es un modelo, no una implementación. Nada obliga a una implementación a segmentarse como el modelo, y puede ser más eficiente construir múltiples capas en una sola sección de código. Por ejemplo, la implementación API de una llamada para enviar datos TCP en una máquina con una sola interfaz de Ethernet podría construir todo el paquete de una vez y entregarlo al búfer de hardware / DMA, ya que “conoce” la capa 4,3, 2 valores que se establecieron cuando se creó la conexión. El modelo indica el potencial de elección en cada capa, que es una razón para segmentar las capas en código, pero una implementación puede simplificarse en función del entorno y colapsar las capas para una mayor eficiencia.
Ahora, hay diferencias de eficiencia entre protocolos. Los cálculos de suma de verificación para TCP / UDP / IP son más simples (= eficientes) en comparación con el cálculo de suma de verificación requerido de la pila OSI (por ejemplo, TP4).
Mi opinión personal es que hubo dos razones por las que TCP / IP se ganó a los protocolos OSI.
1. Las especificaciones TCP / IP son gratuitas. OSI cobra (todavía cobra) por sus especificaciones
2. TCP / IP es más simple. TP4 tenía más características pero era mucho más difícil de entender / implementar. El principio KISS gana.
- ¿Qué es el paquete ip?
- ¿Cómo funciona realmente Port no en TCP?
- ¿Qué tan complicado y costoso sería ejecutar un intercambio de paquetes X.25 en 2016?
- ¿Se ajusta un modelo OSI a TCP / IP y viceversa?
- ¿Por qué la capa de transporte verifica los errores aunque los errores se verifican en la capa de enlace de datos?