When we look at the duration for a particular step and compare to the TCP Waterfall for that step, the duration and the total time in the Waterfall doesn't always match.
Why?
Because there is an AJAX component on the transaction that is not included in the step duration but used on the TCP waterfall. causing the discrepancy in the timing on the steps details and TCP waterfall chart.