Keywords

1 Introduction

In recent years, the functions and performances of spacecraft have been continuously developed and strengthened. Especially, the information system of spacecraft is becoming more and more informational, networked, standardized and intelligent.

There are many kinds of information and large amount of data generated and interacted on the new generation spacecrafts. The number of applications involved in information exchange is large, and the relationships are very complex. It is necessary to evolve from a traditional onboard data bus to a multi-node multi-source information network. The highly integrated onboard electronic information system has also replaced the traditional separate isolated buses and data links with integrated high-speed, high-reliability networks. With a unified network to meet the platform’s high-reliability control and large-capacity transmission requirements [1], it is modular and scalable, avoiding the sharp increase in complexity and reliability, and thus better adapt to the enhancement of spacecraft electronic information system functions. The Time Triggered Ethernet (TTE) [2] is a promising solution.

There are more and more information interaction requirements among multiple spacecraft and ground user nodes. Space information network and space-terrestrial integrated information network are the focus of current research work. Extending the widely used IP network technology to the space has become the mainstream research direction in recent years [3]. Especially, the application of IPv6 technology on spacecraft, which has broader development prospect, large address capacity and good adaptability for network dynamic, is an important key technology of future space-terrestrial integrated network [4].

In response to these development trends and needs, research and experimentation are required to integrate the IP protocol system (especially the IPv6 protocol) on the new type spacecraft bus and network. This paper presents the design scheme and implementation method of integrating TTE and IPv6 on spacecraft integrated electronic equipment in engineering experiments, including the solved technical problems.

2 Onboard TTE Network

Time-Triggered Ethernet is a new type network which integrates synchronous clock and time-triggered protocol to the widely used standard Ethernet, and can realize high-precision time synchronization and real-time performance of the whole network. TTE can be compatible with standard Ethernet event-triggered communication and real time time-triggered communication. It can meet the requirements of high reliability and real time data transmission and large capacity, random burst data transmission on the same network at the same time. The transmission rate of TTE can reach 1 Gbps, which can meet the requirement of communication capability as the onboard backbone network. TTE has perfect redundancy and fault-tolerant structure and mechanism, can provide high reliability and security, and meet the security and reliability requirements of critical scenarios.

Because of these characteristics and capabilities, TTE has been widely used in automotive network, industrial control, avionics systems, and began to be used in spacecraft electronic information systems. NASA has developed a new generation of manned spacecraft “Orion”, in which the TTE-based data transmission network has been adopted after research and comparison [5].

The TTE network includes TTE terminal nodes and switches. In order to implement a TTE network on the spacecraft, besides adding the onboard TTE switch, embedded TTE ES (end system) cards and corresponding drivers are integrated into electronic information equipments which need to work as TTE terminal nodes. The configuration of TTE ES card and its interface with the bottom board conform to the general module board specifications of spacecraft electronic products and meet the following requirements:

  1. (1)

    Conforming to the TTE1.0 specification;

  2. (2)

    Comply with IEEE802.3 Ethernet specification

  3. (3)

    Support the full duplex Ethernet link of 10/100/1000 Mbps;

  4. (4)

    Support time schedule table loading function.

In view of the spacecraft embedded software environment that TTE ES card works in, it is necessary to design the TTE ES card driver suitable for the software environment, which mainly includes two parts: the initialization program of TTE ES card and the port reading and writing data operation program according to TTE network configuration.

TTE networks support three types of communication: time-triggered (TT), rate-constrained (RC), best-effort (BE), i.e. standard Ethernet communications. TT messages are used in time-triggered applications and are sent to the network in predetermined cycles with the highest priority and the accuracy below 1 microsecond. RC messages guarantee bandwidth resources and limited delay and delay jitter. BE messages have the lowest priority according to the ordinary Ethernet communication mode. For TTE-based spacecraft information network, it is necessary to design time scheduling plan according to the specific quality of service requirements of whole network data transmission, including periodicity, delay tolerance limits, data amount, and importance and so on, and specify the ports and link types of the end systems. If it needs to mix the TTE device with the normal Ethernet device, then the TTE device should be configured to BE mode to work as the standard Ethernet.

TTE ES card has a built in network protocol architecture. In addition to being compatible with IEEE 802.3 standard Ethernet protocol, they also have a time-triggered synchronization protocol (SAE AS6802), and a network layer IP protocol (IPv4) and a transport layer protocol, UDP, built on top of the data link layer. In this way, the onboard system integrated with TTE ES card can provide the following usage mode for upper application in some scenarios without deploying external network protocol stack.

  1. (1)

    Using UDP/IPv4 protocols, upper application provides user data unit, IPv4 address and port number to TTE driver software, and communicates with UDP Com mode.

  2. (2)

    Using IPv4 protocol, the upper application provides user data unit and IPv4 address to TTE driver software, and communicates with IP Com mode.

  3. (3)

    Without using the build in UDP/IP protocols, the upper application organizes the protocol data unit by itself and submits it to the TTE ES card in RAW Com mode for transmission in TTE network.

However, if need to use more complex network protocol functions or algorithms, or use protocols other than UDP and IPv4, we can not rely solely on the TTE ES card built-in protocol processing functions. Some expert protocol stack should be deployed on top of the TTE according to the task requirements.

3 Embedded IP Protocol Stack Transplantation

Theoretical research on space information network theories, architecture, protocols and specific algorithms has been carried out for many years. There are more than one kind of proposals and schemes for space network protocol system. This paper focuses on the implementation of IP protocol stack on spacecraft.

TCP/IP is a mature protocol system widely used in terrestrial networks. There are many specific software versions. Considering the type of processor, the limitation of computing and storage capacity, and the operating system environment of the electronic information equipment on the spacecraft, the embedded protocol stack software should be selected to meet the needs of the network function and the characteristics of the space network, which is relatively suitable for the software and hardware environment on the spacecraft. On this basis, software transplantation is carried out according to the specific interface requirements of the software architecture inside the onboard computer. If the transplanted object contains more functions that are not needed in the spacecraft network, in order to avoid occupying too much storage space on the spacecraft and affecting the processing speed, it is necessary to move the “redundant” software functions and modules off, leaving only the simplest parts that do not affect the predetermined mission requirements. After the tailoring and porting adaptation are completed, the configurable parameters in the embedded network protocol stack should be configured according to the requirements and working mode before putting them into operation.

With the networking of embedded systems, many kinds of embedded network protocol stack have appeared. According to the preceding principles, the lightweight IP stack LwIP (Lightweight TCP/IP protocol stack) is selected. LwIP is derived from the classical BSD TCP/IP stack [6]. It reduces memory usage and code size while maintaining the main functions of TCP/IP protocol, so as to adapt to the embedded environment with limited resources [7]. LwIP can be ported to a variety of embedded operating system software environments.

At present, the IPv4 protocol has been serving for many years in the ground network, facing the problem of IP address space constraints, and the newer IPv6 technology is emerging. The selection of IPv6 on the spacecraft network rather than the current more popular Ipv4 is mainly for the following reasons:

  1. (1)

    The address capacity of IPv6 is sufficient.

  2. (2)

    IPv6 has the ability of neighbor discovery and automatic address placement, and is more suitable for high dynamic space network [8].

  3. (3)

    The development of IPv6 is more extensive. The newly developed spacecraft information system should have some technological foresight.

LwIP has IPv6 related protocols from version 2.0. Around the core function of the spacecraft network protocol stack, IPv6 and TTE technologies need to be integrated to form a new generation of spacecraft high-speed integrated information network platform, which is tailored and transplanted on the basis of LwIP (version 2.02). To this end, the most basic core content of LwIP, namely IPv4, IPv6 and UDP protocol related software modules are retained, and other protocol functions are deleted. The number of original source code .C files of LwIP is reduced from 122 to about 35, and most of the files in the directories of “core”, “ipv4”, “ipv6”, “netif” and “drv” are retained. In the tailoring implementation phase, an embedded experimental software engineering with the same software environment as the onboard target system can be established for debugging, compiling and experimenting when code deletion and pre-compiling switches and configuration parameters are adjusted. After the original spacecraft integrated electronic system software integrates the simplified LwIP code, the object file (.o file) after compilation will increase less than 600 kB.

4 Integration Implementation in Onboard Software Architecture

Because IPv6 protocol is needed, UDP/IPv4 protocol stack built in TTE ES card can not be used directly, but LwIP protocol stack and TTE need to be integrated into onboard integrated electronic equipment.

In terms of hardware, TTE ES card can connect to the general backplane of spacecraft integrated electronic equipment through PCI-CPCI transfer, and can be accessed its internal address space by CPU. In terms of software, it is necessary to integrate the driver of TTE ES card and LwIP protocol stack software into the software system of onboard integrated electronic equipment.

Spacecraft integrated electronic software architecture is an open, hierarchical structure, and the service function modules are flexibly combined in the form of software components, so it has better scalability. The software architecture is the integrated implementation and application of several standards in CCSDS SOIS, SLS and SIS, as well as the standards of PUS and 1553B of ECSS. It realizes the standardization, modularization and reusability of spacecraft integrated electronic software, and can be used as the basic platform of spacecraft software [9]. Figure 1 is the onboard integrated electronic software architecture before the integration of IP protocol stack and TTE network.

Fig. 1.
figure 1

Onboard integrated electronic software architecture.

As can be seen from the figure, the core of the architecture is the software middleware under the application layer and above the embedded operating system. The software middleware structure is divided into application support layer, transport layer and sub network layer. The application support layer provides supporting standard business with spacecraft platform applications. The transfer layer includes the transport layer and the network layer, which are used to process data transmission and distribution. The subnetwork layer provides a unified software interface to the upper layer, and operates different kinds of underlying data links.

The onboard integrated electronic software architecture provides good support for expanding or replacing new service functions and equipment through layered structure and component. The TTE network and its driver software and the tailored LwIP protocol stack can be integrated according to the structure and interface requirements of the architecture without affecting other original functions. The combination of TTE and IPv6 protocol can be realized to provide communication services for the upper services.

After the UDP, IPv6 and IPv4 codes in LwIP stack are processed and encapsulated as software components, they can be added to the architecture as an extension module of the transfer layer. A UDP access interface is designed for the upper layer to provide data service for sending and receiving. Mac processor and network card driver in LwIP stack need to dock with TTE ES card driver, and access operator to TTE is used as the underlying input and output interface of network card driver, as an extension module of subnetwork layer. The specific method is to modify the “ethernetif.c” file that processes the NIC driver in LwIP, including:

  1. (1)

    In the network card initialization function low_level_init() defined by LwIP, the Mac address specified by the TTE ES card is configured and the initialization program of the TTE ES card is invoked.

  2. (2)

    In the low_level_output() function defined by LwIP, the port selection and output operation program of TTE ES card are invoked.

  3. (3)

    Call the data receiving and reading program of TTE ES card in the low_level_input () function defined by LwIP.

  4. (4)

    Call the network card receiving function ethernetif_input() defined by LwIP in a TTE interrupt or background periodic software task.

Figure 2 is the relationship between LwIP and TTE protocol architecture. In the dotted frame on the right is the TTE ES card built-in processing protocol, and in the dotted frame on the left is the LwIP stack, both of which cross the transfer layer and the subnetwork layer. If only need to use UDP/IPv4 mode, it can communicate directly using UDP Com type ports provided by TTE ES cards. However, when IPv6 or other protocols are needed, the embedded LwIP stack in the system is needed to process the generated Mac frames, and then the generated Mac frames are handed over to the Mac Com or Mac Raw interface provided by the TTE ES card for transmission.

Fig. 2.
figure 2

TTE and LwIP protocol stacks structure.

5 Experiments and Verification

The whole TTE and LwIP integration test, as well as the construction of onboard TTE network and the experimental verification of IPv6 running on TTE, is divided into the following stages step by step:

  1. (1)

    The first is the integration of TTE ES card and the driver debugging. The main work is the initialization of TTE ES card and data receiving and receiving, using the TTE network card which has been configured in the ground equipment (a PC with PCIE TTE network card and Windows TTE driver and transceiver software) as the other side. A straight-through experiment between the two TTE terminals verifies the correctness of the TTE ES card driver design and the integration in spacecraft equipment. At this stage TTE communication can use the RC mode.

  2. (2)

    Secondly, the TTE ES card is used as the underlying network card of the LwIP stack. After initializing the LwIP stack and UDP interface, UDP packages are invoked from the upper layer to test the process of data transfer and output to TTE network.

  3. (3)

    Then perform debugging and experimentation of IPv6 based on TTE network. One terminal is an onboard integrated electronic device that has integrated LwIP and TTE, the other is still a ground device, using the IPv6 protocol stack in Windows 7 system, and equipped with Ethernet packet monitoring tools. IPv6 addresses and UDP port numbers of both sides are specified. UDP packets are sent from TTE terminal to ground terminal. ICMP and UDP packets are observed in ground monitoring tools. The main purpose is to debug the IPv6 neighbor discovery protocol (ND) of LwIP in the onboard software. This phase is mainly to verify that the IPv6 protocol of the tailored LwIP can work properly. In this stage the TTE must use BE mode.

  4. (4)

    After the software system integrated with TTE driver and LwIP protocol stack has been debugged and verified, the design and function of the TTE network carrying IPv6 protocol are tested between the two onboard equipments. Communication between TTE terminals can use RC mode or BE mode.

  5. (5)

    After the direct connection experiments of the two TTE terminal devices are passed, the TTE switch is added for the farther experiments. The network configuration needs to be generated in the TTE network planning tool and loaded into the TTE switch. With the TTE switch, the TT mode network communication experiment can be carried out through corresponding planning and configuration.

  6. (6)

    Finally, the network scale expansion experiment is carried out, and the number of terminals connected to the TTE switch is increased to more than 3. Each terminal uses UDP/IPv6 protocol to communicate with each other. In turn, an IPv6 communication experiment on a hybrid network composed of a TTE network and a standard Ethernet can be performed.

Expected results are obtained from the debugging tests and experimental verification conducted in the above order, which verify the correctness and effectiveness of the technical solutions and implementation methods introduced in this paper.

6 Conclusion

It is a new attempt to apply IP network protocol system and time trigger technology to spacecraft, especially to run IPv6 protocol on TTE network, which has technical value and application prospect. On the basis of integrating embedded TTE ES card hardware into spacecraft integrated electronic equipment, the embedded LwIP protocol stack software is tailored and integrated by using the layered and modular extensible framework of spacecraft integrated electronic software architecture. The transport layer, network layer and mac layer protocols are combined with the Raw Com method of the TTE ES card to enable simultaneous integration of IPv6 and time-triggered technologies on the spacecraft information network. Running IPv6 protocol system on TTE network can realize powerful and perfect network, which is easy to realize platform and payload network integration, inter- and intra- network integration, space and terrestrial expansion network integration, and ensure high reliability and real-time performance of large-capacity information transmission of spacecraft.

This paper is not a theoretical study of network protocols, but a solution to the practical technical problems of the implementation of new network technologies in aerospace engineering. The introduced design principle, implementation method and verification results can provide reference for the design and application of spacecraft information system and network using IP network protocol and time triggering technology.