Improvement in the Fragmentation
Hello, I wanted to make an improvement related to the fragmentation process. The fragmentation process is made node by node, which limits the efficiency of IBR-DTN. This process can be improved, by enabling the different parts of a bundle that could be received by a destination from different nodes. For example, a node A has a bundle to send to node D. First, 30 percent of the bundle are sent to node B and then 70 percent are sent to node C. Then i want that node D is able to receive the fragments from B and C and reassemble them together. Do you have some idea how can i do this?Is it and issue of the DTN or in the protocols of routing? Thank you in advance,Luis Guedes
Hello Luis,
I think fragmentation as defined by the RFC 5050 is a very difficult thing. During the development of IBR-DTN, I recognized many cases which could lead to a bad network behavior, that I decided to just implement the safe ones.
These cases are pro-active fragmentation on sender only and reactive fragmentation with limited scope. While the pro-active fragmentation only split up a bundle at the receiver (and not on the path to its destination), the reactive fragmentation allows to resume an aborted bundle transfer between two nodes. In example, sender A transfers a bundle X to peer B. If the transmission gets interrupted, X will be split up virtually into X' and X''. The peer B can now forward the fragment X'' but what should A do now with the copy of X and X'? Should it forward only X' or X or both if another peer is met? I decided to limit the scope of the fragmentation to the relation between A and B, so that only if A meets B again the remaining fragment X' is forwarded. In case node A meets another peer, the complete bundle X is forwarded.
The RFC 5050 do not specify the exact behavior for that mechanism, because this may depend on the used routing scheme. The way IBR-DTN handle this issue works (as far I can tell) with any routing scheme out there, but may be not ideal in any case.
Kind regards, Johannes Morgenroth
Am 08.11.2013 18:10, schrieb Luís Carlos Guedes:
Hello,
I wanted to make an improvement related to the fragmentation process. The fragmentation process is made node by node, which limits the efficiency of IBR-DTN. This process can be improved, by enabling the different parts of a bundle that could be received by a destination from different nodes.
For example, a node A has a bundle to send to node D. First, 30 percent of the bundle are sent to node B and then 70 percent are sent to node C. Then i want that node D is able to receive the fragments from B and C and reassemble them together.
Do you have some idea how can i do this? Is it and issue of the DTN or in the protocols of routing?
Thank you in advance, Luis Guedes
Hello, I'm trying to test the IBRDTN version 0.10.2 in 3 computers, sending from PC1 to PC3, through PC2 but i am having some problems. - I installed the software in all the three PC's- Connnected the PC1 and PC2 with a network cable- Started the deamons in both with "dtnd -i <port>"(it not appeared the info that the "deamon is ready")- After tried to do ping between the two PC's and it didn't work. Can you help me how can i solve this problem?and where i can get the information(commands that i need to use) about how can I send some bundle between PC1 and PC3 through PC2?
Thank you in advance,Luis Guedes
Hello,
The -i parameter needs the interface, i.e. eth0 and not the port
When starting, the first log messages of the damon will tell you on which interfaces it bounds convergence layers (like TCP) and Discoverymodules (which are needed so the daemons see each other). The -i option will bind TCP CL and IPND on the default ports on that interface.
dtnping can be used to test connectivity (the endpoint is dtn://<other devices name>/echo
dtnsend and dtnrecv can be used to transfer data.
Some examples are here http://trac.ibr.cs.tu-bs.de/project-cm-2012-ibrdtn/wiki/ibr-dtn-tut
Sebastian
Am 12.12.2013 um 18:08 schrieb Luís Carlos Guedes duarte_d10@hotmail.com:
Hello,
I'm trying to test the IBRDTN version 0.10.2 in 3 computers, sending from PC1 to PC3, through PC2 but i am having some problems.
- I installed the software in all the three PC's
- Connnected the PC1 and PC2 with a network cable
- Started the deamons in both with "dtnd -i <port>"
(it not appeared the info that the "deamon is ready")
- After tried to do ping between the two PC's and it didn't work.
Can you help me how can i solve this problem? and where i can get the information(commands that i need to use) about how can I send some bundle between PC1 and PC3 through PC2?
Thank you in advance, Luis Guedes
-- !! This message is brought to you via the `ibr-dtn' mailing list. !! Please do not reply to this message to unsubscribe. To unsubscribe or adjust !! your settings, send a mail message to ibr-dtn-request@ibr.cs.tu-bs.de !! or look at https://www.ibr.cs.tu-bs.de/mailman/listinfo/ibr-dtn.
participants (3)
-
Johannes Morgenroth
-
Luís Carlos Guedes
-
Sebastian Schildt