Description* This is my midterm code review for the GSoC 2014 project, MulticastIPv6.* The code to be reviewed can be found in Rietveld issue 103570043.
* The code contains implementation of
**State change Reports.
**Router Periodic General Queries.
**Current State Reports.
*Protocol mldv2.h , mldv2.cc
*Implemented headers icmpv6-header.h,icmpv6-header.cc
*Created Call Backs icmpv6-l4-protocol.cc
*Extended Socket API
- ipv6-raw-socket-impl.h
- ipv6-raw-socket-impl.cc
- socket.h
- socket.cc
*Test
- As of now I am using ping6 application for testing socket calls and mldv2 protocol so I created a copy of ping6 and named as sample.
- For testing the working there is an example
- waf --run Mldv2-example which generates a pcap which contains
* State change Reports.
* Router Periodic General Queries.
* Node replying with current state reports
* Repository : http://code.nsnam.org/krishna/ns-3-multicastIPv6/
* Wiki page : http://www.nsnam.org/wiki/GSOC2014MulticastIPv6
= MLDv2 Overview =
* The purpose of MLD is to enable each multicast router to learn, for each of its directly attached links, which multicast addresses and which sources have interested listeners on that link.
* It is an asymmetric protocol has two parts router part ,host part.
== Socket and Interfaces ==
*Applications that run on host mention the multicast groups they are interested in along with the sources they are interested or not interested in on a interface.
*The interface record is derived from the socket records.
- Example : socket1(Interface1,Include,a,b) + socket2 (Interface1,Include,b,c) => Interface1(Include,a,b,c) where a,b,c are source addresses.
== Messages ==
There are two types of exchanges between host and router.
*Exchange One : General Query
**Router periodically sends General Queries to learn multicast address listener information from an attached link.
**Nodes respond to these queries by reporting their per-interface Multicast Address Listening state, through Current State Report messages.
*Exchange Two : State Change
**If the listening state of a node changes, the node immediately reports these changes through a State Change Report message
**The router must query for other listeners of the multicast address or multicast source address if the changes are to delete a multicast address or source of a multicast address them through Multicast Address Query or Source Specific Query respectively.
Patch Set 1 #
Total comments: 23
MessagesTotal messages: 3
|