![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Linux kernel Network Internal
RichardYSteven
这个作者很懒,什么都没留下…
展开
-
/proc/sys/net/ipv4/conf 和 /proc/sys/net/ipv4/neigh
在这两个目录下,对每一个注册的网络设备都有一个子目录原创 2009-07-29 15:04:00 · 1823 阅读 · 0 评论 -
linux上流量控制的相关文章
http://www.wy182000.com/wordpress/wp-content/uploads/2013/04/components.html收藏了看看。转载 2013-06-27 22:25:56 · 893 阅读 · 0 评论 -
linux kernel network namespace
http://hi.baidu.com/supperwangli/item/fbfe42c2eecf7a4ea8ba9420打算关注一下。转载 2013-03-21 21:48:08 · 1828 阅读 · 0 评论 -
artical on napi
http://blog.csdn.net/kernel_learner/article/details/7547657http://www.ibm.com/developerworks/cn/linux/l-napi/ 貌似这是出处转载 2013-02-27 14:43:12 · 760 阅读 · 0 评论 -
one example of network device
http://linuxgazette.net/156/jangir.html转载 2013-02-27 14:41:34 · 675 阅读 · 0 评论 -
Critical Data Structure -- sk_buff
struct sk_buffThis is where a packet is stored. The structure is used by all the network layers to store their headers, information about the user data (the payload), and other information needed inte原创 2009-07-02 13:33:00 · 787 阅读 · 0 评论 -
Common Coding Patterns
Memory Caches事先要申请,事后要销毁kmem_cache_create kmem_cache_destroy再分配和退还kmem_cache_alloc kmem_cache_free Reference Counts 每个模块到处 xxx_hold xxx_release函数用于增加和减少引用计数原创 2009-07-02 12:39:00 · 743 阅读 · 0 评论 -
Basic Terminology
AbbreviationMeaningL2Link layer (e.g., Ethernet)L3Network layer (e.g., IP)L4Transport layer (e.g., UDP/TCP/ICMP)BHBot原创 2009-07-02 10:12:00 · 663 阅读 · 0 评论 -
驱动程序使用tasklet机制
驱动程序在初始化时,通过函数task_init建立一个tasklet,然后调用函数tasklet_schedule将这个tasklet放在tasklet_vec链表的头部,并唤醒后台线程ksoftirqd。当后台线程ksoftirqd运行调用__do_softirq时,会执行在中断向量表softirq_vec里中断号TASKLET_SOFTIRQ对应的tasklet_action函数,转载 2009-08-24 16:59:00 · 1605 阅读 · 0 评论 -
Packet transmission between driver and kernel
Just got an idea that dev_queue_xmit will call the net_device->hard_start_xmit defined in the driver to send out the packet.原创 2009-08-12 09:50:00 · 783 阅读 · 0 评论 -
Protocol Handlers
函数 netif_receive_skb 收到了二层的frame后, 根据 skb->protocol 域 来判断是什么样的三层packet. ETH_P_IP 调用 ip_rcvETH_P_ARP 调用 arp_rcv等原创 2009-08-12 09:52:00 · 638 阅读 · 0 评论 -
Packet reception between driver and kernel
1. in function net_device->open, request_irq is used to allocate an interrupt line and register the interrupt handler 2. netif_rx or netif_rx_schedule is called in the interrupt handler whic原创 2009-08-12 09:44:00 · 693 阅读 · 0 评论 -
Hash Table used for net_device chain
struct hlist_head { struct hlist_node *first;};struct hlist_node { struct hlist_node *next, **pprev;};一个是以名字为索引的哈希表,一个是以index为索引的哈希表 #define NETDEV_HASHBITS 8static struct hlis原创 2009-08-09 19:42:00 · 1062 阅读 · 0 评论 -
pktgen的使用
1. 编译pktgen模块选中 config NET_PKTGEN2. 安装pktgen模块modprobe pktgen原创 2013-07-19 11:19:21 · 6280 阅读 · 2 评论