摘要:互联网技术考试外地代理(FA )的设计:FA从逻辑上主要包含两个模块:一个init模块,初始化各种参数和变鱼:一个main_loop 模块,它是一个无限循环,根据各种事件触发进行相应操作流程图如图2-6所示。
2.3.3 外地代理(FA )的设计
FA从逻辑上主要包含两个模块:一个init模块,初始化各种参数和变鱼:一个main_loop 模块,它是一个无限循环,根据各种事件触发进行相应操作流程图如图2-6所示。
其中,init模块包含以下子模块,见图2-7。
fa_parse._command Jine
解析输入的命令行。
load.fa
从配置文件中读取配置参数,利用读取的数值对结构体变量config进行初始化。
check一kemel-support
检测当前系统是否支持ADV_ROUTING、IPIP、NETLINK,只要对其中的任意一个不 支持,进程退出,不再运行。这3个功能分别是高级路由、ipip隧道和NETLINK系统调用, 在编译内核的时候需要将它们编进内核,或者编译成模块,在运行前加载。
init_sockets
初始化套接口。
田2-6 FA的模块流相围2-7init模块流程
init_data
打开路由功能和代理ARP功能,对隧道、绑定、散列表的动态分配内存初始化,设罝具 体信号的处理函数关系。
init_config_data
初始化FA上用到的各个静态变圼。 main_loop模块包含以下子模块,如图2-8所示。
send agent_advs
在第一次进入mainjoop的时候,初始化局部变量之后,立即发送代理通告,之后进入 真正的无限循环。
fa_register
处理与上一级FA注册过程,发送注册请求到上一级FA。
check_bindings
检査绑定是否到期,更新各种计时器,当绑定失效的时候发送相应倌息。
handle_api
处理经dynfa_tool工具输入的特权命令和非特权命令。
handle_reg_msg_packct
处理从每个接U发送过来的端口号为434的UDP数据包。handle_reg_msg
处理从每个接口接收到的使用UDP数据包承载的注册消息。
handle-icmp
处理MN发送的代理请求消息,验证代理请求消息合法之后,回复代理通告。
返回目录:通信工程师互联网技术培训移动IPv4技术
通信工程师备考资料免费领取
去领取