p-quic / pquic

The PQUIC implementation, a framework that enables QUIC clients and servers to dynamically exchange protocol plugins that extend the protocol on a per-connection basis
https://pquic.org
MIT License
126 stars 20 forks source link

How to use PQUIC with multipath plugin to transport in Internet #27

Open cxht opened 3 years ago

cxht commented 3 years ago

HI, I use a host with 2 wireless NICs to run "picoquicdemo" as the client.Local address of these NICs are "192.168.8.109" and "192.168.16.108". I run a "picoquicdemo" as the server in a cloud server. After transport, I only see packets from one path whose local address is "192.168.8.109". The log in server says it can receive the ADD_ADDRESS frame of another local address:

c0ee25bf2974cec0: Receiving packet type: 6 (1rtt protected phi0), S0,
c0ee25bf2974cec0:     <af711b59bc472944>, Seq: 0 (0)
c0ee25bf2974cec0:     Decrypted 1065 bytes
c0ee25bf2974cec0:     MP NEW CONNECTION ID for Uniflow 0x01 CID: 0x972b5096415f01ff, b0708ea45006a624e4aaedd4212b6827
c0ee25bf2974cec0:     MP NEW CONNECTION ID for Uniflow 0x02 CID: 0x872e3f2206499d88, a0de3583edf0446a33d724b27429434d
c0ee25bf2974cec0:     ADD ADDRESS with ID 0x01 Address: 117.132.196.117
c0ee25bf2974cec0:     MP ACK for path 0x00 (nb=0), 0
c0ee25bf2974cec0:     padding, 987 bytes

also send a path challenge frame

c0ee25bf2974cec0: Sending packet type: 6 (1rtt protected phi0), S1,
c0ee25bf2974cec0:     <972b5096415f01ff>, Seq: 0 (0)
c0ee25bf2974cec0:     Prepared 9 bytes
c0ee25bf2974cec0:     path_challenge: 77aea8399346831a

But client can not receive this path challenge. I also tried to config policy routing and NAT, but it didn't work. How should I do to make two path established successfully in Internet? Thanks :)