Wireless: Difference between revisions

From OLPC
Jump to navigation Jump to search
(Trac template)
Line 62: Line 62:
Here are the steps to capture wireless traffic on the xo:
Here are the steps to capture wireless traffic on the xo:


Some builds come with a script named "olpc-netcapture" that will capture traffic for 30 seconds. If your build do not have such script, then you may still follow the procedure bellow:
:*Pre-req:


# Recent builds come with tcpdump. If this is not the case, then:
If your build do not come with tcpdump, you can install it with yum:
yum install tcpdump
yum install tcpdump


First of all, kill NetworkManager
killall NetworkManager
killall NetworkManager


Then put both interfaces down and inform which classes o traffic you want to capture:
:*Then:
ifconfig msh0 down
ifconfig msh0 down
ifconfig eth0 down
ifconfig eth0 down
# echo $TRAFFIC_MASK > /sys/class/net/eth0/lbs_rtap #This doesn't apply anymore, look at the comment below (Credit to them)
echo $TRAFFIC_MASK > /sys/class/net/eth0/lbs_rtap
echo $TRAFFIC_MASK > /sys/devices/pci0000:00/0000:00:0f.5/usb1/1-1/libertas_rtap


where:
(note: other sources say this should be echo (TRAFFIC_MASK) > /sys/class/net/(eth0,msh0)/device/libertas_rtap where (TRAFFIC_MASK) is the bits shown below (i.e. 0x1, 0x2, and 0x4), and where you echo to either eth0 or msh0 - I assume you'd normally echo to eth0, unless you need to capture mesh-specific traffic? Anyway, if you check, you'll see there's no lbs_rtap, it's called libertas_rtap and it's in a /device/ subdir. Perhaps someone who understands this much better than me can edit this section and fix the above? Sources: http://lists.infradead.org/pipermail/libertas-dev/2007-July/000607.html and
:* TRAFFIC_MASK bits:
{{Trac|4805}}. http://lists.infradead.org/pipermail/libertas-dev/2007-December/001003.html did say that the driver now requires eth0 and msh0 to be taken down.)
:** Data frames: 0x1
:** Mgmt frames but beacons: 0x2
:** Beacons: 0x4


Now, you need to bring the monitoring interface up
ifconfig rtap0 up
ifconfig rtap0 up
tcpdump -i rtap0 -s 1500 -w capture.dump


And finally capture the traffic itself with tcpdump
TRAFFIC_MASK bits:
tcpdump -i rtap0 -s 128 -w capture.dump
Data frames: 0x1

Mgmt frames but beacons: 0x2
Note: In this case, you'll capture only the first 128 bytes of each frame (what is generally enough for most analyzes and saves nand space). When you think you're done, just stop tcpdump with CTRL-C.
Beacons: 0x4

You may open your capture with any tool able to decode the tcpdump file format (example: wireshark)os use tcpdump itself:
tcpdump -r capture.dump


:*Then open capture.dump with wireshark.


''To interpret mesh traffic correctly, you will want to compile wireshark with this patch:
''To interpret mesh traffic correctly, you will want to compile wireshark with this patch:

Revision as of 00:31, 7 October 2008

Antenna redirects here.
  english | 한국어 HowTo [ID# 171686]  +/-  


Design Goals

OLPC's laptops will be deployed in places where there will be very little or no infrastructure at all. We wanted to make sure that the laptops could connect to other laptops in their vicinity regardless of the presence or not of connectivity infrastructure. We also wanted to help kids share Internet connectivity without any additional infrastructure.

It became very clear that the utility of the usual laptop wired connectivity options (ethernet, modem) will be very limited under those constraints and a relative waste of our limited bill of materials budget. Instead we have to concentrate our resources to increase the utility and functionality of the wireless network adapter.

To achieve our design goals we chose to add self organizing multihop (mesh) networking capabilities to the laptop's network adapter. The constraints imposed by our Mesh Network Details mandate the use of System on Chip (SoC) Wireless Adapter, with the mesh networking protocol running directly on the adapter's CPU.

Other wiki resources are:

Network Adapter

Mesh Wireless

The Mesh wireless protocol is very nearly an implementation of the IEEE 802.11s draft.

User Experience

There is complexity in properly configuring the wireless network in the variety of use scenarios that our children will encounter. Our bias is towards making efficient use of the mesh, but in some situations, our infrastructure mode will be used. In those cases, the laptop will offer mesh portal (MPP) services to other laptops nearby. If no mesh or access point is visible, then the laptop will become a mesh point on Channel 1.

We use channels 1, 6, and 11 when possible. This lets us use three channels with essentially no overlap. Wireless routers using any of these three channels appear in the Neighborhood View.

The basic flow of making a network connection:

  1. Start with Channel 1:
    • Try DHCP. If successful, then CONNECTED/DONE (DHCP)
    • Try AUTOID. If successful, then CONNECTED/DONE (AUTOID)
  2. Goto Channel 11:
    • Try DHCP. If successful, then CONNECTED/DONE (DHCP)
    • Try AUTOID. If successful, then CONNECTED/DONE (AUTOID)
  3. Goto Channel 6
    • Try DHCP. If successful, then CONNECTED/DONE (DHCP)
    • Try AUTOID. If successful, then CONNECTED/DONE (AUTOID)
  4. Try last successful AP
    • If successful, then CONNECTED; offer MPP/DONE.
  5. (if not yet DONE) REPEAT DHCP/AUTOID loop on all channels.
  6. (if not yet DONE) Become Mesh Point on Channel 1.

Rollover will reveal the difference between DHCP and AUTOID; IP address; Gateway; DNS;. AP or Mesh; ESSID; Channel Number; and Signal Strength (AP only).

  • The AP icon on Mesh View should distinguish between access points that are open vs. requiring a key.
  • The AP icon on Mesh View should distinguish between access points on Channels 1,11,6 and other channels.
  • The AP icon should indicate that you are offering MPP service to others.
  • An ethernet icon should indicate you are offering MPP service to others.

From the Mesh View, you should be able to jump directly into Steps 1, 4, or 6 above (search for mesh, select AP, select mesh point).

Capturing wireless traffic on the xo

Here are the steps to capture wireless traffic on the xo:

Some builds come with a script named "olpc-netcapture" that will capture traffic for 30 seconds. If your build do not have such script, then you may still follow the procedure bellow:

If your build do not come with tcpdump, you can install it with yum:

yum install tcpdump

First of all, kill NetworkManager

killall NetworkManager

Then put both interfaces down and inform which classes o traffic you want to capture:

ifconfig msh0 down
ifconfig eth0 down
echo $TRAFFIC_MASK > /sys/class/net/eth0/lbs_rtap

where:

  • TRAFFIC_MASK bits:
    • Data frames: 0x1
    • Mgmt frames but beacons: 0x2
    • Beacons: 0x4

Now, you need to bring the monitoring interface up

ifconfig rtap0 up

And finally capture the traffic itself with tcpdump

tcpdump -i rtap0 -s 128 -w capture.dump

Note: In this case, you'll capture only the first 128 bytes of each frame (what is generally enough for most analyzes and saves nand space). When you think you're done, just stop tcpdump with CTRL-C.

You may open your capture with any tool able to decode the tcpdump file format (example: wireshark)os use tcpdump itself:

tcpdump -r capture.dump


To interpret mesh traffic correctly, you will want to compile wireshark with this patch: http://dev.laptop.org/~javier/patches/wireshark-0.99.5-fw-5.220.11-support.patch

To do analysis on airtime consumed by a give traffic, check this page

Antenna Reliability

The antenna "ears" have been subjected to drop testing in both the open and close positions, and survive multiple drops onto concrete from desk height. They are made of rubber surface over a polycarbonate center section, allowing them to flex upon impact.

In the event of antenna breakage, there are two antennae. A laptop will continue to function satisfactorily with a single ear in a school setting, and should suffer only slight degradation in performance in more remote settings. The ear was redesigned late in the design process (C-build and later) to simplify repair --- replacing an ear now requires the removal of only six screws, thanks to a connector embedded in the rotary hinge.

See Also

External links