# Systems Network Architecture

Systems Network Architecture (SNA) es una arquitectura de red, diseñada por IBM en 1974 y utilizada para la conectividad con hosts o mainframe de IBM (grandes computadoras y servidores muy robustos que soportan millones de transacciones, generalmente utilizados en bancos), así como los servidores IBM AS/400, considerados como servidores middlerange.
Por otro lado, existe el servidor “SNA Server” o el “Host Integration Server” que corriendo en sistema operativo Microsoft Windows Server, funciona como gateway entre la red de mainframes en SNA y una red TCP/IP con Windows (donde el que realiza la consulta es por lo general un host IBM, que aprovecha la infraestructura de servidores Windows NT, Windows 2000, Windows Server 2003, Windows Server 2008, Windows Server 2012).
Los bancos siguen utilizando SNA por considerarlo más seguro que el modelo TCP/IP; es común que las redes de cajeros automáticos estén conectadas bajo SNA.
Como SNA es muy complejo de utilizar para los programadores, existe una biblioteca de funciones o interfaz de programación de aplicaciones (API), llamada CPI-C, especialmente diseñada para crear aplicaciones que se comuniquen utilizando SNA.
Originalmente, fue diseñado para permitir la comunicación con un host. Cada red o subred eran controladas por este host. Las computadoras se podían comunicar con dicho host, sin embargo no podían establecer comunicación directa con otras computadoras. Este estilo de red, recibe el nombre de sub-área SNA.
Sin necesidad de host, el nuevo diseño de red que sí permite la comunicación peer-to-peer implementando SNA es el APPN (Advanced Peer-to-Peer Networking).
SNA define los estándares, protocolos y funciones usadas por los dispositivos, para permitirles la comunicación entre ellos, en las redes SNA.

## Arquitectura SNA

Es un modelo que presenta similitudes con el modelo de referencia OSI (Open System Interconnection, Interconexión de Sistemas Abiertos).
La arquitectura SNA se compone de las siguientes capas:
* Física: SNA no define protocolos específicos para su capa de control física. Se puede emplear cualquier otro estándar para su implementación.
* Control de Enlace de Datos (Data Link Control, DLC): define varios protocolos incluidos el Synchronous Data Link Control (SDLC) y el protocolo de comunicación Token Ring Network para LAN entre iguales (peers).
* Control de Ruta (Path Control): implementa muchas de las funciones de la capa de red del modelo OSI.
* Control de Transmisión (Transmission Control): proporciona un servicio de conexión de punta a punta confiable, así como servicios de cifrado y descifrado.
* Control de Flujo de Datos (Data Flow Control): administra el procesamiento de las peticiones y respuestas, asigna el turno para la comunicación, y puede interrumpir el flujo de información pedida.
* Servicios de Presentación (Presentation Services): especifica los algoritmos de transformación de datos para cambiarlos de una forma a otra, sincroniza las transacciones y coordina los recursos compartidos.
* Servicios de Transacción (Transaction Services): proporciona servicios de aplicación en forma de programas que implementan el procesamiento distribuido o servicios de gestión.