| < draft-wang-6tisch-6top-sublayer-00.txt | draft-wang-6tisch-6top-sublayer-01.txt > | |||
|---|---|---|---|---|
| 6TiSCH Q. Wang, Ed. | 6TiSCH Q. Wang, Ed. | |||
| Internet-Draft Univ. of Sci. and Tech. Beijing | Internet-Draft Univ. of Sci. and Tech. Beijing | |||
| Intended status: Informational X. Vilajosana | Intended status: Informational X. Vilajosana | |||
| Expires: August 18, 2014 Universitat Oberta de Catalunya | Expires: January 5, 2015 Universitat Oberta de Catalunya | |||
| T. Watteyne | T. Watteyne | |||
| Linear Technology | Linear Technology | |||
| February 14, 2014 | July 4, 2014 | |||
| 6TiSCH Operation Sublayer (6top) | 6TiSCH Operation Sublayer (6top) | |||
| draft-wang-6tisch-6top-sublayer-00 | draft-wang-6tisch-6top-sublayer-01 | |||
| Abstract | Abstract | |||
| The recently published [IEEE802154e] standard formalizes the concept | The recently published [IEEE802154e] standard formalizes the concept | |||
| of link-layer resources in LLNs. Nodes are synchronized and follow a | of link-layer resources in LLNs. Nodes are synchronized and follow a | |||
| schedule. A cell in that schedule corresponds to an atomic link- | schedule. A cell in that schedule corresponds to an atomic link- | |||
| layer resource, and can be allocated to any pair of neighbors in the | layer resource, and can be allocated to any pair of neighbors in the | |||
| network. This allows the schedule to be built to tightly match each | network. This allows the schedule to be built to tightly match each | |||
| node's bandwidth, latency and energy constraints. The [IEEE802154e] | node's bandwidth, latency and energy constraints. The [IEEE802154e] | |||
| standard does not, however, present a mechanism to do so, as building | standard does not, however, present a mechanism to do so, as building | |||
| and managing the schedule is out of scope of the standard. This | and managing the schedule is out of scope of the standard. This | |||
| document describes the 6TiSCH Operation Sublayer (6top) and the | document describes the 6TiSCH Operation Sublayer (6top) and the | |||
| commands it provides to upper network layers such as RPL or GMPLS. | commands it provides to upper network layers such as RPL or GMPLS. | |||
| The set of functionalities includes feedback metrics from cell states | The set of functionalities includes feedback metrics from cell states | |||
| so network layers can take routing decisions, TSCH configuration and | so network layers can take routing decisions, TSCH configuration and | |||
| control procedures, and the support for decentralized and centralized | control procedures, and the support for decentralized, centralized or | |||
| scheduling. In addition, 6top can be configured to enable packet | hybrid scheduling. In addition, 6top can be configured to enable | |||
| switching at layer 2.5, analogous to GMPLS. | packet switching at layer 2.5, analogous to GMPLS. | |||
| Requirements Language | ||||
| The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | ||||
| "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and | ||||
| "OPTIONAL" in this document are to be interpreted as described in RFC | ||||
| 2119 [RFC2119]. | ||||
| Status of This Memo | Status of This Memo | |||
| This Internet-Draft is submitted in full conformance with the | This Internet-Draft is submitted in full conformance with the | |||
| provisions of BCP 78 and BCP 79. | provisions of BCP 78 and BCP 79. | |||
| Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
| Task Force (IETF). Note that other groups may also distribute | Task Force (IETF). Note that other groups may also distribute | |||
| working documents as Internet-Drafts. The list of current Internet- | working documents as Internet-Drafts. The list of current Internet- | |||
| Drafts is at http://datatracker.ietf.org/drafts/current/. | Drafts is at http://datatracker.ietf.org/drafts/current/. | |||
| Internet-Drafts are draft documents valid for a maximum of six months | Internet-Drafts are draft documents valid for a maximum of six months | |||
| and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
| time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
| material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
| This Internet-Draft will expire on August 18, 2014. | This Internet-Draft will expire on January 5, 2015. | |||
| Copyright Notice | Copyright Notice | |||
| Copyright (c) 2014 IETF Trust and the persons identified as the | Copyright (c) 2014 IETF Trust and the persons identified as the | |||
| document authors. All rights reserved. | document authors. All rights reserved. | |||
| This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
| Provisions Relating to IETF Documents | Provisions Relating to IETF Documents | |||
| (http://trustee.ietf.org/license-info) in effect on the date of | (http://trustee.ietf.org/license-info) in effect on the date of | |||
| publication of this document. Please review these documents | publication of this document. Please review these documents | |||
| carefully, as they describe your rights and restrictions with respect | carefully, as they describe your rights and restrictions with respect | |||
| to this document. Code Components extracted from this document must | to this document. Code Components extracted from this document must | |||
| include Simplified BSD License text as described in Section 4.e of | include Simplified BSD License text as described in Section 4.e of | |||
| the Trust Legal Provisions and are provided without warranty as | the Trust Legal Provisions and are provided without warranty as | |||
| described in the Simplified BSD License. | described in the Simplified BSD License. | |||
| Table of Contents | Table of Contents | |||
| 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 4 | 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 4 | |||
| 2. 6TiSCH Operation Sublayer (6top) Overview . . . . . . . . . . 5 | 2. 6TiSCH Operation Sublayer (6top) Overview . . . . . . . . . . 5 | |||
| 2.1. Cell Model . . . . . . . . . . . . . . . . . . . . . . . 6 | 2.1. Cell Model . . . . . . . . . . . . . . . . . . . . . . . 7 | |||
| 2.1.1. hard cells . . . . . . . . . . . . . . . . . . . . . 7 | 2.1.1. hard cells . . . . . . . . . . . . . . . . . . . . . 8 | |||
| 2.1.2. soft cells . . . . . . . . . . . . . . . . . . . . . 8 | 2.1.2. soft cells . . . . . . . . . . . . . . . . . . . . . 8 | |||
| 2.2. Data Transfer Model . . . . . . . . . . . . . . . . . . . 8 | 2.2. Data Transfer Model . . . . . . . . . . . . . . . . . . . 8 | |||
| 3. 6top Commands . . . . . . . . . . . . . . . . . . . . . . . . 11 | 3. 6top Commands . . . . . . . . . . . . . . . . . . . . . . . . 11 | |||
| 3.1. Cell Commands . . . . . . . . . . . . . . . . . . . . . . 13 | 3.1. Cell Commands . . . . . . . . . . . . . . . . . . . . . . 13 | |||
| 3.1.1. CREATE.hardcell . . . . . . . . . . . . . . . . . . . 13 | 3.1.1. CREATE.hardcell . . . . . . . . . . . . . . . . . . . 13 | |||
| 3.1.2. CREATE.softcell . . . . . . . . . . . . . . . . . . . 15 | 3.1.2. CREATE.softcell . . . . . . . . . . . . . . . . . . . 15 | |||
| 3.1.3. READ.cell . . . . . . . . . . . . . . . . . . . . . . 16 | 3.1.3. READ.cell . . . . . . . . . . . . . . . . . . . . . . 16 | |||
| 3.1.4. UPDATE.cell . . . . . . . . . . . . . . . . . . . . . 17 | 3.1.4. UPDATE.cell . . . . . . . . . . . . . . . . . . . . . 17 | |||
| 3.1.5. DELETE.hardcell . . . . . . . . . . . . . . . . . . . 17 | 3.1.5. DELETE.hardcell . . . . . . . . . . . . . . . . . . . 17 | |||
| 3.1.6. DELETE.softcell . . . . . . . . . . . . . . . . . . . 18 | 3.1.6. DELETE.softcell . . . . . . . . . . . . . . . . . . . 18 | |||
| skipping to change at page 4, line 5 ¶ | skipping to change at page 4, line 12 ¶ | |||
| 5. Statistics . . . . . . . . . . . . . . . . . . . . . . . . . 52 | 5. Statistics . . . . . . . . . . . . . . . . . . . . . . . . . 52 | |||
| 5.1. Statistics Metrics . . . . . . . . . . . . . . . . . . . 52 | 5.1. Statistics Metrics . . . . . . . . . . . . . . . . . . . 52 | |||
| 5.2. Statistics Configuration . . . . . . . . . . . . . . . . 53 | 5.2. Statistics Configuration . . . . . . . . . . . . . . . . 53 | |||
| 6. Monitoring . . . . . . . . . . . . . . . . . . . . . . . . . 53 | 6. Monitoring . . . . . . . . . . . . . . . . . . . . . . . . . 53 | |||
| 6.1. Monitor Configuration . . . . . . . . . . . . . . . . . . 53 | 6.1. Monitor Configuration . . . . . . . . . . . . . . . . . . 53 | |||
| 6.2. Actuation . . . . . . . . . . . . . . . . . . . . . . . . 54 | 6.2. Actuation . . . . . . . . . . . . . . . . . . . . . . . . 54 | |||
| 7. References . . . . . . . . . . . . . . . . . . . . . . . . . 54 | 7. References . . . . . . . . . . . . . . . . . . . . . . . . . 54 | |||
| 7.1. Normative References . . . . . . . . . . . . . . . . . . 54 | 7.1. Normative References . . . . . . . . . . . . . . . . . . 54 | |||
| 7.2. Informative References . . . . . . . . . . . . . . . . . 54 | 7.2. Informative References . . . . . . . . . . . . . . . . . 54 | |||
| 7.3. External Informative References . . . . . . . . . . . . . 55 | 7.3. External Informative References . . . . . . . . . . . . . 55 | |||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 55 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 56 | |||
| 1. Introduction | 1. Introduction | |||
| As presented in [I-D.ietf-6tisch-tsch], the [IEEE802154e] standard | As presented in [I-D.ietf-6tisch-tsch], the [IEEE802154e] standard | |||
| defines the mechanisms for a TSCH node to communicate, given a | defines the mechanisms for a TSCH node to communicate, given a | |||
| schedule. It does not, however, define the mechanism to build and | schedule. It does not, however, define the mechanism to build and | |||
| maintain the TSCH schedule, match that schedule to the multi-hop | maintain the TSCH schedule, match that schedule to the multi-hop | |||
| paths maintained by a network layer such as RPL or a 2.5 layer such | paths maintained by a network layer such as RPL or a 2.5 layer such | |||
| as GMPLS, adapt the resources allocated between neighbor nodes to the | as GMPLS, adapt the resources allocated between neighbor nodes to the | |||
| data traffic flows, enforce a differentiated treatment for data | data traffic flows, enforce a differentiated treatment for data | |||
| generated at the application layer and signalling messages needed by | generated at the application layer and signalling messages needed by | |||
| 6LoWPAN and RPL to discover neighbors, react to topology changes, | 6LoWPAN and RPL to discover neighbors, react to topology changes, | |||
| self-configure IP addresses, or manage keying material. | self-configure IP addresses, or manage keying material. | |||
| In a TSCH network, the MAC layer is not in charge of setting up the | In a TSCH network, the MAC layer is not in charge of setting up the | |||
| schedule that controls the connectivity graph of the network and the | schedule that controls the connectivity graph of the network and the | |||
| resources allocated to each cell in that topology. This | resources allocated to each node in that topology. This | |||
| responsibility is left to the next-higher layer, defined in this | responsibility is left to the next-higher layer, defined in this | |||
| document, called "6top". | document, called "6top". | |||
| This document describes the 6TiSCH Operation Sublayer (6top) and the | This document describes the 6TiSCH Operation Sublayer (6top) and the | |||
| main commands provided to upper network layers such as RPL or GMPLS. | main commands provided to upper network layers such as RPL or GMPLS. | |||
| The set of functionalities include feedback metrics from cell state | The set of functionalities include feedback metrics from cell state | |||
| so the network layer can take routing decisions, TSCH configuration | so the network layer can take routing decisions, TSCH configuration | |||
| and control procedures, and support for the different scheduling | and control procedures, and support for the different scheduling | |||
| mechanisms defined in [I-D.ietf-6tisch-architecture]. 6top addresses | mechanisms defined in [I-D.ietf-6tisch-architecture]. 6top addresses | |||
| the set of functionalities described in [I-D.ietf-6tisch-tsch]. | the set of functionalities described in [I-D.ietf-6tisch-tsch]. | |||
| skipping to change at page 5, line 23 ¶ | skipping to change at page 5, line 30 ¶ | |||
| on top of TSCH cells. As a cell belongs to a specific track, a label | on top of TSCH cells. As a cell belongs to a specific track, a label | |||
| header is not needed at each packet; the input cell (or bundle) and | header is not needed at each packet; the input cell (or bundle) and | |||
| the output cell (or bundle) uniquely identify the data flow. The | the output cell (or bundle) uniquely identify the data flow. The | |||
| 6top sublayer provides operations to manage the cell mappings. | 6top sublayer provides operations to manage the cell mappings. | |||
| 2. 6TiSCH Operation Sublayer (6top) Overview | 2. 6TiSCH Operation Sublayer (6top) Overview | |||
| 6top is a sublayer which is the next-higher layer for TSCH | 6top is a sublayer which is the next-higher layer for TSCH | |||
| (Figure 1), which architecture is detailed in | (Figure 1), which architecture is detailed in | |||
| [I-D.ietf-6tisch-architecture], and generaic data model is detailed | [I-D.ietf-6tisch-architecture], and generaic data model is detailed | |||
| in [I-D.wang-6tisch-6top-interface]. 6top offers both management and | in [I-D.ietf-6tisch-6top-interface]. 6top offers both management and | |||
| data interfaces to an upper layer. It includes monitoring and | data interfaces to an upper layer. It includes monitoring and | |||
| statistics collection, both of which are configurable through the | statistics collection, both of which are configurable through the | |||
| management interface. | management interface. | |||
| Protocol Stack | Protocol Stack | |||
| +-----------------------------------+ | +-----------------------------------+ | |||
| | PCEP | CoAP | | 6LoWPAN | | | | PCEP | CoAP | | 6LoWPAN | | | |||
| | PCC | DTLS | PANA | ND |RPL | | | PCC | DTLS | PANA | ND |RPL | | |||
| +------------------------------------------+ | +------------------------------------------+ | |||
| skipping to change at page 6, line 12 ¶ | skipping to change at page 6, line 37 ¶ | |||
| requires an extra flag to all cells in the TSCH schedule, as detailed | requires an extra flag to all cells in the TSCH schedule, as detailed | |||
| in Section 2.1. | in Section 2.1. | |||
| When a higher layer gives 6top a 6LoWPAN packet for transmission, | When a higher layer gives 6top a 6LoWPAN packet for transmission, | |||
| 6top maps it to the appropriate outgoing priority-based queue, as | 6top maps it to the appropriate outgoing priority-based queue, as | |||
| detailed in Section 2.2. | detailed in Section 2.2. | |||
| All 6top commands of the management and data interfaces are detailed | All 6top commands of the management and data interfaces are detailed | |||
| in Section 3. This set of commands is designed to support | in Section 3. This set of commands is designed to support | |||
| decentralized, centralized and hybrid scheduling solutions. They | decentralized, centralized and hybrid scheduling solutions. They | |||
| form a conceptual interface an upper layer can used; implementations | form a conceptual interface an upper layer can use; implementations | |||
| can use this set of commands, or any equivalent alternative. | can use this set of commands, or any equivalent alternative. | |||
| 6top defines TSCH Information Elements (IEs) for neighbors nodes to | 6top defines TSCH Information Elements (IEs) for neighbors nodes to | |||
| negotiate scheduling cells in the TSCH schedule. The format of those | negotiate scheduling cells in the TSCH schedule. The format of those | |||
| IEs is given in Section 4.1. Example data exchanges between neighbor | IEs is given in Section 4.1. Example data exchanges between neighbor | |||
| nodes are given in Section 4.2. | nodes are given in Section 4.2. | |||
| Section 5 defines how 6top gathers statistics (e.g. link quality, | Section 5 defines how 6top gathers statistics (e.g. link quality, | |||
| energy level, queue usage), and what commands an upper layer can use | energy level, queue usage), and what commands an upper layer can use | |||
| to configure and retrieve those statistics. | to configure and retrieve those statistics. | |||
| skipping to change at page 8, line 19 ¶ | skipping to change at page 8, line 42 ¶ | |||
| A soft cell is a cell that can be reallocated by 6top dynamically. | A soft cell is a cell that can be reallocated by 6top dynamically. | |||
| The CellType MUST be set to 0. This cell is installed by 6top given | The CellType MUST be set to 0. This cell is installed by 6top given | |||
| a specific bandwidth requirement. Soft cells are installed through | a specific bandwidth requirement. Soft cells are installed through | |||
| the soft cell negotiation procedure described in Section 4.2. | the soft cell negotiation procedure described in Section 4.2. | |||
| 2.2. Data Transfer Model | 2.2. Data Transfer Model | |||
| The TSCH MAC layer is decoupled from the upper layer; the interaction | The TSCH MAC layer is decoupled from the upper layer; the interaction | |||
| between the upper layer and TSCH is asynchronous. This means that | between the upper layer and TSCH is asynchronous. This means that | |||
| the MAC layer executes a schedule and checks at each timeslot | the MAC layer executes a schedule and checks at each timeslot | |||
| according to the type of cell, whether there is something to send or | according to the type of cell(i.e Transmit, Shared or Receive), | |||
| receive. If that is the case, the packet is transmitted and the MAC | whether there is something to send or receive. If that is the case, | |||
| layer continues its operation. When an upper layer sends a packet, | the packet is transmitted and the MAC layer continues its operation. | |||
| this packet is pushed into a queue waiting for the MAC layer to read | When an upper layer sends a packet, this packet is pushed into a | |||
| it and send it in a particular timeslot according to its destination | queue waiting for the MAC layer to read it and send it in a | |||
| and priority. 6top provides a set of queue management operations | particular timeslot according to its destination and priority. 6top | |||
| which enable upper layers to create different queues and set their | provides a set of queue management operations which enable upper | |||
| priorities. This allows different classes of traffic to be handled | layers to create different queues and set their priorities. This | |||
| by the forwarding plane by inserting a packet into the queue | allows different classes of traffic to be handled by the forwarding | |||
| appropriate for its priority. | plane by inserting a packet into the queue appropriate for its | |||
| priority. | ||||
| A 6top implementation MUST provide at least a Broadcast Queue and a | A 6top implementation MUST provide at least a Broadcast Queue and a | |||
| Transmit Queue. The Broadcast Queue is associated with cells with | Transmit Queue. The Broadcast Queue is associated with cells with | |||
| LinkType=ADVERTISING in the sender's schedule, and | LinkType=ADVERTISING in the sender's schedule, and | |||
| LinkOption="Receive" and "Timekeeping" in all its neighbors' | LinkOption="Receive" and "Timekeeping" in all its neighbors' | |||
| schedule. For example, NodeA uses slotOffset=5 and channelOffset=12 | schedule. For example, NodeA uses slotOffset=5 and channelOffset=12 | |||
| as Broadcast cell to its neighbors NodeB and NodeC. Then, in the | as Broadcast cell to its neighbors NodeB and NodeC. Then, in the | |||
| schedule of NodeA the cell will be featured with neighbor address is | schedule of NodeA the cell will be featured with neighbor address is | |||
| Broadcast address, LinkType=ADVERTISING; and in the schedules of both | Broadcast address, LinkType=ADVERTISING; and in the schedules of both | |||
| nodeB and nodeC the cell will be featured with nodeA address as | nodeB and nodeC the cell will be featured with nodeA address as | |||
| skipping to change at page 9, line 23 ¶ | skipping to change at page 9, line 48 ¶ | |||
| or Shared Cells. | or Shared Cells. | |||
| The QoS policy enforced by 6top is out of scope. As an example, | The QoS policy enforced by 6top is out of scope. As an example, | |||
| packets in higher priority queues could be transmitted before the | packets in higher priority queues could be transmitted before the | |||
| packets in lower priority queue. As a result, when there is an | packets in lower priority queue. As a result, when there is an | |||
| available broadcast/unicast cell, 6top checks the broadcast/unicast | available broadcast/unicast cell, 6top checks the broadcast/unicast | |||
| queue with higher priority first. 6top continues this search until it | queue with higher priority first. 6top continues this search until it | |||
| finds a broadcast/unicast packet, or finds that all of broadcast/ | finds a broadcast/unicast packet, or finds that all of broadcast/ | |||
| unicast queues are empty. | unicast queues are empty. | |||
| Figure Figure 2 shows how 6top shapes data from the upper layer | Figure 2 shows how 6top shapes data from the upper layer (e.g., RPL, | |||
| (e.g., RPL, 6LoWPAN), and feeds it to TSCH. The properties | 6LoWPAN), and feeds it to TSCH. The properties associated with a | |||
| associated with a packet/fragment from the upper layer includes the | packet/fragment from the upper layer includes the next hop neighbor | |||
| next hop neighbor (DestAddr), the packet priority, and TrackID(s). | (DestAddr), the packet priority, and TrackID(s). | |||
| 6top Data Transfer Model | 6top Data Transfer Model | |||
| | | | | |||
| | (DestAddr, Priority, Fragment) | | (DestAddr, Priority, Fragment) | |||
| | | | | |||
| +---------------------------------------+ | +---------------------------------------+ | |||
| | I-MUX | | | I-MUX | | |||
| +---------------------------------------+ | +---------------------------------------+ | |||
| | | | | | | | | | | | | |||
| skipping to change at page 14, line 13 ¶ | skipping to change at page 14, line 13 ¶ | |||
| CellType: as defined in Section 2.1 | CellType: as defined in Section 2.1 | |||
| target node address: the address of that node to communicate | target node address: the address of that node to communicate | |||
| with over this cell. In case of broadcast cells this is the | with over this cell. In case of broadcast cells this is the | |||
| broadcast address. | broadcast address. | |||
| TrackID: ID of the track the cell will belong to. | TrackID: ID of the track the cell will belong to. | |||
| 6top schedules the cell and marks it as a hard cell, indicating that | 6top schedules the cell and marks it as a hard cell, indicating that | |||
| it cannot reschedule this cell. The return value is CellID and the | it cannot reschedule this cell. The return value is CellID and the | |||
| created cell is also filled in CellList | created cell is also filled in CellList | |||
| ([I-D.wang-6tisch-6top-interface]). | ([I-D.ietf-6tisch-6top-interface]). | |||
| The interaction between 6top and MAC layer caused by CREATE.hardcell | The interaction between 6top and MAC layer caused by CREATE.hardcell | |||
| is as follows. | is as follows. | |||
| Firstly, 6top calls the premitive MLME-SET-LINK.request defind in | Firstly, 6top calls the primitive MLME-SET-LINK.request defined in | |||
| section 6.2.19.3 of [IEEE802154e]. The premitive parameters are set | section 6.2.19.3 of [IEEE802154e]. The primitive parameters are set | |||
| as follows. | as follows. | |||
| +---------------------------------+---------------------------------+ | +---------------------------------+---------------------------------+ | |||
| | MLME-SET-LINK.request parameter | set by 6top | | | MLME-SET-LINK.request parameter | set by 6top | | |||
| +---------------------------------+---------------------------------+ | +---------------------------------+---------------------------------+ | |||
| | operation | ADD-LINK | | | operation | ADD-LINK | | |||
| +---------------------------------+---------------------------------+ | +---------------------------------+---------------------------------+ | |||
| | LinkHandle | CellID | | | LinkHandle | CellID | | |||
| +---------------------------------+---------------------------------+ | +---------------------------------+---------------------------------+ | |||
| | slotframeHandle | slotframe ID | | | slotframeHandle | slotframe ID | | |||
| skipping to change at page 15, line 32 ¶ | skipping to change at page 15, line 32 ¶ | |||
| TrackID: ID of the track the cell(s) will belong to. | TrackID: ID of the track the cell(s) will belong to. | |||
| QoS level: the cell redundancy policy. The policy can be for | QoS level: the cell redundancy policy. The policy can be for | |||
| example STRICT, BEST_EFFORT, etc. | example STRICT, BEST_EFFORT, etc. | |||
| 6top is responsible for picking the exact slotOffset and | 6top is responsible for picking the exact slotOffset and | |||
| channelOffset in the schedule, and ensure that the target node choose | channelOffset in the schedule, and ensure that the target node choose | |||
| the same cell and TrackID. 6top marks these cells as soft cell, | the same cell and TrackID. 6top marks these cells as soft cell, | |||
| indicating that it will continuously monitor their performance and | indicating that it will continuously monitor their performance and | |||
| reschedule if needed. The return value is CellID, and the created | reschedule if needed. The return value is CellID, and the created | |||
| cell is also filled in CellList ([I-D.wang-6tisch-6top-interface]). | cell is also filled in CellList ([I-D.ietf-6tisch-6top-interface]). | |||
| 6top deals with the allocation process by negotiation with the target | 6top deals with the allocation process by negotiation with the target | |||
| node. The command returns the list of created cells defined by | node. The command returns the number and the list of created cells | |||
| (slotframe ID, slotOffset, channelOffset). It fails if the required | defined by (slotframe ID, slotOffset, channelOffset). The number of | |||
| number of cells is higher than the available number of cells in the | crated cells is less than the required number of cells if the | |||
| schedule. It fails if the negotiation with the target node fails. | required number of cells is higher than the available number of cells | |||
| It fails if the LinkOption bitmap indicates that the cell(s) MUST be | in the schedule. The number of created cells equals to zero if the | |||
| Hard. | negotiation with the target node fails. The number of created cells | |||
| equals to zero if the CellType bitmap indicates that the cell(s) MUST | ||||
| be Hard. | ||||
| The interaction between 6top and TSCH happens on both sides described | The interaction between 6top and TSCH happens on both sides described | |||
| as follows. | as follows. | |||
| For example, after neigotiation, node A and node B find a specifical | For example, after negotiation, node A and node B find a specific | |||
| cell, slotOffset=10, channelOffset=12, as a Tx cell and Rx cell, | cell, slotOffset=10, channelOffset=12, as a Tx cell and Rx cell, | |||
| respectively, then the 6top in node A and node B will call the | respectively, then the 6top in node A and node B will call the | |||
| premitive MLME-SET-LINK.request defind in section 6.2.19.3 of | primitive MLME-SET-LINK.request defined in section 6.2.19.3 of | |||
| [IEEE802154e], respectively. The premitive parameters are set in | [IEEE802154e], respectively. The primitive parameters are set in | |||
| node A and node B as follows. | node A and node B as follows. | |||
| +---------------------------------+---------------------------------+ | +---------------------------------+---------------------------------+ | |||
| | MLME-SET-LINK.request parameter | set by A's 6top | set by B's top| | | MLME-SET-LINK.request parameter | set by A's 6top | set by B's top| | |||
| +---------------------------------+---------------------------------+ | +---------------------------------+---------------------------------+ | |||
| | operation | ADD-LINK | ADD-LINK | | | operation | ADD-LINK | ADD-LINK | | |||
| +---------------------------------+---------------------------------+ | +---------------------------------+---------------------------------+ | |||
| | LinkHandle | CellID | CellID | | | LinkHandle | CellID | CellID | | |||
| +---------------------------------+---------------------------------+ | +---------------------------------+---------------------------------+ | |||
| | slotframeHandle | slotframe ID | slotframe ID | | | slotframeHandle | slotframe ID | slotframe ID | | |||
| skipping to change at page 17, line 7 ¶ | skipping to change at page 17, line 7 ¶ | |||
| target node address: the target address of that cell. In case | target node address: the target address of that cell. In case | |||
| of broadcast cells this is the broadcast address. | of broadcast cells this is the broadcast address. | |||
| TrackID: ID of the track the cell will belong to. | TrackID: ID of the track the cell will belong to. | |||
| NumOfStatistics: Number of elements in the following list of | NumOfStatistics: Number of elements in the following list of | |||
| tuple (StatisticsMetriceID and StatisticsValue) | tuple (StatisticsMetriceID and StatisticsValue) | |||
| list of (StatisticsMetriceID, StatisticsValue): | list of (StatisticsMetriceID, StatisticsValue): | |||
| StatisticsMetriceID is the index to Statistics Metric defined | StatisticsMetriceID is the index to Statistics Metric defined | |||
| in Section 3.4, StatisticsValue is the value corresponding to | in Section 3.4, StatisticsValue is the value corresponding to | |||
| the metric indexd by StatisticsMetriceID | the metric indexed by StatisticsMetriceID | |||
| A read command can be issued for any cell, hard or soft. 6top gets | A read command can be issued for any cell, hard or soft. 6top gets | |||
| cell information from CellList ([I-D.wang-6tisch-6top-interface]). | cell information from CellList ([I-D.ietf-6tisch-6top-interface]). | |||
| 3.1.4. UPDATE.cell | 3.1.4. UPDATE.cell | |||
| Update a hard cell, i.e., re-allocate it to a different slotOffset | Update a hard cell, i.e., re-allocate it to a different slotOffset | |||
| and/or channelOffset. Fails if the cell does not exist. Requires | and/or channelOffset. Fails if the cell does not exist. Requires | |||
| both old (slotframe ID, slotOffset, channelOffset) and new (slotframe | both old (slotframe ID, slotOffset, channelOffset) and new (slotframe | |||
| ID, slotOffset, channelOffset) as parameters. And, the type of cell, | ID, slotOffset, channelOffset) as parameters. And, the type of cell, | |||
| target node address and TrackID are the fields that cannot be | target node address and TrackID are the fields that cannot be | |||
| updated. Soft cells MUST NOT be updated by the UPDATE.cell command. | updated. Soft cells MUST NOT be updated by the UPDATE.cell command. | |||
| REALLOCATE.softcell (Section 3.1.7) MUST be used instead. | REALLOCATE.softcell (Section 3.1.7) MUST be used instead. | |||
| skipping to change at page 17, line 37 ¶ | skipping to change at page 17, line 37 ¶ | |||
| slotframe ID: the ID of the slotframe where this cell is | slotframe ID: the ID of the slotframe where this cell is | |||
| installed. | installed. | |||
| slotOffset: the slotOffset for the cell. | slotOffset: the slotOffset for the cell. | |||
| channelOffset: the selected channelOffset for the cell. | channelOffset: the selected channelOffset for the cell. | |||
| LinkOption bitmap: bitmap as defined in [IEEE802154e] | LinkOption bitmap: bitmap as defined in [IEEE802154e] | |||
| LinkType : as defined in in section 6.2.19.3 of [IEEE802154e]. | LinkType : as defined in section 6.2.19.3 of [IEEE802154e]. | |||
| CellType: as defined in Section 2.1 | CellType: as defined in Section 2.1 | |||
| target node address: the target address of that cell. In case | target node address: the target address of that cell. In case | |||
| of broadcast cells this is the broadcast address. | of broadcast cells this is the broadcast address. | |||
| TrackID: ID of the track the cell will belong to. | TrackID: ID of the track the cell will belong to. | |||
| This removes the hard cell from the node's schedule, from CellList | This removes the hard cell from the node's schedule, from CellList | |||
| ([I-D.wang-6tisch-6top-interface])as well. | ([I-D.ietf-6tisch-6top-interface])as well. | |||
| The interaction between 6top and MAC layer caused by DELETE.hardcell | The interaction between 6top and MAC layer caused by DELETE.hardcell | |||
| is as follows. | is as follows. | |||
| Firstly, 6top calls the premitive MLME-SET-LINK.request defind in | Firstly, 6top calls the primitive MLME-SET-LINK.request defined in | |||
| section 6.2.19.3 of [IEEE802154e]. The premitive parameters are set | section 6.2.19.3 of [IEEE802154e]. The primitive parameters are set | |||
| as follows. | as follows. | |||
| +---------------------------------+---------------------------------+ | +---------------------------------+---------------------------------+ | |||
| | MLME-SET-LINK.request parameter | set by 6top | | | MLME-SET-LINK.request parameter | set by 6top | | |||
| +---------------------------------+---------------------------------+ | +---------------------------------+---------------------------------+ | |||
| | operation | DELETE-LINK | | | operation | DELETE-LINK | | |||
| +---------------------------------+---------------------------------+ | +---------------------------------+---------------------------------+ | |||
| | LinkHandle | CellID | | | LinkHandle | CellID | | |||
| +---------------------------------+---------------------------------+ | +---------------------------------+---------------------------------+ | |||
| | slotframeHandle | slotframe ID | | | slotframeHandle | slotframe ID | | |||
| skipping to change at page 19, line 50 ¶ | skipping to change at page 19, line 50 ¶ | |||
| to its priority. | to its priority. | |||
| number of timeslots: the required number of timeslots in the | number of timeslots: the required number of timeslots in the | |||
| slotframe. | slotframe. | |||
| Fails if the number of required timeslots is less than zero. | Fails if the number of required timeslots is less than zero. | |||
| The interaction between 6top and MAC layer caused by CREATE.slotframe | The interaction between 6top and MAC layer caused by CREATE.slotframe | |||
| is as follows. | is as follows. | |||
| Firstly, 6top calls the premitive MLME-SET-SLOTFRAME.request defind | Firstly, 6top calls the primitive MLME-SET-SLOTFRAME.request defined | |||
| in section 6.2.19.1 of [IEEE802154e]. The premitive parameters are | in section 6.2.19.1 of [IEEE802154e]. The primitive parameters are | |||
| set as follows. | set as follows. | |||
| +---------------------------------+---------------------------------+ | +---------------------------------+---------------------------------+ | |||
| | MLME-SET-SLOTFRAME.request | | | | MLME-SET-SLOTFRAME.request | | | |||
| | parameter | set by 6top | | | parameter | set by 6top | | |||
| +---------------------------------+---------------------------------+ | +---------------------------------+---------------------------------+ | |||
| | slotframeHandle | slotframe ID | | | slotframeHandle | slotframe ID | | |||
| +---------------------------------+---------------------------------+ | +---------------------------------+---------------------------------+ | |||
| | operation | ADD | | | operation | ADD | | |||
| +---------------------------------+---------------------------------+ | +---------------------------------+---------------------------------+ | |||
| skipping to change at page 20, line 46 ¶ | skipping to change at page 20, line 46 ¶ | |||
| slotframe ID: ID of the slotframe. | slotframe ID: ID of the slotframe. | |||
| number of timeslots: the number of timeslots to be updated. | number of timeslots: the number of timeslots to be updated. | |||
| Fails if the number of required timeslots is less than zero. Fails | Fails if the number of required timeslots is less than zero. Fails | |||
| if the slotframe ID does not exist. | if the slotframe ID does not exist. | |||
| The interaction between 6top and MAC layer caused by UPDATE.slotframe | The interaction between 6top and MAC layer caused by UPDATE.slotframe | |||
| is as follows. | is as follows. | |||
| Firstly, 6top calls the premitive MLME-SET-SLOTFRAME.request defind | Firstly, 6top calls the primitive MLME-SET-SLOTFRAME.request defined | |||
| in section 6.2.19.1 of [IEEE802154e]. The premitive parameters are | in section 6.2.19.1 of [IEEE802154e]. The primitive parameters are | |||
| set as follows. | set as follows. | |||
| +---------------------------------+---------------------------------+ | +---------------------------------+---------------------------------+ | |||
| | MLME-SET-SLOTFRAME.request | | | | MLME-SET-SLOTFRAME.request | | | |||
| | parameter | set by 6top | | | parameter | set by 6top | | |||
| +---------------------------------+---------------------------------+ | +---------------------------------+---------------------------------+ | |||
| | slotframeHandle | slotframe ID | | | slotframeHandle | slotframe ID | | |||
| +---------------------------------+---------------------------------+ | +---------------------------------+---------------------------------+ | |||
| | operation | MODIFY | | | operation | MODIFY | | |||
| +---------------------------------+---------------------------------+ | +---------------------------------+---------------------------------+ | |||
| skipping to change at page 21, line 34 ¶ | skipping to change at page 21, line 34 ¶ | |||
| slotframe ID: ID of the slotframe. | slotframe ID: ID of the slotframe. | |||
| number of timeslot: the number of timeslots in the slotframe. | number of timeslot: the number of timeslots in the slotframe. | |||
| Fails if the slotframe ID does not exist. | Fails if the slotframe ID does not exist. | |||
| The interaction between 6top and MAC layer caused by DELETE.slotframe | The interaction between 6top and MAC layer caused by DELETE.slotframe | |||
| is as follows. | is as follows. | |||
| Firstly, 6top calls the premitive MLME-SET-SLOTFRAME.request defind | Firstly, 6top calls the primitive MLME-SET-SLOTFRAME.request defined | |||
| in section 6.2.19.1 of [IEEE802154e]. The premitive parameters are | in section 6.2.19.1 of [IEEE802154e]. The primitive parameters are | |||
| set as follows. | set as follows. | |||
| +---------------------------------+---------------------------------+ | +---------------------------------+---------------------------------+ | |||
| | MLME-SET-SLOTFRAME.request | | | | MLME-SET-SLOTFRAME.request | | | |||
| | parameter | set by 6top | | | parameter | set by 6top | | |||
| +---------------------------------+---------------------------------+ | +---------------------------------+---------------------------------+ | |||
| | slotframeHandle | slotframe ID | | | slotframeHandle | slotframe ID | | |||
| +---------------------------------+---------------------------------+ | +---------------------------------+---------------------------------+ | |||
| | operation | DELETE | | | operation | DELETE | | |||
| +---------------------------------+---------------------------------+ | +---------------------------------+---------------------------------+ | |||
| skipping to change at page 28, line 32 ¶ | skipping to change at page 28, line 32 ¶ | |||
| rxqlength: the desired reception queue length. | rxqlength: the desired reception queue length. | |||
| numrtx: number of allowed retransmissions. | numrtx: number of allowed retransmissions. | |||
| age: discard packet according to its age on the queue. 0 if no | age: discard packet according to its age on the queue. 0 if no | |||
| discards are allowed. | discards are allowed. | |||
| rtxbackoff: retransmission backoff in number of slotframes. 0 | rtxbackoff: retransmission backoff in number of slotframes. 0 | |||
| if next available timeslot wants to be used. | if next available timeslot wants to be used. | |||
| statswindow: window of time used to compute stats. | statswindow: window of time used to compute statistics. | |||
| queue priority: the priority of this queue. | queue priority: the priority of this queue. | |||
| TrackIDs: a set of TrackIDs. While it is empty, no specific | TrackIDs: a set of TrackIDs. While it is empty, no specific | |||
| track is associated with the queue | track is associated with the queue | |||
| Returns the queue ID. | Returns the queue ID. | |||
| 3.8.2. READ.queue | 3.8.2. READ.queue | |||
| skipping to change at page 31, line 36 ¶ | skipping to change at page 31, line 36 ¶ | |||
| SlotBase : the base slotOffset of the chunk. | SlotBase : the base slotOffset of the chunk. | |||
| SlotStep : the incremental of slotOffset in the chunk. | SlotStep : the incremental of slotOffset in the chunk. | |||
| ChannelBase: the base channelOffset of the chunk. | ChannelBase: the base channelOffset of the chunk. | |||
| ChannelStep: the incremental of channalOffset in the chunk. | ChannelStep: the incremental of channalOffset in the chunk. | |||
| ChunkID is the return value of the command | ChunkID is the return value of the command | |||
| ([I-D.wang-6tisch-6top-interface]). The chunk is a set of cells in | ([I-D.ietf-6tisch-6top-interface]). The chunk is a set of cells in | |||
| the given slotframe, consisting of (slotOffset(i),channelOffset(i)), | the given slotframe, consisting of (slotOffset(i),channelOffset(i)), | |||
| i=0..Chunksize-1, slotOffset(i)= (slotBase + i * slotStep) % | i=0..Chunksize-1, slotOffset(i)= (slotBase + i * slotStep) % | |||
| slotframeLen, channelOffset(i) = (channelBase + i * channelStep) % | slotframeLen, channelOffset(i) = (channelBase + i * channelStep) % | |||
| 16". Those cells will be added into ChunkCellList | 16". Those cells will be added into ChunkCellList | |||
| ([I-D.wang-6tisch-6top-interface]) also. | ([I-D.ietf-6tisch-6top-interface]) also. | |||
| 3.10.2. READ.chunk | 3.10.2. READ.chunk | |||
| Returns the information of a chunk given its ChunkId. The command | Returns the information of a chunk given its ChunkId. The command | |||
| returns: | returns: | |||
| slotframe ID: ID of the slotframe which this chunk belongs to. | slotframe ID: ID of the slotframe which this chunk belongs to. | |||
| ChunkSize: number of the cells which the chunk includes. | ChunkSize: number of the cells which the chunk includes. | |||
| skipping to change at page 32, line 18 ¶ | skipping to change at page 32, line 18 ¶ | |||
| ChannelStep: the incremental of channalOffset in the chunk. | ChannelStep: the incremental of channalOffset in the chunk. | |||
| Fails if the ChunkId does not exist. | Fails if the ChunkId does not exist. | |||
| 3.10.3. Delete.chunk | 3.10.3. Delete.chunk | |||
| To delete a chunk, upper layer specifies ChunkID. | To delete a chunk, upper layer specifies ChunkID. | |||
| It removes the chunk from ChunkList | It removes the chunk from ChunkList | |||
| ([I-D.wang-6tisch-6top-interface]), and also remove those entries | ([I-D.ietf-6tisch-6top-interface]), and also remove those entries | |||
| corresponding to the cells of the chunk from | corresponding to the cells of the chunk from | |||
| ChunkCellList([I-D.wang-6tisch-6top-interface]). In addition, it | ChunkCellList([I-D.ietf-6tisch-6top-interface]). In addition, it | |||
| also causes all of the scheduled cells in the chunk are deleted from | also causes all of the scheduled cells in the chunk are deleted from | |||
| CellList ([I-D.wang-6tisch-6top-interface]) and TSCH schedule as | CellList ([I-D.ietf-6tisch-6top-interface]) and TSCH schedule as | |||
| well. | well. | |||
| 3.11. Chunk Cell Command | 3.11. Chunk Cell Command | |||
| 3.11.1. CREATE.hardcell.fromchunk | 3.11.1. CREATE.hardcell.fromchunk | |||
| Creates one or more hard cells from a chunk. Fails if the cell | Creates one or more hard cells from a chunk. Fails if the cell | |||
| already exists. A cell is uniquely identified by the tuple | already exists. A cell is uniquely identified by the tuple | |||
| (slotframe ID, slotOffset, channelOffset). | (slotframe ID, slotOffset, channelOffset). | |||
| skipping to change at page 33, line 9 ¶ | skipping to change at page 33, line 9 ¶ | |||
| target node address: the address of that node to communicate | target node address: the address of that node to communicate | |||
| with over this cell. In case of broadcast cells this is the | with over this cell. In case of broadcast cells this is the | |||
| broadcast address. | broadcast address. | |||
| TrackID: ID of the track the cell will belong to. | TrackID: ID of the track the cell will belong to. | |||
| 6top schedules the cell and marks it as a hard cell, indicating that | 6top schedules the cell and marks it as a hard cell, indicating that | |||
| it cannot reschedule this cell. In addition, 6top will change the | it cannot reschedule this cell. In addition, 6top will change the | |||
| attributes corresponding to the cell in the ChunkCellList, i.e. its | attributes corresponding to the cell in the ChunkCellList, i.e. its | |||
| CellID is changed to the same CellID in the CellList, and its Status | CellID is changed to the same CellID in the CellList, and its Status | |||
| is changed to USED ([I-D.wang-6tisch-6top-interface]). | is changed to USED ([I-D.ietf-6tisch-6top-interface]). | |||
| The interaction between 6top and MAC layer caused by | The interaction between 6top and MAC layer caused by | |||
| CREATE.hardcell.fromchunk is same as that caused by CREATE.hardcell | CREATE.hardcell.fromchunk is same as that caused by CREATE.hardcell | |||
| (Section 3.1.1). | (Section 3.1.1). | |||
| 3.11.2. READ.chunkcell | 3.11.2. READ.chunkcell | |||
| Returns the cell information of a chunk given its ChunkId. For each | Returns the cell information of a chunk given its ChunkId. For each | |||
| cell of the chunk, the command returns: | cell of the chunk, the command returns: | |||
| skipping to change at page 34, line 6 ¶ | skipping to change at page 34, line 6 ¶ | |||
| LinkType : as defined in in section 6.2.19.3 of [IEEE802154e]. | LinkType : as defined in in section 6.2.19.3 of [IEEE802154e]. | |||
| CellType: as defined in Section 2.1 | CellType: as defined in Section 2.1 | |||
| target node address: the target address of that cell. In case | target node address: the target address of that cell. In case | |||
| of broadcast cells this is the broadcast address. | of broadcast cells this is the broadcast address. | |||
| TrackID: ID of the track the cell will belong to. | TrackID: ID of the track the cell will belong to. | |||
| This removes the hard cell from the node's schedule and CellList | This removes the hard cell from the node's schedule and CellList | |||
| ([I-D.wang-6tisch-6top-interface]). In addition, it changes the | ([I-D.ietf-6tisch-6top-interface]). In addition, it changes the | |||
| attributes corresponding to the cell in the ChunkCellList, i.e. its | attributes corresponding to the cell in the ChunkCellList, i.e. its | |||
| CellID is changed back to FFFF, and its Status is changed to UNUSED | CellID is changed back to FFFF, and its Status is changed to UNUSED | |||
| ([I-D.wang-6tisch-6top-interface]). | ([I-D.ietf-6tisch-6top-interface]). | |||
| The interaction between 6top and MAC layer caused by DELETE.hardcell | The interaction between 6top and MAC layer caused by DELETE.hardcell | |||
| is same as that caused by DELETE.hardcell (Section 3.1.5). | is same as that caused by DELETE.hardcell (Section 3.1.5). | |||
| 3.12. Data Commands | 3.12. Data Commands | |||
| 3.12.1. Send.data | 3.12.1. Send.data | |||
| The command used by upper layers to queue a packet so underlying TSCH | The command used by upper layers to queue a packet so underlying TSCH | |||
| sends it. According to the specific priority, the packet is pushed | sends it. According to the specific priority, the packet is pushed | |||
| skipping to change at page 40, line 21 ¶ | skipping to change at page 40, line 21 ¶ | |||
| 0x02: Remove Soft Cell Request | 0x02: Remove Soft Cell Request | |||
| 0x03: Reserve Hard Cell Request | 0x03: Reserve Hard Cell Request | |||
| 0x04: Remove Hard Cell Request | 0x04: Remove Hard Cell Request | |||
| 4.1.1.6. 6top Bandwidth IE | 4.1.1.6. 6top Bandwidth IE | |||
| Bandwidth IE (BwIE) defines the number of cells to be reserved or | Bandwidth IE (BwIE) defines the number of cells to be reserved or | |||
| actually be reserved. | actually been reserved. | |||
| This IE is not present in [IEEE802154e] and is defined by 6top. | This IE is not present in [IEEE802154e] and is defined by 6top. | |||
| Format of a 6top Bandwidth IE (BwIE). | Format of a 6top Bandwidth IE (BwIE). | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Length | SubID |T| FrameID | NumCell | | | Length | SubID |T| FrameID | NumCell | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| skipping to change at page 50, line 52 ¶ | skipping to change at page 50, line 52 ¶ | |||
| MUST record the reserved cells into its local schedule when sending | MUST record the reserved cells into its local schedule when sending | |||
| the Soft Cell Reservation Response. After receiving the Soft Cell | the Soft Cell Reservation Response. After receiving the Soft Cell | |||
| Reservation Response, Node A MUST record the reserved cells into its | Reservation Response, Node A MUST record the reserved cells into its | |||
| local schedule. | local schedule. | |||
| The policy to build a candidate cell set and the policy to select | The policy to build a candidate cell set and the policy to select | |||
| cells from the candidate cell set to reserve are out of scope. | cells from the candidate cell set to reserve are out of scope. | |||
| The format of Schedule Body is flexible. For example, Node A can use | The format of Schedule Body is flexible. For example, Node A can use | |||
| Cell Set TLV defined in Figure 13 with field 'F' set to '0', and the | Cell Set TLV defined in Figure 13 with field 'F' set to '0', and the | |||
| CellObjects includes all of the cells being used by Node A. In | CellObjects includes all of the cells being used by Node A. In | |||
| another word, the cell candidate set is all of the cells not being | another word, the cell candidate set is all of the cells not being | |||
| included in the list defined by CellObjects. | included in the list defined by CellObjects. | |||
| The behavior of the nodes when the soft cells negotiation fails is | The behavior of the nodes when the soft cells negotiation fails is | |||
| out of scope. | out of scope. | |||
| 4.2.3. Deleting soft cells | 4.2.3. Deleting soft cells | |||
| The upper layer instructs 6top to delete one or more soft cells by | The upper layer instructs 6top to delete one or more soft cells by | |||
| calling the Delete soft cell command (Section 3.1.6). This command | calling the Delete soft cell command (Section 3.1.6). This command | |||
| can also be called by the monitoring process internal to 6top | can also be called by the monitoring process internal to 6top | |||
| (Section 6). | (Section 6). | |||
| When receiving a Delete soft cell command, Node A's 6top sublayer | When receiving a Delete soft cell command, Node A's 6top sublayer | |||
| selects cells to be removed from its local schedule, and creates a | selects cells to be removed from its local schedule, and creates a | |||
| Soft Cell Remove Request, which includes a ScheduleIE Information | Soft Cell Remove Request, which includes a ScheduleIE Information | |||
| Element. The ScheduleIE indicates which specific cells to remove | Element. The ScheduleIE indicates which specific cells to remove | |||
| with a neighbor (Node B). The cells specified in the ScheduleIE | with a neighbor (Node B). The cells specified in the ScheduleIE | |||
| SHOULD be removed from local schedule of Node A when the Soft Cell | SHOULD be removed from local schedule of Node A when the Soft Cell | |||
| Remove Request is sent to Node B. When receiving the Soft Cell Remove | Remove Request is sent to Node B. When receiving the Soft Cell | |||
| Request, the cells specified in the ScheduleIE SHOULD be removed from | Remove Request, the cells specified in the ScheduleIE SHOULD be | |||
| the local schedule of Node B. | removed from the local schedule of Node B. | |||
| The policy to select cells corresponding to a Delete soft cell | The policy to select cells corresponding to a Delete soft cell | |||
| command is out of scope. | command is out of scope. | |||
| 4.2.4. Maintaining soft cells | 4.2.4. Maintaining soft cells | |||
| The monitoring process internal to 6top (Section 6) is responsible | The monitoring process internal to 6top (Section 6) is responsible | |||
| for monitoring and re-scheduling soft cells to meet some QoS | for monitoring and re-scheduling soft cells to meet some QoS | |||
| requirements. The monitoring process MAY issue a soft cell | requirements. The monitoring process MAY issue a soft cell | |||
| Maintenance command, which indicate a set of cells to be re-allocated | Maintenance command, which indicate a set of cells to be re-allocated | |||
| skipping to change at page 52, line 5 ¶ | skipping to change at page 52, line 5 ¶ | |||
| 4.2.5. Creating hard cells | 4.2.5. Creating hard cells | |||
| The upper layer instructs 6top to create one or more hard cells by | The upper layer instructs 6top to create one or more hard cells by | |||
| calling the Create hard cell command. | calling the Create hard cell command. | |||
| When receiving a Create hard cell command, Node A's 6top sublayer | When receiving a Create hard cell command, Node A's 6top sublayer | |||
| creates a Hard Cell Reservation Request, including a ScheduleIE. The | creates a Hard Cell Reservation Request, including a ScheduleIE. The | |||
| ScheduleIE indicates which specific cells with a neighbor (Node B) to | ScheduleIE indicates which specific cells with a neighbor (Node B) to | |||
| be added. The cells specified in the ScheduleIE SHOULD be added in | be added. The cells specified in the ScheduleIE SHOULD be added in | |||
| local schedule of Node A while the Hard Cell Reserve Request is sent | local schedule of Node A while the Hard Cell Reserve Request is sent | |||
| to Node B. When receiving the Hard Cell Reserve Request, the cells | to Node B. When receiving the Hard Cell Reserve Request, the cells | |||
| specified in the ScheduleIE SHOULD be added in the local schedule of | specified in the ScheduleIE SHOULD be added in the local schedule of | |||
| Node B. | Node B. | |||
| 4.2.6. Deleting hard cells | 4.2.6. Deleting hard cells | |||
| The upper layer instructs 6top to delete one or more hard cells by | The upper layer instructs 6top to delete one or more hard cells by | |||
| calling the Delete hard cell command. | calling the Delete hard cell command. | |||
| When receiving a Delete hard cell command, Node A's 6top sublayer | When receiving a Delete hard cell command, Node A's 6top sublayer | |||
| creates a Hard Cell Remove Request, including a ScheduleIE. The | creates a Hard Cell Remove Request, including a ScheduleIE. The | |||
| ScheduleIE indicates which specific cells with a neighbor (Node B) to | ScheduleIE indicates which specific cells with a neighbor (Node B) to | |||
| be removed. The cells specified in the ScheduleIE SHOULD be removed | be removed. The cells specified in the ScheduleIE SHOULD be removed | |||
| from local schedule of Node A while the Hard Cell Remove Request is | from local schedule of Node A while the Hard Cell Remove Request is | |||
| sent to Node B. When receiving the Hard Cell Remove Request, the | sent to Node B. When receiving the Hard Cell Remove Request, the | |||
| cells specified in the ScheduleIE SHOULD be removed from the local | cells specified in the ScheduleIE SHOULD be removed from the local | |||
| schedule of Node B. | schedule of Node B. | |||
| 5. Statistics | 5. Statistics | |||
| The 6top Statistics Function (SF) is responsible for collecting | The 6top Statistics Function (SF) is responsible for collecting | |||
| statistics, which it can provide to an upper layer and the Monitoring | statistics, which it can provide to an upper layer and the Monitoring | |||
| Function (Section 6). | Function (Section 6). | |||
| 5.1. Statistics Metrics | 5.1. Statistics Metrics | |||
| skipping to change at page 52, line 41 ¶ | skipping to change at page 52, line 41 ¶ | |||
| 6top is in charge of keeping statistics from a set of metrics | 6top is in charge of keeping statistics from a set of metrics | |||
| gathered from the behavior of the TSCH layer. | gathered from the behavior of the TSCH layer. | |||
| The statistics data related to node states and cell metrics SHOULD be | The statistics data related to node states and cell metrics SHOULD be | |||
| provided to upper layer for management, e.g., for RPL to calculate | provided to upper layer for management, e.g., for RPL to calculate | |||
| the node's Rank or for GMPLS to the required bandwidth is met. The | the node's Rank or for GMPLS to the required bandwidth is met. The | |||
| specific algorithm to generate the statistics is out of scope. | specific algorithm to generate the statistics is out of scope. | |||
| However, the statistics component SHOULD include the following | However, the statistics component SHOULD include the following | |||
| metrics: | metrics: | |||
| 1. LinkThroughput: associated with a link, Node A->Node B. For | 1. LinkThroughput: associated with a link, Node A->Node B. For | |||
| example, LinkThroughput can be calculated with: | example, LinkThroughput can be calculated with: | |||
| SUM(NumOfCell(i)*NumOfBytePerPacket)/(FrameLen(i)*SlotDuration) | SUM(NumOfCell(i)*NumOfBytePerPacket)/(FrameLen(i)*SlotDuration) | |||
| where NumOfCell(i) is the total number of cells from Node A to | where NumOfCell(i) is the total number of cells from Node A to | |||
| Node B in Slotframe-i, FrameLen(i) is the length of Slotframe-i. | Node B in Slotframe-i, FrameLen(i) is the length of Slotframe-i. | |||
| The unit is Byte/second. | The unit is Byte/second. | |||
| 2. Latency: associated with a link, Node A->Node B. For example, | 2. Latency: associated with a link, Node A->Node B. For example, | |||
| latency can be expressed as Minimum and Maximum Latency. Minimum | latency can be expressed as Minimum and Maximum Latency. Minimum | |||
| Latency = Min(MinNumOfSlot(i),i=1..) * SlotDuration and Maximum | Latency = Min(MinNumOfSlot(i),i=1..) * SlotDuration and Maximum | |||
| Latency = Max(MaxNumOfSlot(i),i=1..) * SlotDuration where, | Latency = Max(MaxNumOfSlot(i),i=1..) * SlotDuration where, | |||
| MinNumOfSlot(i) and MaxNumOfSlot(i) are the minimum or maximum | MinNumOfSlot(i) and MaxNumOfSlot(i) are the minimum or maximum | |||
| number of timeslots between two dedicated cells from Node A to | number of timeslots between two dedicated cells from Node A to | |||
| Node B in Slotframe-i, respectively. | Node B in Slotframe-i, respectively. | |||
| 3. LinkQuality. For example, average LQI, ETX, PDR, RSSI. | 3. LinkQuality. For example, average LQI, ETX, PDR, RSSI. | |||
| 4. TrafficLoad. For example, Queue Full Rate, Queue Empty Rate. | 4. TrafficLoad. For example, Queue Full Rate, Queue Empty Rate. | |||
| skipping to change at page 54, line 10 ¶ | skipping to change at page 54, line 10 ¶ | |||
| the bandwidth redundancy coefficient. | the bandwidth redundancy coefficient. | |||
| The 6top monitoring function is enabled/disabled and configured by | The 6top monitoring function is enabled/disabled and configured by | |||
| the commands defined in Section 3.3 | the commands defined in Section 3.3 | |||
| 6.2. Actuation | 6.2. Actuation | |||
| The cell quality statistics MAY be used to generate soft a cell | The cell quality statistics MAY be used to generate soft a cell | |||
| Maintenance command, which triggers a soft cell Maintenance procedure | Maintenance command, which triggers a soft cell Maintenance procedure | |||
| (see Section 4.2.4). The traffic load statistics MAY be used to | (see Section 4.2.4). The traffic load statistics MAY be used to | |||
| generate internal Create (resp. Delete) soft cell commands, which | generate internal Create (resp. Delete) soft cell commands, which | |||
| trggiers a soft cell Reservation (resp. Remove) process (see | trggiers a soft cell Reservation (resp. Remove) process (see | |||
| Section 4.2.2 and Section 4.2.3). | Section 4.2.2 and Section 4.2.3). | |||
| The policy to generate the soft cell Maintenance command and the | The policy to generate the soft cell Maintenance command and the | |||
| policy to generate Create/Delete soft cell commands is out of scope. | policy to generate Create/Delete soft cell commands is out of scope. | |||
| The policy to generate Create/Delete soft cell commands MAY take | The policy to generate Create/Delete soft cell commands MAY take | |||
| QosLevel into account. For example, there are two slotframes | QosLevel into account. For example, there are two slotframes | |||
| existing, Slotframe-1 consists of 32 timeslots, Slotframe-2 consists | existing, Slotframe-1 consists of 32 timeslots, Slotframe-2 consists | |||
| of 96 timeslots; timeslot duration is 10ms; QosLevel=1.5. If, from | of 96 timeslots; timeslot duration is 10ms; QosLevel=1.5. If, from | |||
| the traffic load statistics, MF determines that 2 packet/second | the traffic load statistics, MF determines that 2 packet/second | |||
| skipping to change at page 54, line 43 ¶ | skipping to change at page 54, line 43 ¶ | |||
| [I-D.ietf-6tisch-tsch] | [I-D.ietf-6tisch-tsch] | |||
| Watteyne, T., Palattella, M., and L. Grieco, "Using | Watteyne, T., Palattella, M., and L. Grieco, "Using | |||
| IEEE802.15.4e TSCH in an LLN context: Overview, Problem | IEEE802.15.4e TSCH in an LLN context: Overview, Problem | |||
| Statement and Goals", draft-ietf-6tisch-tsch-00 (work in | Statement and Goals", draft-ietf-6tisch-tsch-00 (work in | |||
| progress), November 2013. | progress), November 2013. | |||
| [I-D.ietf-6tisch-architecture] | [I-D.ietf-6tisch-architecture] | |||
| Thubert, P., Watteyne, T., and R. Assimiti, "An | Thubert, P., Watteyne, T., and R. Assimiti, "An | |||
| Architecture for IPv6 over the TSCH mode of IEEE | Architecture for IPv6 over the TSCH mode of IEEE | |||
| 802.15.4e", draft-ietf-6tisch-architecture-01 (work in | 802.15.4e", draft-ietf-6tisch-architecture-02 (work in | |||
| progress), February 2014. | progress), June 2014. | |||
| [I-D.ietf-6tisch-terminology] | [I-D.ietf-6tisch-terminology] | |||
| Palattella, M., Thubert, P., Watteyne, T., and Q. Wang, | Palattella, M., Thubert, P., Watteyne, T., and Q. Wang, | |||
| "Terminology in IPv6 over the TSCH mode of IEEE | "Terminology in IPv6 over the TSCH mode of IEEE | |||
| 802.15.4e", draft-ietf-6tisch-terminology-01 (work in | 802.15.4e", draft-ietf-6tisch-terminology-01 (work in | |||
| progress), February 2014. | progress), February 2014. | |||
| [I-D.ietf-6tisch-minimal] | [I-D.ietf-6tisch-minimal] | |||
| Vilajosana, X. and K. Pister, "Minimal 6TiSCH | Vilajosana, X. and K. Pister, "Minimal 6TiSCH | |||
| Configuration", draft-ietf-6tisch-minimal-00 (work in | Configuration", draft-ietf-6tisch-minimal-01 (work in | |||
| progress), November 2013. | progress), June 2014. | |||
| [I-D.ohba-6tsch-security] | [I-D.ietf-6tisch-6top-interface] | |||
| Chasko, S., Das, S., Lopez, R., Ohba, Y., Thubert, P., and | Wang, Q., Vilajosana, X., and T. Watteyne, "6TiSCH | |||
| A. Yegin, "Security Framework and Key Management Protocol | Operation Sublayer (6top) Interface", draft-ietf-6tisch- | |||
| Requirements for 6TSCH", draft-ohba-6tsch-security-01 | 6top-interface-00 (work in progress), March 2014. | |||
| (work in progress), July 2013. | ||||
| [I-D.wang-6tisch-6top-interface] | [I-D.wang-6tisch-6top-sublayer] | |||
| Wang, Q., Vilajosana, X., and T. Watteyne, "6TiSCH | Wang, Q., Vilajosana, X., and T. Watteyne, "6TiSCH | |||
| Operation Sublayer (6top) Interface", draft-wang-6tisch- | Operation Sublayer (6top)", draft-wang-6tisch-6top- | |||
| 6top-interface-01 (work in progress), February 2014. | sublayer-00 (work in progress), February 2014. | |||
| [I-D.ietf-6tisch-coap] | ||||
| Sudhaakar, R. and P. Zand, "6TiSCH Resource Management and | ||||
| Interaction using CoAP", draft-ietf-6tisch-coap-00 (work | ||||
| in progress), May 2014. | ||||
| 7.3. External Informative References | 7.3. External Informative References | |||
| [IEEE802154e] | [IEEE802154e] | |||
| IEEE standard for Information Technology, "IEEE std. | IEEE standard for Information Technology, "IEEE std. | |||
| 802.15.4e, Part. 15.4: Low-Rate Wireless Personal Area | 802.15.4e, Part. 15.4: Low-Rate Wireless Personal Area | |||
| Networks (LR-WPANs) Amendment 1: MAC sublayer", April | Networks (LR-WPANs) Amendment 1: MAC sublayer", April | |||
| 2012. | 2012. | |||
| [IEEE802154] | [IEEE802154] | |||
| IEEE standard for Information Technology, "IEEE std. | IEEE standard for Information Technology, "IEEE std. | |||
| 802.15.4, Part. 15.4: Wireless Medium Access Control (MAC) | 802.15.4, Part. 15.4: Wireless Medium Access Control (MAC) | |||
| and Physical Layer (PHY) Specifications for Low-Rate | and Physical Layer (PHY) Specifications for Low-Rate | |||
| Wireless Personal Area Networks", June 2011. | Wireless Personal Area Networks", June 2011. | |||
| [openwsn] Watteyne, T., Vilajosana, X., Kerkez, B., Chraim, F., | [OpenWSN] Watteyne, T., Vilajosana, X., Kerkez, B., Chraim, F., | |||
| Weekly, K., Wang, Q., Glaser, S., and K. Pister, "OpenWSN: | Weekly, K., Wang, Q., Glaser, S., and K. Pister, "OpenWSN: | |||
| A Standards-Based Low-Power Wireless Development | a Standards-Based Low-Power Wireless Development | |||
| Environment. Transactions on Emerging Telecommunications | Environment", Transactions on Emerging Telecommunications | |||
| Technologies.", August 2012. | Technologies , August 2012. | |||
| [label-switching-154e] | [label-switching-154e] | |||
| Morell, A., Vilajosana, X., Lopez-Vicario, J., and T. | Morell, A., Vilajosana, X., Lopez-Vicario, J., and T. | |||
| Watteyne, "Label Switching over IEEE802.15.4e Networks. | Watteyne, "Label Switching over IEEE802.15.4e Networks. | |||
| Transactions on Emerging Telecommunications Technologies", | Transactions on Emerging Telecommunications Technologies", | |||
| June 2013. | June 2013. | |||
| Authors' Addresses | Authors' Addresses | |||
| Qin Wang (editor) | Qin Wang (editor) | |||
| Univ. of Sci. and Tech. Beijing | Univ. of Sci. and Tech. Beijing | |||
| 30 Xueyuan Road | 30 Xueyuan Road | |||
| Beijing, Hebei 100083 | Beijing, Hebei 100083 | |||
| China | China | |||
| Phone: +86 (10) 6233 4781 | Phone: +86 (10) 6233 4781 | |||
| Email: wangqin@ies.ustb.edu.cn | Email: wangqin@ies.ustb.edu.cn | |||
| Xavier Vilajosana | Xavier Vilajosana | |||
| End of changes. 51 change blocks. | ||||
| 88 lines changed or deleted | 103 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ | ||||