
领居协议
文章平均质量分 97
老王不让用
芝兰生于幽谷,不以无人而不芳; 君子修身立德,不为穷困而改节
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
linux内核协议栈 邻居协议之 arp 数据包收发处理流程
前言在arp初始化时,通过调用dev_add_pack将arp协议的接收处理函数添加到了三层协议数据包处理函数相关的hash链表ptype_base中(关于三层协议数据包处理函数相关的hash链表,请参考文档http://blog.youkuaiyun.com/lickylin/article/details/22900401)。当底层接收到属于本机的arp数据包时,就会调用arp_rcv进行后续处理。1 arp数据包文接收arp_rcv()功能:对接收到的arp数据包的处理函数首先对arp数据...转载 2020-11-16 16:05:19 · 6582 阅读 · 1 评论 -
linux内核协议栈 邻居协议之ARP协议处理初始化
目录前言1arp协议相关数据结构1.1 arp协议格式1.2 arp数据结构1.3 arp操作码2 arp协议初始化arp_init()2.1 邻居表初始化 neigh_table_init()2.1.1初始化邻居表项成员 neigh_table_init_no_netlink()2.2 arp表初始值struct neigh_table arp_tbl3 arp协议邻居项的初始化函数 arp_constructor()前言上面分析完了通用邻居层的架构...转载 2020-11-16 14:00:14 · 1156 阅读 · 1 评论 -
linux内核协议栈 邻居协议之通用邻居项的状态机机制【核心】
1邻居几个核心状态邻居项的状态机机制是通用邻居层最重要的内容,主要是处理邻居项中状态的改变,其中包括几个邻居状态的定时器机制,以及邻居项的更新,solicit请求的发送等对于通用邻居项的状态机,主要有如下几个状态:NUD_INCOMPLETE NUD_REACHABLE NUD_STALE NUD_DELAY NUD_PROBE NUD_FAILED NUD_NOARP NUD_PERMANENT 其中,处于如下状态的邻居项,都会启动一个定时器:#define NUD..转载 2020-11-15 21:33:32 · 2036 阅读 · 0 评论 -
linux内核协议栈 邻居协议之通用邻居项的创建、查找、删除等相关函数
目录前言1邻居表项创建neigh_create()1.1邻居表项内存申请与初始化neigh_alloc()1.2邻居hash表扩容 neigh_hash_grow()2邻居表项查找2.1neigh_lookup()2.2neigh_lookup_nodev()2.3查找+条件创建 __neigh_lookup()2.4查找+默认创建 __neigh_lookup_errno()3邻居表项销毁neigh_destroy()3.1邻居表项条件...转载 2020-11-15 16:55:35 · 1165 阅读 · 0 评论 -
linux内核协议栈 邻居协议之通用邻居项的垃圾回收机制
目录前言1 同步(强制)回收处理函数 neigh_forced_gc()2异步(周期)回收处理函数 neigh_periodic_work()前言对于通用邻居层,我认为主要可以分为三个方面:邻居项处理函数,包括邻居项创建、更新、删除等 邻居项的状态机机制,主要是处理邻居项中状态的改变,其中包括几个邻居状态的定时器机制,也包括发送solicit请求等 邻居项的垃圾回收机制,主要是负责回收一个邻居表里长时间不用的邻居项,已节省邻居缓存空间。这三个方面需要相互协调工作,才能完成通用邻.转载 2020-11-15 14:45:27 · 899 阅读 · 0 评论 -
linux内核协议栈 邻居协议相关数据结构
目录前言1 邻居基本状态2邻居组合状态2.1NUD_IN_TIMER2.2NUD_VALID2.3NUD_CONNECTED3邻居相关结构体3.1领居表项参数struct neigh_parms3.2领居表项操作函数struct neigh_ops3.3领居表项struct neighbour3.4邻居表struct neigh_table前言在linux代码中,对于不同的邻居项,抽象出了一个通用的模型,通用邻居层,主要是用来进行...转载 2020-11-15 12:24:32 · 937 阅读 · 0 评论 -
linux内核协议栈 邻居协议概述
1 什么是邻居协议?NDP(Neighbor Discovery Protocol,邻居发现协议)是IPv6的一个关键协议,它组合了IPv4中的ARP、ICMP路由器发现和ICMP重定向等协议,并对它们作了改进。作为IPv6的基础性协议,NDP还提供了前缀发现、邻居不可达检测、重复地址监测、地址自动配置等功能。这里先以ARP探测来剖析邻居协议。如果一台主机和你的计算机连接在同一个LAN上(也就是说,你和这台主机通过一个共享介质相连或点对点直接相连),那么它就是你的邻居,而且他们有相同的L3网络配置。转载 2020-11-15 11:31:58 · 793 阅读 · 0 评论