# 3 MSF: A Multi-Modal Adaptation of the 6 TiSCH Minimal Scheduling Function for the Industrial IoT
## 4 The Multi-Modal Minimal Scheduling Function
### Related to Metrics  
As explained in Section 2, supporting multi-modal operation affects all layers that derive functionality from link-layer operation. With 6 TiSCH, the chosen RPL OF imposes requirements on the TSCH SF, and vice versa. Based on the premise of avoiding excessive parent changes/local repairs [1], we combined 3 MSF with a slightly adapted version of our Dual Radio-Interface Routing Protocol for LLNs (DRiPL) OF, referred to as DRiPLOF [8]. Most changes applied to DRiPLOF relate to routing metrics (see Appendix C for other differences). Physical links [8] (Section 4.2) (which are distinct from TSCH links) now equate to interface-modes, and inferred metrics now belong to interface-modes. We use the Expected number of Transmissions (ETX) [10] (Section 4.3.2) as the inferred metric. This means that we still require a metric threshold to asses an interface-mode's status. However, as different Tx attempts of the same packet can now occur on different interface-modes, we can no longer just update ETX when a (unicast) packet is dequequeued. Instead, we perpetually  
Figure 11: Example of a successful 6P SIGNAL transaction used by 3 MSF during shadow operations, based on the fictitious setup depicted in Figure 5. Node #2 sends a SIGNAL request to its preferred parent #1, indicating that the supercells in the shadow slotframe between #2 and #1 (previously added through shadow ADD transactions) are ready to replace the existing negotiated supercells between #2 and #1. The successful completion of this SIGNAL transaction marks the end of shadow operations. calculate ETX for each interface-mode as the ratio of a Tx and ACK counter, both of which are tied to a single interface-mode of a given neighbor and are updated after each Tx attempt across said interface-mode. In addition, we penalize ETX if we fail to transmit on an interface-mode for a number of consecutive attempts, regardless of attempts on other interface-modes. To qualify as a Tx attempt, a packet must have been on-air or its transmission must have been postponed because CCA failed (CCA is not mandatory). We consider CCA failures as Tx attempts to mitigate denial-of-service attacks through jamming, as only Tx attempts lead to inferred metric updates. Figure 12 illustrates the flow of events when the process governing inferred metric updates is called. When an inferred metric changes, the preferred interface-mode towards the corresponding neighbor is (re-)selected. However, since the interface-mode used for unicast transmissions is now dictated by the supercells they occur in, the preferred interface-mode is no longer automatically used for all unicast transmissions towards a given neighbor. That is, swapping out the interface-mode to use in negotiated supercells towards the preferred parent on every preferred interface-mode change is not feasible. Thus, performing such a switch is rate-limited. We call the interface-mode to use in all negotiated supercells towards the preferred parent the \"frozen\" interface-mode. A frozen interface-mode switch can only occur when the inferred metric of the currently preferred and/or frozen interface-mode towards the preferred parent changes. If a node does not have any negotiated supercells towards its preferred parent and it has not yet initiated a (currently ongoing) 6P transaction to add such supercells, shadow operations are not needed, and the node can simply alter the CellOptions field of the 6P ADD request it will supposedly send to its preferred parent soon. In this case, a node must switch frozen interface-mode if the inferred metric of the currently preferred interface-mode towards the preferred parent is better than the inferred metric of its frozen interface-mode, i.e., without applying hysteresis. Otherwise, shadow operations are always triggered when a frozen interface-mode switch is required for one of the following reasons:  
* If the frozen interface-mode went down, switch to the currently preferred interface-mode if that one is up.