Everton Marques 871dbcfede [pim] Initial pim 0.155 10 years ago
..
AUTHORS 871dbcfede [pim] Initial pim 0.155 4 years ago
CAVEATS 871dbcfede [pim] Initial pim 0.155 4 years ago
COMMANDS 871dbcfede [pim] Initial pim 0.155 4 years ago
COPYING 871dbcfede [pim] Initial pim 0.155 4 years ago
DEBUG 871dbcfede [pim] Initial pim 0.155 4 years ago
LINUX_KERNEL_MROUTE_MFC 871dbcfede [pim] Initial pim 0.155 4 years ago
Makefile.am 871dbcfede [pim] Initial pim 0.155 4 years ago
README 871dbcfede [pim] Initial pim 0.155 4 years ago
TODO 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_assert.c 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_assert.h 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_cmd.c 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_cmd.h 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_hello.c 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_hello.h 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_iface.c 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_iface.h 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_ifchannel.c 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_ifchannel.h 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_igmp.c 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_igmp.h 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_igmpv3.c 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_igmpv3.h 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_join.c 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_join.h 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_macro.c 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_macro.h 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_main.c 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_mroute.c 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_mroute.h 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_msg.c 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_msg.h 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_neighbor.c 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_neighbor.h 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_oil.c 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_oil.h 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_pim.c 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_pim.h 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_rand.c 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_rand.h 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_rpf.c 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_rpf.h 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_signals.c 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_signals.h 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_sock.c 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_sock.h 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_str.c 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_str.h 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_time.c 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_time.h 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_tlv.c 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_tlv.h 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_upstream.c 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_upstream.h 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_util.c 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_util.h 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_version.c 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_version.h 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_vty.c 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_vty.h 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_zebra.c 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_zebra.h 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_zlookup.c 871dbcfede [pim] Initial pim 0.155 4 years ago
pim_zlookup.h 871dbcfede [pim] Initial pim 0.155 4 years ago
pimd.c 871dbcfede [pim] Initial pim 0.155 4 years ago
pimd.conf.sample 871dbcfede [pim] Initial pim 0.155 4 years ago
pimd.h 871dbcfede [pim] Initial pim 0.155 4 years ago
quagga-bootstrap.sh 871dbcfede [pim] Initial pim 0.155 4 years ago
quagga-build.sh 871dbcfede [pim] Initial pim 0.155 4 years ago
quagga-configure.sh 871dbcfede [pim] Initial pim 0.155 4 years ago
quagga-git-add.sh 871dbcfede [pim] Initial pim 0.155 4 years ago
quagga-memtypes.sh 871dbcfede [pim] Initial pim 0.155 4 years ago
savannah-git-clone.sh 871dbcfede [pim] Initial pim 0.155 4 years ago

README

#
# $QuaggaId: $Format:%an, %ai, %h$ $
#

INTRODUCTION

qpimd aims to implement a PIM (Protocol Independent Multicast)
daemon for the Quagga Routing Suite.

Initially qpimd targets only PIM SSM (Source-Specific
Multicast) mode as defined in section 4.8.2 (PIM-SSM-Only
Routers) of RFC 4601.

In order to deliver end-to-end multicast routing control
plane, qpimd includes the router-side of IGMPv3 (RFC 3376).

LICENSE

qpimd - pimd for quagga
Copyright (C) 2008 Everton da Silva Marques

qpimd is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as
published by the Free Software Foundation; either version 2,
or (at your option) any later version.

qpimd is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public
License along with qpimd; see the file COPYING. If not, write
to the Free Software Foundation, Inc., 59 Temple Place - Suite
330, Boston, MA 02111-1307, USA.

HOME SITE

qpimd lives at:

http://savannah.nongnu.org/projects/qpimd

PLATFORMS

qpimd has been tested with Debian Lenny under Linux 2.6.

REQUIREMENTS

qpimd requires Quagga (0.99.11 or higher from http://www.quagga.net)

The GNU Build System (Autotools) is required to build from
source code repository.

gawk is also needed to build with Autotools. Any other awk
usually won't work.

BUILDING FROM QUAGGA GIT REPOSITORY

1) Get the latest quagga source tree

# git clone git://code.quagga.net/quagga.git quagga

2) Apply qpimd patch into quagga source tree

# patch -p1 -d quagga < pimd-0.153-quagga-git20090623.patch

3) Compile and install quagga

# cd quagga
# ./bootstrap.sh
# ./configure --prefix=/usr/local/quagga --enable-pimd
# make
# make install

BUILDING FROM QUAGGA TARBALL

1) Get the latest quagga tarball

# wget http://www.quagga.net/download/quagga-0.99.13.tar.gz

2) Unpack the quagga tarball

# tar xzf quagga-0.99.13.tar.gz

3) Apply qpimd patch into quagga source tree

# patch -p1 -d quagga-0.99.13 < pimd-0.153-quagga-0.99.13.patch

4) Compile and install quagga

# cd quagga-0.99.13
# ./configure --prefix=/usr/local/quagga --enable-pimd
# make
# make install

USAGE

1) Configure and start the zebra daemon

# cp /usr/local/quagga/etc/zebra.conf.sample /usr/local/quagga/etc/zebra.conf
# vi /usr/local/quagga/etc/zebra.conf
# /usr/local/quagga/sbin/zebra

2) Configure and start the pimd daemon

# cp /usr/local/quagga/etc/pimd.conf.sample /usr/local/quagga/etc/pimd.conf
# vi /usr/local/quagga/etc/pimd.conf
# /usr/local/quagga/sbin/pimd

3) Access pimd vty interface at port TCP 2611

# telnet localhost 2611

CONFIGURATION COMMANDS

See available commands in the file pimd/COMMANDS.

KNOWN CAVEATS

See list of known caveats in the file pimd/CAVEATS.

SUPPORT

Please post comments, questions, patches, bug reports at the
support site:

http://savannah.nongnu.org/projects/qpimd

RELATED WORK

igmprt: An IGMPv3-router implementation
- http://www.loria.fr/~lahmadi/igmpv3-router.html

pimd: PIMv2-SM daemon
- http://netweb.usc.edu/pim/pimd (URL broken in 2008-12-23)
- http://packages.debian.org/source/sid/pimd (from Debian)

zpimd: zpimd is not dependent of zebra or any other routing daemon
- ftp://robur.slu.se/pub/Routing/Zebra
- http://sunsite2.icm.edu.pl/pub/unix/routing/zpimd

mrd6: an IPv6 Multicast Router for Linux systems
- http://fivebits.net/proj/mrd6/

MBGP: Implementation of RFC 2858 for Quagga
- git://git.coplanar.net/~balajig/quagga
- http://www.gossamer-threads.com/lists/quagga/dev/18000

REFERENCES

IANA Protocol Independent Multicast (PIM) Parameters
http://www.iana.org/assignments/pim-parameters/pim-parameters.txt

Address Family Numbers
http://www.iana.org/assignments/address-family-numbers

-- END --