[mpls-linux-devel] [ANNOUNCE] Experimental (developers only) linux-2.6.0-test11-mpls-1.179-rcas1.dif
Status: Beta
Brought to you by:
jleu
From: Ramon C. <cas...@in...> - 2003-11-30 15:36:09
|
Hi James/Jamal/Harald/all, Well, yet another experimental release. BIG FAT WARNING: ===================== The kernel compiles and boots. proc entries are created and show the mpls subsystem status, tunnels can be created, and netlink "link layer" is set up ,but the user plane (forwarding) implementation does not work (most notably, it is impossible to add MOIs, given the latest changes in dst/neigh/etc.). Although ioctls are enabled for debug purposes, work is in progress to port to netlink (we need to define the MPLS kernel-userspace protocol, but a first step would be to re-use the existing ioctl data structures). I have (non-officially!) #define'd MPLS_NETLINK 9. Maybe the big guys from netdev@ can allocate a number for us :) Regards, Ramon // ------------------------------------------------------------------- // Ramon Casellas - GET/ENST/INFRES/RHD/A508 - cas...@in... PS: * Further discussion on mpls-linux-devel only. Sorry if you received several copies of this email. Releases: ===================== I am not proj. admin, and I cannot perform file release operations, so in order not to fill up your inboxes, releases can be found in: * Latest diff (2.6.0-test11 -> 2.6.0-test11-mpls) http://perso.enst.fr/~casellas/mpls-linux/linux-2.6.0-test11-mpls-1.179-rcas1.diff * I have started porting mplsadm -> mplsnl to use netlink. http://perso.enst.fr/~casellas/mpls-linux/mplsnl-0.1.tar.gz Overview: ===================== - I ***'up yesterday's diff (again, I know!, I know, bear with me, I'm a little braind..) missing define - Fixed a bug that I introduced in mpls labelspace handling. - Added basic infrastructure for MPLS netlink. Userspace apps can communicate with MPLS subsystem. The "link layer" is set up. We need to define a Userspace <-> Kernel Protocol (we can start porting the ioctl mechanism to netlink). cf the userspace mplsnl app. for details. Tested Changes w.r.t yesterday's release: (cf. yesterday's mail for details) ==================================================================== * linux-2.6.0-test11-mpls/net/mpls/mpls_netlink.c - Added file - Modified net/mpls/mpls.h (add prototypes). * linux-2.6.0-test11-mpls/include/linux/mpls.h - Added #define mir_set_tc mir_data.set_tc which was missing in previous diff * linux-2.6.0-test11/include/linux/netlink.h - Allocated a new Netlink for MPLS (non official!) #ifdef CONFIG_MPLS #define NETLINK_MPLS 9 #endif * linux-2.6.0-test11/net/netlink/netlink_dev.c 2003-11-27 + { .name = "mpls", .minor = NETLINK_MPLS, }, ... Some tests: ===================== ------------------------------------------ gandalf mplsadm# dmesg | grep MPLS MPLS Support v1.0 James R. Leu <jl...@mi...> -- Ramon Casellas <cas...@in...> MPLS Initializing Input Radix Tree MPLS Initializing Output Radix Tree MPLS Initializing MPLS ProcFS Interface MPLS MultiProtocol Label Switching Tunnel Module MPLS (c) 1999-2003 JLeu -- (c) 2003 RCas MPLS version 1.179 2003/11/20 MPLS DEBUG net/mpls/mpls_ioctls.c:38:mpls_ioctl: IOCTL 35844 MPLS DEBUG net/mpls/mpls_ioctls.c:93:mpls_ioctl: IOCTL Add Tunnel MPLS DEBUG net/mpls/mpls_tunnel.c:366:mpls_tunnel_create: Allocated MPLS tunnel mpls0 MPLS DEBUG net/mpls/mpls_ioctls.c:38:mpls_ioctl: IOCTL 35842 MPLS DEBUG net/mpls/mpls_ioctls.c:55:mpls_ioctl: IOCTL Set LabelSpace ------------------------------------------ gandalf mplsadm# cat /proc/net/mpls/* Debug: 1 Label spaces --------------- ath0 5 3 mpls0 -1 2 mpls0 0x00000000 01010709 ------------------------------------------ gandalf mplsadm# cat /sys/class/net/mpls0/* 4 00:00:00:00 00:00:00:00 0x0 0x90 6 6 1500 cat: /sys/class/net/mpls0/statistics: Is a directory 0 899 ------------------------------------------ netlink gandalf mplsnl# ./mplsnl MPLSNETLINK mplsnl.h:284:open: Socket descriptor 3 MPLSNETLINK mplsnl.h:285:open: Local Addr 11857 (len 12) MPLSNETLINK mplsnl.h:286:open: Peer Addr 0 (len 12) MPLSNETLINK mplsnl.h:315:send_msg: SizeOf nlmsg_len 24 (24) MPLSNETLINK answers: Invalid argument dmesg MPLS DEBUG net/mpls/mpls_netlink.c:204:mpls_netlink_rcv: Enter MPLS DEBUG net/mpls/mpls_netlink.c:137:mpls_netlink_rcv_msg: Received netlink request 1 of len 24 from pid 11854 MPLS DEBUG net/mpls/mpls_netlink.c:226:mpls_netlink_rcv: Exit |