PowerPoint - Iowa State University

Network Coding Testbed Using Software-Defined Radio
Analog Network Coding
In current generation networks, network nodes operate by replicating and
forwarding the packets they receive. In network coding, nodes operate by
combining received packets. This allows for a more efficient and robust
network. This project aims to build on previous research as well as develop
software that can be used for future research in network coding at Iowa State.
• 100% throughput improvement – Normally would take 4 time slots for
transmission, but only takes 2 with ANC.
•Interfered message amplified and forwarded – Routing node only amplifies
interfered signal and sends it to the nodes.
•Message Decoded at Node - Because each node has knowledge of their sent
packets they can decode the received interfered message.
Problem Statement
•Current network protocols are not the most efficient.
•Network Coding is a scheme that has potentially larger throughput than
current wired or wireless networks.
•Built a network coding testbed to implement network coding protocols and
•Implement Analog Network Coding (ANC).
•Utilize the Universal Software Radio Peripheral (USRP) to send and receive
the physical packet.
• Implement a test and logging layer to track testbed performance.
Technical Details
• MSK Modulation: A form of phase shift Keying that creates the signals based
on binary data consisting of sharp transitions. MSK also has very good biterror properties and a simple demodulation algorithm.
Design Requirement
• Integrate our ANC implementation
with a simple traditional wireless
• System shows equal or better
throughput than a traditional wireless
• Each functional block of the system
shall be simulated in Matlab before
being implemented in GNU Radio.
Energy Detector
The beginning and end of the signal
are detected by measuring the
energy of the incoming signal
Variance Detector
The variance of the received signal
is a good measure of where the
interfered section starts and ends
System Design
The Testbed is based on a traditional
wireless network. Each component is
built with a standardized interface so it
can be easily modified or swapped out
for a new component.
• Host Layer: Provides functions for
generating and interpreting data.
• Network Layer: Packetization of data
and routing. Contains higher level
functions of networking.
• MAC Layer: Coordinates channel
access between nodes.
• Physical Layer: Does most signal
processing work. Defines modulation,
demodulation, carrier sensing, signal
filtering. Interfaces with USRP to
transmit/receive data.
Project Work Breadown
Matlab Simulation
Phase Estimation
Determining possible phases of
both signals using their known
amplitudes and the received
Estimated phase differences are
compared to known phase
differences from sent packet
• Matlab: Used to test entire system before code was written for GNU Radio.
• GNU Radio Block: After each block was written in C++ we used Python to
connect the blocks and test their functionality.
• Over the Air: The final test was to send packets using the USRPs. Our
ultimate goal was to send two packets, have them interfere at a router, and
be decoded at the original computer.
This project builds on previous research in network coding, particularly Analog
Network Coding. Network coding has the potential for much higher
throughput than current networks. Our testbed will help develop the research
of Analog Network Coding.
Client/Faculty Advisor: Aditya Ramamoorthy
Assitant Advisor: Shizheng Li
Synchronization of the two signals
by cross-correlation using a known
pilot sequence
May 10-08
Ben Green (CprE), Jeremy Bergan (CprE), Alex Lee (EE)