The offset-based scheme also supports synchronized transmit of frames on multiple ports on multiple SmartNICs.
Synchronizing SmartNICs for transmit on time stamp
If the transmission time is to be synchronized across ports on multiple SmartNICs, the SmartNICs must be time-synchronized to ensure a common notion of time.
Also, time stamps in the sequences of frames to be transmitted on different ports must be based on a common notion of time. If this is not the case, frames will be transmitted with the correct relative distance on each port, however, asynchronously across ports.
Example configuration
The following figure shows a configuration in which a host application is transmitting frames on two SmartNICs.
Calculating the offset
The synchronized start is obtained by writing a common constant offset ∆ to the offset register for each port used. The time stamp of the first frame is used as the reference for calculating the common offset value, similarly to the calculation for transmit on time stamp on a single port. The additional offset TD part of ∆ must be large enough to allow all the ports to be initialized and for allowing the frames scheduled for transmission to be placed in the transmit buffer system of all the SmartNICs, so that all ports are ready for transmission when the transmit time for the first frame occurs, as illustrated in the following figure.