Interfacing Computer Communications from Ada in a Diverse and Evolving Environment

The telecommunication gateways of large computer-based systems, such as Air Traffic Control (ATC) systems, must interface numerous constantly evolving external systems. A wide variety of communication protocols and networks are used to interface with these external systems. This include simple point-to-point serial links, dedicated Wide Area Network (WAN) links such as the Aeronautical Fixed Telecommunication Network (AFTN), high speed Local Area Networks (LAN) such as Ethernet, and various layers of the Open Systems Interconnection (OSI) protocol stack. The traditional design approach has been to entrust the tasks of receiving requests and distributing (i.e., sending the required information) to all interested external systems, to the ATC application. Obviously, versatility of external systems and communication protocols, heavily influences the application code, increases its complexity and threatens system evolution and maintenance. This paper focuses on the Connection as an abstraction encapsulating the versatile world of telecommunication protocols, proposes an Ada interface to such an abstraction, and discusses potentials for use and reuse offered by such a Connection.