You are missing the permanence point. The permanence point is the time
when a frame is transferred from the conformance check (incoming) to the
buffer. You cannot transfer the frame at a time before you are sure it
has arrived. I think you want to implement is a cut-through switch.
right?
I though I already took into consideration of the time window choices the time needed for the packet to be stored. Also I set the permanence point to be exactly the same as ReceiveWindowEnd so giving no time delay from incoming to Buffer.
The
idea is that I was just checking if the delay of TT traffic is the same
as BE traffic, which I though it should be because no difference if the
switch is store and forward then it is store and forward for both traffic. Sending BE, RC
or TT at 0 time should be delivered at destination at same time if no
waiting is involved, again I don't know if I am missing something in the
basics of TT Standard.
The problem with SendWindowStart and ReceiveWindowEnd at the same time
is trivial: You try to send a frame that is still in the incoming
module. At the configured time the frame would be scheduled but is not
yet available. Thus it is scheduled in the next cycle.
so If I am adjusting no waiting and taking into consideration precision for clock, ticks and everything. Then receiving exactly at the time I should receive it,
ReceiveWindowEnd = ReceiveWindowstart + the packet duration (storing time in the buffer, no?)
then why at the SendWindowStart = ReceiveWindowEnd + Sending gap
The problem is that I don't get the sending gap, it can be less than packet size so how it is related to storing the packet? I found it is around 100nsec for packet size of 64B which needs 5.12usec for storing.
best regads,
Amr