[Xorp-users] using XORP (bgp) to test third party router

jer log jer_log@hotmail.com
Wed, 11 May 2005 18:25:14 +0000


Pl. ignore the earlier message about the test case.
Mea culpa.
-jer

>From: Atanu Ghosh <atanu@ICSI.Berkeley.EDU>
>Reply-To: atanu@ICSI.Berkeley.EDU
>To: "jer log" <jer_log@hotmail.com>
>CC: xorp-users@xorp.org
>Subject: Re: [Xorp-users] using XORP (bgp) to test third party router Date: 
>Tue, 10 May 2005 20:38:42 -0700
>
>I think the failure that you are reporting happens when the test_peer
>fails to connect with the BGP process. Try running the test_peer with
>the "-t" and "-v" flags.
>
>You should see something like this:
>reset()
>register(coord,0)
>packetisation(bgp)
>connect(localhost,10001)
>
>The connect line should contain the address and port that your BGP
>router is listening on.
>
>        Atanu.
>
> >>>>> "jer" == jer log <jer_log@hotmail.com> writes:
>
>     jer> Thank you so much for that response. Multiple hosts is not
>     jer> really a option for me.
>
>     jer> I have since tried adding a '-b' and '-p' option to specify a
>     jer> local bind address/port (to enforce the source address/port
>     jer> during connect) options to test_peer.cc under bgp/harness
>
>     jer> The idea is to run each peer with testpeer -b <addr1> -p <port>
>
>     jer> The 'Third Party' router has an option to specify the
>     jer> destination TCP port to connect to (does not have to be 179,
>     jer> thankfully)
>
>     jer> But when i make this change, i get " "Operation in coordinator
>     jer> still pending try number: 1... and fail"
>
>     jer> BTW, i really think the test script can become a great third
>     jer> party BGP test tool.  with all the extensible functionality to
>     jer> send arbitrary update and expect statements.  (reminds me of
>     jer> Qarobot from Qosnetics)
>
>     jer> Thanks for your help.  -jer
>
>     jer> From: Atanu Ghosh <atanu@ICSI.Berkeley.EDU>
>     >> Reply-To: atanu@ICSI.Berkeley.EDU To: "jer log"
>     >> <jer_log@hotmail.com> CC: xorp-users@xorp.org Subject: Re:
>     >> [Xorp-users] using XORP (bgp) to test third party router Date:
>     >> Tue, 10 May 2005 19:09:46 -0700
>     >>
>     >> The bgp test harness was written with the intent of being able to
>     >> test third party BGP implementations:
>     >> 
><http://www.xorp.org/releases/1.1/docs/test_harness/test_harness.pdf>.
>     >>
>     >> We have never tried using the tests against a third party BGP. So
>     >> some dependencies on our BGP may have crept in.
>     >>
>     >> I would experiment with the set of scripts that we use daily in
>     >> our regression runs, they are in Makefile.am:
>     >>
>     >> test_peering1.sh test_peering2.sh test_routing1.sh
>     >> test_routing2.sh test_rib1.sh test_rib_fea1.sh
>     >> test_path_attribute1.sh test_terminate.sh
>     >>
>     >> A typical BGP will create a single session with a peer. More than
>     >> one session to a peer is clearly a protocol violation. We wanted
>     >> to be able to run our BGP regression tests from a Makefile so we
>     >> modified our BGP to accept connections on any port not just
>     >> 179. For testing third party implementations we need to run each
>     >> test_peer on a separate host (or address).
>     >>
>     >> The test harness has two components a coordinating process and a
>     >> number of test_peers. The test_peers are designed to run on
>     >> separate hosts although we run them on the same host.
>     >>
>     >> Taking test_routing1.sh as an example the top of the file
>     >> describes which process need to be started, clearly when testing
>     >> a third party BGP there is no need to start the XORP
>     >> processes. We need to start a finder process a coordinating
>     >> process and and three test_peers. All the port numbers in script
>     >> need to be changed to port 179 (PORT? and PEER?_PORT). Choose
>     >> three separate hosts on which to run the test peers. Configure
>     >> you BGP to accept connections from this these hosts. Set the HOST
>     >> variable to the IP address of your BGP router.
>     >>
>     >> The finder process for security reasons will only accept
>     >> connections on localhost. It will need to be started with the
>     >> "-n" with the network that the test_peers are on and "-i" with
>     >> the interface address that it should listen on. Then start a test
>     >> peer on each host with the "-h" flag, with the IP address of the
>     >> finder host. Each test peer will also require a unique name
>     >> provided with the "-s" flag, (peer1, peer2 and peer3).
>     >>
>     >> For simplicity run the test_routing1.sh script on the same host
>     >> that you run the coordinator and finder process.
>     >>
>     >> Now run a test: $ ./test_routing1.sh -s -t test1
>     >>
>     >> The configure_bgp does indeed configure the XORP bgp.
>     >>
>     >> There is no way to set the test peer's IP address interesting
>     >> omission on my part. The test_peer is provided with the targets
>     >> IP address and port. In our tests the target is always localhost
>     >> so the source address selected by the system is always
>     >> localhost. When running the test_peers on separate hosts again
>     >> the source IP address will be selected by the operating system.
>     >>
>     >> I have noticed a number of problems in the test scripts while
>     >> trying to compose this email. The most irritating is that I have
>     >> overloaded the configuration on some peerings. For example in
>     >> test_routing1.sh I use the same peerings for IPv4 and IPv6
>     >> tests. Your won't be able to run the IPv4 and IPv6 tests with the
>     >> same router configuration. This also means that you can't allow
>     >> the script to run all the tests, each one will need to be run
>     >> individually.
>     >>
>     >> I hope this helps.
>     >>
>     >> In retrospect using the the shell as the scripting language was a
>     >> mistake. We will be rewriting the tests in python during the
>     >> summer and hopefully make the scripts more amenable to testing
>     >> third party BGP implementations. Checkout harness.py and
>     >> lookup.py.
>     >>
>     >> Sorry for the slow response we had a power failure in our machine
>     >> room today and lost both power supplies on our mail server.
>     >>
>     >> Atanu.
>     >>
>     >>
>     >> >>>>> "jer" == jer log <jer_log@hotmail.com> writes:
>     >>
>     jer> Folks, I have since got some peering (bgp test harness) with a
>     jer> third party router going...  But i have problems in specifying
>     jer> multiple peers.  Specifically the router requires these peers
>     jer> to come from multiple ip addresses.
>     >>
>     jer> How do i specify a test peer's ip address?  I am assuming
>     jer> configure_bgp() {} routine configures the peers in XORP.
>     >>
>     jer> Thanks, -Jer
>     >>
>     jer> So how do i specify the peer programs to From: "jer log"
>     jer> <jer_log@hotmail.com>
>     >> >> To: xorp-users@xorp.org Subject: [Xorp-users] using XORP (bgp)
>     >> to >> test third party router Date: Tue, 10 May 2005 16:27:22
>     >> +0000
>     >> >>
>     >> >> Hi, I am (a newbie) trying to use the bgp harness test suite
>     >> of >> XORP to test a third party router.  Has this been done?
>     >> What are >> the processes i need to run to achieve this?  I have
>     >> been able to >> compile xorp in a redhat linux.
>     >> >>
>     >> >> If i just modify bgp/harness/test1.sh it just stops at coord
>     >> >> reset.  I guess i must start the coordinator process...
>     >> >>
>     >> >> Thanks for your help -Jer
>     >> >>
>     >> >>
>     >> _________________________________________________________________
>     >> >> Express yourself instantly with MSN Messenger! Download today
>     >> - >> it's FREE!  >>
>     >> http://messenger.msn.click-url.com/go/onm00200471ave/direct/01/
>     >> >>
>     >> >> _______________________________________________ Xorp-users >>
>     >> mailing list Xorp-users@xorp.org >>
>     >> http://mailman.ICSI.Berkeley.EDU/mailman/listinfo/xorp-users
>     >>
>     jer> _________________________________________________________________
>     jer> Express yourself instantly with MSN Messenger! Download today -
>     jer> it's FREE!
>     jer> http://messenger.msn.click-url.com/go/onm00200471ave/direct/01/
>     >>
>     jer> _______________________________________________ Xorp-users
>     jer> mailing list Xorp-users@xorp.org
>     jer> http://mailman.ICSI.Berkeley.EDU/mailman/listinfo/xorp-users
>     >> _______________________________________________ Xorp-users
>     >> mailing list Xorp-users@xorp.org
>     >> http://mailman.ICSI.Berkeley.EDU/mailman/listinfo/xorp-users
>
>     jer> _________________________________________________________________
>     jer> Don’t just search. Find. Check out the new MSN Search!
>     jer> http://search.msn.click-url.com/go/onm00200636ave/direct/01/
>
>_______________________________________________
>Xorp-users mailing list
>Xorp-users@xorp.org
>http://mailman.ICSI.Berkeley.EDU/mailman/listinfo/xorp-users

_________________________________________________________________
FREE pop-up blocking with the new MSN Toolbar – get it now! 
http://toolbar.msn.click-url.com/go/onm00200415ave/direct/01/