Linux桥mac地址表(Hash表)结构
struct net_bridgestruct hlist_headhash[BR_HASH_SIZE];…struct net_bridge_fdb_entrystruct hlist_nodehlist;struct net_bridge_port*dst;mac_addraddr;…进行地址学习时调用br_fdb_updat...
·
Linux内核桥关于mac地址表的两个数据结构:
struct net_bridge
{
struct hlist_head hash[BR_HASH_SIZE];
...
}
struct net_bridge_fdb_entry
{
struct hlist_node hlist;
struct net_bridge_port *dst;
mac_addr addr;
...
}

进行地址学习时调用br_fdb_update(br, p, eth_hdr(skb)->h_source, vid);
将源mac地址传入,更新转发表。
查找转发表时调用const unsigned char *dest = eth_hdr(skb)->h_destdst = __br_fdb_get(br, dest, vid)
判断目的mac地址表项是否存在。
更多推荐



所有评论(0)