技术头条 - 一个快速在微博传播文章的方式     搜索本站
您现在的位置首页 --> 网络系统 --> 关于tcp-proxy的几个小问题

关于tcp-proxy的几个小问题

浏览:3511次  出处信息

    Tcp-proxy是什么东西就不说了,搜索本站就能找到答案,说说最近碰到的几个问题。

    1)keep-alive

    如果server或client开启keep-alive,需要tcp-proxy也能感知。但是keep-alive本身是不携带有

    效的数据(通常是最后收到并且已经确认的一个字节),所以直接转发会有问题(tcp-proxy转发会重写tcp header,而且tcp-proxy之上的应用不能处理这个包)。所以说keep-alive是tcp层的行为,而不是应用层的行为,只要tcp-proxy的两端处理就可以了。由于tcp-proxy接管的tcp连接,所以最好是两边都能够发出keep-alive packet,这样才能完成协议所规定的功能。

    2) TCP reset

    TCP reset是否需要ACK,答案是不需要。但是在不同的状态下,对tcp reset的处理是不同的,需要考虑tcp reset 合法性检查,是否需要主动发tcp reset等。

    Tcp-proxy本身是一个完整的协议栈实现,但是它相当于两个socket,所以比协议栈更复杂一点。目前还没有看到靠谱的,开源的tcp-proxy实现,想做开源项目,可以考虑一下这个。

QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
© 2009 - 2024 by blogread.cn 微博:@IT技术博客大学习

京ICP备15002552号-1