-
Notifications
You must be signed in to change notification settings - Fork 98
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
PPP sync mode support #22
Comments
I don't know if will help: |
@deba12 thanks. By radomly Google, I found this:
Then I digged into to rp-pppoe's source code, which call So I patched Twisted on 20051b4 to read in the same way. I will check detail on another day. |
i think you should read atleast 1500 bytes not 1401 :) or mtu/mru size configured in sstp.options |
After I get it work on fix size (on my system), I will try to figure out
how to calculate it programmatically. :)
… |
okay but keep in mind
|
what about making escape and unescape functions in pure C? |
any news on this? 😀 |
I'm still confused on it. |
Current sstp-server using async ppp, it requires escaping & unescaping every frames it
send and receive (and the pppd also have to do that). If we can use sync mode, lots of
CPU time will be save from these meaningless escaping & unescaping .
I tried to support sync mode on 15f66b3.
It seem work at the beginning, but once I fire a iperf, things go wrong: some frames that
read from pppd (via pty) are "broken".
Normally, the data stream are something like:
…[frame #5][frame #6][frame #7]…
But when the traffic increase, it comes like
…[frame #5][first 40 bytes of frame #6][frame #6][frame #7]…
(the number "40" is just a example, may more or less)
In the other word, it received a duplicated, partial frame, inserted just before the normal
complete frame.
Since in sync mode the boundary of frames does not exist, I don't know how to handle this.
And I don't know why this happen either.
The text was updated successfully, but these errors were encountered: