draft-ietf-bmwg-bgp-basic-convergence-04.txt   draft-ietf-bmwg-bgp-basic-convergence-05.txt 
Benchmarking Working Group R. Papneja Benchmarking Working Group R. Papneja
Internet-Draft Huawei Technologies Internet-Draft Huawei Technologies
Intended status: Informational B. Parise Intended status: Informational B. Parise
Expires: April 29, 2015 Cisco Systems Expires: July 20, 2015 Cisco Systems
S. Hares S. Hares
Huawei Technologies Huawei Technologies
D. Lee D. Lee
IXIA IXIA
I. Varlashkin I. Varlashkin
Google Google
October 26, 2014 January 16, 2015
Basic BGP Convergence Benchmarking Methodology for Data Plane Basic BGP Convergence Benchmarking Methodology for Data Plane
Convergence Convergence
draft-ietf-bmwg-bgp-basic-convergence-04.txt draft-ietf-bmwg-bgp-basic-convergence-05.txt
Abstract Abstract
BGP is widely deployed and used by several service providers as the BGP is widely deployed and used by several service providers as the
default Inter AS routing protocol. It is of utmost importance to default Inter AS routing protocol. It is of utmost importance to
ensure that when a BGP peer or a downstream link of a BGP peer fails, ensure that when a BGP peer or a downstream link of a BGP peer fails,
the alternate paths are rapidly used and routes via these alternate the alternate paths are rapidly used and routes via these alternate
paths are installed. This document provides the basic BGP paths are installed. This document provides the basic BGP
Benchmarking Methodology using existing BGP Convergence Terminology, Benchmarking Methodology using existing BGP Convergence Terminology,
RFC 4098. RFC 4098.
skipping to change at page 1, line 44 skipping to change at page 1, line 44
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/. Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on April 29, 2015. This Internet-Draft will expire on July 20, 2015.
Copyright Notice Copyright Notice
Copyright (c) 2014 IETF Trust and the persons identified as the Copyright (c) 2015 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of (http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as the Trust Legal Provisions and are provided without warranty as
skipping to change at page 16, line 20 skipping to change at page 16, line 20
J. Record the time when the routeA is forwarded by DUT towards J. Record the time when the routeA is forwarded by DUT towards
the Helper node. the Helper node.
This is Tup(DUTx, Rt-A), also named DUT-XMT-Rt-Time(Rt-A) This is Tup(DUTx, Rt-A), also named DUT-XMT-Rt-Time(Rt-A)
K. Record the time when the traffic targeted towards routeA is K. Record the time when the traffic targeted towards routeA is
received on the Route Egress Interface. This is TR(EMr, received on the Route Egress Interface. This is TR(EMr,
Rt-A), also named DUT-XMT-Data Time(Rt-A). Rt-A), also named DUT-XMT-Data Time(Rt-A).
FIB convergence = (DUT-RCV-Rt-Time - FIB convergence = (DUT-XMT-Data-Time
DUT-XMT-Data-Time)(Rt-A) -DUT-RCV-Rt-Time)(Rt-A)
RIB convergence = (DUT-RCV-Rt-Time - DUT-XMT-Rt-Time)(Rt-A) RIB convergence = (DUT-XMT-Rt-Time - DUT-RCV-Rt-Time)(Rt-A)
Convergence for a route stream is characterized by Convergence for a route stream is characterized by
a) Individual route convergence for FIB, RIB a) Individual route convergence for FIB, RIB
b) All route convergence of b) All route convergence of
FIB-convergence =DUT-RCV-Rt-Time(first)-DUT-XMT-Data- FIB-convergence = DUT-XMT-Data-Time(last) - DUT-RCV-Rt-
Time(last) Time(first)
RIB-convergence =DUT-RCV-Rt-Time(first)-DUT-XMT-Rt- RIB-convergence = DUT-XMT-Rt-Time(last) - DUT-RCV-Rt-
Time(last) Time(first)
5.1.3. eBGP Convergence 5.1.3. eBGP Convergence
Objective: Objective:
This test measures the convergence time taken by an implementation This test measures the convergence time taken by an implementation
to receive, install and advertise a route in an eBGP Scenario. to receive, install and advertise a route in an eBGP Scenario.
Reference Test Setup: Reference Test Setup:
skipping to change at page 19, line 25 skipping to change at page 19, line 25
D. To ensure adjacency establishment, wait for 3 KeepAlives from D. To ensure adjacency establishment, wait for 3 KeepAlives from
the DUT or a configurable delay before proceeding with the the DUT or a configurable delay before proceeding with the
rest of the test. rest of the test.
E. Start the traffic from the Emulator towards the DUT targeted E. Start the traffic from the Emulator towards the DUT targeted
at a specific route (e.g. routeA). Initially traffic would be at a specific route (e.g. routeA). Initially traffic would be
observed on the best egress route (Emp1) instead of Emp2. observed on the best egress route (Emp1) instead of Emp2.
F. Trigger the shutdown event of Best Egress Interface on DUT F. Trigger the shutdown event of Best Egress Interface on DUT
(Dp1). (Dp1). This time is called Shutdown time
G. Measure the Convergence Time for the event to be detected and G. Measure the Convergence Time for the event to be detected and
traffic to be forwarded to Next-Best Egress Interface (Dp2) traffic to be forwarded to Next-Best Egress Interface (Dp2)
Time = Data-detect(Emp2) - Shutdown time Time = Data-detect(Emp2) - Shutdown time
H. Stop the offered load and wait for the queues to drain and H. Stop the offered load and wait for the queues to drain.
Restart. Restart the data flow.
I. Bring up the link on DUT Best Egress Interface. I. Bring up the link on DUT Best Egress Interface.
J. Measure the convergence time taken for the traffic to be J. Measure the convergence time taken for the traffic to be
rerouted from (Dp2) to Best Interface (Dp1) rerouted from (Dp2) to Best Interface (Dp1)
Time = Data-detect(Emp1) - Bring Up time Time = Data-detect(Emp1) - Bring Up time
K. It is recommended that the test be repeated with varying K. It is recommended that the test be repeated with varying
number of routes and route mixtures or with number of routes & number of routes and route mixtures or with number of routes &
skipping to change at page 21, line 28 skipping to change at page 21, line 28
Emulator on the Best Egress Interface. This time is called Emulator on the Best Egress Interface. This time is called
BGPadj-down-time also termed BGPpeer-down BGPadj-down-time also termed BGPpeer-down
G. Measure the Convergence Time for the event to be detected and G. Measure the Convergence Time for the event to be detected and
traffic to be forwarded to Next-Best Egress Interface. This traffic to be forwarded to Next-Best Egress Interface. This
time is Tr-rr2 also called TR2-traffic-on time is Tr-rr2 also called TR2-traffic-on
Convergence = TR2-traffic-on - BGPpeer-down Convergence = TR2-traffic-on - BGPpeer-down
H. Stop the offered load and wait for the queues to drain and H. Stop the offered load and wait for the queues to drain and
Restart. Restart the data flow.
I. Bring up BGP adjacency on the Emulator over the Best Egress I. Bring up BGP adjacency on the Emulator over the Best Egress
Interface. This time is BGP-adj-up also called BGPpeer-up Interface. This time is BGP-adj-up also called BGPpeer-up
J. Measure the convergence time taken for the traffic to be J. Measure the convergence time taken for the traffic to be
rerouted to Best Interface. This time is BGP-adj-up also rerouted to Best Interface. This time is Tr-rr1 also called
called BGPpeer-up TR1-traffic-on
Convergence = TR1-traffic-on - BGPpeer-up
5.4. BGP Hard Reset Test Cases 5.4. BGP Hard Reset Test Cases
5.4.1. BGP Non-Recovering Hard Reset Event on DUT 5.4.1. BGP Non-Recovering Hard Reset Event on DUT
Objective: Objective:
This test measures the route convergence time due to Hard Reset on This test measures the route convergence time due to Hard Reset on
the DUT. the DUT.
skipping to change at page 22, line 28 skipping to change at page 22, line 32
E. To ensure adjacency establishment, wait for 3 KeepAlives from E. To ensure adjacency establishment, wait for 3 KeepAlives from
the DUT or a configurable delay before proceeding with the the DUT or a configurable delay before proceeding with the
rest of the test. rest of the test.
F. Start the traffic from the Emulator towards the DUT targeted F. Start the traffic from the Emulator towards the DUT targeted
at a specific route (e.g routeA). Initially traffic would be at a specific route (e.g routeA). Initially traffic would be
observed on the Best Egress interface. observed on the Best Egress interface.
G. Trigger the Hard Reset event of Best Egress Interface on DUT. G. Trigger the Hard Reset event of Best Egress Interface on DUT.
This time is called time-reset
H. Measure the Convergence Time for the event to be detected and H. This event is detected and traffic is forwarded to the Next-
Best Egress Interface. This tim e called time-traffic flow.
I. Measure the Convergence Time for the event to be detected and
traffic to be forwarded to Next-Best Egress Interface. traffic to be forwarded to Next-Best Egress Interface.
Time of convergence = time-traffic flow - time-reset Time of convergence = time-traffic flow - time-reset
I. Stop the offered load and wait for the queues to drain and J. Stop the offered load and wait for the queues to drain and
Restart. Restart.
J. It is recommended that the test be repeated with varying K. It is recommended that the test be repeated with varying
number of routes and route mixtures or with number of routes & number of routes and route mixtures or with number of routes &
route mixtures closer to what is deployed in operational route mixtures closer to what is deployed in operational
networks. networks.
K. When varying number of routes are used, convergence Time is L. When varying number of routes are used, convergence Time is
measured using the Loss Derived method [IGPData]. measured using the Loss Derived method [IGPData].
L. Convergence Time in this scenario is influenced by Failure M. Convergence Time in this scenario is influenced by Failure
detection time on Tester, BGP Keep Alive Time and routing, detection time on Tester, BGP Keep Alive Time and routing,
forwarding table update time. forwarding table update time.
5.5. BGP Soft Reset 5.5. BGP Soft Reset
Objective: Objective:
This test measures the route convergence time taken by an This test measures the route convergence time taken by an
implementation to service a BGP Route Refresh message and implementation to service a BGP Route Refresh message and
advertise a route. advertise a route.
skipping to change at page 25, line 24 skipping to change at page 25, line 33
the routeA is not present on DUT. the routeA is not present on DUT.
(7) Advertise routeA from the Emulator to the DUT. (7) Advertise routeA from the Emulator to the DUT.
(8) The traffic targeted towards routeA is received on the (8) The traffic targeted towards routeA is received on the
Egress Interface. Egress Interface.
(9) Now the Tester sends request to withdraw routeA to DUT, (9) Now the Tester sends request to withdraw routeA to DUT,
TRx(Awith) also called WdrawTime1(Rt-A). TRx(Awith) also called WdrawTime1(Rt-A).
(10) Record the time when no traffic is observed on the (10) Record the time when no traffic is observed as
Egress Interface. This is the RouteRemoveTime1(Rt-A). determined by the Emulator. This is the
RouteRemoveTime1(Rt-A).
(11) The difference between the RouteRemoveTime1 and (11) The difference between the RouteRemoveTime1 and
WdrawTime1 is the WdrawConvTime1 WdrawTime1 is the WdrawConvTime1
WdrawConvTime1(Rt-A) = RouteRemoveTime1(Rt-A) - WdrawConvTime1(Rt-A) = RouteRemoveTime1(Rt-A) -
WdrawTime1(Rt-A) WdrawTime1(Rt-A)
C. Step 2: C. Step 2:
(1) Continuing from Step 1, re-advertise routeA back to DUT (1) Continuing from Step 1, re-advertise routeA back to DUT
skipping to change at page 26, line 12 skipping to change at page 26, line 19
WATime=time traffic first flows WATime=time traffic first flows
(4) Now the Tester sends a request to withdraw routeA to DUT. (4) Now the Tester sends a request to withdraw routeA to DUT.
This is the WdrawTime2(Rt-A) This is the WdrawTime2(Rt-A)
WAWtime-TRx(Rt-A) = WdrawTime2(Rt-A) WAWtime-TRx(Rt-A) = WdrawTime2(Rt-A)
(5) DUT processes the withdraw and sends it to Helper Node. (5) DUT processes the withdraw and sends it to Helper Node.
(6) Record the time when no traffic is observed on the Egress (6) Record the time when no traffic is observed as determined
Interface of Helper Node. This is by the Emulator. This is
TR-WAW(DUT,RouteA) = RouteRemoveTime2(Rt-A) TR-WAW(DUT,RouteA) = RouteRemoveTime2(Rt-A)
(7) Total withdraw processing time is (7) Total withdraw processing time is
TotalWdrawTime(Rt-A) = ((RouteRemoveTime2(Rt-A) - TotalWdrawTime(Rt-A) = ((RouteRemoveTime2(Rt-A) -
WdrawTime2(Rt-A)) - WdrawConvTime1(Rt-A)) WdrawTime2(Rt-A)) - WdrawConvTime1(Rt-A))
5.7. BGP Path Attribute Change Convergence Time 5.7. BGP Path Attribute Change Convergence Time
 End of changes. 21 change blocks. 
27 lines changed or deleted 34 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/