Network Coding Testbed
E N D
Presentation Transcript
Network Coding Testbed Jeremy Bergan, Ben Green, Alex Lee
Presentation Overview • Background Information • Project Overview • Framework Design • Progress and Plan
Network Coding • Intelligently combining packets at intermediate nodes to increase network throughput Network Coding Overview
ANC: Decoding Interfered Signals • Node1 and Node2 simultaneously transmit • Signals interfere at intermediate node • Intermediate node amplifies and forwards combined signal • Node1 can decode Node2's message based on knowledge of the message it sent previously Sachin Katti, Shyamnath Gollakota, Dina Kattabi, Embracing wireless interference: Analog Network Coding, in ACM SIGCOMM Computer Communication Review v.37, n.4, pp 397 – 408, October 2007
Project Overview • Wireless Network Testing Framework • Use this Framework to implement and test Analog Network Coding • Implement generalized MAC for arbitrary topologies • GNU Radio • Mature Signal Processing Libraries • Universal Software Radio Peripheral (USRP)
Requirements • Implement a testing framework for wireless networks • Implement a Network coding scheme with equal or better throughput than traditional networks • Implement ANC MAC • Practical application to arbitrary network topologies • Use of Universal Software Radio Peripheral (USRP) • Use of GNU Radio signal processing libraries • Modular design
Constraints • USRP • Number of nodes • Frequency Range • Bandwidth • Transmission Power • Processing • CPU Cycles • Time
Assumptions • Tested under reasonable conditions • Normal level of background noise • Global knowledge of routing at each node • Routing patterns will be pre-generated • Routing protocols outside scope of this project
Resources • 14 USRPs • All with daughter-boards able to transmit and receive between 2.4 - 2.5 GHz • 5 Dell Optiplex Computers • 3 With the Ubuntu Operating System • 2 With Red Hat Linux Operating System • Various Daughter Boards • Transmitters with different frequency range • Receivers with different frequency range • Transceivers
Functional Decomposition • Prototype in Matlab • Test in Matlab Design Process
System Design Host: Generates and interprets data Network: Packetizes and determines data route MAC: Arbitrates channel access. Coordinates transmission among nodes Physical: Modulation/Demodulation Testing and Logging: Tools used in testing of system
Physical Layer • Modulation / Demodulation • Transmission / Reception • Carrier Sense • All signal processing functions
MAC Layer • Coordinate channel access between nodes Network Layer • Packetization of data • Routing Path is predetermined for each packet • Packet scheduling
Host Layer • Generates data to send • Receives and processes data • Several possible data types • Random data • Pre-determined pattern • Streaming media (audio/video) • Kernel network interface
Testing and Logging Layer • Select logging/testing options • Logging data to file from individual layers/components • Scopes/Visualization of data from individual layers/components • Generation of statistics • Validation
Basic Network Implementation • Physical Layer • QPSK modulation • MSK modulation • MAC Layer • Simplified IEEE 802.11 MAC (CSMA/CA) • Network Layer • Predetermined routing • Similar packet format as 802.11 • Host Layer • Random data • Predetermined patterns of data
Analog Network Coding Implementation • Physical Layer • MSK modulation • ANC algorithm for decoding interfered signals • MAC Layer • Modified CSMA/CA • Allows for simultaneous interfering transmissions if they will be able to be correctly decoded • Network Layer • Same as Basic network • Host Layer • Same as Basic network
ANC Topologies • Alice - Bob • Chain • X
ANC: Generalized MAC • Design a MAC that allows simultaneous transmissions when both interfered messages can be decoded • Generalized algorithm that works for multiple topologies • Distributed Algorithm • Similar to 802.11 DCF • Nodes send information about packets in buffer • Use RTS and CTS messages to coordinate interfering transmissions
Implement each component of the design in Matlab • Simulation in a controlled environment • Implement each component with GNU Radio and USRP • Compare each component with simulation results • Test framework over air Testing Procedure
Matlab Simulations • Prototyping in Matlab has started • QPSK Simulation • Transmission and Reception • Currently working on a full ANC implementation • MSK Modulation and Demodulation