[riot-devel] Fragmentation support in IP

Thomas C. Schmidt t.schmidt at haw-hamburg.de
Thu Aug 18 23:27:01 CEST 2016


Hi Adeel,

adding to this: you should keep in mind that in LowPANs you may easily 
trigger multiple layers of fragmentation (loosing one fragment is 
loosing all!) ... and that receivers may not be ready to handle UDP 
datagrams of 'arbitrary' sizes.

So if you really want to stay away from upper layer protocols like CoAP, 
you should process data segmentation in your application (not sure this 
is the best idea, though).

Cheers,
  Thomas

On 18.08.2016 22:54, Carsten Bormann wrote:
> Hi Adeel,
>
> IP fragmentation is usually a bad idea*), and more so on a constrained
> network.  If you need to transfer payloads beyond a kilobyte or so,
> maybe CoAP (RFC 7252) with the block-wise transfer protocol (currently
> being published as RFC-to-be 7959) solves your problem.
>
> Which encryption expands a few bytes of plaintext to kilobytes of
> ciphertext?  (You may be thinking about signatures; e.g., hash-based
> signatures can be 3-6 KiB or even more.  These might occur in firmware
> updates and are covered quite well by CoAP + block-wise.)
>
> Grüße, Carsten
>
> *)
> https://tools.ietf.org/html/draft-mathis-frag-harmful-00
> http://www.hpl.hp.com/techreports/Compaq-DEC/WRL-87-3.pdf
>
> Adeel Mohammad Malik wrote:
>> Hi Thomas,
>>
>> I agree that IP fragmentation is not an equivalent for data streaming.
>> However it still facilitates transporting data that exceeds the MTU. The
>> use case we are looking at is encryption of IoT data that may result in
>> a few bytes of plaintext being converted to a few kilobytes of
>> ciphertext. Had IP supported fragmentation in RIOT it would have been
>> possible for us to send such data.
>>
>> /Adeel
>>
>>
>> -------- Original message --------
>> From: "Thomas C. Schmidt" <t.schmidt at haw-hamburg.de>
>> Date: 8/18/2016 18:11 (GMT+01:00)
>> To: devel at riot-os.org
>> Subject: Re: [riot-devel] Fragmentation support in IP
>>
>> Hi Adeel,
>>
>> GNRC in RIOT supports fragmentation, e.g. in the context of 6LowPAN.
>>
>> However, you seem to be interested in sending UDP datagrams that exceed
>> the MTU payload size. I don't think this is common use ... and I don't
>> think this is clever, either. IP fragmentation is not an equivalent for
>> data streaming.
>>
>> Cheers,
>>   Thomas
>>
>> On 18.08.2016 18:04, Adeel Mohammad Malik wrote:
>>> Hi all,
>>>
>>>
>>>
>>> My question is about fragmentation support in IP in RIOT. Does IP in
>>> RIOT support fragmentation? The use case I am after is transferring a
>>> large blob of data (let’s say 5 kilobytes) on the UDP/IP stack in RIOT.
>>> Is that possible?
>>>
>>>
>>>
>>> I know that 6LoWPAN supports fragmentation but that is below the IP
>>> layer. I am interested in fragmentation at the IP layer so that
>>> application running over it in RIOT can send large data.
>>>
>>>
>>>
>>> Regards,
>>>
>>> Adeel
>>>
>>
>> --
>>
>> Prof. Dr. Thomas C. Schmidt
>> ° Hamburg University of Applied Sciences                   Berliner Tor 7 °
>> ° Dept. Informatik, Internet Technologies Group    20099 Hamburg, Germany °
>> ° http://www.haw-hamburg.de/inet                   Fon: +49-40-42875-8452 °
>> ° http://www.informatik.haw-hamburg.de/~schmidt    Fax: +49-40-42875-8409 °
>> _______________________________________________
>> devel mailing list
>> devel at riot-os.org
>> https://lists.riot-os.org/mailman/listinfo/devel
>>
>> _______________________________________________
>> devel mailing list
>> devel at riot-os.org
>> https://lists.riot-os.org/mailman/listinfo/devel
> _______________________________________________
> devel mailing list
> devel at riot-os.org
> https://lists.riot-os.org/mailman/listinfo/devel
>

-- 

Prof. Dr. Thomas C. Schmidt
° Hamburg University of Applied Sciences                   Berliner Tor 7 °
° Dept. Informatik, Internet Technologies Group    20099 Hamburg, Germany °
° http://www.haw-hamburg.de/inet                   Fon: +49-40-42875-8452 °
° http://www.informatik.haw-hamburg.de/~schmidt    Fax: +49-40-42875-8409 °


More information about the devel mailing list