6tisch S. Anamalamudi
Internet-Draft M. Zhang
Intended status: Standards Track AR. Sangi
Expires: February 4, 2017 Huawei Technologies
C. Perkins
Futurewei
S.V.R.Anand
Indian Institute of Science
August 03, 2016
Scheduling Function One (SF1) for hop-by-hop Scheduling in 6tisch
Networks
draft-satish-6tisch-6top-sf1-02
Abstract
This document defines a 6top Scheduling Function called "Scheduling
Function One" (SF1) to reserve, label and schedule the end-to-end
resources hop-by-hop through distributed Resource Reservation
Protocol(RSVP). SF1 uses the 6P signaling messages with a global
TrackID to add/delete cells in end-to-end L2-bundles of isolated
instance.
Status of This Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
This Internet-Draft will expire on February 4, 2017.
Copyright Notice
Copyright (c) 2016 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
Anamalamudi, et al. Expires February 4, 2017 [Page 1]
Internet-Draft draft-satish-6tisch-6top-sf1 August 2016
(http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Operation of Scheduling Function one (SF1) . . . . . . . . . 3
2.1. Resource Reservation Protocol(RSVP-lite) . . . . . . . . 4
2.2. RSVP-PATH message . . . . . . . . . . . . . . . . . . . . 4
2.3. RSVP-RESV message . . . . . . . . . . . . . . . . . . . . 5
2.4. Reroute and Bandwidth Increase mechanism . . . . . . . . 8
2.5. Error Codes . . . . . . . . . . . . . . . . . . . . . . . 8
3. Scheduling Function Identifier . . . . . . . . . . . . . . . 8
4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 8
5. Security Considerations . . . . . . . . . . . . . . . . . . . 8
6. References . . . . . . . . . . . . . . . . . . . . . . . . . 8
6.1. References . . . . . . . . . . . . . . . . . . . . . . . 8
6.2. Informative References . . . . . . . . . . . . . . . . . 9
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 9
1. Introduction
With Scheduling Function Zero (SF0) [I-D.dujovne-6tisch-6top-sf0],
on-the-fly cell scheduling (ADD/DELETE) to 1-hop neighbors can be
achieved for aggregated (best-effort) traffic flows. In other words,
all the instances from nodeA to nodeB in Fig. 1 are scheduled in a
single L3-bundle (IP link).
L3-bundle(Instance-1,Instance-2,...Instance-n)
------------------------------------------------->
nodeA<------------------------------------------------- nodeB
L3-bundle(Instance-1,Instance-2,...Instance-n)
Figure 1: L3-bundle for aggregated traffic flows in 1-hop with SF0.
Some applications (e.g. Industrial M2M) require end-to-end dedicated
L2-bundles to protect the control/data streams for time-critical
applications [I-D.ietf-detnet-use-cases]. For such applications,
per-instance based L2-bundles need to be scheduled hop-by-hop in
between application sender and receiver nodes
[I-D.ietf-6tisch-architecture]. In addition, cells in the scheduled
end-to-end L2-bundles of each instance have to be dynamically adapted
for bursty time-critical traffic flows. To achieve, end-to-end track
Anamalamudi, et al. Expires February 4, 2017 [Page 2]
Internet-Draft draft-satish-6tisch-6top-sf1 August 2016
has to be installed with a global TrackID that is associated with the
L2-bundles of each instance. With 1-hop based SF0 cell scheduling,
it is difficult to schedule dedicated end-to-end cells for isolated
traffic flows. In addition, global bandwidth estimation through
Resource Reservation protocol is required for bandwidth allocation in
multi-hop cell scheduling. This draft proposes a Scheduling Function
One (SF1) to schedule end-to-end dedicated L2-bundles for each
instance, and to dynamically adapt the cells in scheduled L2-bundles
of ongoing instance through RSVP protocol(see Fig. 2).
L2-bundle(Instance-1) L2-bundle(Instance-1)
-----------------------> ------------------>
<------------------------ <-------------------
L2-bundle(Instance-1) L2-bundle(Instance-1)
L2-bundle(Instance-2) L2-bundle(Instance-2)
----------------------> ----------------->
Sender<-----------------------nodeB <----------------- Receiver
L2-bundle(Instance-2) L2-bundle(Instance-2)
. .
. .
L2-bundle(Instance-n) L2-bundle(Instance-n)
-----------------------> -------------------->
<------------------------ <--------------------
L2-bundle(Instance-n) L2-bundle(Instance-n)
Figure 2: Dedicated L2-bundles for end-to-end isolated traffic flows
with SF1
2. Operation of Scheduling Function one (SF1)
With SF1, Sender determines when to reserve the end-to-end resources,
support implicit label switching(GMPLS), schedule the labeled
L2-bundles hop-by-hop, associate the global TrackID for labeled
L2-bundles, and dynamically adapt the cells in ongoing instance
through distributed Resource Reservation Protocol (RSVP-lite). The
triggering events in SF1 are as follows :
1. If Sender has any Outgoing Bandwidth Requirement for new instance
to transmit data to Receiver.
2. If Sender has a New Outgoing Bandwidth Requirement for Ongoing
Instance to transmit data to Receiver.
In both cases, distributed RSVP-lite (explained in Section .2.1) is
triggered to provide end-to-end resource reservations along with
scheduling operations.
Anamalamudi, et al. Expires February 4, 2017 [Page 3]
Internet-Draft draft-satish-6tisch-6top-sf1 August 2016
2.1. Resource Reservation Protocol(RSVP-lite)
In this specification, an end-to-end route path is assumed to be
available with reactive P2P-RPL (Storing or non-storing mode)
protocols. A distributed Resource Reservation Protocol (RSVP-lite)
with 6tisch scheduling capability is designed to schedule the labeled
reserved resources hop-by-hop for isolated instance. SF1 of
application sender will trigger the RSVP-lite operation, whenever it
has time critical traffic flow towards the receiver. The RSVP-lite
has two messages namely (1) RSVP-PATH message(Sender to Receiver) and
(2) RSVP-RESV message(Receiver to Sender).
2.2. RSVP-PATH message
The basic RSVP-PATH message [RFC2205] is used to carry the "Sender
Traffic Specification" along with "characterization parameters" from
sender to receiver. Since RSVP treat objects as opaque data, it is
valid to assume other protocol(eg., GMPLS, 6P) as an object in RSVP-
PATH messages.
The format of PATH message with the support of 6tisch scheduling
capabilities (6P and SF1) is as follows :
<Path Message> ::= <Common Header> [ <INTEGRITY> ]
[ [<MESSAGE_ID_ACK> | <MESSAGE_ID_NACK>] ... ]
[ <MESSAGE_ID> ]
<SESSION> <RSVP_HOP>
<TIME_VALUES>
[ <EXPLICIT_ROUTE> ]
<LABEL_REQUEST>
[ <PROTECTION> ]
[ <LABEL_SET> ... ]
[<SF1 OPERATION REQUEST>]
[<6P OPERATION REQUEST>]
[ <SESSION_ATTRIBUTE> ]
[ <NOTIFY_REQUEST> ]
[ <ADMIN_STATUS> ]
[ <POLICY_DATA> ... ]
<sender descriptor>
"SF1 OPERATION REQUEST" and "6P OPERATION REQUEST" are added in the
PATH message to check for 6tisch scheduling capabilities within the
intermediate nodes from sender to receiver. "Timeslot Switching
Capability(TSC)" is used as an implicit labels to switch the cell at
intermediate nodes [RFC3473]. The message format of the "TSC" is
out-of-scope in this specification. "LABEL_REQUEST" in path message
should set to "Timeslot Switching Capability". "RPLInstanceID" is
added in the "SENDER_TEMPLATE" to create Global TrackID during 6P
Anamalamudi, et al. Expires February 4, 2017 [Page 4]
Internet-Draft draft-satish-6tisch-6top-sf1 August 2016
transactions of RSVP-RESV message. Whenever the intermediate node
won't support the "Timeslot switching Capability" or "6P
transactions" or "SF1 operation" then it needs to send a "PathErr"
message back to application sender.
2.3. RSVP-RESV message
The basic RSVP-RESV messages [RFC2205] are transmitted upstream from
receiver to sender to provide resource reservation along with "Label
Distribution". In this specification, hop-by-hop scheduling is
extended to support both resource reservation and label distribution.
The current specification is only defined for unicast point-to-point
traffic flows, i.e., Fixed Filter (FF) reservation style.
The format of RESV message with the support of 6tisch scheduling
capabilities (6P and SF1) is as follows :
<Resv Message> ::= <Common Header> [ <INTEGRITY> ]
[ [<MESSAGE_ID_ACK> | <MESSAGE_ID_NACK>] ... ]
[ <MESSAGE_ID> ]
<SESSION> <RSVP_HOP>
<TIME_VALUES>
<LABEL>
[<SF1 OPERATION>]
[<6P OPERATION>]
[ <RESV_CONFIRM> ] [ <SCOPE> ]
[ <NOTIFY_REQUEST> ]
[ <ADMIN_STATUS> ]
[ <POLICY_DATA> ... ]
<STYLE> <flow descriptor list>
Upon arrival of the PATH message at an application receiver, the
SENDER_TSPEC and ADSPEC objects are interpreted to select the
resource reservation parameters. Since the RSVP provides receiver
initiated resource reservation setup, the scheduling operation needs
to perform upstream from receiver to sender. Subsequently, the
reserved resources (bandwidth) are mapped into 6tisch cells through
Scheduling Function and corresponding L2-bundle is created. An
aggregation of cells is called "bundle"(the directional link to a
next-hop neighbor). Every L2-bundle is associated with a global
trackID to dynamically adapt the cells "hop-by-hop" to an scheduled
instance. In addition, the TrackID is used as a "packet filter" to
switch the incoming tracks to outgoing tracks. The receiver will
generate the TrackID with the combination of "Source/Destination IP
address" and "RPLInstanceID" that is obtained from "SENDER_TEMPLATE/
FILTER_SPEC".
Anamalamudi, et al. Expires February 4, 2017 [Page 5]
Internet-Draft draft-satish-6tisch-6top-sf1 August 2016
next-hop node Receiver
+--------------+ +--------------+
| IPv6 | | IPv6 |
+--------------+ +--------------+
| 6LoWPAN | | 6LoWPAN |
+--------------+ +--------------+
| 6top | | 6top |
+--------------+ +--------------+
| TSCH MAC | | TSCH MAC |
+--------------+ +--------------+
| LLN PHY | | LLN PHY |
+--------------+ +--------------+
| |
| | Rspec:Reserves
| | bandwith
| |
| | SF1:Maps bandwidth to
| | cells
| RESV + 6P Request(TrackID)|
|<------------------------- |
Rspec:Reserves | |
bandwith | |
| |
SF1:Maps bandwidth to| |
cells |6P Response (CellList[..]) |
|-------------------------->|
| |
| |
| |
| 6P confirmation |LABEL SET
| CellList[..]+ Label |label=Channel+Slot
|<--------------------------|
Resv state:"Cell| |
label" | |
| |
| |
| |
Figure 3: Operation of RSVP-RESV message with 6P transactions.
From RFC[6997], it is noteworthy that application sender that
initiates the point-to-point (P2P) traffic is called "Parent node"
and application receiver that receives the data is called "Child
node". Since the receiver (child node) performs the Scheduling
operation upstream towards the sender, "3-step transaction" of 6P
protocol needs to be triggered hop-by-hop to schedule the reserved
resources(see Fig. 3). Hence, "6P Request" with associated TrackID
in metadata field is transmitted in "RESV" message from Receiver to
Anamalamudi, et al. Expires February 4, 2017 [Page 6]
Internet-Draft draft-satish-6tisch-6top-sf1 August 2016
next-hop node. The "NumCells" field in the 6P Request is set to
required number of cells whereas receive "CellList" should be empty.
Once the outgoing interface of next-hop node receive the "RESV"
message, it checks the service request specification(Rspec) and
perform the resource reservation. Subsequently, Scheduling Function
of next-hop neighbor map the reserved resources into transmit cells.
Later, "6P Response" with transmit "CellList"(slotOffset,
channelOffset) is downstream to receiver. When the receiver has
cells (to receive data) available with the "CellList" in the "6P
Response" then "6P Confirmation" with "IANA_6TOP_RC_SUCCESS" is
upstream towards next-hop node. Otherwise, "ResvErr" message should
send back to the receiver with specific error. Since the cell
characteristics(slotOffset,channelOffset)is available in the 6P
transactions, the next-hop node will store the "SlotOffset
(Timeslot)" as a label to switch the traffic flow to receiver. For
the multiple cells(Bundle), a generalized label set is created where
each label represents one cell to forward data to receiver. Once the
6P transaction is successful in between next-hop node and receiver, a
labeled L2-bundle is created with the associated TrackID.
Subsequently, "cell label set" is stored in the Resv state block at
the next-hop node. Later, SF1 of "next-hop node" maps the reserved
bandwidth to the "receiving cells" to receive the data from its
upstream node. The "RESV" message with "6P Request" along with
TrackID is transmitted upstream towards sender node. With this, end-
to-end Track is installed with a succession of paired L2-bundles(a
receive bundle from the previous hop and a transmit bundle to the
next hop) for a specific instance from sender to receiver.(See Fig.
4).
+--------------+ <-Data transmission in end-to-end Track->
| IPv6 | Sender Receiver
+--------------+ | |
| 6LoWPAN | | |
+--------------+ | nodeB |
| 6top | | +----+ |
+--------------+ | | | |
| TSCH MAC | | | | |
+--------------+ | | | |
| LLN PHY | | L2-Bundle | | L2-Bundle |
+--------------+ +----------------+ +---------------+
<--Dedicated cells for each Instance-->
Figure 4: End-to-end cell scheduling with SF1 Scheduling
During data transmission, SF1 of sender at 6top identifies the
TrackID based on "Sender/Receiver IP address, RPLInstanceID" from the
received packet. Subsequently, an associated L2-bundle is scheduled
to forward the data to next-hop neighbor (nodeB in Fig.4). Later,
Anamalamudi, et al. Expires February 4, 2017 [Page 7]
Internet-Draft draft-satish-6tisch-6top-sf1 August 2016
SF1 of the next-hop neighbor identifies the TrackID based on "Sender/
Receiver IP address, RPLInstanceID" of the received data to switch
the track towards receiver. With this, end-to-end data transmission
is achieved through "Track forwarding" at the 6top sub-layer (see
Fig. 4). With "Timeslot Switching Capability" of RSVP-GMPLS
[RFC3473], cells in paired L2-bundles are used as an implicit labels
to label switch the data from Sender to Receiver at the 6top sub-
layer.
2.4. Reroute and Bandwidth Increase mechanism
Whenever, the sender needs to setup a new tunnel that is capable of
maintaining resource reservations without double counting(at same
intermediate node) the resources with existing tunnel then "RSVP
reroute mechanism" need to be initiated [RFC3209]. With this
operation, bandwidth can increase/decrease end-to-end in the ongoing
tunnel. The detailed explanation of "Reroute mechanism" is explained
in [RFC3209].
2.5. Error Codes
The detailed explanation of PathErr and ResvErr with different
ERROR_SPEC to handle Scheduling and 6P operation errors will be
described in later specification.
3. Scheduling Function Identifier
The Scheduling Function Identifier (SFID) of SF1 is
IANA_SFID_SF1(TBD).
4. IANA Considerations
IANA is requested to allocate a new Scheduling Function
(IANA_SFID_SF1) from the SF space of Scheduling Functions defined in
[I-D.dujovne-6tisch-6top-sf0]
5. Security Considerations
TODO
6. References
6.1. References
[RFC3209] Awduche, D., Berger, L., Gan, D., Li, T., Srinivasan, V.,
and G. Swallow, "RSVP-TE: Extensions to RSVP for LSP
Tunnels", RFC 3209, DOI 10.17487/RFC3209, December 2001,
<http://www.rfc-editor.org/info/rfc3209>.
Anamalamudi, et al. Expires February 4, 2017 [Page 8]
Internet-Draft draft-satish-6tisch-6top-sf1 August 2016
[RFC3473] Berger, L., Ed., "Generalized Multi-Protocol Label
Switching (GMPLS) Signaling Resource ReserVation Protocol-
Traffic Engineering (RSVP-TE) Extensions", RFC 3473,
DOI 10.17487/RFC3473, January 2003,
<http://www.rfc-editor.org/info/rfc3473>.
[RFC3945] Mannie, E., Ed., "Generalized Multi-Protocol Label
Switching (GMPLS) Architecture", RFC 3945,
DOI 10.17487/RFC3945, October 2004,
<http://www.rfc-editor.org/info/rfc3945>.
[RFC6553] Hui, J. and JP. Vasseur, "The Routing Protocol for Low-
Power and Lossy Networks (RPL) Option for Carrying RPL
Information in Data-Plane Datagrams", RFC 6553,
DOI 10.17487/RFC6553, March 2012,
<http://www.rfc-editor.org/info/rfc6553>.
6.2. Informative References
[I-D.dujovne-6tisch-6top-sf0]
Dujovne, D., Grieco, L., Palattella, M., and N. Accettura,
"6TiSCH 6top Scheduling Function Zero (SF0)", draft-
dujovne-6tisch-6top-sf0-01 (work in progress), March 2016.
[I-D.ietf-6tisch-6top-protocol]
Wang, Q. and X. Vilajosana, "6top Protocol (6P)", draft-
ietf-6tisch-6top-protocol-02 (work in progress), July
2016.
[I-D.ietf-6tisch-architecture]
Thubert, P., "An Architecture for IPv6 over the TSCH mode
of IEEE 802.15.4", draft-ietf-6tisch-architecture-10 (work
in progress), June 2016.
[I-D.ietf-detnet-use-cases]
Grossman, E., Gunther, C., Thubert, P., Wetterwald, P.,
Raymond, J., Korhonen, J., Kaneko, Y., Das, S., Zha, Y.,
Varga, B., Farkas, J., Goetz, F., and J. Schmitt,
"Deterministic Networking Use Cases", draft-ietf-detnet-
use-cases-10 (work in progress), July 2016.
Authors' Addresses
Anamalamudi, et al. Expires February 4, 2017 [Page 9]
Internet-Draft draft-satish-6tisch-6top-sf1 August 2016
Satish Anamalamudi
Huawei Technologies
No. 156 Beiqing Rd. Haidian District
Beijing 100095
China
Email: satishnaidu80@gmail.com
Mingui Zhang
Huawei Technologies
No. 156 Beiqing Rd. Haidian District
Beijing 100095
China
Email: zhangmingui@huawei.com
Abdur Rashid Sangi
Huawei Technologies
No.156 Beiqing Rd. Haidian District
Beijing 100095
P.R. China
Email: rashid.sangi@huawei.com
Charles E. Perkins
Futurewei
2330 Central Expressway
Santa Clara 95050
Unites States
Email: charliep@computer.org
S.V.R Anand
Indian Institute of Science
Bangalore
560012
India
Email: anand@ece.iisc.ernet.in
Anamalamudi, et al. Expires February 4, 2017 [Page 10]