Semi-Deflection Routing: A Non-Minimal Fully-Adaptive Routing For Virtual Cut-Through Switching Network
Semi-Deflection Routing: A Non-Minimal Fully-Adaptive Routing For Virtual Cut-Through Switching Network
minimum transfer time, it cannot necessarily choose the northward movement. Turn model allows non-minimal path
shortest path to the destination. This is a similar approach to destination nodes, but certain path cannot be taken due to
with deflection (hot-potato) routing[16][17][18] and chaos prohibited turns.
3.10 Deadlock removal
This section describes the mechanism of Semi-deflection
routing. This allows prohibited turns of turn model under
certain conditions, while it guarantees deadlock-free. We
focus on the fact that deadlocks do not occur as long as
packets are moved by non-blocking on every prohibited turn
in virtual cut-through switching, because each packet can
Figure 1. Prohibited turn of North-last turn model independently detour blocked packets. First, we define “non-
blocking packet transfer” as follows.
Definition 2: (Non-waiting port) An input port and its 3.3.2 Output selection function
pair connected with a link in the neighboring node is Adaptive routing is characterized by determining adaptive
defined as “non-waiting port” when either of following is routing algorithm and output selection function (OSF).
satisfied: (a) when any available output port selection Adaptive algorithm decides a set of available output ports,
becomes a packet transfer along the prohibited turns, or (b) and OSF prioritizes output ports for assigning to packets.
a port is paired with port defined in (a).
Theorem 1: There is one non-waiting port per router at Definition 4: (Output Selection Function (OSF) of Semi-
most when network topology is two-dimensional Mesh (N × deflection routing) OSF of Semi-deflection routing
N) and applied turn model is either North-last or West-first prioritizes each port based on the following order:
model. 1) Output towards the destination
Proof: Packets that enter a router from a South input port 2) Output that goes away from the destination, but does not
can only take a prohibited turn for North-last model. loop back
Consequently, South input ports have only possibilities to be 3) Output that loops back
non-waiting ports according to Definition 2 (a). On the
other hand, for Definition 2 (b), since there is only one input It is possible to prevent livelock between non-waiting ports
port that can be paired with (a), Theorem 1 is obviously by giving loop-back selection the lowest priority.
satisfied. For West-first routing, packets that go through
routers at coordinate x = N− 1 can only take prohibited turn.
Here, there is an output port which does not make prohibited 2.3.2 Arbitration
turn either in x or y direction in case of y ≠ 0, y ≠ N − 1. An arbiter is in charge of allotting input packets to output
Condition of Definition 2 (a) is satisfied either when x = N ports. Priority of arbitration is described as follows. If none
− 1, y = 0 or x = N − 1, y = N − 1 are satisfied. In the of the rules match, the order is based on the timestamp
former case, condition is satisfied for North input port, and when packets entered the router.
South input port for the latter case. On the other hand, for
Definition 2 (b), since there is only one input port that can Definition 5: (Arbitration order of Semi-deflection
be paired with (a), satisfaction of Theorem 1 is obvious. routing)
■ 1) Packets that were injected from non-waiting input port
2) Packets whose highest prioritized output port by the OSF
Definition 3: (Loopback transfer) When a packet transfers makes prohibited turn
directly from a router’s port to adjacent router’s port which 3) Other packets
the packet was transferred from, it is called “loopback
transfer”. It is possible to prevent livelock by arbitrating (1) with the
Theorem 2: When there is only one non-waiting port, a highest priority. Also, non-blocking loop-back transfer is
packet does not stay at non-waiting port after a certain realized when other output ports are busy. By arbitrating (2)
period of time when following conditions are satisfied: (a) with high priority, non-blocking transfer to the prohibited
loopback transfer is permitted, and (b) highest arbitration direction is satisfied when the output port is available. If it is
priority is given to the non-waiting port. blocked, other vacant ports are allotted in prior to other
Proof: When buffer of forwarding input port is vacant, a input packets.
packet at a non-waiting port is transferred to one of vacant Finally, the arbiter selects other packets that are not
ports. According to Definition 2, a non-waiting port always injected from non-waiting port, or packets that does not
exists on a router that a packet is transferred back to in a wish to take prohibited turn. If only available output port
loopback manner. If any input port of forwarding router is would keep packets away from destination nodes, packets
unavailable, a packet is transferred in a loopback manner. can wait at the router input buffer until other ports to
Even when a packet exists in forwarding non-waiting input become vacant. This suppresses unprofitable increase of hop
port, packets are simply exchanged between pairing non- counts.
waiting ports when highest arbitration priority is given to
these ports. Since these packet transfer and exchange are
2.1 Router structure
done within a certain period, Theorem 2 is satisfied.
■ Based on above studies, routing which adopts the following
rules is defined as Semi-deflection routing mechanism.
Non-waiting ports in Figure 2 is marked with black color
or diagonal lines. Livelock removal of non-waiting ports is Definition 6: (Semi-deflection routing mechanism)
described in the following section. l Prohibited turns and non-waiting ports are determined
based on a turn model in the given network.
l Each router transfers packets based on priorities given by
3.11 Router structure OSFs and arbiters in the previous subsections.
This section describes the modification of router’s output
selection function and arbiters, which are necessary to Because turn model can be applied to arbitrary topology
support Semi-deflection routing mechanism. [21], application of Semi-deflection routing is not limited to
a two-dimensional Mesh topology.
(IJCNS) International Journal of Computer and Network Security, 55
Vol. 2, No. 10, 2010
Theorem 3: Semi-deflection routing is deadlock-free. ports, no deadlock occurs unless a packet transfer takes
Proof: (i) If a packet does not take a prohibited turn, it prohibited turn. Thus, buffers of forwarding input port will
does not deadlock because no cyclic-dependency occurs. (ii) be vacant according to (i), and packet transfer will be
In case of taking prohibited turn, a packet can be transferred possible. According to the above, only possible condition for
if buffers among forwarding input ports are vacant. (iii) causing a deadlock is when all packet transfer to forwarding
Even when packets exist in all buffer of forwarding input input ports to take prohibited turns, and packets
Figure 3. Uniform (1-flit) Figure 4. Matrix transpose (1-flit) Figure 5. Bit reversal (1-flit)
Figure 6. Uniform (4-flit) Figure 7. Matrix transpose (4-flit) Figure 8. Bit reversal (4-flit)
Figure 9. Uniform (8-flit) Figure 10. Matrix transpose (8-flit) Figure 11. Bit reversal (8-flit)
On the other hand, an adaptive routing can select blocking transfer among certain routers in interconnection
multiple possible paths, and make much of path diversity of networks of massively parallel computers and SANs.
the topology. The main challenge of adaptive routing is to Evaluation results show that throughput improvement
provide a large number of alternative paths so as to maintain was 2.38 times in maximum in case of 8×8 two-dimensional
average network load constant, balance the load among Mesh topology.
multiple routers, and keep average hop count low as much As the future work, we are planning to test our proposed
as possible. Another challenge is to guarantee deadlock- and routing with other topologies such as torus topology, and
livelock-freedom. A turn model described in Section 2 study other tuning techniques.
defines prohibited turns to eliminate all cyclic channel
dependency of the topology. Duato’s protocol is an adaptive
routing which makes the best use of path diversity, and is a References
fully-adaptive routing. It allows all possible paths by adding
one virtual channel for each path. [1] N.J.Boden and et al., “Myrinet: A Gigabit-per-Second
In contrast, Semi-deflection differs from the above in Local Area Network,” IEEE Micro, vol. 15, no. 1, pp.
terms of the following features. 29–35, 1995.
l Router design becomes lightweight because it does not [2] I.T.Association, “Infiniband architecture. specification
require virtual channels. volume1,release 1.0.a,” available at the InfiniBand
l It is a non-minimal fully-adaptive routing that has Trade Association, http://www.infinibandta.com, Jun.
largest path diversity. 2001.
Another approach to cope with deadlocks is deadlock- [3] F.Petrini, W. Feng, A.Hoisie, S.Coll, and
recovery-based routing, which usually employs minimal E.Frachtenberg, “The Quadrics network: high-
fully adaptive routing. It is useful only when deadlocks are performance clustering technology,” IEEE Micro, vol.
infrequent, and recently, the techniques that are applicable 22, no. 1, pp. 46–57, 2002.
for efficient deadlock recovery-based routing have been [4] P. Kermani and L. Kleinrock, “Virtual cut-through: A
proposed. When deadlock is found, one of the packets is new computer communication switching techniques,”
removed from the deadlocked paths. In overall, there are Computer Networks, vol. 3, no. 4, pp. 267–286, 1979.
two types in deadlock removal strategies: a progressive [5] W. Dally and C. Seitz, “Deadlock-Free Message Routing
method that prepares escape path, and regressive method in Multiprocessor Interconnection Networks,” IEEE
which discards and retransmits packets. The former requires Transaction on Computers, vol. 36, no. 5, pp. 547–
virtual channels, and the latter requires control mechanics 553, May 1987.
for packet disposal and retransmission. Semi-deflection [6] C. J. Glass and L. M. Ni, “The Turn Model for Adaptive
routing is a deadlock-free mechanism, so it does not require Routing,” Proceedings of International Symposium on
such control mechanisms. Computer Architecture, pp. 278–287, 1992.
Also, some methods handle deadlocks more proactively. [7] W. J. Dally and H. Aoki, “Deadlock-Free Adaptive
For example, Deflection routing guarantees deadlock-free by Routing in Multicomputer Networks Using Virtual
making a router sending out larger number of flits than it Channels,” IEEE Transaction on Parallel and
has received per cycle. Of course, each router cannot Distributed Systems, vol. 4, no. 4, pp. 466–475, 1993.
necessarily selects proper output port of each packet to the [8] A.A.Chien and J.H.Kim, “Planar-adaptive routing: low-
destinations, however deadlock does not occur because cost adaptive networks for multiprocessors,” Journal
packets do not make collisions. Also, studies of Chaos router of the ACM, vol. 42, no. 1, pp. 91–123, Jan. 1995.
have proved its livelock-freedom. Drawback of Deflection [9] J. Duato, “A Necessary And Sufficient Condition For
routing is that it cannot be applied to wormhole routing, Deadlock-Free Adaptive Routing In Wormhole
increasing number of average hop count, and increasing Networks,” IEEE Transaction on Parallel and
hardware amount due to addition of dedicated buffer for Distributed Systems, vol. 6, no. 10, pp. 1055–1067,
holding one packet per router[25]. Semi-deflection routing 1995.
differs from Deflection routing in terms of the following. [10] J.C.Martinez, J.Flich, A.Robles, P.Lopez, J.Duato, and
l Semi-deflection routing only requires non-blocking M.Koibuchi, “In-Order Packet Delivery in
transfer for selected ports of partial routers. Other Interconnection Networks using Adaptive Routing,” in
packets can wait for output ports to take appropriate Proceedings of IEEE International Parallel and
paths. Thus, average hop count is smaller than Distributed Processing Symposium, Apr. 2005, p.
Deflection routing, as shown in Section 3. 101a.
l No dedicated buffer is required for implementation. [11] M.Koibuchi, J.C.Martinez, J.Flich, A.Robles, P.Lopez,
and J.Duato, “Enforcing In-Order Packet Delivery in
System Area Networks with Adaptive Routing,”
5. Conclusions Journal of Parallel and Distributed Computing, vol.
65, pp. 1223–1236, Oct. 2005.
In this paper, we proposed Semi-deflection routing, which is [12] S. L. Scott and G. T.Horson, “The Cray T3E network:
a non-minimal fully-adaptive routing and makes the best use adaptive routing in a high performance 3D torus,” in
of virtual cut-through switching. Semi-deflection routing Proceedings of Hot Interconnects IV, Aug. 1996, pp.
does not require the use of virtual channels by allowing non- 147–156.
58 (IJCNS) International Journal of Computer and Network Security,
Vol. 2, No. 10, 2010