一种基于Socket API的IPV6应用程序自动翻译实现方法1.pdfVIP

一种基于Socket API的IPV6应用程序自动翻译实现方法1.pdf

  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文档。上传文档
查看更多
一种基于Socket API 的IPV6 应用程序自动翻译实现 方法 1 2 3 金仙力 ,邵雯娟 ,马严 1、2、3北京邮电大学计算机科学与技术学院(1000876) email:jinsonly@163.com 摘 要:本文在研究 IPv6应用程序过渡策略的基础上,结合编译原理,使用标准 C 语言实 现了一个基于 Socket API 的 IPv6 应用程序半自动翻译器。实现后的翻译器可以在各种支 持标准 C 的操作系统下编译运行,具有较强的移植性。在经过实际的测试后,该翻译器的翻 译效果良好。 关键词:IPv6 套接口,应用程序过渡,编译原理,词法分析,语法分析 1.引言 随着 IPv6 网络的飞速普及,目前网络中大量的主机、路由器上常用的应用程序都只是 支持 IPv4 的,随着 IPv4 网络向 IPv6 网络的平滑过渡,应用程序也需要相应地过渡到 IPv6 环境下,这时,构建基于 IPv6 的应用程序就显得很有必要。目前,大部分现有的网络应用 程序是为 IPv4 编写的, 根据 IPv6 应用程序过渡策略[1],可以得出:大部分 IPv4 应用程序 若要转换成兼容 IPv4/IPv6 应用程序应该不是很困难的,很多修改的地方都可用一个翻译器 自动完成。随着IP 网络的平滑过渡,由 IPv4 到 IPv6 应用的过渡也是势在必行的,而 IPv4 应用程序到 IPv6 应用程序的翻译机目前还比较少见,所以,构建一个基于源代码的 IPv6 应 用程序翻译器,有一定的实用价值。 我们从实用性和应用性的角度,尝试提供一个翻译机,能够实现 IPv4 源程序到 IPv6 源 程序的半自动翻译,它具有如下特点: 1) 实现 Socket API 层的协议无关性 预先定义的基于 Socket API 的映射表,是 IPv6 应用程序半自动翻译机的翻译根据。在 设计映射表时,将 IPv4 专用的函数,映射为 IPv4 、IPv6 通用的函数,因此翻译后的源程序 是协议无关的。 2) 实现简单并且有效 实际实现时,只需要不到 1000 行程序就可以实现基本的翻译功能。 翻译机可以减少应用程序过渡时,手工编码带来的重复劳动,同时,由于一个应用程序 只在涉及到套接口操作时才需要翻译,而这些只占代码量的一小部分。在实现应用程序的过 渡时,无需了解和修改全部源代码,使用本工具能够快速定位和得到相应的翻译指示。 3) 不用进行 IP 报头的翻译 因为翻译是基于 Socket API 层,所以不涉及到IP 报头的翻译。 4) 真正面向 IPv6 的应用,同时兼容 IPv4 在部署IPv6初期的现在,以及IPv6全面盛行的将来都适用。 本文从首先分析了IPv4应用程序和IPv6应用程序之间的联系与区别,然后给出了实现基 于Socket API的IPv6应用程序自动翻译所使用的数据结构,接着结合具体实例描述了翻译机 的实现过程,最后总结全文并讨论了下一步的研究工作。 - 1 - 2.IPV6 应用程序半自动翻译机制 我们之所以把它称之为半自动翻译机,是因为 IPv4 应用程序向IPv6 应用程序过渡时, 许多结构体变量、成员变量以及函数在 IPv4 、IPv6 中,分别是一一对应的,可以直接进行 翻译;但是,IPv4 应用程序和 IPv6 应用程序存在一定的区别,一些同 IPv4 紧密相关、对 IPv4 依赖性很强的特性,在 IPv6 中却有可能是不存在,或者是已由其它特性替代,如使用 IPv4 多播,IPv4 套接口选项,或原始套接口的程序,因此无法进行自动翻译,只能手工进行代 码的转换。当遇到这种情况时,IPv6 应用程序的半自动翻译机将给

文档评论(0)

书屋 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档