Skip to content

Commit

Permalink
Merge pull request #138 from RIOT-OS/ipv6_fragmentation
Browse files Browse the repository at this point in the history
task0{3,4,7}: Add tests for IPv6 fragmentation
  • Loading branch information
kb2ma authored Oct 10, 2019
2 parents 968667c + 5c158a4 commit c5f35a7
Show file tree
Hide file tree
Showing 5 changed files with 80 additions and 0 deletions.
17 changes: 17 additions & 0 deletions 03-single-hop-ipv6-icmp/03-single-hop-ipv6-icmp.md
Original file line number Diff line number Diff line change
Expand Up @@ -80,3 +80,20 @@ one native node.
All nodes are still running, reachable, and the packet buffer is empty 10
seconds after completions (use module `gnrc_pktbuf_cmd`).
Packet loss is irrelevant in this stress test.

Task #06 - ICMPv6 link-local echo on native (IPv6 fragmentation)
================================================================
### Description

ICMPv6 echo request/reply exchange between two native nodes (make sure module
`gnrc_ipv6_ext_frag` is included and the packet buffer is large enough to handle
both the fragmented and reassembled requests/replies).
* Stack configuration: IPv6 (default)
* Count: 1000
* Interval: 100ms
* Payload: 2kB
* Destination Address: Link local unicast (fe80::.../64)

### Result

<1% packets lost on the pinging node.
19 changes: 19 additions & 0 deletions 04-single-hop-6lowpan-icmp/04-single-hop-6lowpan-icmp.md
Original file line number Diff line number Diff line change
Expand Up @@ -151,3 +151,22 @@ to one iotlab-m3.
All nodes are still running, reachable, and the packet buffer is empty 3 seconds
after completions (use module `gnrc_pktbuf_cmd`).
Packet loss is irrelevant in this stress test.

Task #10 (Exprimental) - ICMPv6 echo with large payload (IPv6 fragmentation)
============================================================================
### Description

ICMPv6 echo request/reply exchange between two nodes (make sure module
`gnrc_ipv6_ext_frag` is included and the packet buffer is large enough to handle
both the fragmented and reassembled requests/replies).
* Stack configuration: 6LoWPAN (default)
* Channel: 26
* Count: 200
* Interval: 600ms
* Payload: 2kB
* Destination Address: Link local unicast (fe80::.../64)

### Result

<10% packets lost on the pinging node.
No leaks in the packet buffer (check with `gnrc_pktbuf_cmd`).
13 changes: 13 additions & 0 deletions 04-single-hop-6lowpan-icmp/example_test_guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -166,3 +166,16 @@ to one iotlab-m3.
1. Ping from many srcs to the dest `ping6 -c 1000 -i 200 -s 1232 <ll_addr>`
2. Record the packet loss and timings, it should be less then 10%
3. check the packet buffer with `pktbuf`

Task #10 (Exprimental) - ICMPv6 echo with large payload (IPv6 fragmentation)
============================================================================
### Description

ICMPv6 echo request/reply exchange between two nodes (make sure module
`gnrc_ipv6_ext_frag` is included and the packet buffer is large enough to handle
both the fragmented and reassembled requests/replies).
1. Compile with `CFLAGS+=GNRC_PKTBUF_SIZE=8192` and
`USEMODULE += gnrc_ipv6_ext_frag`.
2. Ping from the src to the dest `ping6 -c 200 -i 600 -s 2048 <ll_addr>`
3. Record the packet loss and timings, it should be less then 10%
4. check the packet buffer with `pktbuf`
14 changes: 14 additions & 0 deletions 07-multi-hop/07-multi-hop.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,3 +45,17 @@ Sending UDP between two iotlab-m3 nodes over three hops with RPL generated route

<10% packets lost on the pinging node.
No leaks in the packet buffer (check with `gnrc_pktbuf_cmd`).

Task #05 (Experimental) - UDP with large payload on iotlab-m3 with three hops (RPL route)
=========================================================================================
### Description

Sending UDP with payload size 2kB between two iotlab-m3 nodes over three hops
with RPL generated routes (make sure module `gnrc_ipv6_ext_frag` is included and
the packet buffer is large enough to handle both the fragmented and reassembled
requests/replies).

### Result

<10% packets lost on the pinging node.
No leaks in the packet buffer (check with `gnrc_pktbuf_cmd`).
17 changes: 17 additions & 0 deletions 07-multi-hop/example_test_guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -109,3 +109,20 @@ Sending UDP between two iotlab-m3 nodes over three hops with RPL generated route

<10% packets lost on the pinging node.
No leaks in the packet buffer (check with `gnrc_pktbuf_cmd`).

Task #05 (Experimental) - UDP with large payload on iotlab-m3 with three hops (RPL route)
=========================================================================================
### Description

Sending UDP between two iotlab-m3 nodes over three hops with RPL generated routes.

1. Follow Task 3 and 4 setup
2. Start a udp server on root node, Node 1:`udp server start 1234`
3. Start a udp server on the other node, Node 4:`udp server start 4321`
4. Send 60 packets to the other node from the root node, Node 1:`udp send abcd::<other node global address> 4321 2048 60 1000000`
5. Send 60 packets to the other node from the root node, Node 4:`udp send abcd::1 1234 2048 60 1000000`

### Result

<10% packets lost on the pinging node.
No leaks in the packet buffer (check with `gnrc_pktbuf_cmd`).

0 comments on commit c5f35a7

Please sign in to comment.