想了解Linux内核数据转发的内容该如何入手
之前一直做的应用模块的东西,没有了解过内核部分的内容,有机会用了下ebtables工具过滤了下数据包,觉得做网络设备的话还是很有必要了解下内核转发数据这部分内容的,可是这块东西有太大了,是否有有经验的前辈指导下该如何入手比较合理,想知道数据包是如何从五个链走的在此谢过,莫要沉底 如果有什么好的书推荐也是可以的 各位浏览过的大神来指导下,不胜感激 TCP/IP详解 卷二 实现 只看了卷一。不过也是囫囵吞枣的看了遍回复 4# net小伙
留爪子搭在楼主身上~ 去学习下iptables就可以了,或者百度下iptables原理,就可以查到 有看过iptables指南,但是看完感觉还是了解的太浅了回复 7# baby_神
本帖最后由 ken1980 于 2015-11-18 19:30 编辑
以太网收包
->netif_rx(skb)
//进入网络层
->ip_rcv
//netfiler处理
->NF_HOOK(PREROUTING)
//路由查询
->ip_route_input
//转发处理
->ip_forward
->NF_HOOK(NF_FORWARD)
//IP层发送
->ip_output
->NF_HOOK(POSTROUTING)
//进入邻居子系统
->hh_output =dev_queue_xmit
//流量控制
->Qdisc
->hard_start_xmit ==网卡驱动注册的发送函数
多谢指导,详细了解后再来讨论回复 9# ken1980
页:
[1]
2