## 5 Predefined Path-Based Techniques
### Dual Virtual Paths (DVP)
#### 5.2.2 DVP Operations  
The dual paths establishment of DVP consists of three phase, including announcement phase, path establishment phase, and final phase.  
(a) Announcement phase: In the first phase, each node builds a neighbor (Ne) table that contains MAC addresses of all terminal nodes. To build the Ne table, each terminal node announces itself by broadcasting an announcement (Ann) message in a network. Based on the Ann messages, all nodes in the network build the Ne table.  
(b) Path establishment phase: In this phase, all the terminal nodes establish dual virtual paths with each other and use them for point-to-point communications. This task will be done by teaching QuadBox nodes how to forward the received frames to their destinations without duplicating and forwarding them randomly. This mission is accomplished by sending a path selection (PaS) message from each terminal node to each node listed in its Ne table. In other words, the terminal nodes of each connection pair send a PaS message to each other.  
When a QuadBox receives a PaS message, it saves information of the message including the sequence number, source MAC address and destination MAC address into a pre-path (PrP) table, and then appends its identification (ID) tag, duplicates the tagged PaS message and sends them out. When a terminal node receives a PaS message that does not belong to its connection pairs, the terminal node forwards the message or deletes it if it has been forwarded before in the same direction. Each terminal node receives two copies of each PaS message sent to it, one from each direction, then builds or updates its PrP table, and finally replies with a path confirmed (PaC) message. Each copy of the PaC  
Figure 14: Forwarding unicast traffic under the ODP approach.  
message will travel through one of established dual virtual paths, and during this journey, each QuadBox will learn which port leads to the destination terminal node of that connection pair. Thus, all of the QuadBox nodes that the PaC message have been passed through become ready to forward any frame in both directions of that connection pair. The PrP tables will also be updated after this step. Eventually, after the building process of the PrP tables of all the nodes is complete, each QuadBox node will deduce another table from its PrP table to use for forwarding the received frames in both directions. This table is called the final path (FP) table. This FP table shows the input and output ports for each path.  
(c) Final phase: After completing the building process of the FP tables, the DVP approach becomes ready to use, and any data frame that needs to be sent to a destination node in a connection pair will be duplicated at its source node, and then each copy will be sent into a virtual path that has been established earlier with that destination terminal node. Each QuadBox will forward the received unicast frames to their destination terminal nodes by using its FP table.  
Figure 15 shows the process of forwarding unicast frames from source node 1 to destination node 10 under the DVP approach.  
For the connection pair of DANH nodes 1 and 10, the DVP approach established two virtual paths, including the first path of DANH 2-DANH 3-DANH 4-QuadBox 2-QuadBox 3-QuadBox 4-QuadBox 13-QuadBox 5-DANH 9, and the second path of QuadBox 1-QuadBox 12-QuadBox 11-QuadBox 14-QuadBox 10-QuadBox 9-QuadBox 8-QuadBox 7- QuadBox 6-DANH 12-DANH 11. Each of these paths transfers only one frame copy from source node 1 to destination node 10, without duplication and flooding, because QuadBox nodes in between these paths forward the frames to  
Figure 15: Forwarding unicast traffic under the DVP approach.  
destination node 10 using their FP table instead of duplicating and flooding the frames as in the standard HSR protocol.