qdeconinck / mp-quic

Please read https://multipath-quic.org/2017/12/09/artifacts-available.html to figure out how to setup the code.
MIT License
176 stars 71 forks source link

We found out localhost can only get one remote address , and can not establish paths with another IP addresses #15

Open Heath68 opened 3 years ago

Heath68 commented 3 years ago

Hello, We've used this project to do some experiments,if client and server both with 2 interfaces communicate with each other with MPQUIC,client and server can only get one address of each other,so there's a problem establishing paths,it would be great if you reply me this question. image (server) h1 can only get address 10.0.2.2 of h2 (client),but cannot get 10.0.3.2.Same situation of h2.

qdeconinck commented 3 years ago

I'm not sure to understand your issue here. Is it an actual network or is it emulation? What do you mean by "(server) h1 can only get address 10.0.2.2 of h2 (client),but cannot get 10.0.3.2.Same situation of h2."? Is it related to the connectivity or to the absence of ADD ADDRESS frames?

thomaswpp commented 3 years ago

I have the same problem. I created setup with client and server, both with two interfaces. However, the server has created two paths to send packets to the client, but it uses only one interface and not two. For example, the server has IP 10.0.2.2 on eth0 and 10.0.4.2 on eth1, the client has IP 10.0.1.2 and 10.0.3.2. I start caddy server with mpquc-go on 10.0.2.2. But the mpquic-go server sends packets only with the eth0 interface and not eth1. Is this a problem with the server.go file? Because I think mpquic-go should send packets on the eth0 and eth1 interfaces

li237340453 commented 3 years ago

I also encountered the same problem. After reading the source code, I found that the problem was caused by the naming of the network card. There was no corresponding network card name in the code and the network card was filtered out. I solved the problem by adding the network card name with the prefix of ENS.

cxht commented 3 years ago

@li237340453 Hi, Thanks for your solution, my client can setup two paths with the server by adding the corresponding network card name. However I met another problem, packets are sent on only one path, the other path has been established but does not receive any packet, and the RTT of this path is "0". Have you met this problem?

li237340453 commented 3 years ago

@cxht ,Please search the policy route based on the source IP, otherwise only one network card can connect to the Internet

li237340453 commented 3 years ago

Please search the policy route based on the source IP, otherwise only one network card can connect to the Internet

------------------ 原始邮件 ------------------ 发件人: "qdeconinck/mp-quic" @.>; 发送时间: 2021年7月28日(星期三) 晚上8:24 @.>; @.**@.>; 主题: Re: [qdeconinck/mp-quic] We found out localhost can only get one remote address , and can not establish paths with another IP addresses (#15)

@li237340453 Hi, Thanks for your solution, my client can setup two paths with the server by adding the corresponding network card name. However I met another problem, packets are sent on only one path, the other path has been established but does not receive any packet, and the RTT of this path is "0". Have you met this problem?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe.

cxht commented 3 years ago

@li237340453 I will try it. Thanks for your response.

nguyenthanhtrungbkhn commented 2 years ago

I also encountered the same problem. After reading the source code, I found that the problem was caused by the naming of the network card. There was no corresponding network card name in the code and the network card was filtered out. I solved the problem by adding the network card name with the prefix of ENS.

Hi @li237340453 , I setup in the real network and have the same problem, I change network card name with the prefix of ENS (ENS_0, ENS_1) but server show only one path. Can you tell in more detail how to configure it? Thank you very much

renyue0411 commented 1 year ago

I also encountered the same problem. After reading the source code, I found that the problem was caused by the naming of the network card. There was no corresponding network card name in the code and the network card was filtered out. I solved the problem by adding the network card name with the prefix of ENS.

Hi @li237340453 , I setup in the real network and have the same problem, I change network card name with the prefix of ENS (ENS_0, ENS_1) but server show only one path. Can you tell in more detail how to configure it? Thank you very much

Hello @nguyenthanhtrungbkhn , I have the same problem in the real network with yours, did you find a solution?

li237340453 commented 1 year ago

I also encountered the same problem. After reading the source code, I found that the problem was caused by the naming of the network card. There was no corresponding network card name in the code and the network card was filtered out. I solved the problem by adding the network card name with the prefix of ENS.

Hi @li237340453 , I setup in the real network and have the same problem, I change network card name with the prefix of ENS (ENS_0, ENS_1) but server show only one path. Can you tell in more detail how to configure it? Thank you very much

Do you enable multipath?