17
Mesh network implementation between Nokia Internet Tablet and OLPC/XO devices Arina Rudakova (Open Source Linux Lab, Saint-Petersburg Electrotechnical University «LETI») 5th FRUCT seminar Saint-Petersburg 30 th of April 2009

N8xx olpc connectivity

Embed Size (px)

DESCRIPTION

 

Citation preview

  • 1. Mesh network implementation betweenNokia Internet Tablet and OLPC/XO devices Arina Rudakova (Open Source Linux Lab, Saint-Petersburg Electrotechnical University LETI) 5th FRUCT seminar Saint-Petersburg 30th of April 2009
  • 2. Introduction Goal Heterogeneous Mesh Network between: 1) Nokia N8x0 2) OLPC XO Steps 1. Nokia Internet Tablet 1) mesh driver upgrade 2) kernel upgrade 2. OLPC XO 1) mesh driver upgrade 2) kernel upgrade 3. Other needed drivers patching 2
  • 3. Mesh NetworkMesh Networking network technology providing multi- hop data forwarding and self-configuration.It makes higher levels think that the network is fully connected.The matter of our concern is IEEE 802.11s network a wireless Mesh Network based on Wi-Fi technology.IEEE 802.11s standard has a status of draft. 3
  • 4. Hardware details Nokia N800 Networking: STLC4560 chip 802.11b/g (2.45GHz)Nokia N810 Networking: OLPC XO Networking: STLC4560 chip Marvell Libertas chipset 802.11b/g (2.45GHz) 802.11b/g (2.4GHz) 4
  • 5. PrerequisitesPrism54 is a family of Wi-Fi PHY chips which may be wired to the hostcomputer through PCI/USB/SPI interface.STLC4560 is a member of this family with SPI interface. Nokias N800and N810 carry this chip on-board. 5
  • 6. Prerequisitesp54 driver that existed in Linux could work with chips connected throughPCI and USB. It is well modularized, with all common code inp54common.c and bus-specific code in p54pci.c and p54usb.crespectively. This driver supported all modes of Wi-Fi operation.stlc45xx driver by Nokia can only work with STLC4550 and STLC4560.This driver only supported Managed Mode of operation, i.e. a client of anaccess point. 6
  • 7. Initial Plan1. Proof of concept.Linux kernel from 2.6.26 supports mesh through mac80211 module.Step: connection of two different adapters using 2.6.27 kernel: 1) rt73usb-based adapter 2) b43-based adapter2. Patch STLC45xx driver for Nokia N8x0 for 2.6.27 kernel.STLC45xx is mac80211-based driver.Step: patching the driver for 2.6.27 kernel to enable Mesh on Nokia N8x0.3. Libertas_tf set-up on XO for 2.6.27 kernel.Libertas driver is a FullMAC driver so it doesnt work with mac80211.Libertas_tf is a mac80211-based driver.Step: the driver set-up for 2.6.27 kernel to enable Mesh on OLPC XO.4. Connect N810 and XO via mesh.Step: the devices Mesh interfaces enabling.Mesh Network configures automatically! 7
  • 8. Timeline 8
  • 9. IBSS-1 p54 -> stlc45xx 9
  • 10. SPI stlc45xx -> p54spi 10
  • 11. IBSS-2 stlc45xx -> x +IBSS/Mesh p54 -> stlc45xx 11
  • 12. SPI p54spi fixes 12
  • 13. Functional IBSS in stlc45xx 13
  • 14. Nokia N8x0 test-plan1. Common 1) Split-join cycles (by the loss of radio visibility): verify that high level connection gets restored after split-join cycle. 2) Firmware buffer accounting on beacon updates: verify that firmware buffer doesnt get filled by abandoned frames; on high load: verify that flow control properly stops incoming packet queues once tx space gets exhausted & restarts them when space appears.2. IBSS 1) Establishing IBSS: verify that beaconing starts in absence of other participants. 2) Joining IBSS (beacon update): verify that TSF beacon gets updated and STAs are in sync. 3) Taking beacon ownership on joining IBSS with one station: verify that beaconing occurs at even interval, perhaps by different nodes; on disappearing of beacon owner: verify that on shutdown of initial IBSS starter beaconing doesnt stop.3. Mesh 1) Establishing peer link. 2) Finding mesh path. 14
  • 15. Testing scenario1. Establish IP ping between two N8x0 and two OLPC XO located close to each other.2. Surround a building with mesh points located at the corners of the surrounding square.3. Make sure that two furthermost nodes can only see the closest intermediate nodes and intermediate nodes can see each other.4. Capture ping packets walking by the line of people with devices.5. Display hardware addresses in captured packets, showing that packets are retransmitted by the intermediate nodes. 15
  • 16. References to sourcesInitial stlc45xx IBSS patch: https://garage.maemo.org/pipermail /stlc45xx-devel/2008-November/000084.htmlThread with 2nd stlc45xx IBSS patches: https://garage.maemo.org/pipermail /stlc45xx-devel/2009-January/thread.htmlP54spi patches are present in wireless-testing git treeafter v2.6.30-rc1 label: http://git.kernel.org/?p=linux/kernel /git/linville/wireless-testing.git;a=summaryOSLL site: http://osll.spb.ru/ 16
  • 17. Questions are welcome 17