Computing Delays in AFDX

AFDX (Avionics Full Duplex Switched Ethernet) is developed to support mission-critical communications while providing deterministic Quality of Service (QoS) across cyberphysical avionics systems. We have found that our reality-conforming approach yields tighter delay bound estimations than the state of the art while analyzing the real-time performace of avionic system.

This documentation provides insight on how to compare the performance of reality- conforming approach vs state of the art approach .

Download Eclipse IDE

  • Download latest Eclipse IDE from the given link.
  • Link: Eclipse Downloads

    Install the Eclipse into the desired directory

  • Launch the Eclipse Installer
  • Select Eclipse IDE for Java Developers.

  • Select the directory where you want to install Eclipse.

  • Click the INSTALL option

  • After Installation is complete, Click on LAUNCH option.

  • After Installation, Launch the eclipse and select a directory as a workspace.

  • Click on Launch Button.
  • It will launch Eclipse Workspace.

  • Download AFDX Code

  • Download the Java 8 from the given link below
  • Link: AFDX Code

  • Move the AFDX project to the working directory of your project
  • Import AFDX

  • Inside Eclipse Workspace. Go to File, then select Import
  • Then go to General folder under Select an import Wizard and select Projects from Folder or Archive option.
  • Then choose the directory where AFDX folder is located and import it
  • Run the Program

  • Inside AFDX, go to OurMethod.java

  • Then run that file and record the result.

  • Inside OurMethod.java ,change the required parameters to get the values of delays for several scenarios such as: When all virtual links have the same priority, different priorities with or without frame preemption.

  • A. Get Delays for Reality Conforming method when all VLS have the same priority.

  • Go to OurMethod.java file
  • Inside getDelay1 method, set res = FPNFP or FPFP
  • In main method, set numVL(no of virtual links) to 20 or 100 depending upon no of VL’s used.
  • In main method, set numP (priority) to 1, indicate all VLs have same priority.
  • Run the code and record the delay values to plot the graph.

  • B. Get Delays for State of Art method when all VLS have the same priority.

  • Go to State_of_Art.java file
  • In main method, set numVL(no of virtual links) to 20 or 100 depending upon no of VL’s used.
  • In main method, set numOfPriority (priority) to 1, indicate all VLs have same priority.
  • In mainmethod, at end of the method, set delay to State_Of_ArtFP or State_Of_ArtNFP
  • Run the code and record the delay values to plot the graph.

  • Plotting both State of the Art and Reality Conforming Method, we get following results:

    C. Get Delays for Reality Conforming method when there are two priorities without frame preemption.

  • Go to OurMethod.java file
  • Inside getDelay1 method, set res = FPNFP
  • In main method, set numVL(no of virtual links) to 20 or 100 depending upon no of VL’s used.
  • In main method, set numP (priority) to 2, indicate all VLs have different priority.
  • Run the code and record the delay values to plot the graph.

  • D. Get Delays for State of Art Method when there are two priorities without frame preemption.

  • Go to State_of_Art.java file
  • In main method, set numVL(no of virtual links) to 20 or 100 depending upon no of VL’s used.
  • In main method, set numOfPriority (priority) to 2, indicate all VLs have same priority.
  • In main method, at end of the method, set delay to State_Of_ArtNFP
  • Run the code and record the delay values to plot the graph.

  • Plotting both State of the Art and Reality Conforming Method, we get following results:

    E. Get Delays for Reality Conforming method when there are two priorities with frame preemption.

  • Go to OurMethod.java file
  • Inside getDelay1 method, set res = FPFP
  • In main method, set numVL(no of virtual links) to 20 or 100 depending upon no of VL’s used.
  • In main method, set numP (priority) to 2, indicate all VLs have different priority.
  • Run the code and record the delay values to plot the graph.

  • F. Get Delays for State of Art Method when there are two priorities with frame preemption.

  • Go to State_of_Art.java file
  • In main method, set numVL(no of virtual links) to 20 or 100 depending upon no of VL’s used.
  • In main method, set numOfPriority (priority) to 2, indicate all VLs have same priority.
  • In main method, at end of the method, set delay to State_Of_ArtFP
  • Run the code and record the delay values to plot the graph.

  • Plotting both State of the Art and Reality Conforming Method, we get following results: