Kris Pister wrote:
Hmm. I guess you're right after all - I am confused. I completely agree with your statements below, but then I re-read RFC4944 and it says: "Other non-LoWPAN protocols that wish to coexist with LoWPAN nodes should include a byte matching this pattern immediately following the 802.15.4. header." And I read the Arch Rock 6LoWPAN tutorial (which is really well done, by the way), and it says "dispatch: coexistence with other protocols over the same link". These statements do not appear to be aligned with what you wrote below.

I don't see where the statements conflict. There are two kinds of coexistence: (i) two sets of nodes operating in isolation but in the same physical vicinity and (ii) a single set of nodes operating together using multiple protocols above the link. A crypto-based solution only addresses the former efficiently.

As I see it, there are only three options:
1) we assume that MAC-layer MICs are always used for 6LoWPAN, perhaps with a well-known 6LoWPAN key, and then there is never any question about coexistence. If you're parsing the dispatch byte, you already know that this is a 6LoWPAN frame. 2) we assume 1, but plan to share MAC-layer crypto with other non-LoWPAN protocols. This sounds like a bad idea from a crypto standpoint.

Why? Do we really expect networks to operate with a single protocol? LLC/SNAP encapsulation allows multiple protocols to operate along side IP. ARP, RARP, MPLS, bridging, just to name a few. Some link-specific protocols have nothing to do with IP (e.g. link management), but operate in networks that support IP.

--
Jonathan Hui

3) we believe that non-6LoWPAN frames may get through to the network layer, talk about "coexsistence", and cross our fingers that 15.4 toy designers are all familiar with and abide by the IETF recommendations. Down this path lies mysteriously failed networks, broken deployments, and more of the same semi-functionality that has held WSN commercialization back for the last 5 years.

So which is it?  My vote is #1.

ksjp

Jonathan Hui wrote:

Kris, I think you're a bit confused on the purpose of the 6lowpan header type. The header type is completely orthogonal to whether people choose to utilize strong integrity checks. The dispatch type is analogous to the Next Header field in IP packets. It gives flexibility in constructing different header stacks, yet is easy to parse. Its what enables IPv6 to support extension headers.

Robust networks always need strong integrity checks, but integrity checks don't replace dispatch types.

--
Jonathan Hui


Kris Pister wrote:
Here's a thread from ISA that may be of interest. 6lowpan had some email a few months ago on the topic of coexistence, and the level of safety afforded by the dispatch byte. If you read Gerry's email below, you'll see that once again this approach has proven hazardous in a public forum. I'd say at least half of the WSN companies that I've talked to have fallen victim to this (Dust included - back in 2003!).

ksjp

Kris Pister wrote:
This is an example of a very common problem seen in the early stages of software development in sensor networks. Wireless HART does not, and SP100.11a should not, suffer from it. The general problem is that those unfamiliar with working in a regulated but unlicensed band are not used to the idea that there is a lot of traffic flying around at 2.4GHz, employing a wide range of MAC protocols. More subtly, even well-formed packets in your own network can be corrupted in flight in such a way that the frame check sequence (FCS) does not catch the errors. In both cases, the naive system will try to execute the instructions in a packet that is essentially random, with disastrous results. In TSMP (the basis of Wireless HART and SP100.11a data link layers), the solution to this problem is to use a message integrity code (MIC) on every packet. This 32 bit number is a cryptographic hash of the entire packet, and prevents corrupted or foreign packets from being accepted at the lowest layer of the communication stack, with a probability of 99.99999998% (fewer than one in 4 billion get through on average). For a reliable network, even this is not enough, since undetected errors might occur on the order of once per year per network. Another 32 bit MIC is used at the application layer to verify the authenticity of the sender of the message. Combined with the DLL MIC, this reduces the probability of executing random packets to something like once per age-of-the-universe per network. Even with energy scavenging, that's a long time! :) The lesson here is simple: never *ever* turn off crypto in your networks. Use well-known published keys if you want to, but keep the integrity codes in place. ksjp
--
Prof. EECS, UC Berkeley
Founder & CTO, Dust Networks
________________________________

From: Gerry Nadler [mailto:[EMAIL PROTECTED]
Sent: Mon 10/29/2007 10:31 AM
To: ISA100
Subject: [sp100] interoperability problems at ISA Houston


Everyone:

On the evening before the ISA exhibition (Monday night) I visited the show floor to see the ISA-100 booth. Most all the booths were unmanned and all was quiet except for a small group in one booth that was having problems. They were using Zigbee. Their Zigbee system was not functioning due to some type of interference. (The name of the company is not mentioned here because for the purpose of this note it is not necessary). I walked by the booth and the people were very frustrated as to the cause of their problem. I tried to help. We set up a 15.4 packet sniffer to look at the packets to see what was the cause of the problem. The vendor was using Ember chips and software stack. We got the sniffer running and looked at the packets and we saw the problem. There was nothing we could do because the 15.4 stack was being corrupted by an illegal packet(or so I thought at the time). The packets were sent to the Ember software team for analysis and they made modification to their stack and the vendor was up and running by the time the show opened on Tuesday.

I walked around the show floor at about 11 PM at night and looked to see who might be transmitting 15.4 packets. I checked the ISA-100 booth and the surrounding area and everything seemed to be shut down. I walked up and down every aisle looking for a possible transmission site. I didn't see anything except for the wireless HART booth where there was "flashing LEDs", a possible sign of RF transmissions. It could have been another Zigbee/SP-100 transmission site as well.

On Tuesday I stopped by the booth and Bob LeFort the president of Ember was at the booth. We had a nice chat and when I got back home I asked him if he could have his software people write up what they found. Below is a short analysis of the problem written by the VP of engineering at Ember. They did a great job and had the problem diagnosed and fixed before Houston show opened the next day.

I have included this because depending on your point of view this may be harbinger of things to come or it can be dismissed.. I thought the group should know what we may or may not expect in the future.

Gerry

Ember report by Skip Ashton, Ember VP Engineering.
The cause of the problem was an Ember device receiving a coordinator realignment packet. Under the 15.4 specification, this packet is intended to be unicast to an orphan device, or broadcast to a network that is changing its parameters. Receipt of this packet was causing the Ember device to change channels and PAN ID. The 15.4 specification requires this packet be sent with a 64 bit extended address for the source. However, in this case the 16 bit coordinator address for the source was being used making this an illegal packet. This illegal packet to change PAN ID was being generated by another network device at a regular interval.

Reception and processing of the coordinator realignment command is mandatory within 802.15.4. However, it should be ignored by devices that are using higher levels of control over items such as channel change. A ZigBee network device is not expecting a coordinator realignment. This command is not used to change channels within ZigBee, because a higher layer network command is used instead. As such, these type of MAC commands should be ignored.

A change was made to our stack to ignore such MAC command frames once the ZigBee stack is operational. --- You are currently subscribed to sp100 as: [EMAIL PROTECTED] To unsubscribe send a blank email to [EMAIL PROTECTED]


_______________________________________________
6lowpan mailing list
[email protected]
https://www1.ietf.org/mailman/listinfo/6lowpan

_______________________________________________
6lowpan mailing list
[email protected]
https://www1.ietf.org/mailman/listinfo/6lowpan

Reply via email to