Ah sorry, I missed that, then yes, you want to add Downtime start, Downtime end and Downtime duration.

To configure your Duration field right click on the field and select "Configure dictionary", this will bring up the system entry for that field, you will need to select the Advanced view for both of the following:

A) To calculate in the field definition set "Calculated=true" and on Calculation type something like this (adjust based on your field names):

(function calculatedFieldValue(current) {

// Add your code here
var plan_dur = new GlideDateTime();
plan_dur = gs.dateDiff(current.start_date.getDisplayValue(), current.end_date.getDisplayValue(), false );
return plan_dur; // return the calculated value

})(current);

B) To use only hours/minutes/seconds, go to the Attributes field and type in: max_unit=hours

C) To set the UI Policy, this is how I did it:

D) To set the duration on the form you would need to create a couple "onChange" Client Scripts to trigger off the Start and End fields, to run something similar like the script above, but for client side field get and put g_form commands.