Consider an RPL network as shown in below. In this network node 1 is the root of the DODAG. Node 2 is the sender and sends unicast UDP packets toward receiver nodes (nodes 3-18). The DODAG is working in the non-storing mode and I am using Cooja mote of Contiki-NG to perform this simulation.
The problem is that the packets can only be reach to nodes that are placed up to 12 hops away (node 13 in this example). When the sender wants to send a packet for node 16 for example, we got the following warning by 6lowpan and the packet is dropped at the root: "Not enough packetbuf space to compress header (112 bytes, 92 left). Aborting." (line #706 sicslowpan.c)
I investigated the problem and found that the root creates the source routing header correctly and the header is added to the packet without any problem. However, the problem comes from the MAC layer and radio interface. The packet is larger than MAX_PAYLOAD_LEN
of radio driver. So the radio driver cannot handle the packet. The Contiki-ng has the nullradio driver by itself, but I think the radio driver and its parameters is defined by the platform. I need to mitigate this limitation. Is it possible to modify the parameters in Cooja mote source code? If yes how I can do that?