Flight data tracker
First Claim
1. A fault-tolerant method of transmitting, storing, retrieving and analyzing flight data, via a communications network connecting aircraft, data and control server modules, comprising the steps of:
- sending to a control server an initial handshake packet from an aircraft server upon initialization at the origin of a flight, wherein the aircraft server is configured to run off of at least one central gateway node, to connect to a communications network and to transmit and receive packets over the communications network;
receiving one or more packets at the aircraft server;
determining by the aircraft server a packet type code and a source for each of the packets received at the aircraft server, andif the packet type is an acknowledgement and route query packet sent from the control server, sending to the control server a route information packet, including one or more of a flight number, a date, an origin airport, a destination airport, a route path, an expected time of departure and a pre-calculated time of arrival, andif the packet type is a data server identification packet sent from the control server, assigning a first data server on the list of data servers as a current data server for access by the aircraft server and sending a handshake control packet and flight data packets to the current data server, andcreating and recording flight data by an aircraft configured to create and record flight data;
receiving one or more packets at a data server, wherein the data server is configured to connect to a communications network and to transmit and receive packets over the communications network;
determining by the data server a packet type code and a source for each of the packets received at the data server, andif the packet type is an initial handshake packet from the control server, establishing a data server soft state for access by the aircraft server during the approximate time window, andif the packet type is an initial handshake packet from the aircraft server, sending an acknowledgement packet to the aircraft server, andif the packet type is a data packet from the aircraft server, sending an acknowledgement packet to the aircraft server, processing the message, comparing a packet sequence number to a list of packet sequence numbers previously received by the data server, andif the packet sequence number has already been received then discarding the packet, orif the sequence number has not yet been received then saving the packet data in a data server buffer memory and sending the data packet to the control server and resending the data packet to the control server until an acknowledgement packet is received from the control server for the respective data packet; and
if the packet type is an end transmission packet, closing the connection with the aircraft server, sending any remaining data packets to the control server, and closing the connection with the control server once all corresponding control server acknowledgement packets have been received;
receiving one or more packets at the control server, wherein the control server is configured to connect to a communications network and to transmit and receive packets over the communications network;
determining by the control server a packet type code for each of the packets received at the control server, andif the packet type is an initial handshake control packet sent from an aircraft server, sending an acknowledgement and route query packet to the aircraft server, and resending the action query until a route information packet is received from the aircraft server, andif the packet type is a route information packet sent from the aircraft server, identifying one or more available data servers bysending an initial handshake packet, including an approximate time window for access by the aircraft server, to the data servers,selecting one or more data servers for access by the aircraft server based on one or more of specific flight routing considerations, andsending a data server identification packet, including one or more of a list of the selected data servers, an identification number for each data server and a location for each data server, to the aircraft server, andif the packet type is a data packet sent from a data server,sending an acknowledgement packet to the data server,extracting data from the packet,comparing a packet sequence number to a list of packet sequence numbers previously received by the control server and if the packet sequence number has already been received then discarding the packet and if the sequence number has not yet been received then saving the data in an integrated data archive stored on a control server buffer memory, andperforming data mining on the dataset, retrieving data from the dataset, analyzing the data and determining a most likely cause of a disaster, accident or other mishap.
0 Assignments
0 Petitions
Accused Products
Abstract
When flights meet disaster in the mid-air, the cause of the mishap is unknown immediately. Teams are dispatched in difficult conditions to retrieve the flight data recorder (FDR) also known as black box. Until the black box is found, the exact cause of the crash cannot be determined. Sometimes it may take years to find the black box. For example, Air France flight 447 crashed into the Atlantic Ocean on Jun. 1, 2009. The cause of the accident remained unknown mainly because the black box was missing. It was found after almost two years in May 2011. The delay in finding the flight data creates risks for future flights if the crash occurred due to a manufacturing defect in the model of the plane. The ability to reach the data without the burden and need for a physical black box has obvious benefits. This idea has been discussed in the literature but no one has put forth a functional and effective method for the implementation of this concept, for example no one has determined an appropriate software scheme that would enable a universal system that doesn'"'"'t need a black box or which can function in parallel with black box. In this project, a set of algorithms for reliable transmission of flight data in real-time to distributed ground servers is developed. The attached description presents an overall structure of the proposed scheme. We also describe the methods of communicating between at least one plane server, several data servers and at least one central server controlling various components of data transmission, and the algorithms that enable the communication of data. In addition, the proposed packet header formats, the packet type codes and fault tolerance features are described.
31 Citations
18 Claims
-
1. A fault-tolerant method of transmitting, storing, retrieving and analyzing flight data, via a communications network connecting aircraft, data and control server modules, comprising the steps of:
-
sending to a control server an initial handshake packet from an aircraft server upon initialization at the origin of a flight, wherein the aircraft server is configured to run off of at least one central gateway node, to connect to a communications network and to transmit and receive packets over the communications network; receiving one or more packets at the aircraft server; determining by the aircraft server a packet type code and a source for each of the packets received at the aircraft server, and if the packet type is an acknowledgement and route query packet sent from the control server, sending to the control server a route information packet, including one or more of a flight number, a date, an origin airport, a destination airport, a route path, an expected time of departure and a pre-calculated time of arrival, and if the packet type is a data server identification packet sent from the control server, assigning a first data server on the list of data servers as a current data server for access by the aircraft server and sending a handshake control packet and flight data packets to the current data server, and creating and recording flight data by an aircraft configured to create and record flight data; receiving one or more packets at a data server, wherein the data server is configured to connect to a communications network and to transmit and receive packets over the communications network; determining by the data server a packet type code and a source for each of the packets received at the data server, and if the packet type is an initial handshake packet from the control server, establishing a data server soft state for access by the aircraft server during the approximate time window, and if the packet type is an initial handshake packet from the aircraft server, sending an acknowledgement packet to the aircraft server, and if the packet type is a data packet from the aircraft server, sending an acknowledgement packet to the aircraft server, processing the message, comparing a packet sequence number to a list of packet sequence numbers previously received by the data server, and if the packet sequence number has already been received then discarding the packet, or if the sequence number has not yet been received then saving the packet data in a data server buffer memory and sending the data packet to the control server and resending the data packet to the control server until an acknowledgement packet is received from the control server for the respective data packet; and if the packet type is an end transmission packet, closing the connection with the aircraft server, sending any remaining data packets to the control server, and closing the connection with the control server once all corresponding control server acknowledgement packets have been received; receiving one or more packets at the control server, wherein the control server is configured to connect to a communications network and to transmit and receive packets over the communications network; determining by the control server a packet type code for each of the packets received at the control server, and if the packet type is an initial handshake control packet sent from an aircraft server, sending an acknowledgement and route query packet to the aircraft server, and resending the action query until a route information packet is received from the aircraft server, and if the packet type is a route information packet sent from the aircraft server, identifying one or more available data servers by sending an initial handshake packet, including an approximate time window for access by the aircraft server, to the data servers, selecting one or more data servers for access by the aircraft server based on one or more of specific flight routing considerations, and sending a data server identification packet, including one or more of a list of the selected data servers, an identification number for each data server and a location for each data server, to the aircraft server, and if the packet type is a data packet sent from a data server, sending an acknowledgement packet to the data server, extracting data from the packet, comparing a packet sequence number to a list of packet sequence numbers previously received by the control server and if the packet sequence number has already been received then discarding the packet and if the sequence number has not yet been received then saving the data in an integrated data archive stored on a control server buffer memory, and performing data mining on the dataset, retrieving data from the dataset, analyzing the data and determining a most likely cause of a disaster, accident or other mishap. - View Dependent Claims (2)
-
-
3. A fault-tolerant system for distributed data transmission, storage, retrieval and analysis of aircraft flight data with aircraft, data and control server modules, comprising:
-
an aircraft configured to create and record flight data; at least one aircraft server configured to run off of at least one central gateway node, to transmit and receive packets over a communications network and also to contact a control server upon initialization at the origin of a flight; at least one data server configured to connect to the communications network and to receive and transmit packets over the communications network, wherein the at least one data server is a ground based server; at least one control server configured to connect to the communications network and to receive and transmit packets over the communications network, wherein the at least one control server is a ground based server, is also configured to identify at least one data server available for communication with the aircraft server and is further configured to collect flight data from the data servers and to assemble and archive a flight data dataset, and wherein the flight data is provided by the aircraft server in flight data packets comprising a unique data packet header structure, wherein the at least one data server is configured to discard duplicate flight data packets based on the unique data packet header structure, and wherein the control server is configured to discard duplicate flight data packets based on the unique data packet header structure and assemble the flight data into a complete and non-redundant data set. - View Dependent Claims (4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18)
-
Specification