Presentation is loading. Please wait.

Presentation is loading. Please wait.

Network Coding Testbed Jeremy Bergan, Ben Green, Alex Lee.

Similar presentations


Presentation on theme: "Network Coding Testbed Jeremy Bergan, Ben Green, Alex Lee."— Presentation transcript:

1 Network Coding Testbed Jeremy Bergan, Ben Green, Alex Lee

2 Presentation Overview Background Information Project Overview Framework Design Plan & Schedule Prototyping Implementation Testing

3 Solution Network Coding is a scheme that has potentially larger throughput than current wired or wireless networks. Problem Built a network coding testbed to implement network coding protocols and topologies. Implement Analog Network Coding (ANC). Utilize the Universal Software Radio Peripheral (USRP) to send and receive the physical packet. Implement a testing and logging layer to track testbed performance.

4 Network Coding Overview Network Coding o Intelligently combining packets at intermediate nodes to increase network throughput

5 ANC: Decoding Interfered Signals 1.Node1 and Node2 simultaneously transmit o Signals interfere at intermediate node 2.Intermediate node amplifies and forwards combined signal 3.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

6 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

7 Deliverables Network Coding Testbed Implement different wireless topologies & protocols Complete Documentation Commented Code Build Instructions Repository Access Resource Requirements 3 USRPs RFX2400 Transceiver Daughterboard 3 Computers Linux Operating System GNU Radio Installed

8 Schedule

9 Design Process Functional Decomposition Prototype in Matlab Test in Matlab

10 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

11 Analog Network Coding Implementation Physical Layer o MSK modulation o ANC algorithm for decoding interfered signals MAC Layer o Modified CSMA/CA o Allows for simultaneous interfering transmissions if they will be able to be correctly decoded Network Layer o Predetermined routing o Similar packet format as 802.11 Host Layer o Random data o Predetermined patterns of data

12 Testing Procedure Implement ANC system in Matlab o Simulation in a controlled environment Tested Matlab simulation Split Matlab simulation to be implemented in GNU Radio Write & compile GNU Radio blocks Use Python to test each block Test entire framework over air

13 Matlab ANC Simulation Simulate a transmission and reception of interfered signal Decode unknown signal using ANC algorithm Advantages: Debugging system Data Visualization System organization

14 Matlab ANC: Transmission Generate two signals with random data bits Generate a pilot sequence MSK Modulation Random overlap between two signals

15 Matlab ANC: Sampling Use pilot sequence to find start of individual signals Sample at optimal time for demodulation

16 Matlab ANC: Channel Measurements Variance over a sliding window Indicator of interference Amplitude of individual signals Measured at un-interfered sections

17 Matlab ANC: Decoding Use amplitude of signals to calculate possible phase pairs Use known phase difference to determine unknown phase difference

18 GNU Radio Implementation Determine how to port code from Matlab to C++ Split code into blocks that deal with streams of data

19 GNU Radio Blocks Energy Detector Uses magnitude of signal to determine beginning and ending of signal. Sync Block Uses pilot sequence to find start of individual signals Packetizes each signal along with offset information Decoding Block Runs ANC algorithm

20 GNU Radio Block Testing Non – Trivial Must have entire block before testing Involves two languages Python and C++ SWIG makes C++ usable in Python Lacking documentation Once compiled use Python to test C++ code Link C++ blocks together using Python Generate data for blocks using Python Use Python modules to generate packets and other inputs

21 Future Additions to Testbed Complete initial design Add Modulation Schemes to Physical Layer o MQAM o MPSK Network Layer o Implement TCP/IP Testing Layer o Inter-node Coordination o Single Computer Simulation o Component Benchmarking Other Network Coding Schemes

22 Lessons Learned Conclusion Plan time requirements better Gained experience outside of normal area of study Start prototyping early in first semester Designed network testbed that implements ANC Simulated ANC system in Matlab Implementation in GNU Radio Wrote GNU Radio blocks Compiled and started testing

23 Questions?


Download ppt "Network Coding Testbed Jeremy Bergan, Ben Green, Alex Lee."

Similar presentations


Ads by Google