基于Linux Netlink快速写入路由方法的设计与实现.docVIP

基于Linux Netlink快速写入路由方法的设计与实现.doc

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
 基于 Linux Netlink 快速写入路由方法的设 计与实现 刘鹏展,李昕** 5 10 (北京邮电大学网络技术研究院,北京 100876) 摘要:本文介绍了 linux 中一种用户程序与内核通信的一种方式:netlink,对比了 netlink 与 其他内核通信方式的优点;给出了一种基于 netlink 通信方式来添加路由的新方法,主要原 理是通过 netlink 中对路由表的操作的一套接口,以 socket 的方式通过发送消息给内核中 的 netlink 接口实现添加路由。并将此方法与原 linux 中用 route 方式添加路由的方式进行 实验对比,发现通过基于 netlink 写入路由的方法要远比原方法高效。最后对新方法的优点 进行总结。 关键词:linux;netlink;路由;内核通信 中图分类号:请查阅《中国图书馆分类法》 15 Design and Implementation of a Fast Method to write routes Based on Linux Netlink Liu Pengzhan, Li Xin (Institute of Network Technology, Beijing University of Posts and Telecommunication, Beijing 20 25 100876) Abstract: This article describes a way that user program communicate with the kernel in linux: netlink. list netlink advantages compared with other means of communicating with kernel. This paper presents a new method of adding routes in linux based on netlink. the main principle is through a set of netlink interfaces on operation on routing tables in socket-by sending a message to the kernel netlink interface to add route. And this paper compared the original linux way to add routes and the new way, finding that the new way writting routes based on netlink with the original method is far more efficient. Finally, this paper summarized the advantages of the new method. Key words: linux; netlink; route;kernel communications 30 0 引言 在 Linux 下,通常是通过 route add/del 命令来添加和删除路由,在添加或删除少量路由 的情况下这么做没有任何问题,但是当需要大批量写入时,用这种方法就显得很低效。 本文将介绍一种更高效的快速写路由方法,即使用 Netlink[1]添加路由。Netlink 是有别 35 40 于 linux 原有的 route 命令,route 命令来自 Net-Tools 软件包,它利用 ioctl[2]方法来实现路由 的添加和删除。这两者都是 linux 中用户程序同内核程序交互的方式。ioctl 明确讲它是一个 函数,提供一套列与内核通信的接口,其中包含 2 个操纵路由表的 ioctl 请求,从而实现操 作路由表;而 Netlink 是不同于 ioctl 的一种与内核通信的方式,它的原理是基于 socket 通信, Netlink socket 以更方便快捷的方式同 linux 内核通信,它拥有更完善与内核交互的一套接口, 其中包括对路由表的操作。 作者简介:刘鹏展(1989-),男,硕士研究生,主要研究方向:大数据处理,网络路由 通信联系人:通信联系人:李昕,(1976-),男,副教授,主要研究方向:路由技术,网络生存性技术. cplalx@ -1-  1 Netlink 原理及优势 Netlink socket 是一种用于在内核态和用户态进程之间进行数据传输的特殊的进程间通 信方式。它通过为内核模块提供一组特殊的 API,并为用户程序提供了一组标准的 socket 接 口的方式

文档评论(0)

文档分享 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档