Ha yes, that is a rather big gotcha.
The simplest way to avoid those problems is to never send
a PAUSE until you have sent more bytes than the network
can buffer -- your circuit will be fully set up before the PAUSE
token enters the network. [It is easy to measure how much
can be buffered, at least if all routes are symmetric: just send
to a channel but don't read from it on the other side].
This can be refined quite a bit, considering chokepoints
and queuing, and knowing all traffic on the network helps
even more, but this worst case already gives a pretty
small packet size.
Or did I miss something? I've never seen the problem in
practice, it won't show up until you overload the network
real good AFAICS?
Link priority and the pause control token
-
- XCore Expert
- Posts: 844
- Joined: Sun Jul 11, 2010 1:31 am