Hi Uze,

Thanks very much for the clarifications. I will have a look at the mini
plugin bridge module, Glad to know the resource container is deprecated,
seems overly complex and a simpler approach was needed.

So, just to make sure I get the correct understanding, it is possible for
the RD to cache values of the resources of other nodes and serve requests
for these resources locally. Pls confirm.

Yes, I had a look at the routing through heterogeneous networks, has anyone
really tested that it works?

Best regards,

Khaled



On Wed, Jun 7, 2017 at 10:49 AM, ??? (Uze Choi) <uzchoi at samsung.com> wrote:

> Hi Khaled,
>
>
>
> Let me update some iotivity implementation status from your initial
> questions.
>
> (RD)
>
> https://wiki.iotivity.org/resource_directory_-_programming_guide focus on
> the generic use case and inclined to local network scenario.
>
>  https://wiki.iotivity.org/resource-directory_rd looks have more focus on
> the cloud use case. But, they are same concept.
>
> If you say resource value cache mechanism such as temperature and power
> status value, we call it resource hosting but for the discovery information
> we call it resource directory. Resource hosting is separate terminology
> beyond resource directory. Initially resource hosting module was
> implemented but now deprecated.
>
>
>
> (BLE routing)
>
> If you enable the routing feature, you can find the other network device
> thru BLE and WIFI.
>
> Please see https://wiki.iotivity.org/routing_through_heterogeneous_
> transports.
>
> However, BLE transport using GATT is not accepted as OCF transport. You
> can only connect thru gateway device implementation using mini plugin
> manager module and so on.
>
>
>
> (Resource Container)
>
> Use case of Resource container is exactly what you expected. However, This
> module was deprecated from this release 1.3.0.
>
> Instead, mini plugin bridge module was newly introduced in this IoTivity
> 1.3.0 release.
>
>
>
> BR, Uze Choi
>
> *From:* iotivity-dev-bounces at lists.iotivity.org [mailto:
> iotivity-dev-bounces at lists.iotivity.org] *On Behalf Of *VanCutsem,
> Geoffroy
> *Sent:* Wednesday, June 07, 2017 7:05 AM
> *To:* khaledieee at gmail.com
> *Cc:* iotivity-dev
>
> *Subject:* Re: [dev] Several Architectural Questions on Iotivity
>
>
>
> Hi Khaled,
>
>
>
> I?d need to dive deeper into the 6LowPAN (Arduino 101 + Zephyr +
> iotivity-constrained) stack to understand how it works but I don?t believe
> that that one does any resource hosting so any OIC/OCF client will really
> talk to the device. The Gateway in our case is simply the ?BLE endpoint?
> (not sure that terminology is appropriate) that the OCF server connects to
> using Bluetooth. It happens to be our home gateway in our set-up but it
> likely does not have to be. I?m also assuming that you could have many of
> these endpoints throughout your network as long as they?re all part of the
> same subnet. These ?BLE endpoint? would be connected over a network (e.g.
> Ethernet, WiFi, ?) to your Gateway. I say ?likely? and ?assuming? because I
> have not tested this and I really don?t know enough yet about IPv6 to
> understand how this all plays out.
>
>
>
> For our sensors using BLE GATT, it?s a little different and yes, it?s
> really the small app running on the BLE endpoint that turns it into an
> OIC/OCF device. But similar to what I describe above, you could most likely
> have many of these around. In your diagram below, the BLE connections
> (GATT) would be established between your sensor and what I call here a BLE
> endpoint and all you?d need to have is a network connection (same subnet)
> between that endpoint and your gateway. That connection could be Ethernet
> or WiFi for example.
>
>
>
> My understanding is also that things will be slightly different (for the
> better) when Bluetooth 5.0 (that introduces mesh) gets into the picture.
> But I think that?s still a few months away at least.
>
>
>
> To all networking experts out there, please chime him if I?m talking
> rubbish at any point ;)
>
>
>
> Geoffroy
>
>
>
> *From:* khaled at ieee.org [mailto:khaled at ieee.org <khaled at ieee.org>] 
> *On
> Behalf Of *Khaled Elsayed
> *Sent:* Tuesday, June 6, 2017 5:11 PM
> *To:* VanCutsem, Geoffroy <geoffroy.vancutsem at intel.com>
> *Cc:* iotivity-dev <iotivity-dev at lists.iotivity.org>
> *Subject:* Re: [dev] Several Architectural Questions on Iotivity
>
>
>
> Thanks Geoffroy for the info.
>
>
>
> So, as far as I could understand from your replies and the initial reading
> of the readme file is that your BLE devices whether OCF/OIC (e.g. the
> sensor running zephyr with iotivity constrained) or GATT-based non-OIC,
> they are handled by the gateway device. The gateway will provide some
> "resource hosting" for the BLE devices to connect them with the rest of the
> system. All entities will talk with the gateway not to the BLE node itself
> even if BLE node is OCF/OIC. Is this correct?
>
>
>
> I think this will make things a bit easier though not as flexible as in
> the case the gateway will route between the different transports.
>
>
>
> Also, the usage of simple node.js scripts instead of full-fledged resource
> container/bundle simplifies the handling of non-OIC devices. I will have a
> look at these.
>
>
>
> Best regards,
>
>
>
> Khaled
>
>
>
>
>
> On Tue, Jun 6, 2017 at 3:41 PM, VanCutsem, Geoffroy <
> geoffroy.vancutsem at intel.com> wrote:
>
> Hi Khaled,
>
>
>
> You will find some input to some of your questions embedded below.
>
>
>
> *From:* iotivity-dev-bounces at lists.iotivity.org [mailto:
> iotivity-dev-bounces at lists.iotivity.org] *On Behalf Of *Khaled Elsayed
> *Sent:* Tuesday, June 6, 2017 9:59 AM
> *To:* iotivity-dev <iotivity-dev at lists.iotivity.org>
> *Subject:* [dev] Several Architectural Questions on Iotivity
>
>
>
> ??
>
> Dear all,
>
>
>
> We are working on a research project called campie
> http://campie.cu.edu.eg/ and have chosen iotivity/OIC as our base
> connectivity and service discovery layer. I have several questions on
> iotivity as I am trying to draft our platform architecture. Looking forward
> to an exciting discussion.
>
>
>
> i) RD
>
> Is Iotivity RD fully compliant with the IETF RD
> https://datatracker.ietf.org/doc/draft-ietf-core-resource-directory/. The
> documentation is somewhat confusing. According to this
> https://wiki.iotivity.org/resource_directory_-_programming_guide, it
> looks more like IETF RD. However, according to this
> https://wiki.iotivity.org/resource-directory_rd, iotivity RD  is used to
> provide "resource hosting" to support constrained devices with long
> duty-cycle. I am inclined to think it can be used for both IETF-style RD
> and then to host resources for those devices that need to save energy. It
> is up to what is included in the code. Is this a correct conclusion?
>
>
>
>
>
> ii) Heterogeneous Networks
>
> Suppose we have the following network consisting of OIC servers on BLE
> transport and 6owPAN/802.15.4, with an OIC client connected via the gateway
> over Ethernet.
>
>
>
> [image: Inline image 1]
>
>
>
> [Geoffroy] We have a similar set-up in our IoT to Cloud Smart Home demo (
> https://01.org/smarthome (*) and https://github.com/01org/SmartHome-Demo).
> More specifically, we have a Gateway that connects to BLE devices (both
> 6LowPAN and GATT) and a separate Ethernet router that also acts as a WiFi
> AP. So we have a mix of OCF servers that are connected via Ethernet, WiFi
> and BLE (both 6LowPAN and GATT).
>
>
>
> (*) a little warning: our code base found in the Github repo has evolved
> significantly since we wrote the tutorial so for accurate information, I?d
> recommend reading the README.md files in our Github repository. We are in
> the process of updating the tutorial but I do not have a firm schedule yet
>
>
>
> How can the Ethernet client discover:
>
> 1) 802.15.4: these are running IPv6 over 6LowPAN, routing between the
> Ethernet and 15.4 can be achieved via the gateway. Should the gateway
> forward the multicast requests between the two networks? What else is
> needed?
>
>
>
> [Geoffroy] As part of our demo, we use Arduino 101 devices running the Zephyr
> Project <https://www.zephyrproject.org/> and iotivity-constrained
> <https://github.com/iotivity/iotivity-constrained>. These are native
> OIC/OCF devices that communicate with the gateway over BLE (6LowPAN). There
> is nothing specific in terms of routing that we do there. We have two
> examples of such devices at the moment:
>
> 1.       A temperature sensor (native OIC/OCF server):
> https://github.com/01org/SmartHome-Demo/tree/master/
> sensors/ocf_temperature_sensor
>
> 2.       A multisensor device: temperature, light, motion and LED . The
> code is available here: https://github.com/01org/
> SmartHome-Demo/tree/master/sensors/ocf_multi_sensors
>
>
>
> 2) BLE:
>
>    - If the OIC servers on BLE are using GATT-based OIC transport, what
>    does the gateway need to do enable the Ethernet OIC client to discover
>    those BLE devices?
>
> [Geoffroy] We have two examples of devices using BLE GATT to communicate
> in our repo.
>
> 1.       An environmental sensors [1] that communicates with our gateway
> over BLE using GATT (Environmental Sensing Profile
> <https://www.bluetooth.org/docman/handlers/downloaddoc.ashx?doc_id=294796>).
> There is no OIC/OCF stack running on the device itself and but instead we
> run a small app on the gateway (it is available here [2]) that exposes the
> data transmitted over BLE GATT as if the device was an OIC/OCF server. This
> small app is written in JavaScript (node.js) and its main dependencies are
> ?noble? and ?iotivity-node?. It?s a very simple mechanism that works rather
> well for us.
>
> 2.       A Power Meter [3] that works very much the same way than the
> environmental sensor except it uses a custom profile. Similarly, a simple
> JS app [4] running on the gateway exposes that sensor as an OIC/OCF server
> to the rest of the system.
>
> [1] https://github.com/01org/SmartHome-Demo/tree/master/
> sensors/environmental-sensors
>
> [2] https://github.com/01org/SmartHome-Demo/blob/master/
> ocf-servers/js-servers/environmental_sensor.js
>
> [3] https://github.com/01org/SmartHome-Demo/tree/master/
> sensors/DC_power_meter
>
> [4] https://github.com/01org/SmartHome-Demo/blob/master/
> ocf-servers/js-servers/power-uart.js
>
>    - If the BLE nodes are also supporting IP service profile/6LowPAN, is
>    GATT-based OIC still needed or coap/udp over 6lowpan would be the way to 
> go?
>
> Also if these 802.15.4 or BLE devices want to discover and register with
> an RD server on the Ethernet segment, what needs to be done?
>
>
>
>
>
> Finally, this one on non-OIC
>
> iii) Non-OIC Devices: According to the documentation of the resource
> container  https://wiki.iotivity.org/resource_container_-_
> programming_guide, sample application and bundles are available in the
> examples folder. However, I cannot find them. I can only find same plugins
> etc in the bridging folder. How can one build a full example with
> implementation of resource container, bundle/plugins and configuration xml?
>
>
>
> Best regards
>
>
>
> Khaled
>
>
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: 
<http://lists.iotivity.org/pipermail/iotivity-dev/attachments/20170607/8bad0031/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image001.png
Type: image/png
Size: 31693 bytes
Desc: not available
URL: 
<http://lists.iotivity.org/pipermail/iotivity-dev/attachments/20170607/8bad0031/attachment.png>

Reply via email to