From Nsnam
Jump to: navigation, search

Main Page - Current Development - Developer FAQ - Tools - Related Projects - Project Ideas - Summer Projects

Installation - Troubleshooting - User FAQ - HOWTOs - Samples - Models - Education - Contributed Code - Papers

Return to Summer Projects page.

ns-3 is participating in the 2016 ESA Summer of Code in Space with one student project.

Project overview

  • Project: Optical satellite systems
  • Student: Michael Di Perna
  • Mentors: Jani Puttonen, Tommaso Pecarolla, Tom Henderson
  • Code:
  • About me: I am a masters student (electrical engineering) in my final year at Concordia University (Montreal, CA). My field of research is in optimal control of single and multi-agent systems. I have experience in both aerospace and robotics fields. My personal research interests include spacecraft and communication networks.

Project goals

This project's goal is to provide the foundation to simulate optical satellite systems, such as the European Data Relay System (EDRS), for future researchers to build upon. The main focus of this project will be to develop the channel models between a GEO satellite and an optical ground station (OGS) and between a GEO and LEO satellite. The project should provide the following upon completion:

  • An atmospheric model for the GEO to OGS channel
  • Capability to simulate different weather conditions (i.e. fog or rain)
  • A mobility model for the satellites
  • An implementation of a Space Data Link Protocol (SDLP) (time permitting)

Current Scope

The OSS project currently provides the following functionality:

  • An atmospheric model for the GEO to OGS channel

The atmospheric model is implemented and is represented through the use of the propagation loss models (free space path loss, scintillation index, mean irradiance).

  • Capability to simulate different weather conditions (i.e. fog or rain)

The index of refraction of the atmosphere can be changed by varying parameters that are exposed as attributes. A flat loss may be added for rain/fog in the future.

  • A mobility model for the satellites

A constant mobility model is in use, which roughly represents a GEO to OGS link. Mobility models that are currently available, or that are in development, may be considered for integration in the future.

  • An implementation of a Space Data Link Protocol (SDLP) (time permitting)

A brief outline has been created to implement a MAC layer described by the Consultative Committee for Space Data Systems (CCSDS). The MAC layer would primarily deal with framing and the division of packets between frames.

Current Work Status

We are in the process of preparing for a code review on the implemented features. Following this code review, we will be looking to complete some missing or incomplete features for the GEO to OGS link. This includes:

  • Create Helpers
  • Create a NetDevice
  • Finish the Error Model

The final few weeks of the project will be likely focused on implementing a basic MAC layer based on the standards recommended by the CCSDS.


Design and open issues are summarized in this document.

Original Schedule

The project will span 13 weeks and is organized as follows.

Project Definition1 Week

  • Familiarize with ns-3 simulator
  • Investigate Data Link layer protocols (SDLP)

Channel Model Research 2 Weeks

  • Research channel models for optical satellite systems
  • Begin documentation of model and code structure

Channel Model Integration 2 Weeks

  • Integrate channel model with ns-3
  • Test channel model (test cases and comparisons with experimental data)
  • Documentation

Mobility Model Research 2 Weeks

  • Investigate currently available satellite mobility models
  • Begin documentation of model and code structure

Channel Model Integration 2 Weeks

  • Integrate satellite mobility model with ns-3
  • Test mobility model (test cases and comparisons with experimental data)
  • Documentation

Data Link Layer Structure 1 Week

  • Code structure for either AOS or TM SDLP

Data Link Layer Implementation 2 Weeks

  • Implement the selected SDLP in ns-3
  • Documentation and testing

Project Buffer/Maintenance 1 Week

  • Project documentation
  • Finish ns-3 integration

Project Components

OSS Block Diagram

Channel Model

A new propagation loss model has been added (FsoPropagationLossModel) which models the losses in the downlink of a GEO to OGS link. The FsoChannel is a container class which contains pointers to the loss model as well as the RX/TX and delay model.

As the optical beam propagates through the atmosphere it is refracted in pockets of turbulence. This process, known as scintillation, causes the irradiance of the beam to vary stochastically at the receiver. The loss model uses the Hufnagel-Valley (HV) model to determine the index of refraction of the atmosphere as a function of altitude. The HV model is then used to calculate the scintillation index which is used to determine the parameters of a log-normal distribution for the irradiance at the receiver.

The uplink channel, from OGS to GEO, requires a separate loss model and is not yet implemented. The two links are asymmetric due to the difference in proximity of the transmitter to the atmosphere. In the uplink case, the concentrated beam is much more susceptible to refraction when compared with the downlink. The downlink beam can be modeled as a planar wave as it enters the atmosphere.

Propagation Loss Model

The propagation loss model is divided into a chain of individual models as shown in the block diagram. The free space loss applies a reduction in power due to free space propagation, the mean irradiance is computed, and finally the scintillation index is calculated. Each of these values are applied to the FsoSignalParameters struct which is sent along with the packet. To include weather effects, such as losses due to rain, one can add another loss model to the chain.

Antenna Model

New antenna models, LaserAntennaModel and OpticalRxAntennaModel, have been created for the project. The LaserAntennaModel contains the beamwidth (meters) which represents the distance from the beam axis at which the amplitude drops to 1/e, the transmitter power and gain (dB), and the wavelength of the optical signal. The OpticalRxAntennaModel contains the receiver gain (dB) and the aperture diameter (meters).

Error Model

The error model under consideration involves a two tier model: a packet level and a link model. The packet level error model provides a mean bit error rate (BER) based on the use of on-off keying (OOK). The mean BER is used to provide the probability of error to the physical layer and may be considered constant should the atmospheric conditions remain constant. The link error model takes into consideration fades which drop the irradiance at the receiver below a specified threshold. The mean fade time provides a mean duration for which the irradiance may stay below this threshold. During this time period any packets being received would be lost. The mean fade time can vary from 1 millisecond to 10's of microseconds depending on the threshold.

Physical Layer The FsoPhy class implements a physical layer for the Fso module. It provides the parameters for the optical signal by referencing the LaserAntennaModel and uses the error model on the receive end to determine the probability of success of the incoming packet.

Midterm code review

The midterm review is being conducted during the week of August 22.

Code review issue: (patchset 1)


Final code review

Final code review posted on October 14, 2016.

Code review issue: (patchset 2)