46
Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Embed Size (px)

Citation preview

Page 1: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Air Traffic ControlGuy Mark LifshitzSevan Hanssian

Page 2: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Flight Communications

• Ground Control

• Terminal Control

• En Route Centers

Page 3: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Flight Communications

• Radar Controllers

• Data Controller

Page 4: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Architecture

Page 5: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Stake Holders

• The Federal Aviation Administration (FAA)• Large corporate contractor• Air traffic controllers are the end users

Page 6: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Scale

• Up to 210 consoles per en route center.• Each console contains an IBM RS/6000 CPU.• 400 to 2,440 aircraft at a time.• 16 to 40 radars• Each center has 60 to 90 control positions.

• 1 million lines of Ada code to implement.

Page 7: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Tasks

• Acquire radar reports• Input and retrieve flight plans• Handle conflict alerts and potential plane collisions• Provide recording capability for later playback • Convert reports for display on consoles• Broadcast reports to the consoles• Provide extensive monitoring & control info• Provide GUI facilities on the consoles• Allow for custom data displays on each console

Page 8: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Principal Requirements

• Ultra-High AvailabilityTarget of 0.99999 5 minutes/year unavailability

• High PerformanceMany planes, radars and consoles

Page 9: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Other Requirements

• OpennessIncorporate other software components

• Field subsets of the systemHandle budget reduction

• ModifiabilityHandle changes to hardware and software

• InteroperabilityInterface with various external systems

Page 10: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Physical View (1/9)

Page 11: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Physical View (2/9)

-“Host Computer System”-Provides processing of both surveillance and flight plan data-Each en route center has two host computers

Page 12: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Physical View (3/9)

-Air traffic controller's workstations-Provide displays of aircraft position data-Allow controllers to modify the flight data

Page 13: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Physical View (4/9)

-“Local Communication Network”-Four parallel token ring networks-One is a spare (Redundancy/load balancing.)

Page 14: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Physical View (5/9)

-Connect networks-Able to substitute the spare ring if one fails-Make other alternative routings

Page 15: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Physical View (6/9)

-Each Host is interfaced to the LCN via dual LCN interface units

-Each one is a fault-tolerant redundant pair

Page 16: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Physical View (7/9)

-Provides a backup display of aircraft position-Used if the display data provided by the host is lost.

-”External System Interface“- Interfaces radar data from the EDARC

Page 17: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Physical View (8/9)

-“Backup Communications Network”- Ethernet network (TCP/IP protocols) -Used for the EDARC interface - Used as a backup network (to the LCN)

Page 18: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Physical View (9/9)

-Test new hardware and software-Training without interfering with the ATC

-Test new hardware and software-Training without interfering with the ATC

Page 19: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Module Decomposition View (1/2)

ISSS Modules:• Computer Software Configuration Items (CSCIs):

– correspond to work assignments– form units of deliverable documentation & software– contain small software elements grouped by a coherent

theme/rationale

Modifiability:• semantic coherence for allocating responsibilities to each CSCI• abstraction of common services• anticipate expected changes, generalize module, maintain interface

stability

Page 20: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Module Decomposition View (2/2)

• Display Management• Common System Services• Recording, Analysis and Playback• National Air space System Modification• IBM AIX operating system (as the underlying

OS)

Page 21: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Process View

Page 22: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Process View

Requirement:• Avoid cold system restarts• Immediate switchover to a standby

component was desired

Design Solution:– In applications: PAS/SAS scheme– Across applications: Fault-tolerant hierarchy

Page 23: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Process View

• Functional groups– Run independently on different processors – Separate instances of the program – Maintain their own state and message handling

• Operational Units– One executing copy is primary called primary address

space (PAS)• Updates the SASs when messages arrive

– Other copies are called standby address space (SAS)

Page 24: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Process View

• In the event of PAS failure:– A SAS is promoted to the new PAS – The new PAS connects with the clients of the

operational unit– A new SAS is started to replace the failed PAS– The new SAS announces itself to the new PAS

Page 25: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Process View

Page 26: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Client-Server View

Page 27: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Client-Server View

Within Applications (PAS/SAS):– Client Operational Units send the server a service

request message– Server replies with an acknowledgement message

Issues:– Clients and servers designed to have consistent

interfaces– ISSS used simple and defined message-passing

protocols for interaction

Page 28: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Code View (1/2)

• Applications decomposed into Ada packages– Basic (type definitions)– Complex (reused across applications)

• Packages allow for– Abstraction – Information hiding

• Processes are schedulable by OS

Page 29: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Code View (2/2)

• The ISSS is composed of several programs• Ada programs are created from one or more

source files• Ada programs may contain multiple tasks

Page 30: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Layered View (1/5)

Page 31: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Layered View (2/5)

OS Kernel

Page 32: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Layered View (3/5)

Added C programs

OS Kernel

Page 33: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Layered View (4/5)

Message Helpers

Added C programs

OS Kernel

Page 34: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Layered View (5/5)

Applications

Message Helpers

Added C programs

OS Kernel

Page 35: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Fault-Tolerance View

Page 36: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Fault-Tolerance View

Each level asynchronously:• detects errors in self, peers & lower level– Heartbeat tactic– ping/echo

• Handles exceptions from lower levels• Diagnoses, recovers, reports and raises

exceptions

Page 37: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Fault-Tolerance View

Requirement:• Avoid cold system restarts• Immediate switchover to a standby component

was desired

Design Solution:– In applications: PAS/SAS scheme– Across applications:Fault-tolerant hierarchy

Page 38: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Adaptation Data

• Uses the modifiability tactic of configuration files called adaptation data

• User-or center-specific preferences• Configuration changes• Requirements changes• Complicated mechanism to maintainers• Increases the state space

Page 39: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

Code Templates

• The primary and secondary copies are never doing the same thing

• But they have the same source code• Continuous loop that services incoming

events• Makes it simple to add new applications• Coders and maintainers do not need to know

about message-handling

Page 40: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

How the ATC System Achieves Its Quality Goals

• Goal: High Availability• How Achieved: Hardware redundancy,

software redundancy• Tactic(s) Used: State resynchronization;

shadowing; active redundancy; removal from service; limit exposure; ping/echo; heartbeat; exception; spare

Page 41: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

How the ATC System Achieves Its Quality Goals

• Goal: High Performance• How Achieved: Distributed multiprocessors;

front-end schedulability analysis, and network modeling

• Tactic(s) Used: Introduce concurrency

Page 42: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

How the ATC System Achieves Its Quality Goals

• Goal: Openness• How Achieved: Interface wrapping and

layering• Tactic(s) Used: Abstract common services;

maintain interface stability

Page 43: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

How the ATC System Achieves Its Quality Goals

• Goal: Modifiability• How Achieved: Templates and adaptation data;

module responsbilities; specified interfaces• Tactic(s) Used: Abstract common services;

semantic coherence; maintain interface stability; anticipate expected changes; generalize the module; component replacement; adherence to defined procotols; configuration files

Page 44: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

How the ATC System Achieves Its Quality Goals

• Goal: Ability to Field Subsets• How Achieved: Appropriate separation of

concerns• Tactic(s) Used: Abstract common services

Page 45: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian

How the ATC System Achieves Its Quality Goals

• Goal: Interoperability• How Achieved: Client-server division of

functionality and message-based communications

• Tactic(s) Used: Adherence to defined protocols; maintain interface stability

Page 46: Air Traffic Control Guy Mark Lifshitz Sevan Hanssian