A method, comprising: transmitting a training signal derived from a zero-correlation-zone, ZCZ, sequence selected from a set of ZCZ sequences over a transmit antenna of a device, the training signal configured to facilitate an estimation of a channel impulse response, CIR, for a communications channel between the transmit antenna of the device and a receive antenna of the device, the device configured to operate in a full-duplex mode, wherein the set of ZCZ sequences has a ZCZ zone length that is equal to or greater than a predefined threshold for auto-correlations and cross-correlations of the set of ZCZ sequences, and wherein the ZCZ sequence is transmitted when the device is operating in a half-duplex mode, wherein the half-duplex mode is a mode wherein training signals are transmitted in a training period where no transmission is permitted from the other end of the communications; receiving the training signal over the receive antenna of the device; estimating a CIR for a communications channel between the transmit antenna and the receive antenna according to the ZCZ sequence; receiving, by the device, a signal corresponding to a first transmission in the receive antenna; cancelling self-interference present in the received signal in accordance with the estimated CIR, the self-interference arising from a second transmission made by the transmit antenna of the device to produce an interference canceled received signal; and processing, by the device, the interference canceled signal, wherein the set of ZCZ sequences has a correlation matrix that is a scaled identity matrix, where the correlation matrix is obtained as X H X and X is a NxLb channel convolution matrix symbols from a transmit antenna, where N is the number of samples in a symbol before cyclic prefix being added, where N is an integer value, and Lb is the length of the channel impulse response CIR, and the CIR is estimated as ĝ = 1/(N*σ 2 x) X H y where σ 2 x = |x(n)| 2, x(n) is the training sequence and y is a vector of baseband samples at the receiver; further comprising mapping the ZCZ sequence to the transmit antenna of the device before transmitting the ZCZ sequence. transmitting a training signal derived from a zero-correlation-zone, ZCZ, sequence selected from a set of ZCZ sequences over a transmit antenna of a device, the training signal configured to facilitate an estimation of a channel impulse response, CIR, for a communications channel between the transmit antenna of the device and a receive antenna of the device, the device configured to operate in a full-duplex mode, wherein the set of ZCZ sequences has a ZCZ zone length that is equal to or greater than a predefined threshold for auto-correlations and cross-correlations of the set of ZCZ sequences, and wherein the ZCZ sequence is transmitted when the device is operating in a half-duplex mode, wherein the half-duplex mode is a mode wherein training signals are transmitted in a training period where no transmission is permitted from the other end of the communications; receiving the training signal over the receive antenna of the device; estimating a CIR for a communications channel between the transmit antenna and the receive antenna according to the ZCZ sequence; receiving, by the device, a signal corresponding to a first transmission in the receive antenna; cancelling self-interference present in the received signal in accordance with the estimated CIR, the self-interference arising from a second transmission made by the transmit antenna of the device to produce an interference canceled received signal; and processing, by the device, the interference canceled signal, wherein the set of ZCZ sequences has a correlation matrix that is a scaled identity matrix, where the correlation matrix is obtained as X H X and X is a NxLb channel convolution matrix symbols from a transmit antenna, where N is the number of samples in a symbol before cyclic prefix being added, where N is an integer value, and Lb is the length of the channel impulse response CIR, and the CIR is estimated as ĝ = 1/(N*σ 2 x) X H y where σ 2 x = |x(n)| 2, x(n) is the training sequence and y is a vector of baseband samples at the receiver; further comprising mapping the ZCZ sequence to the transmit antenna of the device before transmitting the ZCZ sequence.