- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《Linux kernel路由机制分析 》.docx
HYPERLINK /bin323/article/details/642192 Linux kernel路由机制分析
目录 HYPERLINK /bin323/article/details/642192 \o 系统根据文章中H1到H6标签自动生成文章目录 (?) HYPERLINK /bin323/article/details/642192 \o 收起 [-]
HYPERLINK /bin323/article/details/642192 \l t0 一.前言
HYPERLINK /bin323/article/details/642192 \l t1 二.概述
HYPERLINK /bin323/article/details/642192 \l t2 基于策略的路由
HYPERLINK /bin323/article/details/642192 \l t3 路由策略数据库
HYPERLINK /bin323/article/details/642192 \l t4 相关代码
HYPERLINK /bin323/article/details/642192 \l t5 三.路由部分结构
HYPERLINK /bin323/article/details/642192 \l t6 总体结构
HYPERLINK /bin323/article/details/642192 \l t8 IP接口部分结构
HYPERLINK /bin323/article/details/642192 \l t9 路由策略数据库部分结构
HYPERLINK /bin323/article/details/642192 \l t10 接口部分结构
HYPERLINK /bin323/article/details/642192 \l t11 四.主要路由流程分析
HYPERLINK /bin323/article/details/642192 \l t12 五.一些细节问题
HYPERLINK /bin323/article/details/642192 \l t13 关于路由中的错误处理
HYPERLINK /bin323/article/details/642192 \l t14 策略性路由NAT功能的实现
HYPERLINK /bin323/article/details/642192 \l t15 六.总结
一.前言
我对linux2.4.18的相关代码进行了阅读,从关键的几个接口函数入手,进而理清了整个路由部分的主要脉胳,理解了一些细节问题的处理,但还是有些问题还没有完全搞清楚。
路由部分代码主要在linux代码树的/net/ipv4/下面:
对于下面报告内容的组织,我想通过由整体到部分到细节的顺序,尽量把我阅读代码学习到的所有的知识做一个有层次有条理的总结。
二.概述
1. 基于策略的路由
目前在计算机网络中使用的传统路由算法都是根据IP包目的地址进行路由选择.然而在现实应用中经常有这样的需求:进行路由选择时不仅仅根据数据报的目的地址,而且根据数据报的其他一些特性如:源地址、IP协议、传输层端口,甚至是数据包的负载部分内容,这种类型的路由选择被称作基于策略的路由。
2. 路由策略数据库
在Linux中,从2.1版本的内核开始就实现了对基于策略的路由的支持,它是通过使用路由策略数据库(RPDB,routing policy database)替代传统的、基于目的地址的路由表来实现的。RPDB通过包含的一些规则和多张路由表来选定合适的IP路由。这些规则可能会包含很多各种不同类型的键值(key),因此这些规则没有默认的特定次序,规则查找次序或规则优先级都是由网络或系统管理员设定的。
如下图所示,Linux的RPDB是一个由数字优先级值进行排序的线性规则列表。RPDB能匹配数据报源地址、目的地址、TOS、进入接口和fwmark值等。每个路由策略规则由一个选择器和一个动作指示组成。RPDB按照优先级递增的顺序被扫描,RPDB包含的每条规则的选择器被应用于数据报的源地址、目的地址、进入接口、TOS和fwmark值。若数据报匹配该规则对应于该规则的动作被执行。若动作成功返回,则规则输出将是一个有效的路由或是路由查找失败指示;否则查找RPDB的下一条规则。规则的动作通常是查一张与之对应的路由表,但也可以是如下几种:REJECT(丢弃),PROHIBIT或决UNRECHABLE(丢弃并向源地址发送ICMP包),NAT(源地址网络地址转换)等。路由表项的类型除了表示指出下一跳的相关信息外,还可以表示:BLAC
您可能关注的文档
- 《Learning Recommender Systems with Adaptive Regularization》.pdf
- 《Learning through research - An Introduction To the Main Theory of Learning》.pdf
- 《LearnSmart-project-management》.pdf
- 《Lect_26_paper_ihr03》.pdf
- 《LED商业照明室内案例赏析》.pdf
- 《LED封装的一次光学系统优化设计》.pdf
- 《LED戶外照明技術》.pdf
- 《LED照明专用集成电路的设计与应用》.pdf
- 《LED照明灯项目可行性研究报告》.doc
- 《LED电子显示屏项目可行性研究报告》.pdf
- 《linux mysql》.doc
- 《Linux shell脚本编写基础》.pdf
- 《Linux TCP Implementation》.pdf
- 《linux TCPip stack ns2 implementation》.pdf
- 《Linux 下安装mysql版本冲突问题解决》.doc
- 《Linux 入门常用命令》.doc
- 《Linux 内核子系统---内存管理子系统》.doc
- 《Linux 应用基础教程——Red Hat Enterprise Linux CentOS 5 教学课件 梁如军 Linux 应用基础教程 CH22_IPtables防火墙》.pdf
- 《linux 的初始化与启动过程》.doc
- 《Linux 系统管理和应用 教学课件 么丽颖 单元二 管理文件和目录》.pdf
文档评论(0)