multi path TCP
As a complete newbie to batman, please excuse if this question is unusually stupid, but I just got home after getting update on the mptcp kernel module http://mptcp.info.ucl.ac.be/ and it seems to me that running mptcp over a batman mesh could potentially be quite nice. It that correct or am I just being ignorant?
tia
Christian
Hello Christian,
Quoted 2 lines · Christian Huldt
As a complete newbie to batman, please excuse if this question is unusually stupid, but I just got home after getting update on the mptcp kernel module http://mptcp.info.ucl.ac.be/ and it seems to me that running mptcp over a batman mesh could potentially be quite nice. It that correct or am I just being ignorant?
Before answering your question, I would like to read and understand a bit more about mptcp, but actually I couldn't find any resource explaining the concept behind it an how it is supposed to work. The only document I've been able to find is Sébastien's Thesis...but I would rather prefer a lighter reading first :-)
Anyway, is it somehow similar to ip multihoming with load balancing?
Cheers,
Signature · 4 lines
Antonio Quartulli ..each of us alone is worth nothing.. Ernesto "Che" Guevara
8 feb 2012 kl. 14:26 skrev Antonio Quartulli:
Quoted 6 lines
Hello Christian,
Quoted 2 lines · Christian Huldt
As a complete newbie to batman, please excuse if this question is unusually stupid, but I just got home after getting update on the mptcp kernel module http://mptcp.info.ucl.ac.be/ and it seems to me that running mptcp over a batman mesh could potentially be quite nice. It that correct or am I just being ignorant?
Quoted 8 lines
Before answering your question, I would like to read and understand a bit more about mptcp, but actually I couldn't find any resource explaining the concept behind it an how it is supposed to work. The only document I've been able to find is Sébastien's Thesis...but I would rather prefer a lighter reading first :-)
Anyway, is it somehow similar to ip multihoming with load balancing?
I am unfortunately not able to say whether that is the case (yet…), I saw a demo and (think I) understood at least parts of the talk.
This is my limited understanding:
This implementation of mptcp works by creating a virtual interface bound to two (or more?) interfaces and traffic over that virtual interface is by the mptcp layer sent packet by packet to one of the bound interfaces. - I am assuming that it is using the tcp acks to optimize which interface gets more packets -
The receiving host has to be mptcp capable as well in order to bring the two (or more?) connections together to one.
One of the benefits is that except for the two hosts talking, no one needs to be aware of the "multi path nature" as it is just two normal tcp connections.
I think that it could be useful (or mayhem) in a mesh network though I would believe that where will be complications.
Hello Christian and thank you for your explanation,
Quoted 16 lines · Christian Huldt
8 feb 2012 kl. 14:26 skrev Antonio Quartulli:
Quoted 13 lines
Hello Christian,
Quoted 2 lines · Christian Huldt
As a complete newbie to batman, please excuse if this question is unusually stupid, but I just got home after getting update on the mptcp kernel module http://mptcp.info.ucl.ac.be/ and it seems to me that running mptcp over a batman mesh could potentially be quite nice. It that correct or am I just being ignorant?
Before answering your question, I would like to read and understand a bit more about mptcp, but actually I couldn't find any resource explaining the concept behind it an how it is supposed to work. The only document I've been able to find is Sébastien's Thesis...but I would rather prefer a lighter reading first :-)
Quoted 6 lines
Quoted 1 line
Anyway, is it somehow similar to ip multihoming with load balancing?
I am unfortunately not able to say whether that is the case (yet…), I saw a demo and (think I) understood at least parts of the talk.
This is my limited understanding:
This implementation of mptcp works by creating a virtual interface bound to two (or more?) interfaces and traffic over that virtual interface is by the mptcp layer sent packet by packet to one of the bound interfaces. - I am assuming that it is using the tcp acks to optimize which interface gets more packets -
It sounds like "bonding at the TCP layer" (let me pass the term).
Quoted 5 lines
The receiving host has to be mptcp capable as well in order to bring the two (or more?) connections together to one.
One of the benefits is that except for the two hosts talking, no one needs to be aware of the "multi path nature" as it is just two normal tcp connections.
I think that it could be useful (or mayhem) in a mesh network though I would believe that where will be complications.
Well, assuming you know how batman handles clients, the only way to exploit such "multi-path TCP" is to connect the two (or more) involved interfaces of the client to two (or more) different nodes. If not, all the packets will follow the same path in the mesh network anyway.
By the way, I'd say that from the batman-adv point of view using mptcp is the same as ethernet bonding. (Please correct me if I made any mistakes)
Cheers,
Signature · 4 lines
Antonio Quartulli ..each of us alone is worth nothing.. Ernesto "Che" Guevara
Hello Antonio, and thanks both for your explanation as well as your question that made me understand things better.
8 feb 2012 kl. 16:13 skrev Antonio Quartulli:
Quoted 31 lines
Hello Christian and thank you for your explanation,
Quoted 16 lines · Christian Huldt
8 feb 2012 kl. 14:26 skrev Antonio Quartulli:
Quoted 13 lines
Hello Christian,
Quoted 2 lines · Christian Huldt
As a complete newbie to batman, please excuse if this question is unusually stupid, but I just got home after getting update on the mptcp kernel module http://mptcp.info.ucl.ac.be/ and it seems to me that running mptcp over a batman mesh could potentially be quite nice. It that correct or am I just being ignorant?
Before answering your question, I would like to read and understand a bit more about mptcp, but actually I couldn't find any resource explaining the concept behind it an how it is supposed to work. The only document I've been able to find is Sébastien's Thesis...but I would rather prefer a lighter reading first :-)
Quoted 6 lines
Quoted 1 line
Anyway, is it somehow similar to ip multihoming with load balancing?
I am unfortunately not able to say whether that is the case (yet…), I saw a demo and (think I) understood at least parts of the talk.
This is my limited understanding:
This implementation of mptcp works by creating a virtual interface bound to two (or more?) interfaces and traffic over that virtual interface is by the mptcp layer sent packet by packet to one of the bound interfaces. - I am assuming that it is using the tcp acks to optimize which interface gets more packets -It sounds like "bonding at the TCP layer" (let me pass the term).
Quoted 2 lines
The receiving host has to be mptcp capable as well in order to bring the two (or more?) connections together to one.
Quoted 8 lines
Quoted 3 lines
One of the benefits is that except for the two hosts talking, no one needs to be aware of the "multi path nature" as it is just two normal tcp connections.
I think that it could be useful (or mayhem) in a mesh network though I would believe that where will be complications.
Well, assuming you know how batman handles clients, the only way to exploit such "multi-path TCP" is to connect the two (or more) involved interfaces of the client to two (or more) different nodes. If not, all the packets will follow the same path in the mesh network anyway.
Maybe one could do something similar with routes rather than interfaces? That is, by sending packets to different other nodes? But I think that could complicate things and I should probably dig deeper into batman-adv before coming up with more ideas...
Quoted 2 lines
By the way, I'd say that from the batman-adv point of view using mptcp is the same as ethernet bonding. (Please correct me if I made any mistakes)
I think that is correct.
Quoted 1 line · Christian Huldt
Maybe one could do something similar with routes rather than interfaces? That is, by sending packets to different other nodes?
Mh..I don't get this. Why sending packets to different nodes? I think the main goal of outing is to reach the destination ;-) Unless your destination is connected to both the nodes you chose I don't think it is a good idea.
Cheers,
Signature · 4 lines
Antonio Quartulli ..each of us alone is worth nothing.. Ernesto "Che" Guevara
8 feb 2012 kl. 16:44 skrev Antonio Quartulli:
Quoted 6 lines · Christian Huldt
Quoted 1 line
Maybe one could do something similar with routes rather than interfaces? That is, by sending packets to different other nodes?
Mh..I don't get this. Why sending packets to different nodes? I think the main goal of outing is to reach the destination ;-) Unless your destination is connected to both the nodes you chose I don't think it is a good idea.
Well, I'm probably a utopist envisioning a mesh rather then the 27 wireless networks I see everywhere in the city, and thought that multi path could give me 27 times the speed in that setting…
I shall return to building my first mesh as I need the experience.
Thanks for your input!
regards
Christian