Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(474)

Issue 5311077: NS-3 IPv6 support in TCP/UDP (2)

Can't Edit
Can't Publish+Mail
Start Review
Created:
12 years, 6 months ago by kdrenard
Modified:
12 years, 6 months ago
CC:
ns-3-reviews_googlegroups.com
Visibility:
Public.

Patch Set 1 #

Total comments: 10
Unified diffs Side-by-side diffs Delta from patch set Stats (+2595 lines, -666 lines) Patch
M examples/udp-client-server/udp-client-server.cc View 3 chunks +22 lines, -4 lines 0 comments Download
M examples/udp-client-server/udp-trace-client-server.cc View 3 chunks +22 lines, -4 lines 0 comments Download
M examples/udp/udp-echo.cc View 3 chunks +19 lines, -4 lines 0 comments Download
M src/applications/helper/udp-client-server-helper.h View 2 chunks +4 lines, -0 lines 0 comments Download
M src/applications/helper/udp-client-server-helper.cc View 2 chunks +32 lines, -2 lines 0 comments Download
M src/applications/helper/udp-echo-helper.h View 2 chunks +3 lines, -0 lines 0 comments Download
M src/applications/helper/udp-echo-helper.cc View 1 chunk +15 lines, -1 line 0 comments Download
M src/applications/model/packet-sink.cc View 2 chunks +12 lines, -0 lines 0 comments Download
M src/applications/model/udp-client.h View 2 chunks +3 lines, -1 line 0 comments Download
M src/applications/model/udp-client.cc View 4 chunks +29 lines, -6 lines 0 comments Download
M src/applications/model/udp-echo-client.h View 2 chunks +3 lines, -1 line 0 comments Download
M src/applications/model/udp-echo-client.cc View 5 chunks +36 lines, -7 lines 0 comments Download
M src/applications/model/udp-echo-server.h View 1 chunk +1 line, -0 lines 0 comments Download
M src/applications/model/udp-echo-server.cc View 5 chunks +41 lines, -0 lines 2 comments Download
M src/applications/model/udp-server.h View 1 chunk +1 line, -0 lines 0 comments Download
M src/applications/model/udp-server.cc View 3 chunks +32 lines, -7 lines 0 comments Download
M src/applications/model/udp-trace-client.h View 2 chunks +3 lines, -1 line 0 comments Download
M src/applications/model/udp-trace-client.cc View 4 chunks +32 lines, -7 lines 0 comments Download
M src/csma-layout/examples/csma-star.cc View 7 chunks +79 lines, -16 lines 0 comments Download
M src/csma-layout/model/csma-star-helper.h View 5 chunks +24 lines, -0 lines 0 comments Download
M src/csma-layout/model/csma-star-helper.cc View 2 chunks +42 lines, -0 lines 2 comments Download
M src/internet/model/icmpv4-l4-protocol.h View 4 chunks +14 lines, -8 lines 0 comments Download
M src/internet/model/icmpv4-l4-protocol.cc View 5 chunks +27 lines, -7 lines 2 comments Download
M src/internet/model/icmpv6-l4-protocol.h View 4 chunks +18 lines, -3 lines 0 comments Download
M src/internet/model/icmpv6-l4-protocol.cc View 8 chunks +35 lines, -6 lines 2 comments Download
A src/internet/model/ip-l4-protocol.h View 1 chunk +127 lines, -0 lines 0 comments Download
A src/internet/model/ip-l4-protocol.cc View 1 chunk +61 lines, -0 lines 0 comments Download
M src/internet/model/ipv4.h View 2 chunks +2 lines, -2 lines 0 comments Download
M src/internet/model/ipv4-l3-protocol.h View 4 chunks +5 lines, -5 lines 0 comments Download
M src/internet/model/ipv4-l3-protocol.cc View 5 chunks +10 lines, -11 lines 0 comments Download
R src/internet/model/ipv4-l4-protocol.h View 1 chunk +0 lines, -113 lines 0 comments Download
R src/internet/model/ipv4-l4-protocol.cc View 1 chunk +0 lines, -55 lines 0 comments Download
M src/internet/model/ipv4-raw-socket-impl.h View 1 chunk +1 line, -0 lines 0 comments Download
M src/internet/model/ipv4-raw-socket-impl.cc View 1 chunk +5 lines, -0 lines 0 comments Download
M src/internet/model/ipv6-end-point.h View 4 chunks +7 lines, -5 lines 0 comments Download
M src/internet/model/ipv6-end-point.cc View 3 chunks +5 lines, -5 lines 0 comments Download
M src/internet/model/ipv6-l3-protocol.h View 3 chunks +5 lines, -5 lines 0 comments Download
M src/internet/model/ipv6-l3-protocol.cc View 5 chunks +11 lines, -10 lines 0 comments Download
R src/internet/model/ipv6-l4-protocol.h View 1 chunk +0 lines, -109 lines 0 comments Download
R src/internet/model/ipv6-l4-protocol.cc View 1 chunk +0 lines, -53 lines 0 comments Download
M src/internet/model/ipv6-raw-socket-impl.h View 1 chunk +1 line, -0 lines 0 comments Download
M src/internet/model/ipv6-raw-socket-impl.cc View 1 chunk +5 lines, -0 lines 0 comments Download
M src/internet/model/nsc-tcp-l4-protocol.h View 4 chunks +14 lines, -8 lines 0 comments Download
M src/internet/model/nsc-tcp-l4-protocol.cc View 5 chunks +23 lines, -6 lines 0 comments Download
M src/internet/model/nsc-tcp-socket-impl.h View 1 chunk +1 line, -0 lines 0 comments Download
M src/internet/model/nsc-tcp-socket-impl.cc View 1 chunk +5 lines, -0 lines 0 comments Download
M src/internet/model/tcp-header.h View 3 chunks +9 lines, -2 lines 0 comments Download
M src/internet/model/tcp-header.cc View 1 chunk +51 lines, -7 lines 0 comments Download
M src/internet/model/tcp-l4-protocol.h View 6 chunks +31 lines, -8 lines 0 comments Download
M src/internet/model/tcp-l4-protocol.cc View 11 chunks +283 lines, -22 lines 2 comments Download
M src/internet/model/tcp-socket-base.h View 4 chunks +5 lines, -0 lines 0 comments Download
M src/internet/model/tcp-socket-base.cc View 25 chunks +373 lines, -63 lines 0 comments Download
M src/internet/model/udp-header.h View 3 chunks +33 lines, -2 lines 0 comments Download
M src/internet/model/udp-header.cc View 2 chunks +42 lines, -9 lines 0 comments Download
M src/internet/model/udp-l4-protocol.h View 7 chunks +38 lines, -8 lines 0 comments Download
M src/internet/model/udp-l4-protocol.cc View 10 chunks +225 lines, -22 lines 0 comments Download
M src/internet/model/udp-socket-impl.h View 4 chunks +10 lines, -1 line 0 comments Download
M src/internet/model/udp-socket-impl.cc View 12 chunks +293 lines, -42 lines 0 comments Download
M src/internet/wscript View 3 chunks +2 lines, -4 lines 0 comments Download
M src/netanim/examples/star-animation.cc View 4 chunks +33 lines, -4 lines 0 comments Download
M src/network/model/socket.h View 1 chunk +1 line, -0 lines 0 comments Download
M src/network/utils/ipv6-address.h View 3 chunks +20 lines, -0 lines 0 comments Download
M src/network/utils/ipv6-address.cc View 2 chunks +29 lines, -0 lines 0 comments Download
M src/network/utils/packet-socket.h View 1 chunk +1 line, -0 lines 0 comments Download
M src/network/utils/packet-socket.cc View 1 chunk +6 lines, -0 lines 0 comments Download
M src/point-to-point-layout/model/point-to-point-dumbbell.h View 4 chunks +23 lines, -0 lines 0 comments Download
M src/point-to-point-layout/model/point-to-point-dumbbell.cc View 2 chunks +67 lines, -0 lines 0 comments Download
M src/point-to-point-layout/model/point-to-point-grid.h View 4 chunks +30 lines, -0 lines 0 comments Download
M src/point-to-point-layout/model/point-to-point-grid.cc View 2 chunks +87 lines, -0 lines 0 comments Download
M src/point-to-point-layout/model/point-to-point-star.h View 4 chunks +24 lines, -0 lines 0 comments Download
M src/point-to-point-layout/model/point-to-point-star.cc View 2 chunks +42 lines, -0 lines 0 comments Download

Messages

Total messages: 3
Tommaso Pecorella
Here are my comments. As I said, great job. By the way, since we're at ...
12 years, 6 months ago (2011-11-02 00:55:37 UTC) #1
kdrenard2
Could not add a second patch to this issue due to a change in my ...
12 years, 6 months ago (2011-11-18 16:44:08 UTC) #2
kdrenard2
12 years, 6 months ago (2011-11-18 16:45:12 UTC) #3
Responses to your comments.  Had to create a new issue to update patch set
(google account issue).

Thanks so much for your time and review!

http://codereview.appspot.com/5311077/diff/1/src/applications/model/udp-echo-...
File src/applications/model/udp-echo-server.cc (right):

http://codereview.appspot.com/5311077/diff/1/src/applications/model/udp-echo-...
src/applications/model/udp-echo-server.cc:115: NS_FATAL_ERROR ("Error: joining
multicast on a non-UDP socket");
I changed this error message to "Error joining multicast group".  I agree that
this _should_ never happen in either the IPv4 or IPv6 case.  I guess the test is
concerned with the success of the dynamic cast more than the type of socket.

http://codereview.appspot.com/5311077/diff/1/src/csma-layout/model/csma-star-...
File src/csma-layout/model/csma-star-helper.cc (right):

http://codereview.appspot.com/5311077/diff/1/src/csma-layout/model/csma-star-...
src/csma-layout/model/csma-star-helper.cc:135:
CsmaStarHelper::AssignIpv6Addresses (uint64_t network)
This approach for generating IPv6 addresses is used in a few other examples
(point-to-point-[grid | star | dumbbell].  It is ugly and complex.  I see this
as a place holder for a better method to come with Atishay's
Ipv6AddressGenerator patch (http://codereview.appspot.com/4812043/).

I suggest that a follow-up patch clean this up when both this patch and the
Ipv6Generator patch are integrated.  It should be pretty quick and easy as these
are only in tests/examples.

http://codereview.appspot.com/5311077/diff/1/src/internet/model/icmpv4-l4-pro...
File src/internet/model/icmpv4-l4-protocol.cc (right):

http://codereview.appspot.com/5311077/diff/1/src/internet/model/icmpv4-l4-pro...
src/internet/model/icmpv4-l4-protocol.cc:252: {
How about returning IpL4Protocol::RX_ENDPOINT_UNREACH ?

This should never happen and should never be possible, but I would hate to have
a fatal NS3 error given a malformed packet (my security pbackground is kicking
in here :-)

http://codereview.appspot.com/5311077/diff/1/src/internet/model/icmpv6-l4-pro...
File src/internet/model/icmpv6-l4-protocol.cc (right):

http://codereview.appspot.com/5311077/diff/1/src/internet/model/icmpv6-l4-pro...
src/internet/model/icmpv6-l4-protocol.cc:178: enum IpL4Protocol::RxStatus
Icmpv6L4Protocol::Receive (Ptr<Packet> packet, Ipv4Header const &header, 
Ptr<Ipv4Interface> interface)
For completeness, this is the comment from the icmpv4 code:


How about returning IpL4Protocol::RX_ENDPOINT_UNREACH ?

This should never happen and should never be possible, but I would hate to have
a fatal NS3 error given a malformed packet (my security pbackground is kicking
in here :-)

http://codereview.appspot.com/5311077/diff/1/src/internet/model/tcp-l4-protoc...
File src/internet/model/tcp-l4-protocol.cc (right):

http://codereview.appspot.com/5311077/diff/1/src/internet/model/tcp-l4-protoc...
src/internet/model/tcp-l4-protocol.cc:138: }
Due to the fact that the IPv4 and IPv6 Send() functions have different
prototypes, we need to keep these separate.  We keep track of 2 different down
target callbacks [m_downTarget and m_downTarget6].  Depending on whether we are
connected as v4 or v6, we call the appropriate L3 function.
Sign in to reply to this message.

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld f62528b