NS3 ipv6例子代码测试和解析之test-ipv6.cc
来源:互联网 发布:比特币闪电网络简称 编辑:程序博客网 时间:2024/05/17 17:39
参考帖子:http://hi.baidu.com/tslakou/item/498197d191342ce6b3f777e7
首先:我是新手,只是记录自己的学习过程,遇到问题还请指出~
1. test-ipv6.cc
test-ipv6.cc就是简单的一个测试地址转换的例子,用到了NS的log,打印出转换之后的结果。这里记录下NS的log,其实就是printf或者cout,定义了一个级别而已。如果在shell下使用,需要定义环境变量,而在eclipse中使用,使用:
NS_LOG_COMPONENT_DEFINE ("TestIpv6");LogComponentEnable ("TestIpv6", LOG_LEVEL_ALL);
就可以打印出来。曾经,我怎么都打印不出来数据,结果是发现eclipse没有将我的代码保存,,,
回到正题:
prefix = 2001:0001:0000:0000:0000:0000:0000:0000address = 00:00:00:00:00:01address = 2001:0001:0000:0000:0200:00ff:fe00:0001
通过运行结果可以发现转换的规律,是按照rfc2464来转换的,rfc2464:http://www.ietf.org/rfc/rfc2464.txt,中文翻译:http://blog.csdn.net/zweily/article/details/132138
NS3中的转换实现方法:
Ipv6Address Ipv6Address::MakeAutoconfiguredAddress (Mac48Address addr, Ipv6Address prefix){ NS_LOG_FUNCTION (addr << prefix); Ipv6Address ret; uint8_t buf[16]; uint8_t buf2[16]; addr.CopyTo (buf); prefix.GetBytes (buf2); memcpy (buf2 + 8, buf, 3); buf2[11] = 0xff; buf2[12] = 0xfe; memcpy (buf2 + 13, buf + 3, 3); buf2[8] |= 0x02; ret.Set (buf2); return ret;}
0 0
- NS3 ipv6例子代码测试和解析之test-ipv6.cc
- NS3 ipv6例子代码测试和解析之ping6.cc
- ipv6 test
- Test IPv6 with TAHI
- IPV6
- IPv6
- IPV6
- IPv6
- IPV6
- IPv6
- IPV6
- ipv6
- ipv6
- ipv6
- IPv6
- IPv6
- IPv6
- ipv6
- 云计算的概念
- JAVA WEB开发常用工具配置手册
- static用法详解
- 游戏服务器:到底使用UDP还是TCP
- 获得ID号(和以前的ID号,不能重复)
- NS3 ipv6例子代码测试和解析之test-ipv6.cc
- ZigBee组网(原理分析)
- Struts2 标签库讲解
- 常用mysql语句总结
- 设计模式学习笔记--模板方法(Template Method)模式
- java垃圾处理机制(一)
- 结构体、共用体
- IT技术名词详解
- UltraEdit 使用