SRIF Presentation, Jan 12th, 2012 Implementation of Physicallayer Network Coding Lu Lu 12th/January/2012 (Joint work with Mr. Taotao WANG, Prof. Soung Chang LIEW and Dr. Shengli ZHANG) Outlines • 1. Background of Physical-layer Network Coding (PNC) • 2. PNC Realization Challenges – Asynchrony, Channel Estimation, Joint Channel-decoding and Network Coding (JtCNC) – Our approaches to tackle them • PNC in the frequency-domain (FPNC) with OFDM, Design the Frame Format to suit for PNC and XORCD decoding • 3. Effect of Delay Asynchrony in Frequency Domain • 4. Experimental Results – FPNC Implementation over Software Radio Platform – Experimental Results • 5. Conclusion and Future Works 2015/4/13 2 1. Introduction to PNC End Node A Relay Node R End Node B Figure 1: PNC illustration. • PNC, first proposed in [PNC]. The simplest system in which PNC can be applied is the two-way relay channel (TWRC), in which two end nodes A and B exchange information with the help of a relay node R in the middle, as illustrated in Fig. 1. • Prior to this paper, only a simplified version of PNC, called analog network coding (ANC) [ANC], has been successfully implemented. The advantage of ANC is that it is simple to implement; the disadvantage, on the other hand, is that the relay amplifies [PNC] S. Zhang, S. C. Liew, and P. P. Lam. “Hot Topic: Physical Layer Network Coding,” in Proc. 12th MobiCom, 2006. [ANC] S. Katti, S. Gollakota, and D. Katabi, “Embracing Wireless Interference: Analog Network Coding,” in ACM 2015/4/13 3 SIGCOMM, 2007. 2. PNC Realization Challenges • Asynchrony – Without precoding and synchronization of the two end nodes, signals from nodes A and B may arrive at the relay R with symbol and carrierphase misalignments. – Solution: PNC with OFDM (FPNC) • Channel Estimation – In PNC, the relay needs to estimate two channels based on simultaneous reception of signals (and preambles) from the two end nodes. – Solution: FPNC Frame Format Design • Joint Channel-decoding and Network Coding (Jt-CNC) – In our FPNC design, we adopt the convolution code as defined in the 802.11 a/g standard. – Solution: Using simple XOR-CD decoding 2015/4/13 4 Asynchrony Freq. Freq. X A [1] X B [1] x A [1] x A [2] x A [n 1] x A [n ] ... ... xB [1] xB [2] X A [n ] X B [n ] Symbol duration in FPNC (a) ... xB [n 1] xB [n ] Time Symbol duration in TPNC Time (b) Figure 2: PNC with time asynchrony: (a) frequency-domain physical-layer network coding (FPNC); (b) time-domain physical-layer network coding (TPNC). • To deal with asynchrony, our FPNC implementation makes use of OFDM to lengthen the symbol duration within each subcarrier. Then, independent XOR PNC mapping is performed within each subcarrier. OFDM splits a high-rate data stream into a number of lower-rate streams over a number of subcarriers. 2015/4/13 5 Channel Estimation 320 samples 10 short training symbols 160 samples 2 long short training symbols 128 samples Node A s1 s2 s3 s4 s5 s6 s7 s8 s9 s10 CP Node B L1 s1 s2 s3 s4 s5 s6 s7 s8 s9 s10 L2 0 0 0 CP L1 data L2 0 data Cyclic prefix 16 samples Figure 3: FPNC preamble format. • • In our implementation, we solve this problem by assigning orthogonal training symbols and pilots to the end nodes, as shown in Fig. 3. In PNC, we have two CFOs at the relay. To strike a balance, our solution is to compensate for the mean of the two CFOs {will be elaborated later}. 2015/4/13 6 Joint CNC YR YR Channeldecoding and Network Coding Symbol-wise XOR PNC Mapper S A SB X R C ( SR ) Channel Encoder S A SB XA XB Channel Decoder CNC Figure 4: (Upper) Link-by-link channel-coded PNC, including channel-decoding and network coding (CNC) process and channel encoding. (Lower) XOR-CD design for CNC. • In FPNC, we choose a design that is amenable to simple implementation, as shown in Fig. 4. We refer to this CNC design as XOR-CD. 2015/4/13 7 3. Effect of Delay Asynchrony • Effective Discrete-time Channel Gains x A (t ) x A [n ] g A (t ) p (t ) MF xB (t ) xB [n ] p (t ) g B (t ) w(t ) hA [ n ] x A [n ] y R (t ) y R [n ] y R [n ] xB [n ] hB [n ] (a) w[n ] (b) hA [ n ] Figure 5: (a) Continuous-time channel model for PNC. (b) Equivalent discrete-time channel model for PNC. • Delay-Spread-Within-CP Requirement 2015/4/13 0 1 2 3 …… DA-1 DA DA+1 0 1 2 3 …… n hB [n ] n DB-1 DB DB+1 8 FPNC Expression (Freq.) • We remark that our discussion so far in this section has assumed the absence of CFO. When there is CFO, inter-carrier interference (ICI) may occur, and this will be further discussed in the following slices. 2015/4/13 9 FPNC Mapping • In our implementation, we adopt a simple “log-max approximation” that yields the following decision rule: 2015/4/13 10 4. Experimental Results • FPNC Implementation over Software Radio Platform • We implement FPNC in a 3-node GNU Radio testbed, with Software Defined Radio (SDR). The topology is shown in Fig. 1. Each node is a commodity PC connected to a USRP GNU radio. – Hardware: We use the Universal Software Radio Peripheral (USRP) as our radio hardware. Specifically, we use the XCVR2450 daughterboard operating in the 2.4/5GHz range as our RF frontend. We use the USRP1 motherboard for baseband data processing. The largest bandwidth that USRP1 could support is 8MHz. In our experiment, we use only use half of the total bandwidth for FPNC (i.e., 4MHz bandwidth). – Software: The software for baseband signal processing is based on the open source of GNURadio project. We build our system by modifying the 802.11g transmitter implementation in the FTW project [FTW]. The FTW project [FTW1], however, does not have a 802.11g receiver. Therefore, we develop our own OFDM receiver, designed specifically to tackle various issues in the FPNC system, such as CFO estimation and compensation, channel estimation, and CNC processing. [FTW] P. Fuxjaeger, et al., FTW IEEE802.11a/g/p OFDM Frame Encoder. (available at 2015/4/13 https://www.cgran.org/wiki/ftw80211ofdmtx) [FTW1] P. Fuxj¨er et al., “IEEE 802.11p Transmission Using GNURadio,” in Proc. IEEE WSR, 2010. 11 Time-Synchronous FPNC versus TimeAsynchronous FPNC Synchronous FPNC 0 Asynchronous FPNC 0 10 10 -1 -1 10 -2 10 -3 10 10 -2 10 BER BER -3 10 -4 10 -4 10 -5 10 -5 10 -6 10 -6 channel uncoded (symbol align) channel coded (symbol align) 10 15 20 SNR [dB] 10 25 channel uncoded (symbol misalign) channel coded (symbol misalign) 10 15 20 SNR [dB] 25 (a) (b) Figure 8: BER of FPNC with and without sample synchronization. The 95% confidence intervals are marked in the figures. Note that the BER here is related to whether the XOR bit is decoded 2015/4/13 correctly, not whether the individual bits from the two end nodes are decoded correctly. 12 FPNC versus Other Approaches for TWRC • • SNC: The straightforward network coding (SNC) scheme makes use of conventional network coding at the higher layer using three time slots. In SNC, node A transmits to relay R in the first time slot; node B transmits to relay R in the second time slot; relay R then XOR the two packets from A and B and transmits the XOR packets to nodes A and B in the third time slot. TS: Traditional scheduling (TS) scheme uses four time slots. In the first time slot, node A transmits to relay R; in the second time slot, relay R forwards the packet from A to node B. Similarly, the packet from node B to node A uses two additional times slots for its delivery. 2015/4/13 13 Throughput Comparison with SNC and TS Frame Error Rate Throughput Per Direction 1.2 0.5 FPNC SNC traditional scheduling 1 Throughput Per Direction 0.4 0.8 FER 0.45 FPNC SNC traditional scheduling 0.6 0.4 0.35 0.3 0.25 0.2 0.15 0.1 0.2 0.05 0 10 12 14 16 SNR [dB] (a) 18 20 0 10 12 14 16 SNR [dB] 18 20 (b) Figure 9: Frame error rate and throughput comparison of FPNC with straight-forward network coding and traditional secluding. (a) FER comparison of three approaches; (b) throughput comparison 2015/4/13 14 of three approaches. Benchmark of point-to-point OFDM BER compasison of three approaches 0 10 -1 10 -2 10 -3 BER 10 -4 10 unchannel-coded FPNC unchannel-coded SNC unchannel-coded TS channel-coded FPNC channel-coded SNC channel-coded TS -5 10 -6 10 -7 10 2015/4/13 5 10 15 SNR [dB] 20 25 15 5. Conclusion and Future Works • • • • • We have presented the first implementation of a PNC system as originally envisioned in [PNC]. In our implementation, the XOR mapping is performed in the frequency domain of an OFDM PNC system (namely, the FPNC). The implementation of FPNC requires us to tackle a number of implementation challenges, including carrier frequency offset (CFO) compensation, channel estimation, and FPNC mapping. A major advantage of FPNC compared with PNC in the time domain is that FPNC can deal with the different arrival times of the signals from the two end nodes in a natural way. Going forward, there are many rooms for improvement in our FPNC implementation. – We choose to use a simple PNC mapping method called XOR-CD in this paper, which is simple to implement but has inferior performance compared with other known methods [4] in the low SNR regime. – CFO compensation for FPNC is an area that is not well understood yet, because we have to deal with CFOs of more than one transmitter relative to the receiver. – We base our design on the 802.11 standard to a large extent with only moderate 2015/4/13modifications. However, if we do not limit our design within the framework of 802.11, there 16 might be other alternatives with potentially better performance. Thanks! Q&A 2015/4/13 17