Chinaunix

标题: 关于tcp_v4_connect函数。。。 [打印本页]

作者: babycat_fei    时间: 2012-04-24 16:27
标题: 关于tcp_v4_connect函数。。。
本帖最后由 babycat_fei 于 2012-04-24 16:34 编辑

在SYN发送函数tcp_v4_connect中调用了ip_route_connect函数查询或建立路由表,之后到ip层的ip_queue_xmit函数中又调用了查找路由表的函数。我不太理解这两次查找有什么联系?tcp_v4_connect应该是属于传输层的函数吧,路由表的操作不是在网络层进行的吗?
作者: GFree_Wind    时间: 2012-04-25 12:45
看了一下。
似乎是因为TCP需要知道底层网卡是否支持GSO,因为TCP在发送数据包的时候,需要这个特性。
所以不得已需要查询路由。


不过虽然看似有两次查询,但是我记得dst是有cache的,所以还好了。
作者: babycat_fei    时间: 2012-04-26 11:46
GSO是什么意思啊,是不是TSO?
作者: GFree_Wind    时间: 2012-04-26 12:16
babycat_fei 发表于 2012-04-26 11:46
GSO是什么意思啊,是不是TSO?


GSO应该涵盖TSO吧。
这几个我也是查了几遍,才记住大概是啥意思。

TSO是特指TCP segment offload,对应的还有USO。
GSO应该是Generic Segment offload的缩写。






欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2