XORP Frequently Asked Questions

Questions

  1. What exactly is XORP?
  2. What are the pros and cons of XORP?
  3. There are plenty of vendors with modular routing software so why is XORP interesting?
  4. Is XORP in competition with the commerical router vendors?
  5. What is the impact on the router market of open source routing platforms?
  6. How do you pronounce XORP?
  7. How does XORP compare with Zebra/Quagga?

Answers

  1. What exactly is XORP?

    XORP currently provides a set of routing protocol implementations, an extensible programming API, and configuration tools. The supported protocols are BGP, RIP, PIM-SM, and IGMP/MLD. IPv4 and IPv6 are both supported. The list of protocols and features will hopefully grow as more people start contributing to the project.

    At the present time, XORP does not implement its own forwarding system. It is reliant on the forwarding of the underlying host operating system. We would like to support forwarding in custom hardware and software architectures in future. An example being the Click modular router.

    XORP is a research project. However, the core code is intended to be of production quality. It is critical that XORP can be deployed in commercial and research environments. Thus it is really important to us that XORP is stable and secure. While we have an extensive set of internal test suites, these can only test so much. True stability will only come from real-world testing - if you try XORP, and it doesn't do what you expect or hope, please let us know, either through email to feedback at xorp.org or bugzilla.

  2. What are the pros and cons of XORP?

    Pros:

    • The code is open source (under a BSD-like license). People can freely use it, customize it, make their own product out of it, etc.
    • The code runs on commodity PC hardware and operating systems.
    • The modular design and separation of functional entities into distinct processes means that failure of one component does not cause the whole router to fail or malfunction.
    • The modular design enables future integration with hardware forwarding planes.
    • XORP components communicate with a flexible IPC scheme. Components can run within a single host or be distributed across multiple hosts. There is scope for building a distributed router from low-cost PC hardware.

    Cons:

    • Software forwarding plane limits forwarding rate.
    • The number of hardware and software features are much less than the commercial vendors.
    • Support options do not exist like the big vendors. The project core does not have the resources to provide this level of support. If a company wants to commercialize XORP, this would be one area of differentiation for the commerical product.

  3. There are plenty of vendors with modular routing software so why is XORP interesting?

    There are plenty of reasonably priced router/routing-switch options. However, you have no control over the software they run. If there's a problem, you are at the mercy of the vendor to get a fix. Unless you are a major corporation, you may find it hard to get any action. With XORP and other open source routing platforms you have the source code, you can find and fix problems yourself, and you can add features you want.

    If you don't like working with code yourself, you can submit XORP bug reports in a public forum. Since no developer likes outstanding bug reports this puts pressure on the developers to fix issues and also shows areas where people might usefully contribute effort.

  4. Is XORP in competition with the commerical router vendors?

    XORP is primarily a research project. We're not competing with router vendors, we're interested in facilitating routing research - providing researchers with a platform where they can try out routing ideas. The code is open source since it is hard to help the research community without providing the source code.

  5. What is the impact on the router market of open source routing platforms?

    XORP (and other open source routers) may eat into the router market at the edges - there is potential to provide cheap and reasonably performing edge boxes. It may also find a home in logging and analysis products since there is code that speaks assorted protocols - it is not much work to change from protocol speaker to protocol reporter. This is one area where other open source routing products find themselves used in large enterprises and with ISPs today.

  6. How do you pronouce XORP?

    The locals pronounce it "Zorp". Note to self: when choosing a name for a project pick a name people can say already :-)

  7. How does XORP compare with Zebra/Quagga?

    XORP and Zebra/Quagga compete in the same space. In particular, we both provide open-source implementations of major Internet routing protocols. However, we differ in a number of ways. XORP's emphasis is more clearly on extensibility, and this is reflected in the XORP architecture in many ways.

    From the operator's point of view, while XORP aims to provide an extensible multi-process architecture, it also provides a unified user interface to the user operator, so the operator should not need to know about how XORP is implemented internally.

    From the developer's point of view, Zebra/Quagga is implemented in C, whereas XORP is implemented in C++. In Zebra/Quagga IPv4 and IPv6 protocol instances use different code bases. In XORP protocol instances supporting IPv4 and IPv6 are built from a common code base, which greatly simplifies the code maintenance.

    From the network researcher's point of view, XORP provides a large set of common C++ class libraries that should greatly simplify the development of research code. We expect XORP will provide an excellent platform for network research.

    From the licensing point of view, XORP is licensed under a BSD-style license, which permits free usage without constraint, whereas Zebra/Quagga is licensed under the GPL which imposes certain constraints on users. For most users the difference is not critical, but for commercial usage it may be important.

    In summary, both XORP and Zebra/Quagga provide good solid routing protocol implementations.


Document id $XORP: www/faq.html,v 1.27 2006/10/16 23:25:33 atanu Exp $.
Generated on 16/Oct/2006 at 16:23:54.
Feedback, comments, flames to feedback@xorp.org