|
Bugzilla – Full Text Bug Listing |
| Summary: | align Ipv6AddressHelper API with IPv4AddressHelper API | ||
|---|---|---|---|
| Product: | ns-3 | Reporter: | Tom Henderson <tomh> |
| Component: | ipv6 | Assignee: | Tommaso Pecorella <tommaso.pecorella> |
| Status: | RESOLVED FIXED | ||
| Severity: | normal | CC: | ns-bugs |
| Priority: | P5 | ||
| Version: | pre-release | ||
| Hardware: | All | ||
| OS: | All | ||
Codereview at: http://codereview.appspot.com/6226043 I didn't test the code on my ns-3, but looking at the code (i.e., dry check) I'm ok with it. I assume that everything is working as intended, tho. +1 changeset 5d8dfd7c6609 |
The current usage pattern for IPv6 address assignment is different than that for IPv4 address assignment; e.g. in examples/udp/udp-echo.cc: if (useV6 == false) { Ipv4AddressHelper ipv4; ipv4.SetBase ("10.1.1.0", "255.255.255.0"); Ipv4InterfaceContainer i = ipv4.Assign (d); serverAddress = Address(i.GetAddress (1)); } else { Ipv6AddressHelper ipv6; ipv6.NewNetwork ("2001:0000:f00d:cafe::", 64); Ipv6InterfaceContainer i6 = ipv6.Assign (d); serverAddress = Address(i6.GetAddress (1,1)); } I would like to change the IPv6AddressHelper API to align it with IPv4AddressHelper API. Specifically, the following usage pattern exists for IPv4: SetBase (network, prefix, (optional) host portion); // used to reset NewNetwork (void); //used to increment the network portion NewAddress (void); // used to increment the host portion Ipv4InterfaceContainer Assign (const NetDeviceContainer &c); // for containers I would like to align IPv6 with this. The main change is to deprecate (with NS_DEPRECATED) all calls to "NewNework (network, prefix)" and replace them with SetBase (network, prefix). I would like to make this change before ns-3.14 release because ns-3.14 (with addition of transport protocols) will start more widespread usage of IPv6 code in ns-3, so it would be good to convert before this. Code review patch to follow.