Document

6TSCH Webex
06/21/2013
Agenda
• draft-thubert-6tsch-architecture-02 [5min]
• draft-vilajosana-6tsch-basic-00
[10min]
• Architecture with remote BBR
[10min]
• Soft cell assignment: random or not?
[20min]
• Track IDs
[10min]
• AOB
[5min]
draft-thubert-6tsch-architecture02
Not published yet
Centralized vs. Distributed
Routing
6TSCH supports a mix model of centralized routes that are computed by
a Path Computation Entity and distributed routes that are computed by
RPL over a common physical LLN.
Both RPL and the PCE may inject routes in the Routing Tables of the
6TSCH routers. In either case, each route is associated with a
topology that is indexed by an instanceID, as defined in RPL
[RFC6550]. RPL and PCE rely on shared sources to define Global and
Local InstanceIDs.
It is possible for RPL and PCE to share a same topology, in which
case the PCE routes have precedence over RPL routes in case of a
conflict.
Inside the 6TSCH domain, the flow label is used to indicate the
topology that must be used for routing and the associated Routing
Tables as discussed in [I-D.thubert-roll-flow-label].
Tunnel Mode
In tunnel mode, the frames originate from an arbitrary protocol over
a compatible MAC that may or may not be perfectly synchronized with
the 6TSCH network. An example of this would be a router with a dual
radio that is capable to receive and send Wireless HART or ISA100.11a
frames with the second radio, by presenting itself as an Access Point
or a Backbone Router, respectively.
In that mode, the PCE may coordinate with a WiHART Network Manager or
an ISA100.11a System Manager in order to specify the flows that are
to be transported transparently over the Track.
Tunnel Mode
+--------------+
|
IPv6
|
+--------------+
| 6LoWPAN HC |
+--------------+
|
6TUS
|
+--------------+
|
TSCH MAC
|
+--------------+
|
LLN PHY
|
+--------------+
+--------------+
|
LLN PHY
|
+--------------+
|
TSCH MAC
|
+--------------+
|ISA100/WiHART |
+--------------+
set
restore
+dmac+
+dmac+
|
|
|
|
|
|
|
|
|
|
|
|
+-------+
+--...-----+
+-------+
|
ingress
egress
|
|
|
|
|
|
|
|
|
|
|
|
|
|
v
Tunnel Mode
In that case, the flow information that identifies the Track is
uniquely derived from the information at the receiving end, for
instance the incoming Timeslots, or an ISA100.11a ContractId. At the
ingress 6TSCH router, the packet destination is recognized as self
but the flow information indicates that the frame must be tunneled
over a particular 6TUS Track so the packet is not punted to upper
layer. Instead, it is passed to the 6TUS sublayer for switching.
The 6TUS sublayer in the ingress router overrides the destination MAC
to broadcast and forwards.
At the egress 6TUS router, the reverse operation occurs. Based on
metadata associated to the Track, the frame is passed to the
appropriate link layer with the destination MAC restored.
Transport Mode
+--------------+
|
IPv6
|
+--------------+
| 6LoWPAN HC |
+--------------+
|
6TUS
|
+--------------+
|
TSCH MAC
|
+--------------+
|
LLN PHY
|
+--------------+
|
^
|
|
|
|
|
|
|
|
ingress
egress
sets
+----+
+----+
restores
dmac to
|
|
|
|
dmac to
brdcst
|
|
|
|
self
|
|
|
|
|
|
+-------+
+--...-----+
+-------+
draft-vilajosana-6tsch-basic-00
Status
• Follow-up on webex discussion on
06/07/2013
• Published on 06/19/2013
• http://tools.ietf.org/html/draft-vilajosana6tsch-basic-00
• Same ideas as discussed over the phone
• Comments welcome!
Architecture with remote BBR
Current Architecture
---+-----------------------|
External Network
|
+-----+
+-----+
|
| Router
|
| PCE
?
|
|
|
|
+-----+
+-----+
|
|
Remote
|
Subnet Backbone
|
+--------------------+------------------+
|
|
|
+-----+
+-----+
+-----+
|
| Backbone
|
| Backbone
|
| Backbone
o
|
| router
|
| router
|
| router
+-----+
+-----+
+-----+
o
o
o
o
o
o
o
o
o
o o
o
o o
o
o
o
o
o LLN
o
o
o
o
o
o
o
o
o o
o o
o
o
o
o
BBR
Tunneling/VLAN
---+-----------------------|
External Network
|
+-----+
+-----+
|
| Router
|
| PCE
|
|
|
|
+-----+
+-----+
|
|
|
Subnet Backbone
|
==========
+--------------------+-------------- TUNNEL ----+
|
|
==========
|
+-----+
+-----+
+-----+ (remote)
|
| Backbone
|
| Backbone
|
| Backbone
o
|
| router
|
| router
|
| router
+-----+
+-----+
+-----+
o
o
o
o
o
o
o
o
o
o o
o
o o
o
o
o
o
o LLN
o
o
o
o
o
o
o
o
o o
o o
o
o
o
PCE as forwarding engine
--------------+------------------| External Network
|
+-----+
|
| PCE/Router
|
|
Protocol?
+-----+
^ ^ ^
| | |
+---------------+ | +----------------+
|
|
|
v
v
v
+-----+
+-----+
+-----+
|
| Backbone |
| Backbone
|
| Backbone
o
|
| router
|
| router
|
| router
+-----+
+-----+
+-----+
o
o
o
o
o
o
o
o
o
o o
o
o o
o
o
o
o
o LLN
o
o
o
o
o
o
o
o
o o
o o
o
o
o
o
Hybrid
---+----------------------|
External Network
|
+-----+
+-----+
|
| Router
|
| PCE
|
|
+--|
|
+-----+
| +-----+
|
|
^ ^ ^
|
|
| | |
------------------------ | | |
| | |
| | |
+---------------+ | +----------------+
|
|
|
v
v
v
+-----+
+-----+
+-----+
|
| Backbone |
| Backbone
|
| Backbone
o
|
| router
|
| router
|
| router
+-----+
+-----+
+-----+
o
o
o
o
o
o
o
o
o o
o
o o
o
o
o
o
o LLN
o
o
o
o
o
o
o
o
o o
o o
o
o
o
o
o
Question
• PCE, ND must be maintained as separate
elements
• 6TSCH does not need to define anything
to create the connectivity between the
BBRs
• Discovery?
soft cell assignment: random
or not?
Problem
• Applies to distributed scheduling only
• Two neighbor nodes negotiate the allocation of a
cell in the schedule
• If this cell already used by other nodes in the
neighborhood  collision
• Options:
– random allocation. Collisions unlikely. Detect and fix
collisions
– Informed allocation. Neighbors maintain state.
Collisions less likely. Still detect and fix (less frequent)
collisions.
Collision probability
•
•
•
•
•
•
10 node neighborhood
Each node sends 3 pk/s
101 cells
16 channels
Random cell allocation
Collision detection
Collision occurrence? Collapse?
Overhead of re-negotiation?
Overhead maintaining state?
Informed allocation
• exchanging the changes in a node’s cell
usages bitmap instead of reporting all cell
usage bitmap periodically
• Approaches:
– Active
– Passive
– Hybrid
Using Trickle
• RFC6206, used in RPL
• To use Trickle, we need to define
– What constitutes a "consistent" transmission.
– What constitutes an "inconsistent" transmission.
– What "events", if any -- besides inconsistent
transmissions -- reset the Trickle timer.
– What information a node transmits in Trickle
messages.
– What actions outside the algorithm the protocol takes,
if any, when it detects an inconsistency.
Using track IDs
Proposal
• Use a TrackID to associate incoming cells
and outgoing cells
• TrackID is internal only, i.e. is does not
appear in the packets
• Add TrackID to cell commands
• Track (switching) table using trackID
• Schedule is union of all track tables
Any Other Business?