-
Notifications
You must be signed in to change notification settings - Fork 29
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
这个应该是仅限于TCP的转发吧,作者有做过UDP的转发吗? #1
Comments
TCP转发就可以了(因为这个最麻烦),UDP的话需要你自己添加上去就可以了 |
不太擅长C++开发,所以想咨询一下。 |
兄弟应该有看过https://github.com/ambrop72/badvpn/ 这个?在看了c语言版本的,我自己也有想要实现一个C++的版本,也是考虑使用boost库实现。没想到在网上竟然找到了你的实现。 |
不是太考虑维护这个项目,基于 “Lwip” 协议栈的效率太差了,极限只能跑到20~30Mbps,而且由于 “Lwip” 协议栈代码限制几乎很难做到协议栈的多核优化(高并发)。。另外我已经重新设计新的工具 “适应.NET CLR 2.0/4.0 ”的 VPN自用工具(PPP);;;其原理为 “内核协议栈桥接”,物理与虚拟链路重叠的一种实现办法。 你或许可以参考这种原理思路自己做一个,TCP/Link上网效率优异,除了打游戏延迟可靠性没有传统VPN工具(Pptp、L2TP、SkylakeNAT)好~~~几乎没有太多的缺点。。。 dd: ---- |
@liulilittle 最近正在研究LWIP,遇到点小问题。。。 写入数据似乎有250ms延迟,尽管调用 具体表现为调用 日志打印没找到可用的信息,不知你有遇到此问题吗? |
你要需要主动调用 tcp_output,tcp_write 只是把发送流拷贝到发送滑块窗口之中,如果不主动调用 tcp_output 函数,是无法发送出去的, lwip 分了两种模式 |
tcp_write 和 tcp_output 这2个函数,在外部其它函数和 tcp_sent 回调中,都是依次调用的。 我不大理解,为什么 |
这个只有具体看代码了,具体分析了。。LwIP也有很多发行版本,每个版本可能遇到的问题都不一样,你用最新的未必见得会遇到这个问题,但是 pcb 内存泄漏的问题,那么版本都有。 |
嗯,谢谢建议。我目前使用的最新版2.12,抽空降到1.4试一试。 使用Xcode和valgrind检测过,暂时还没有遇到内存泄漏和crash问题。 |
那挺好的,我是经常遇到内存泄漏 carsh 的问题,一切都是正常操作,然而当它的协议栈一旦工作开始跑了一会之后(流量要大),就会出现各种难以解决的:内存泄漏(严重的)、或者访问PCB/BUF堆内存被释放的问题。。 |
我只是粗略的测试,流量小和时间短。听你这么描述,好像是多线程引发的问题 |
不是多线程引起的,协议栈与逻辑处理代码都运行在同一个线程上面循环处理, LwIP 只允许一个线程R/W协议栈(多线程访问是低级错误),但是上述提到的问题还是会出现的;我太清楚你的版本会不会出现,但是我手上 1.x 的版本这个问题是经常发生的。 |
兄弟现在base哪里,方便联系吗 |
加个QQ联系下可以吗? |
能留个联系方式吗?
The text was updated successfully, but these errors were encountered: