6Lo Working Group J.Nieminen, Ed.Nieminen Internet-Draft T.Savolainen, Ed.Savolainen Intended status: Standards Track M. Isomaki Expires:May 11,November 3, 2014 Nokia B. Patil AT&T Z. ShelbySensinodeArm C. Gomez Universitat Politecnica de Catalunya/i2CATNovember 7, 2013May 2, 2014 Transmission of IPv6 Packets overBLUETOOTHBLUETOOTH(R) Low Energydraft-ietf-6lo-btle-00draft-ietf-6lo-btle-01 AbstractBLUETOOTH Low EnergyBluetooth Smart isathe brand name for the lowpower air interface technologyenergy feature in the Bluetooth specification defined by theBLUETOOTHBluetooth Special InterestGroup (BT-SIG).Group. The standardBLUETOOTHBluetooth radio has been widely implemented and available in mobile phones, notebook computers, audio headsets and many other devices. The low power version ofBLUETOOTHBluetooth is anewspecification that enables the use of this air interface with devices such as sensors, smart meters, appliances, etc. The low power variant ofBLUETOOTHBluetooth iscurrently specified instandardized since the revision 4.0 of theBLUETOOTH specifications (BLUETOOTH 4.0).Bluetooth specifications, although version 4.1 or newer is required for IPv6. This document describes how IPv6 is transported overBLUETOOTHBluetooth Low Energy using 6LoWPAN techniques. Status ofthisThis 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 onMay 11,November 3, 2014. Copyright Notice Copyright (c)20132014 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 (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 . . . . . . . . . . . . . . . . . . . . . . . .. 32 1.1. Terminology and Requirements Language . . . . . . . . . . 3 2.BLUETOOTHBluetooth Low Energy . . . . . . . . . . . . . . . . . . . ..3 2.1.BLUETOOTHBluetooth Low Energy stack . . . . . . . . . . . . . . ..4 2.2. Link layer roles and topology . . . . . . . . . . . . . . 4 2.3.BT-LEBluetooth LE device addressing . . . . . . . . . . . . .. . . .5 2.4.BT-LEBluetooth LE packets sizes and MTU . . . . . . . . . . .. . . .5 3. Specification of IPv6 overBLUETOOTHBluetooth Low Energy . . . . . . . 6 3.1. Protocol stack . . . . . . . . . . . . . . . . . . . . ..6 3.2. Link model . . . . . . . . . . . . . . . . . . . . . . ..7 3.2.1. Stateless address autoconfiguration . . . . . . . . . 8 3.2.2. Neighbor discovery . . . . . . . . . . . . . . . . .. 98 3.2.3. Header compression . . . . . . . . . . . . . . . . ..9 3.2.3.1. Remote destination example . . . . . . . . . . . 10 3.2.4. Unicast and Multicast address mapping . . . . . . . .1011 3.3. Internet connectivity scenarios . . . . . . . . . . . . . 11 4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 12 5. Security Considerations . . . . . . . . . . . . . . . . . . . 12 6. Additional contributors . . . . . . . . . . . . . . . . . . .1213 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . .. 1213 8. References . . . . . . . . . . . . . . . . . . . . . . . . ..13 8.1. Normative References . . . . . . . . . . . . . . . . . ..13 8.2. Informative References . . . . . . . . . . . . . . . . .. 13 Appendix A. BLUETOOTH Low Energy fragmentation and L2CAP Modes . 14 Appendix B. BLUETOOTH Low Energy L2CAP Channel ID Usage for 6LoWPAN/IPv6 . . . . . . . . . . . . . . . . . . . .14 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . .. 1514 1. IntroductionBLUETOOTH Low Energy (BT-LE)Bluetooth low energy (LE) is a radio technology targeted for devices that operate with coin cell batteries or minimalistic power sources, which means that low power consumption is essential.BT-LEBluetooth LE is an especially attractive technology for Internet of Things applications, such as health monitors, environmental sensing, proximity applications and many others. Considering the potential for the exponential growth in the number of sensors and Internet connected devices and things, IPv6 is an ideal protocol due to the large address space it provides. In addition, IPv6 provides tools for stateless address autoconfiguration, which is particularly suitable for sensor network applications and nodes which have very limited processing power or lack a full-fledged operating system. RFC 4944 [RFC4944] specifies the transmission of IPv6 over IEEE 802.15.4. TheBT-LEBluetooth LE link in many respects has similar characteristics to that of IEEE 802.15.4. Many of the mechanisms defined in the RFC 4944 can be applied to the transmission of IPv6 onBT-LEBluetooth LE links. This document specifies the details of IPv6 transmission overBT-LEBluetooth LE links. 1.1. Terminology and Requirements Language The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 [RFC2119]. The terms 6LN, 6LR and 6LBR are defined as in [RFC6775], with an addition thatBT-LE master and BT-LE slaveBluetooth LE central and Bluetooth LE peripheral can both be either 6LN or 6LBR. 2.BLUETOOTHBluetooth Low EnergyBT-LEBluetooth LE is designed for transferring small amounts of data infrequently at modest data rates at a very low cost per bit.BLUETOOTHBluetooth Special Interest Group (Bluetooth SIG) has introduced two trademarks,BLUETOOTHBluetooth Smart for single-mode devices (a device that only supportsBT-LE)Bluetooth LE) andBLUETOOTHBluetooth Smart Ready for dual-mode devices. In the rest of thedraft,document, the termBT-LEBluetooth LE refers to both types of devices.BT-LE is an integral part of the BTBluetooth LE was introduced in Bluetooth 4.0specification [BTCorev4.0].and further enhanced in Bluetooth 4.1 [BTCorev4.1]. Bluetooth SIG will also publish Internet Protocol Support Profile (IPSP) [IPSP], which includes Internet Protocol Support Service (IPSS) and that enables discovery of IP- enabled devices and establishment of link-layer connection for transporting IPv6 packets. IPv6 over Bluetooth LE is dependent on both Bluetooth 4.1 and IPSP. Devices such as mobile phones, notebooks, tablets and other handheld computing devices which will includeBT 4.0Bluetooth 4.1 chipsets will also have thelow- energylow-energy functionality ofBLUETOOTH. BT-LE isBluetooth. Bluetooth LE will also be included in many different types of accessories that collaborate with mobile devices such as phones, tablets and notebook computers. An example of a use case for aBT-LEBluetooth LE accessory is a heart rate monitor that sends data via the mobile phone to a server on the Internet. 2.1.BLUETOOTHBluetooth Low Energy stack The lower layer of theBT-LEBluetooth LE stack consists of the Physical (PHY) and the Link Layer (LL). The Physical Layer transmits and receives the actual packets. The Link Layer is responsible for providing medium access, connection establishment, error control and flow control. The upper layer consists of the Logical Link Control and Adaptation Protocol (L2CAP), Attribute Protocol (ATT), Generic AttributeprotocolProfile (GATT) and Generic Access Profile (GAP) as shown in Figure 1. The device internal Host Controller Interface (HCI) separates the lower layers, often implemented in the Bluetooth controller, from higher layers, often implemented in the host stack. GATT andBT-LEBluetooth LE profiles together enable the creation of applications in a standardized way without using IP. L2CAP provides multiplexing capability by multiplexing the data channels from the above layers. L2CAP also provides fragmentation and reassembly for large data packets.+----------------------------------------+------------------++-------------------------------------------------+ | Applications |+----------------------------------------+------------------++---------------------------------------+---------+ | Generic Attribute Profile | GenericAccess|+----------------------------------------+ Profile+--------------------+------------------+ Access | | Attribute Protocol|Security| Security Manager | Profile |+--------------------+-------------------+------------------++--------------------+------------------+---------+ | Logical Link Control and Adaptation Protocol |+--------------------+-------------------+------------------+ | Host Controller Interface | +--------------------+-------------------+------------------+- - -+-----------------------+-------------------------+- - - HCI | Link Layer | Direct Test Mode |+--------------------+-------------------+------------------++-------------------------------------------------+ | Physical Layer |+--------------------+-------------------+------------------++-------------------------------------------------+ Figure 1:BT-LEBluetooth LE Protocol Stack 2.2. Link layer roles and topologyBT-LEBluetooth LE defines two Link Layer roles: theBT-LE masterBluetooth LE central role and theBT-LE slaveBluetooth LE peripheral role. A device in themastercentral role, which is calledmastercentral from now on,canhas traditionally been able to manage multiple simultaneous connections with a number of devices in theslaveperipheral role, calledslavesperipherals from now on. Aslave can only beperipheral is commonly connected to a singlemaster. Hence, a BT-LEcentral, but since Bluetooth 4.1 can also connect to multiple centrals. In this document for IPv6 networking purposes the Bluetooth LE network (i.e. aBT-LEBluetooth LE piconet) follows a star topology shown in the Figure2. This specification primarily addresses the situation2, where theslave is a 6LN but not a 6LBR atrouter typically implements the Bluetooth LE central role and nodes Bluetooth LE peripheral roles. In the future mesh networking may be defined for IPv6level. [BT-LE slave]-----\ /-----[BT-LE slave]over Bluetooth LE. Node --. .-- Node \ /[BT-LE slave]-----+[BT-LE Master]+-----[BT-LE slave]Node ---- Router ---- Node / \[BT-LE slave]-----/ \-----[BT-LE slave]Node --' '-- Node Figure 2:BT-LEBluetooth LE Star TopologyA masterIn Bluetooth LE a central is assumed to be less constrained than aslave.peripheral. Hence, in the primary deployment scenariomastercentral andslaveperipheral will act as 6LoWPAN Border Router (6LBR) and a 6LoWPAN Node (6LN), respectively. InBT-LE,Bluetooth LE, direct communication only takes place between amastercentral and aslave.peripheral. Hence, in aBT-LEBluetooth LE network using IPv6, a radio hop is equivalent to an IPv6 link and vice versa. 2.3.BT-LEBluetooth LE device addressing EveryBT-LEBluetooth LE device is identified by a 48-bit device address. TheBLUETOOTHBluetooth specification describes the device address of aBTLEBluetooth LE device as:"Devices are identified using a device address. Device addresses may be either a public device address or a random device address."[BTCorev4.0].[BTCorev4.1]. The public device addresses are based on the IEEE802- 2001802-2001 standard [IEEE802-2001]. The random device addresses are generated as defined in theBLUETOOTHBluetooth specification. The device addresses are always unique within aBT-LEBluetooth LE piconet, but the random addresses are not guaranteed to be globally unique. 2.4.BT-LEBluetooth LE packets sizes and MTUMaximum size of the payload in the BT-LE data channel PDUOptimal MTU defined for L2CAP fixed channels over Bluetooth LE is 27bytes. Depending onbytes including the L2CAPmode in use, the amountheader ofdata availablefour bytes. Default MTU fortransporting bytes in the single BT-LE data channel PDU ranges between 19 andBluetooth LE is hence defined to be 27octets. For power efficient communication between two BT-LE nodes, data and itsbytes. Therefore, excluding L2CAP headershould fit in a single BT-LEof four bytes, protocol datachannel PDU. However, IPv6 requires supportunit (PDU) size of 23 bytes is available foran MTUupper layers. In order to be able to transmit IPv6 packets of 1280bytes. An inherent function of the BT-LE L2CAP layer, called Fragmentationbytes or larger, link layer fragmentation andRecombination (FAR), can assist in transferring IPv6 packets that do not fit in a single BT-LE data channel PDU. The maximum IPv6 datagram size that can be transportedreassembly solution is provided byL2CAP depends onthe L2CAPmode.layer. TheBasic L2CAP Mode allowsIPSP defines means for negotiating up amaximum payload size (i.e. IPv6 datagram size)link-layer connection that provides MTU of655351280 bytesper L2CAP PDU. The rest ofor higher for theL2CAP modes allow a maximum payload size that ranges between 65527 and 65533 bytes per L2CAP PDU. Appendix A describes FAR operation and five L2CAP Modes.IPv6 layer [IPSP]. 3. Specification of IPv6 overBLUETOOTHBluetooth Low EnergyBT-LEBefore any IP-layer communications can take place over Bluetooth LE, Bluetooth LE enabled nodes such as 6LNs and 6LBRs have to find each other and establish a suitable link-layer connection. The discovery and Bluetooth LE connection setup procedures are documented by Bluetooth SIG in the IPSP specification [IPSP], and hence are out of scope of this document. The IPSP depends on Bluetooth version 4.1, and hence both Bluetooth version 4.1 or newer and IPSP are required for IPv6 communications. Bluetooth LE technology sets strict requirements for low power consumption and thus limits the allowed protocol overhead. 6LoWPAN standards[RFC4944],[RFC6775], and [RFC6282] provide useful functionality for reducing overhead which can be applied toBT-LE.Bluetooth LE. This functionality comprises of link-local IPv6 addresses and stateless IPv6 address autoconfiguration (see Section 3.2.1), Neighbor Discovery (see Section 3.2.2) and header compression (see Section 3.2.3). A significant difference between IEEE 802.15.4 andBT-LEBluetooth LE is that the former supports both star and mesh topology (and requires a routing protocol), whereasBT-LEBluetooth LE does not currently support the formation of multihop networks at the link layer.In consequence, the mesh header defined in [RFC4944] for mesh under routing MUST NOT be used in BT-LE networks. In addition, a BT-LE node MUST NOT play the role of a 6LoWPAN Router (6LR).3.1. Protocol stackIn order to enable transmission of IPv6 packets over BT-LE, a new fixed L2CAP Channel Identifier (Channel ID) is to be reserved for IPv6 traffic by the BT-SIG. Until the Channel ID is reserved, prototype implementations can be implemented as is described in the Appendix B.Figure 3 illustrates IPv6 overBT-LE stack.Bluetooth LE stack including the Internet Protocol Support Service. UDP and TCP are provided as examples of transport protocols, but the stack can be used by any other upper layer protocol capable of running atop of IPv6. The 6LoWPAN runs on top of Bluetooth LE L2CAP layer. +---------+ +----------------------------+ | IPSS | | UDP/TCP/other | +---------+ +----------------------------+ | GATT | | IPv6 | +---------+ +----------------------------+ | ATT | | 6LoWPAN adapted toBT-LELE |+----------------------------++---------+--+----------------------------+ |BT-LEBluetooth LE L2CAP |+----------------------------+- - +-----------------------------------------+- - - HCI |BT-LEBluetooth LE Link Layer |+----------------------------++-----------------------------------------+ |BT-LEBluetooth LE Physical |+----------------------------++-----------------------------------------+ Figure 3: IPv6 overBT-LEBluetooth LE Stack 3.2. Link model The concept of IPv6 link (layer 3) and the physical link (combination of PHY and MAC) needs to be clear and the relationship has to be well understood in order to specify the addressing scheme for transmitting IPv6 packets over theBT-LEBluetooth LE link. RFC 4861 [RFC4861] defines a link as "a communication facility or medium over which nodes can communicate at the link layer, i.e., the layer immediately below IPv6." In the case ofBT-LE, L2CAP is an adaptationBluetooth LE, 6LoWPAN layerthat supports the transmission of IPv6 packets. L2CAP also provides multiplexing capability in additionis adapted toFAR functionality. This specification requires that FAR functionality MUST be provided in the L2CAP layer. The L2CAP channel characteristics for thesupport transmission of IPv6 packetson top of BT-LE areover Bluetooth LE. The IPSP defines all steps required for setting up thefollowing: MTU: Equal to or greater than 1280 bytes Flush Timeout: 0xFFFF (Infinite) QoS: Best Effort Mode: Basic Mode Since FAR in BT-LE is aBluetooth LE connection over which 6LoWPAN can functionof[IPSP], including handling theL2CAP layer,link-layer fragmentationfunctionalityrequired on Bluetooth LE, asdefined in RFC 4944 [RFC4944] MUST NOT be useddescribed inBT-LE networks.Section 2.4. This specification also assumes the IPv6 header compression format specified in RFC 6282 is used [RFC6282]. It is also assumed that the IPv6 payload length can be inferred from the L2CAP header length and the IID valueinferred,inferred from the link-layer address with help of Neighbor Cache, if elided fromthe link-layer address.compressed packet. TheBT-LEBluetooth LE link between two communicating nodes can be considered to be a point-to-point or point-to-multipoint link. When one of the communicating nodes isin the role of a master, thensimultaneously connected to multiple nodes, the link can be viewed as a point-to-multipoint link from themasterparticular node point of view. However, due toBT-LEBluetooth LE star topology, each branch of the star is considered to be an individual link and thusthe slaves cannotonly two nodes can directlyhear each other and also cannottalk to eachother withother. Node-to-node communications, e.g. using link-localaddresses.addresses, need to be bridged by the 6LBR. Themaster6LBR ensures address collisions do not occur (see Section 3.2.2). After theslaveperipheral andmastercentral have connected at theBT-LEBluetooth LE level, the link can be considered up and IPv6 address configuration and transmission can begin. 3.2.1. Stateless address autoconfiguration ABT-LEBluetooth LE 6LN performs stateless address autoconfiguration as per RFC 4862 [RFC4862]. A 64-bit Interface identifier (IID) for aBT-LEBluetooth LE interface MAY be formed by utilizing the 48-bitBLUETOOTHBluetooth device address (see Section 2.3) as defined in RFC 2464 "IPv6 over Ethernet" specification [RFC2464]. Alternatively, a randomly generated IID (see Section3.2.2), MAY3.2.2) can be usedinstead.instead, for example, as discussed in [I-D.ietf-6man-default-iids]. In the case of randomly generated IID or randomly generatedBLUETOOTHBluetooth device address, the "Universal/Local" bit MUST be set to 0 [RFC4291]. Only if theBLUETOOTHBluetooth device address is known to be a public address the "Universal/Local" bit can be set to 1. As defined in RFC 4291 [RFC4291], the IPv6 link-local address for aBT-LEBluetooth LE node is formed by appending the IID, to the prefix FE80::/64, as depicted in Figure 4. 10 bits 54 bits 64 bits +----------+-----------------+----------------------+ |1111111010| zeros | Interface Identifier | +----------+-----------------+----------------------+ Figure 4: IPv6 link-local address inBT-LEBluetooth LE The tool for a 6LBR to obtain an IPv6 prefix for numbering theBT-LEBluetooth LE network is out of scope of this document, but can be, for example, accomplished via DHCPv6 Prefix Delegation [RFC3633] or by using Unique Local IPv6 Unicast Addresses (ULA) [RFC4193]. Due to the link model of theBT-LEBluetooth LE (see Section 2.2) the 6LBR MUST set the "on-link" flag (L) to zero in the Prefix Information Option [RFC4861]. This will cause 6LNs to always send packets to the 6LBR, including the case when the destination is another 6LN using the same prefix. 3.2.2. Neighbor discovery 'Neighbor Discovery Optimization for IPv6 over Low-Power Wireless Personal Area Networks (6LoWPANs)' [RFC6775] describes the neighbor discovery approach as adapted for use in several 6LoWPAN topologies, including the mesh topology.BT-LEBluetooth LE does not support mesh networks and hence only those aspects that apply to a star topology are considered. The following aspects of the Neighbor Discovery optimizations [RFC6775] are applicable toBT-LEBluetooth LE 6LNs: 1. ABT-LEBluetooth LE 6LN MUST register itsaddressaddresses with the 6LBR by sending a Neighbor Solicitation (NS) message with theARO optionAddress Registration Option (ARO) and process the Neighbor Advertisement (NA) accordingly. The NS with the ARO option SHOULD be sent irrespective ofwhether the IID is derived from the unique 48 bit BT-LE device address ortheIID is a random value that is generated as per the privacy extensions for stateless address autoconfiguration [RFC4941]. Although RFC 4941 [RFC4941] permitsmethod used to generate theuse of deprecated addresses for old connections, in this specification we mandate that one interfaceIID. The 6LN MUSTNOT use more than one IID at anyregister only onetime.IPv6 address per IPv6 prefix available on a link. 2. For sending Router Solicitations and processing Router Advertisements theBT-LEBluetooth LE 6LNs MUST, respectively, follow Sections 5.3 and 5.4 of the [RFC6775]. 3.2.3. Header compression Header compression as defined in RFC 6282 [RFC6282], which specifies the compression format for IPv6 datagrams on top of IEEE 802.15.4, is REQUIRED in this document as the basis for IPv6 header compression on top ofBT-LE.Bluetooth LE. All headers MUST be compressed according to RFC 6282 [RFC6282] encoding formats. TheBT-LE'sBluetooth LE's star topology structure and ARO can be exploited in order to provide a mechanism for IID compression. The following text describes the principles of IPv6 address compression on top ofBT-LE.Bluetooth LE. The ARO option requires use of EUI-64 identifier [RFC6775]. Ina link-local communication, boththeIPv6 source and destination addresses MUSTcase of Bluetooth LE, the field SHALL beelided [RFC6282], sincefilled with thenode knows that48-bit device address used by the Bluetooth LE node converted into 64-bit Modified EUI-64 format [RFC4291]. When a 6LN is sending a packet to or through a 6LBR, it MUST fully elide the source address if the source IPv6 address isdestinedcurrently registed with ARO to the 6LBR and the 6LN has registered only one address for the indicated prefix. That is, if SAC=0 and SAM=11 the 6LN MUST have registered the source link-local IPv6 address itevenis using using ARO, and if SAC=1 and SAM=11 thepacket does not6LN MUST have registered the source IPv6 address with the prefix related to compression context identified with Context Identifier Extension. The destination IPv6address. Onaddress MUST be fully elided if theother hand, a node SHALL learndestination address is theIID ofsame address to which theother endpoint of each L2CAP connection it participates in. By exploiting this information, a node that receives a data channel PDU containing an6LN has succesfully registered its source IPv6packet (or a part of it) can infer the correspondingaddress with ARO (set DAC=0, DAM=11). The destination IPv6source address. A nodeaddress MUSTmaintain a Neighbor Cache, inbe fully or partially elided if the destination address has prefix for which context has been set up, for example, DAC=0 and DAM=01 when destination is link-local, and DAC=1 and DAM=01 with Context Identifier Extension if compression context has been configured for theentries include bothused destination. When a 6LBR is transmitting packets to 6LN, it MUST fully elide the source IIDof the neighbor andif theDevice Address that identifiessource IPv6 address is theneighbor. Forone 6LN has used to register its address with ARO (set SAC=0, SAM=11), and it MUST elide thetype of communication considered in this paragraph,source prefix or address if a compression context related to thefollowing settingsIPv6 source address has been set up. The 6LBR also MUSTbe used inelide the destination IPv6compressed header: CID=0, SAC=0, SAM=11, DAC=0, DAM=11.address if it is currently registered by the 6LN with ARO and thus 6LN can determine it based on indication of link- local prefix (DAC=0) or indication of other prefix (DAC=1 with Context Identifier Extension). 3.2.3.1. Remote destination example When a 6LN transmits an IPv6 packet to a remote destination using global Unicast IPv6 addresses, if a context is defined for the prefix of the 6LNs global IPv6 address, the 6LNMUSThas to indicate this context in the corresponding source fields of the compressed IPv6 header as per Section 3.1 of RFC 6282 [RFC6282], andMUSThas to elide the IPv6 sourceaddress.address previously registered with ARO. For this, the 6LN MUST use the following settings in the IPv6 compressed header: CID=1, SAC=1, SAM=11. In this case, the 6LBR can infer the elided IPv6 source address since 1) the 6LBR has previously assigned the prefix to the 6LNs; and 2) the 6LBR maintains a Neighbor Cache that relates the Device Address and the IIDofthecorresponding slave.device has registered with ARO. If a context is defined for the IPv6 destination address, the 6LNMUSThas to also indicate this context in the corresponding destination fields of the compressed IPv6 header, andMUSTelide the prefix of the destination IPv6 address. For this, the 6LN MUST set the DAM field of the compressed IPv6 header as DAM=01 (if the context covers a 64-bit prefix) or as DAM=11 (if the context covers a full, 128-bit address). CID and DAC MUST be set to CID=1 and DAC=1. Note that when a context is defined for the IPv6 destination address, the 6LBR can infer the elided destination prefix by using the context. When a 6LBR receives an IPv6 packet sent by a remote node outside theBT-LEBluetooth LE network, and the destination of the packet is a 6LN, if a context is defined for the prefix of the 6LN's global IPv6 address, the 6LBRMUSThas to indicate this context in the corresponding destination fields of the compressed IPv6header, and MUSTheader. The 6LBR has to elide the IPv6 destination address of the packet before forwardingit toit, if the IPv6 destination address is inferable by the 6LN. For this, the 6LBRMUSTwill set the DAM field of the IPv6 compressed header as DAM=11. CID and DACMUSTneeds to be set to CID=1 and DAC=1. If a context is defined for the prefix of the IPv6 source address, the 6LBRMUSTneeds to indicate this context in the source fields of the compressed IPv6 header, andMUSTelide that prefix as well. For this, the 6LBRMUSTneeds to set the SAM field of the IPv6 compressed header as SAM=01 (if the context covers a 64-bit prefix) or SAM=11 (if the context covers a full, 128-bit address). CID and SACMUSTare to be set to CID=1 and SAC=1. 3.2.4. Unicast and Multicast address mapping TheBT-LEBluetooth LE link layer does not support multicast. Hence traffic is always unicast between twoBT-LEBluetooth LE nodes. Even in the case where amaster6LBR is attached to multipleslaves,6LNs, themaster6LBR cannot do a multicast to all the connectedslaves.6LNs. If themaster6LBR needs to send a multicast packet to all itsslaves,6LNs, it has to replicate the packet and unicast it on each link. However, this may not be energy- efficient and particular care must be taken if the master is battery- powered. In the opposite direction, aslave6LN can only transmit data to a single destination (i.e. themaster).6LBR). Hence, when aslave6LN needs to transmit an IPv6 multicast packet, theslave6LN will unicast the correspondingBT-LEBluetooth LE packet to themaster. As described in the Section 3.2 the master6LBR. The 6LBR willnotthen forwardlink-localthe multicastmessagespacket to otherslaves connected6LNs. To avoid excess unwanted multicast traffic being sent to 6LNs, themaster.6LBR SHOULD implement MLD Snooping feature [RFC4541]. 3.3. Internet connectivity scenarios In a typical scenario, theBT-LEBluetooth LE network is connected to the Internet as shown in the Figure 5.A degenerate scenario can be imagined where a slave is acting as 6LBR and providing Internet connectivity for the master. How the master could then further provide Internet connectivity to other slaves, possibly connected to the master, is out of the scope of this document.6LN \ ____________ \ / \ 6LN ---- 6LBR-------- | Internet | / \____________/ / 6LN <--BT-LEBluetooth LE --> Figure 5:BT-LEBluetooth LE network connected to the Internet In some scenarios, theBT-LEBluetooth LE network may transiently or permanently be an isolated network as shown in the Figure 6. 6LN 6LN \ / \ / 6LN --- 6LBR --- 6LN / \ / \ 6LN 6LN<------ BT-LE -----><--- Bluetooth LE ---> Figure 6: IsolatedBT-LEBluetooth LE network It is also possible to have point-to-point connection between two 6LNs, one of which being central and another being peripheral. Similarly, it is possible to have point-to-point connections between two 6LBRs, one of which being central and another being peripheral. At this point in time mesh networking with Bluetooth LE is not specified. In the isolated network scenario communications between 6LN and 6LBR can use IPv6 link-local methodology, but for communications between differentslaves,6LNs, themaster6LBR has toact as 6LBR,number the network with ULA prefix [RFC4193], and route packets betweenslaves.6LNs. 4. IANA Considerations There are no IANA considerations related to this document. 5. Security Considerations The transmission of IPv6 overBT-LEBluetooth LE links has similar requirements and concerns for security as for IEEE 802.15.4.IPv6 over BT-LE SHOULD be protected by using BT-LEBluetooth LE Link Layersecurity. BT-LEsecurity considerations are covered by the IPSP [IPSP]. Bluetooth LE Link Layer supports encryption and authentication by using the Counter with CBC-MAC (CCM) mechanism [RFC3610] and a 128-bit AES block cipher. Upper layer security mechanisms may exploit this functionality when it is available. (Note: CCM does not consume bytes from the maximum per-packet L2CAP data size, since the link layer data unit has a specific field for them when they are used.) Key management inBT-LEBluetooth LE is provided by the Security Manager Protocol (SMP), as defined in[BTCorev4.0].[BTCorev4.1]. 6. Additional contributors Kanji Kerai, Jari Mutikainen, David Canfeng-Chen and Minjun Xi from Nokia have contributed significantly to this document. 7. Acknowledgements TheBLUETOOTH, BLUETOOTHBluetooth, Bluetooth Smart andBLUETOOTHBluetooth Smart Ready marks are registred trademarks owned byBLUETOOTHBluetooth SIG, Inc. Samita Chakrabarti, Erik Nordmark, and Marcel De Kogel have provided valuable feedback for this draft. Authors would like to give special acknowledgements for Krishna Shingala, Frank Berntsen, and Bluetooth SIG's Internet Working Group for providing significant feedback and improvement proposals for this document. 8. References 8.1. Normative References[BTCorev4.0] BLUETOOTH[BTCorev4.1] Bluetooth Special Interest Group,"BLUETOOTH"Bluetooth Core Specification Version4.0", June 2010.4.1", December 2013. [IPSP] Bluetooth Special Interest Group, "Bluetooth Internet Protocol Support Profile Specification - REFERENCE TO BE UPDATED ONCE IPSP IS PUBLISHED", 2014. [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [RFC2464] Crawford, M., "Transmission of IPv6 Packets over Ethernet Networks", RFC 2464, December 1998. [RFC4291] Hinden, R. and S. Deering, "IP Version 6 Addressing Architecture", RFC 4291, February 2006. [RFC4541] Christensen, M., Kimball, K., and F. Solensky, "Considerations for Internet Group Management Protocol (IGMP) and Multicast Listener Discovery (MLD) Snooping Switches", RFC 4541, May 2006. [RFC4861] Narten, T., Nordmark, E., Simpson, W., and H. Soliman, "Neighbor Discovery for IP version 6 (IPv6)", RFC 4861, September 2007. [RFC4862] Thomson, S., Narten, T., and T. Jinmei, "IPv6 Stateless Address Autoconfiguration", RFC 4862, September 2007.[RFC4944] Montenegro, G., Kushalnagar, N., Hui, J., and D. Culler, "Transmission of IPv6 Packets over IEEE 802.15.4 Networks", RFC 4944, September 2007.[RFC6282] Hui, J. and P. Thubert, "Compression Format for IPv6 Datagrams over IEEE 802.15.4-Based Networks", RFC 6282, September 2011. [RFC6775] Shelby, Z., Chakrabarti, S., Nordmark, E., and C. Bormann, "Neighbor Discovery Optimization for IPv6 over Low-Power Wireless Personal Area Networks (6LoWPANs)", RFC 6775, November 2012. 8.2. Informative References [I-D.ietf-6man-default-iids] Gont, F., Cooper, A., Thaler, D., and W. Will, "Recommendation on Stable IPv6 Interface Identifiers", draft-ietf-6man-default-iids-00 (work in progress), January 2014. [IEEE802-2001] Institute of Electrical and Electronics Engineers (IEEE), "IEEE 802-2001 Standard for Local and Metropolitan Area Networks: Overview and Architecture", 2002. [RFC3610] Whiting, D., Housley, R., and N. Ferguson, "Counter with CBC-MAC (CCM)", RFC 3610, September 2003. [RFC3633] Troan, O. and R. Droms, "IPv6 Prefix Options for Dynamic Host Configuration Protocol (DHCP) version 6", RFC 3633, December 2003. [RFC4193] Hinden, R. and B. Haberman, "Unique Local IPv6 Unicast Addresses", RFC 4193, October 2005.[RFC4941] Narten, T., Draves, R., and S. Krishnan, "Privacy Extensions for Stateless Address Autoconfiguration in IPv6", RFC 4941, September 2007. Appendix A. BLUETOOTH Low Energy fragmentation and L2CAP Modes This section provides an overview of Fragmentation and Recombination (FAR) method and L2CAP modes in BT-LE. FAR is an L2CAP mechanism, in which an L2CAP entity can take the (large) upper layer PDU, prepend the L2CAP header (4 bytes in the Basic L2CAP mode)[RFC4944] Montenegro, G., Kushalnagar, N., Hui, J., andbreak the resulting L2CAP PDU into fragments which can then be directly encapsulated into Data channel PDUs. There are bits in the Data channel PDUs which identify whether the payload is a complete L2CAP PDU or the first of a set of fragments, or one of the rest of the fragments. There are five L2CAP modes defined in the BT 4.0 spec. These modes are: Retransmission Mode (a Go-Back-N mechanism is used), Enhanced Retransmission Mode (includes selective NAK among others), Flow Control Mode (PDUs are numbered, but there are no retransmissions), Streaming Mode (PDUs are numbered, but there are no ACKsD. Culler, "Transmission ofany kind) and Basic L2CAP Mode. Appendix B. BLUETOOTH Low Energy L2CAP Channel ID Usage for 6LoWPAN/IPv6The BT-LE Logical Link Control and Adaptation Protocol (L2CAP) uses Channel Identifiers (IDs) to distinguish the upper layer protocol carried on top of it. Two devices exchanging IPv6/6LoWPAN packets need to use a common Channel ID to be able to send and receive the packets correctly over L2CAP. It is also important that they avoid using Channel ID's that conflict with other L2CAP usages. For the initial use of IPv6/6LoWPANPackets overBT-LE L2CAP, implementers are recommended to use Channel ID 0x3E from the BLUETOOTH Special Interest Group reserved space (BLUETOOTH 4.0 Logical Link Control and Adaptation Protocol Specification -part, table 2.1 [BTCorev4.0]). As the IPv6/6LoWPAN use becomes more widely adopted, the BT SIG may allocate 0x3E or some other Channel ID exclusively for IPv6/6LoWPAN. Any such BT SIG allocation will deprecate the recommendation given in this Appendix, and a new RFC will be published at the time of allocation that will update thisIEEE 802.15.4 Networks", RFCand specify the allocated value. The initial implementers are thus recommended to keep their Channel ID usage capability flexible to potential future changes.4944, September 2007. Authors' Addresses Johanna Nieminen(editor)NokiaItaemerenkatuItamerenkatu 11-13FI-00180Helsinki 00180 Finland Email: johannamaria.nieminen@gmail.com Teemu Savolainen(editor)Nokia Hermiankatu 12 DFI-33720Tampere 33720 Finland Email: teemu.savolainen@nokia.com Markus Isomaki Nokia Keilalahdentie 2-4FI-02150Espoo 02150 Finland Email: markus.isomaki@nokia.com Basavaraj Patil AT&T 1410 E. Renner Road Richardson, TX 75082 USA Email: basavaraj.patil@att.com Zach ShelbySensinodeArm Hallituskatu 13-17DFI-90100Oulu 90100 Finland Email:zach.shelby@sensinode.comzach.shelby@arm.com Carles Gomez Universitat Politecnica de Catalunya/i2CAT C/Esteve Terradas, 7 Castelldefels 08860 Spain Email: carlesgo@entel.upc.edu