⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pim_testsuite.tex

📁 xorp源码hg
💻 TEX
📖 第 1 页 / 共 5 页
字号:
%% $XORP: xorp/docs/pim_testsuite/pim_testsuite.tex,v 1.44 2007/03/15 00:43:15 pavlin Exp $%\documentclass[11pt]{report}%\usepackage[dvips]{changebar}\usepackage{subfigure}\usepackage{fullpage}\usepackage{setspace}\usepackage{times}\usepackage{latexsym}\usepackage{epsfig}\usepackage{graphicx}\usepackage{xspace}\usepackage{color}\usepackage{amsmath}\usepackage{rotating}\usepackage{moreverb}\usepackage{listings}\usepackage{alltt}\usepackage{stmaryrd}%\usepackage[dvipdf]{graphics}%\usepackage[dvips]{graphicx}%\usepackage{xorp}\definecolor{gray}{rgb}{0.5,0.5,0.5}\newcommand{\etc}{\emph{etc.}\xspace}\newcommand{\ie}{\emph{i.e.,}\xspace}\newcommand{\eg}{\emph{e.g.,}\xspace}%\newcommand{\comment}[1]{{\color{gray}[\textsf{#1}]}}%\newcommand{\comment}[1]{}% Changebar stuff% \newenvironment{colorcode}{\color{blue}}{}% \renewcommand{\cbstart}{\begin{colorcode}}% \renewcommand{\cbend}{\end{colorcode}}% \pagestyle{empty}\begin{document}\title{XORP PIM-SM Test Suite \\\vspace{1ex}Version 1.4}\author{ XORP Project                                   \\         International Computer Science Institute       \\         Berkeley, CA 94704, USA                        \\         {\it http://www.xorp.org/}			\\         {\it feedback@xorp.org}}\date{March 20, 2007}\maketitle%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\newpage{\huge \bf Modification History}\vspace{4ex}\begin{tabular}{lll}Version 0.1 completed	& December 5, 2002 & \verb=draft-ietf-pim-sm-v2-new-05.{ps,txt}= \\			&		   & \verb=draft-ietf-pim-sm-bsr-02.{ps,txt}= \\Version 0.2 completed	& March 10, 2003 & \verb=draft-ietf-pim-sm-v2-new-05.{ps,txt}= \\			&		   & \verb=draft-ietf-pim-sm-bsr-03.{ps,txt}= \\Version 0.3		& June 9, 2003	   & No changes. \\Version 0.4		& August 28, 2003  & Modified the ``show pim join''			sample CLI optput information \\			&		   & to reflect current code. Added			text to ``Possible Problems'' in \\			&		   & Section 5.1 and Section 5.2 to			reflect some recent changes to \\			&		   & the PIM-SM protocol			specification. \\Version 0.5		& November 6, 2003 & Added ``last page''. \\Version 1.0		& July 8, 2004 & Cleaned some of the PIM			terminology. \\Version 1.1		& April 13, 2005	& No changes. \\Version 1.2		& March 8, 2006		& No changes. \\Version 1.3		& August 2, 2006	& No changes. \\Version 1.4		& March 20, 2007	& No changes. \\\end{tabular}%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\tableofcontents\listoftables\listoffigures%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\setcounter{chapter}{-1}\chapter{Introduction}%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\section{Overview}This document describes a set of tests for evaluating Protocol IndependentMulticast - Sparse Mode implementation. Those tests have been designedby the XORP project to evaluate the XORP PIM-SM implementation.However, even though the description of the observable results usesexamples with XORP-specific commands, the description of the tests is generic,and can be used for evaluating any other PIM-SM implementation.%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\section{Test Software}The test software used in this test suite is the XORP PIM-SM implementationitself. More specifically, the XORP PIM-SM implementation has extensions thatcan be used to generate various PIM-SM protocol control packets for testingpurpose. In addition, on several occasions a multicast sender and receiverprograms are used to generate and receive multicast data traffic. In general,any software can be used for that, as long as it allows to specify themulticast interface to send or receive multicast packets on, the multicastgroup to use, and (in some cases) to control the data rate of the sender.%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\section{Acronyms}Acronyms used in this Test Suite:\begin{itemize}  \item {\bf LAN}: {\bf L}ocal {\bf A}rea {\bf N}etwork  \item {\bf M}: {\bf M}onitor or packet capturer  \item {\bf MRT}: {\bf M}ulticast {\bf R}outing {\bf T}able  \item {\bf MRE}: {\bf M}ulticast {\bf R}outing {\bf E}ntry  \item {\bf MRIB}: {\bf M}ulticast {\bf R}outing {\bf I}nformation {\bf B}ase  \item {\bf N}: {\bf N}etwork  \item {\bf NBMA}: {\bf N}on-{\bf B}roadcast {\bf M}ulti-{\bf A}ccess  \item {\bf RTE}: {\bf R}outing {\bf T}able {\bf E}ntry  \item {\bf RUT}: {\bf R}outer {\bf U}nder {\bf T}est  \item {\bf Rx}: {\bf R}eceiver  \item {\bf S}: {\bf S}ource  \item {\bf TN}: {\bf T}esting {\bf N}ode  \item {\bf TR}: {\bf T}esting {\bf R}outer\end{itemize}When several entities of the same type are present in a test configuration, anumber is appended to the acronym to yield a label for each entity. Forexample, if there were three testing routers in the test configuration, theywould be labeled TR1, TR2, TR3.%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\section{Definitions}\begin{itemize}  \item {\bf Route Metric}: The metric of a route as reported by the unicast  routing protocol.  \item {\bf Route Metric Preference}: The preference for using a route as  defined per unicast routing protocol that has been used to compute the  route, or as configured per route.\end{itemize}%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\section{Timers and Default Values}PIM-SMv2 defines several timers and default values. For the purpose oftesting, all configurable timers and values are set to their defaults, unlessotherwise noted in the test description. These defaults are given here forreference, taken or calculated from the PIM-SMprotocol specification.Table~\ref{table:pim_sm_base_spec_values} contains the timer and default valuesfrom the PIM-SM base protocol specification.Table~\ref{table:pim_sm_bootstrap_spec_values} contains the timer and defaultvalues from the PIM-SM Bootstrap protocol specification.%% PIM-SM spec values%\newcommand{\PimsmVersionDefault}{PIM-SMv2}	       % PIM_SM_version_default\newcommand{\PimsmLanDelayDefault}{0.5 secs}		% LAN_delay_default\newcommand{\PimsmTOverrideDefault}{2.5 secs}		% t_override_default\newcommand{\PimsmHelloPeriod}{30 secs}			% Hello_Period\newcommand{\PimsmTriggeredHelloDelay}{5 secs}		% Triggered_Hello_Delay\newcommand{\PimsmDefaultHelloHoldtime}{105 secs}      % Default_Hello_Holdtime\newcommand{\PimsmHelloHoldtime}{105 secs}		% Hello_Holdtime\newcommand{\PimsmJPHoldTime}{210 secs}			% J/P_HoldTime\newcommand{\PimsmJPOverrideIntervalI}{3 secs}	     % J/P_Override_Interval(I)\newcommand{\PimsmAssertOverrideInterval}{3 secs}    % Assert_Override_Interval\newcommand{\PimsmAssertTime}{180 secs}			% Assert_Time\newcommand{\PimsmTPeriodic}{60 secs}			% t_periodic\newcommand{\PimsmTSuppressed}{rand(66, 84) secs}	% t_suppressed\newcommand{\PimsmTOverride}{rand(0, 2.5) secs}		% t_override\newcommand{\PimsmKeepalivePeriod}{210 secs}		% Keepalive_Period\newcommand{\PimsmRPKeepalivePeriod}{185 secs}		% RP_Keepalive_Period\newcommand{\PimsmRegisterSuppressionTime}{60 secs} % Register_Suppression_Time\newcommand{\PimsmRegisterProbeTime}{5 secs}		% Register_Probe_Time\begin{table}[h]\begin{center}\begin{tabular}{|l|r|}\hlineProtocol Timer or Variable Name	& Value		\\\hline\hline\verb=PIM_SM_version_default=	& 2		\\	% XXX: no such variable\verb=LAN_delay_default=	& 0.5 secs	\\\verb=t_override_default=	& 2.5 secs	\\\verb=Hello_Period=		& 30 secs	\\\verb=Triggered_Hello_Delay=	& 5 secs	\\\verb=Default_Hello_Holdtime=	& 105 secs	\\\verb=Hello_Holdtime=		& 105 secs	\\\verb=J/P_HoldTime=		& 210 secs	\\\verb=J/P_Override_Interval(I)=	& 3 secs	\\\verb=Assert_Override_Interval=	& 3 secs	\\\verb=Assert_Time=		& 180 secs	\\\verb=t_periodic=		& 60 secs	\\\verb=t_suppressed=		& rand(66, 84) secs \\\verb=t_override=		& rand(0, 2.5) secs \\\verb=Keepalive_Period=		& 210 secs	\\\verb=RP_Keepalive_Period=	& 185 secs	\\\verb=Register_Suppression_Time= & 60 secs	\\\verb=Register_Probe_Time=	& 5 secs	\\\hline\end{tabular}\caption{PIM-SM base protocol specification timers and default values}\label{table:pim_sm_base_spec_values}\end{center}\end{table}%% PIM-SM Bootstrap mechanism spec values%\newcommand{\PimsmBSPeriod}{60 secs}			% BS_Period\newcommand{\PimsmBSTimeout}{130 secs}			% BS_Timeout\newcommand{\PimsmRandOverride}{weighted\_rand(5.0, 23.0) secs} % rand_override\newcommand{\PimsmCRPTimeout}{150 secs}			% C-RP_Timeout\newcommand{\PimsmCRPAdvPeriod}{60 secs}		% C-RP-Adv_Period\newcommand{\PimsmSZTimeout}{1300 secs}			% SZ_Timeout\begin{table}[h]\begin{center}\begin{tabular}{|l|r|}\hlineProtocol Timer or Variable Name	& Value		\\\hline\hline\verb=BS_Period=		& 60 secs	\\\verb=BS_Timeout=		& 130 secs	\\\verb=rand_override=		& weighted\_rand(5.0, 23.0) secs \\\verb=C-RP_Timeout=		& 150 secs	\\\verb=C-RP-Adv_Period=		& 60 secs	\\\verb=SZ_Timeout=		& 1300 secs	\\\hline\end{tabular}\caption{PIM-SM Bootstrap protocol specification timers and default values}\label{table:pim_sm_bootstrap_spec_values}\end{center}\end{table}%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\section{Test Organization}This document organizes tests by loosely following the protocol specificationas described in the protocol specification documents (seeSection~\ref{sec:references}). Each test has the following format:\begin{itemize}  \item {\bf Test Name:} The name of the test. Typically, it corresponds to a  sub-section in the protocol specification document.  \item {\bf Purpose:} A short description of the goal of the test.  \item {\bf References:} A list of documents that can be useful to understand  the purpose of the test, and the expected behavior.  \item {\bf Test Setup:} A description of the configuration that should be  prepared in advance. If a value for a configurable protocol parameter is not  provided, then the protocol's default value is used.  Occasionally, some configuration needs to be changed  while the test is in process. In that case, this is explicitly described in  the procedure for that test.   \item {\bf Procedure:} Detailed step-by-step instructions for performing the  test. For example, starting a router, sending a protocol packet, observing  transmitted packets on a network, observing protocol-specific state  in a router, etc. Typically, the procedure has several parts. By default,  each part should start with the original test setup, unless stated  otherwise.  \item {\bf Observable Results:} Detailed description of the results that are  expected as the test is performed. Typically, those are some specific  protocol or data packets expected to appear on a network, the protocol state  inside a router to change in some specific way, etc. It is not necessary to  observer everything at the same type. The procedure description contains  information about what and when to observe.  \item {\bf Possible Problems:} A description of various issues that may  affect the test results in certain situations. For example, some precise  event timing or some permitted variations in the way the protocol is  implemented may result in slightly different behavior.\end{itemize}%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\section{References}\label{sec:references}The following documents are referenced in this text:\begin{itemize} \item \verb=draft-ietf-pim-sm-v2-new-05.{ps,txt}= -- Protocol Independent		  Multicast - Sparse Mode (PIM-SM): Protocol Specification		  (Revised) \item \verb=draft-ietf-pim-sm-bsr-03.{ps,txt}= -- Bootstrap Router (BSR)		  Mechanism for PIM Sparse Mode\end{itemize}%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\section{Acknowledgments}The format and notation in this test-suite is largely based on the format ofthe IP Consortium Test Suite developed by the InterOperability Laboratory atthe University of New Hampshire.%% Test-suite specific setup%%\setlength{\parindent}{0ex}\renewcommand{\chaptername}{Test Group}%\newcommand{\para}[1]{\paragraph{\large #1}}\newcommand{\para}[1]{\vspace{1ex}\noindent{\large\bf #1}}%\newcommand{\subpara}[1]{\vspace{1ex}\noindent\emph{#1}\newline\noindent}\newcommand{\subpara}[1]{\vspace{1ex}\noindent\emph{#1}}%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\chapter{Interoperability}\para{Scope:}The following tests verify the general operation of a PIM-SM router and arenot specific to any single section of the specification.\para{Overview:}These tests have been designed to test the Interoperability of the RUT withother PIM-SM capable devices. This test group focuses on testingconfigurations of the network that could cause problems when deployed if theRUT does not operate properly with the devices that it is connected to. Thetests in this group do not determine if a product conforms to the PIM-SMstandard but they are designed as interoperability tests. The test routers inthis section are complete implementation of PIM-SM.Please note that in the case of interoperability tests, failure against anyother router does not necessarily indicate nonconformance. Rather, itindicates that the two routers are unable to work ``properly'' together andthat further work should be done to isolate the cause of the failure.%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\newpage\section{Basic Interoperability}\para{Purpose:}To ensure that a router can interoperate with other PIM-SMimplementation in a multicast network.\para{References:}\begin{itemize}  \item draft-ietf-pim-sm-v2-new-05 -- Section 4\end{itemize}\para{Discussion:}PIM capable routers detect each other with PIM Hellomessages and exchange information for their routing tables throughPIM Join/Prune messages. For each multicast group there is a single PIM-SMrouter that is the Rendezvous Point (RP) for that group. PIM-SM routers thatare connected to group members send PIM Join messages toward the RP to createthe group-specific shared tree. A PIM-SM router that is directly connected toa multicast source, encapsulates the multicast data in PIM Register messageswhich are unicast to the RP for that group. The RP decapsulates thePIM Register messages and forwards them down the group-specific shared tree toall receivers for that group.\para{Test Setup:}Connect the RUT, TR1, TN1, and TN2 according toFigure~\ref{fig:pim_test_1_1_basic_interoperability}.Enable PIM-SM on both the RUT and TR1.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -