Multi-threaded Routing Toolkit (MRT)

Version 1.3.1 Alpha


The Multi-threaded Routing Toolkit (MRT) is an easy-to-use, extensible platform for developing and debugging routing protocols and routing code. MRT includes multi-protocol routing daemons, network anyalyzers, routing simulators and routing management tools.

Current Status (November 1996):

The original one year Routing Technology grant has been completed. We expect to receive notification from NSF at the end of November on a pending 3-year follow-on grant.

Recent MRT work has concentrated on IPv6 development. We have been working with IPv6 kernel developers and other router vendors to test interoperability of RIPNG implementations. The MRT RIPNG implementation appears to be fairly stable and currently inter-operates with DEC, Cisco, and BayNetworks routers.

Other MRT researchers have worked on cleaning up the MRT code base and resolving long-standing architectural issues, including memory handling and the granularity of parallelism. Planned activities include long-overdue work on the MRT documentation and implementation of additional Cisco-like policy languange.


Manuals

  • User's Guide
  • Programmer's Guide
  • Other Information

  • Binary and Source Distribution
  • Papers and Related Information
  • Credits
  • Copyright Notice.
  • MRT runs on Solaris 2.5, SunOS 4.1.x, BSDI, FreeBSD2.1, Linux 2.0 and IRIX.

    Send bugs and questions/comments to: mrt-support@home.merit.edu. Drop us a line if your are using the software -- we'd love to hear from you. A mailing list, mrt@home.merit.edu, has been created for discussion about MRT. To subscribe, send a request to mrt-request@home.merit.edu.

    [ Merit ]


    1. MRT Source Code and Binary Distribution

    A couple of notes:

    1. Please bear in mind that this is an ALPHA release. The code is still a bit buggy and unstable.
    2. MRT was really designed to run on native kernel-level multi-threaded machines. If you run MRT on older machines, you will not achieve nearly the same level of performance. In addition, some MRT features will not work.

    Other Code of Interest


    2. MRT Credits

    MRT was developed by Merit Network, Inc. under National Science Foundation grant NCR-9318902, "Experimentation with Routing Technology to be Used for Inter-Domain Routing in the Internet."

    MRT Developers

    The public domain Struct C-library of linked list, hash table and memory allocation routines was developed by Jonathan Dekock <dekock@cadence.com>

    Susan Harris <srh@merit.edu> provided help with the documentation.
    David Ward <dward@netstar.com> provided bug fixes and helpful suggestions.
    Some sections of code and architecture ideas were taken from the GateD routing daemon.

    The first porting to Linux with ipv6 was done by Pedro Roque <roque@di.fc.ul.pt>. Some interface routines to the Linux kernel were originally written by him.


    3. Papers and Related Information

    MRT Papers (in preparation)

  • Report to the National Science Foundation
  • The Multi-threaded Routing Toolkit: A Distributed, Object-oriented Route Server Architecture
  • Performance Characteristics of a Multi-threaded Route Server
  • The Toolkit Approach to Routing (white paper)
  • Concurrency and Parallelism in an Inter-domain Routing Architecture
  • May 1995 NANOG Slides
  • Parallelism in MRT, November 1996
  • IPv6 Information

  • IPv6 Implementations
  • Information on Threads From Other Sources

  • Introduction to AIX Thread Programming: AIXpert Nov. 1994 article by Chary G. Tamirisa
  • Sun's Solaris Thread Page: Programming resources on the Internet
  • Pthreads: POSIX 1003.1c thread standard
  • Chant: POSIX pthreads extension
  • Miscellaneous

  • Struct linked-list, hash and memory libraries

  • 4. Copyright

    [C] The Regents of the University of Michigan and Merit Network, Inc.
    1996 All Rights Reserved
    
      Permission to use, copy, modify, and distribute this software and its
      documentation for any purpose and without fee is hereby granted,
    provided   that the above copyright notice and this permission notice
    appear in all copies of the software and derivative works or modified
    versions thereof,   and that both the copyright notice and this
    permission and disclaimer   notice appear in supporting documentation.
    
       THIS SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND,
    EITHER    EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION WARRANTIES
    OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE REGENTS
    OF THE UNIVERSITY OF MICHIGAN AND MERIT NETWORK, INC. DO NOT WARRANT
    THAT THE FUNCTIONS CONTAINED IN THE SOFTWARE WILL MEET LICENSEE'S
    REQUIREMENTS OR THAT OPERATION WILL BE UNINTERRUPTED OR ERROR FREE. The
    Regents of the University of Michigan and Merit Network, Inc. shall not
    be liable for any    special, indirect, incidental or consequential
    damages with respect to any  claim by Licensee or any third party
    arising from use of the software.