[Ns-developers] Status ns-3 quagga porting

Liu Jian liujatp at gmail.com
Tue Jun 3 07:59:56 PDT 2008


Hello NS-3 community,

last week i read through code of libnl for better understanding netlink socket.
After the NetlinkSocket class was defined, the main work for me is to implemente
the NetlinkSocket::send()/recv(). 

the first step is to define the types of routing objects(rt_attr, rt_msg, ifinfo_msg,etc, 
which quagga used in netlink route/addr/link).fisrtly i planned to define these as XXXHeader
class like NetlinkMsgHeader, but i found it was not convenient when parsing the payload
of netlink msg(eg. when fetching next route msg or netlink attribute one by one), 
i define them in c style as structure and enum types in file netlink-route-types.h, so
that the packet parsing would be easily to be done, after removing the NetlinkMsgHeader,
get the payload start address pointer and parse it with the c style way used by libnl, then
add different operations for different route msg types.

now for quagga only, there only handle 3 types of operations add_route/del_route, add_addr
/del_route, set_link.(next step to add ipv4 APIs to fullfill them and  socket testing).

Best regards,Liu




Liu Jian
2008-06-03


More information about the Ns-developers mailing list