이것은 Ubuntu Online, Fedora Online, Windows 온라인 에뮬레이터 또는 MAC OS 온라인 에뮬레이터와 같은 여러 무료 온라인 워크스테이션 중 하나를 사용하여 OnWorks 무료 호스팅 제공업체에서 실행할 수 있는 sipp 명령입니다.
프로그램:
이름
sipp - SIP(Session Initiation Protol) 성능 테스트 도구
기술
용법:
sipp 원격_호스트[:remote_port] [옵션]
사용 가능한 옵션 :
-v : 버전 및 저작권 정보를 표시합니다.
-aa : INFO, UPDATE 및 NOTIFY 메시지에 대해 자동 200 OK 응답을 활성화합니다.
-base_cseq
: 각 호출에 대한 [cseq]의 시작 값입니다.
-bg : 백그라운드 모드에서 SIPp를 실행합니다.
-bind_local
: 소켓을 로컬 IP 주소에 바인딩합니다. 즉, 로컬 IP 주소가 소스로 사용됩니다.
IP 주소. SIPp가 서버 모드에서 실행되면 로컬 IP에서만 수신됩니다.
모든 IP 주소 대신 주소.
-버프_크기
: 송신 및 수신 버퍼 크기를 설정합니다.
-cid_str
: 통화 ID 문자열(기본값 %u-%p@%s). %u=통화_번호, %s=ip_주소,
%p=프로세스_번호, %%=%(순서 상관없음).
-시 : 로컬 제어 IP 주소 설정
-cp : 로컬 제어 포트 번호를 설정합니다. 기본값은 8888입니다.
-d : 통화 길이를 제어합니다. 보다 정확하게는 지속 시간을 제어합니다.
시나리오에 '밀리초' 섹션이 없는 경우 '일시 중지' 지침이 있습니다.
기본값은 0이고 기본 단위는 밀리초입니다.
-deadcall_wait
: 메시지 개선을 위해 Call-ID 및 통화 최종 상태를 얼마나 오래 보관해야 합니까?
및 오류 로그(기본 단위는 ms)입니다.
-default_behaviors: SIPp가 사용할 기본 동작을 설정합니다.
가능한 값은 다음과 같습니다. - all 모든 기본 동작을 사용합니다. - none 기본값을 사용하지 않습니다.
동작 - 안녕 중단된 통화에 대해 안녕 보내기 - abortunexp 통화 중단
예기치 않은 메시지 - pingreply ping 요청에 응답합니다.
앞에 -가 붙으면 꺼집니다. 예: 모두,-안녕
-f : 화면에 통계 보고 빈도를 설정합니다. 기본값은 1이고 기본 단위는
초.
-fd : 통계 덤프 로그 보고 빈도를 설정합니다. 기본값은 60이고 기본 단위는
초.
-i : 'Contact:', 'Via:', 'From:' 헤더에 대한 로컬 IP 주소를 설정합니다. 기본값은
기본 호스트 IP 주소.
-inf : 시나리오 호출 중에 외부 CSV 파일의 값을 삽입합니다. 첫 번째
이 파일의 줄은 데이터를 순서대로(SEQUENTIAL) 읽어야 하는지 여부를 나타냅니다.
무작위(RANDOM) 또는 사용자(USER) 순서입니다. 각 회선은 하나의 통화에 해당하며
하나 이상 ';' 구분된 데이터 필드. 해당 필드는 [field0]으로 참조할 수 있습니다.
[field1], ... xml 시나리오 파일에 있습니다. 여러 개의 CSV 파일을 사용할 수 있습니다
동시에(구문: -inf f1.csv -inf f2.csv ...)
-inindex
: 파일 필드 필드를 사용하여 파일의 인덱스를 생성합니다. 예를 들어 -inf 사용자.csv
-inindex users.csv 0은 첫 번째 키에 인덱스를 생성합니다.
-ip_필드
: 주입 파일의 어느 필드에 해당 IP 주소가 포함되어 있는지 설정합니다.
클라이언트가 메시지를 보냅니다. 이 옵션을 생략하고 '-t ui' 옵션을 지정한 경우
존재하는 경우 필드 0이 가정됩니다. 이 옵션을 '-t ui'와 함께 사용하세요.
-l : 최대 동시 통화 수를 설정합니다. 이 한도에 도달하면 트래픽이
공개 통화 수가 줄어들 때까지 감소합니다. 기본:
(3 * 통화 지속 시간(초) * 속도).
-잃어버린 : 기본적으로 손실되는 패킷 수를 설정합니다(시나리오 사양 무시)
이 값).
-m : 'calls' 호출이 처리되면 테스트를 중지하고 종료합니다.
-미 : 로컬 미디어 IP 주소 설정
-석사
: 3pcc 확장 모드: 마스터 번호를 나타냅니다.
-max_recv_loops
: 주기당 읽혀진 최대 메시지 수를 설정합니다. 이 값을 늘립니다.
높은 트래픽 수준을 위해. 기본값은 1000입니다.
-max_sched_loops : 이벤트 루프당 실행되는 최대 호출 수를 설정합니다.
트래픽 수준이 높을 경우 이 값을 늘립니다. 기본값은 1000입니다.
-max_reconnect
: 최대 재접속 횟수를 설정합니다.
-max_retrans
: 시간 초과 시 통화가 종료되기 전 UDP 재전송의 최대 횟수입니다. 기본값은 5입니다.
INVITE 거래의 경우 7개, 기타 거래의 경우 XNUMX개입니다.
-max_invite_retrans: 초대를 위한 최대 UDP 재전송 횟수
시간 초과로 인해 통화가 끝나기 전의 트랜잭션입니다.
-max_non_invite_retrans: 초대되지 않은 경우 최대 UDP 재전송 횟수
시간 초과로 인해 통화가 끝나기 전의 트랜잭션입니다.
-max_log_size
: 오류 및 메시지 로그 파일 크기의 제한은 무엇입니까?
-max_socket
: 동시에 열 수 있는 최대 소켓 수를 설정합니다. 이 옵션은 중요합니다
호출당 하나의 소켓을 사용하는 경우. 이 한도에 도달하면 트래픽이 분산됩니다.
이미 열린 소켓 위에. 기본값은 50000입니다.
-mb : RTP 에코 버퍼 크기를 설정합니다(기본값: 2048).
-mp : 로컬 RTP 에코 포트 번호를 설정합니다. 기본값은 6000입니다.
-NS : 기본값 없음. 다음과 같은 SIPp의 모든 기본 동작을 비활성화합니다. - 켜짐
UDP 재전송 시간이 초과되었습니다. 통화를 중단하세요.
BYE 또는 CANCEL 보내기
- ontimeout 속성이 없는 수신 시간 초과 시 중단
BYE 또는 CANCEL을 보내 통화
- 예상치 못한 BYE에서는 200 OK를 보내고 통화를 종료합니다. - 예상치 못한 CANCEL에서는 A를 보냅니다.
200 OK를 누르고 통화를 종료합니다. - 예상치 못한 PING에서 200 OK를 보내고 통화를 계속합니다.
- 기타 예상치 못한 메시지가 나타나면 통화를 중단하세요.
BYE 또는 CANCEL 보내기
-nr : UDP 모드에서 재전송을 비활성화합니다.
-노스트딘
: 표준 입력을 비활성화합니다.
-p : 로컬 포트 번호를 설정합니다. 기본값은 시스템에서 선택한 임의의 사용 가능한 포트입니다.
-pause_msg_ign
: 시나리오에 정의된 일시정지 동안 수신된 메시지를 무시합니다.
-주기적_rtd
: 각 로깅 간격마다 응답 시간 파티션 카운터를 재설정합니다.
-r : 통화 속도(초당 통화 수)를 설정합니다. 이 값은 테스트 중에 변경될 수 있습니다.
'+','_','*' 또는 '/'를 눌러. 기본값은 10입니다. 통화를 늘리려면 '+' 키를 누르세요.
속도를 1 * rate_scale로, '-' 키를 누르면 호출 속도를 1 * rate_scale만큼 감소시키고,
'*' 키를 누르면 통화 속도가 10 * rate_scale만큼 증가하고, '/' 키를 누르면
호출 속도를 10 * rate_scale만큼 줄입니다. 만약 -rp 옵션을 사용하면 콜 요금은 다음과 같습니다.
사용자가 지정한 기간(ms)으로 계산됩니다.
-rp : 통화요금의 요금기간을 지정합니다. 기본값은 1초이고 기본 단위는
밀리초입니다. 이를 통해 m 밀리초마다 n 호출을 할 수 있습니다(다음을 사용하여). -r
n -rp 중). 예: -r 7 -rp 2000 ==> 7초마다 2번의 호출.
-r 10 -rp 5초 => 10초마다 5번의 호출.
-rate_scale
: '+', '-', '*', '/' 키의 단위를 제어합니다.
-비율_증가
: 증가율을 지정합니다. -fd 단위(기본값은 초) 이를 통해
각 독립 로깅 기간에 대한 부하를 증가시킵니다. 예: -비율_증가
10 -fd 10s
==> 10초마다 호출을 10개씩 늘립니다.
-rate_max
: 만약 -비율_증가 설정된 후 속도가 이 값에 도달하면 종료됩니다. 예:
-비율_증가 10 -rate_max 100
==> 10cps에 도달할 때까지 호출을 100씩 늘립니다.
-no_rate_quit
: 만약 -비율_증가 설정되었습니다. 속도에 도달한 후에도 종료하지 마세요. -rate_max.
-recv_timeout
: 전역 수신 시간이 초과되었습니다. 기본 단위는 밀리초입니다. 예상되는 메시지가 다음과 같은 경우
수신되지 않으면 통화 시간이 초과되어 중단됩니다.
-send_timeout
: 전역 전송 시간이 초과되었습니다. 기본 단위는 밀리초입니다. 메시지가 전송되지 않은 경우(기한
혼잡으로 인해) 통화 시간이 초과되어 중단됩니다.
-reconnect_close : 다시 연결하면 통화가 종료되어야 합니까?
-reconnect_sleep : 마감과 마감 사이에 수면을 취하는 시간(밀리초)
다시 연결?
-ringbuffer_files: 이후에 얼마나 많은 오류/메시지 파일을 보관해야 합니까?
회전?
-ringbuffer_size : 오류/메시지 파일이 도착하기 전에 얼마나 커야 합니까?
회전?
-rsa : 메시지 전송을 위해 원격 전송 주소를 호스트:포트로 설정합니다.
-rtp_echo
: RTP 에코를 활성화합니다. 다음에 의해 정의된 포트에서 수신된 RTP/UDP 패킷 -mp 에코된다
보낸 사람. 이 포트 + 2로 들어오는 RTP/UDP 패킷도 해당 포트로 에코됩니다.
발신자(사운드 및 비디오 에코에 사용됨)
-rtt_freq
: 주파수는 필수입니다. 정의된 로그 파일의 모든 주파수 호출마다 응답 시간을 덤프합니다.
by -trace_rtt. 기본값은 200입니다.
-s : 요청 URI의 사용자 이름 부분을 설정합니다. 기본값은 '서비스'입니다.
-SD : 기본 시나리오를 덤프합니다(sipp 실행 파일에 포함됨).
-sf : 대체 xml 시나리오 파일을 로드합니다. XML 시나리오 구문에 대해 자세히 알아보려면
사용 -SD 임베디드 시나리오를 덤프하는 옵션. 여기에는 필요한 모든 도움말이 포함되어 있습니다.
-oocsf : 부재중 시나리오를 로드합니다.
-oocsn : 부재중 시나리오를 로드합니다.
-skip_rlimit
: 파일 설명자 제한에 대한 rlimit 조정을 수행하지 마십시오. 기본값: 거짓.
-노예 : 3pcc 확장 모드: 슬레이브 번호를 나타냅니다.
-slave_cfg
: 3pcc 확장 모드: 마스터 및 슬레이브 주소가 있는 파일을 나타냅니다.
저장
-sn : 기본 시나리오를 사용합니다(sipp 실행 파일에 포함됨). 만약 이 옵션이
생략하면 표준 SipStone UAC 시나리오가 로드됩니다. 이 항목에서 사용 가능한 값
버전 :
- '우악'
: 표준 SipStone UAC(기본값).
- '아스'
: 간단한 UAS 응답자.
- '정규식'
: 표준 SipStone UAC - 정규 표현식 및
변수.
- '브랜치'
: 분기 및 조건부 분기
시나리오 - 클라이언트.
- '가지'
: 분기 및 조건부 분기
시나리오 - 서버.
기본 3pcc 시나리오(참조 -3pcc 옵션):
- '3pcc-CA' : 컨트롤러 A 측(다음 이후에 시작해야 함)
다른 모든 3pcc 시나리오)
- '3pcc-CB' : 컨트롤러 B측. - '3pcc-A' : A면. - '3pcc-B' : B면.
-stat_delimiter
: 통계 파일의 구분자를 설정합니다.
-stf : 통계 덤프에 사용할 파일 이름을 설정합니다.
-t : 전송 모드를 설정합니다. - u1: 소켓이 XNUMX개인 UDP(기본값), - un: 소켓이 XNUMX개인 UDP
호출당 소켓, - ui: IP 주소당 하나의 소켓이 있는 UDP IP
주소는 주입 파일에 정의되어야 합니다.
- t1: 소켓이 1개인 TCP, - tn: 호출당 소켓이 XNUMX개인 TCP, - lXNUMX: 소켓이 XNUMX개인 TLS
소켓, - ln: 호출당 하나의 소켓이 있는 TLS, - c1: u1 + 압축(해당되는 경우에만)
압축 플러그인
짐을 실은),
- cn: un + 압축(압축 플러그인인 경우에만 해당)
짐을 실은).
이 플러그인은 sipp와 함께 제공되지 않습니다.
-시간 초과
: 글로벌 시간 초과. 기본 단위는 초입니다. 이 옵션이 설정되면 SIPp는 다음 이후에 종료됩니다.
nb 단위(-시간 초과 20s는 20초 후에 종료됩니다.)
-timer_resol
: 타이머 해상도를 설정합니다. 기본 단위는 밀리초입니다. 이 옵션에는
타이머 정밀도에 영향을 줍니다. 작은 값을 사용하면 보다 정확한 일정을 계획할 수 있지만 영향을 미칩니다.
CPU 사용량. 압축이 켜져 있으면 값은 50ms로 설정됩니다. 기본값은 다음과 같습니다.
10ms.
-sendbuffer_warn : SendBuffer에서 오류 대신 경고를 생성합니다.
실패.
-trace_msg
: 보내고 받은 SIP 메시지를 표시합니다.
이름>_ _messages.log
-trace_shortmsg
: 보내고 받은 SIP 메시지를 CSV 형식으로 표시합니다.
이름>_ _shortmessages.log
-trace_screen
: 통계 화면을 덤프합니다. _ _0ms.
-trace_err
: 예상치 못한 모든 메시지를 추적합니다. _ _errors.log.
-trace_stat
: 모든 통계를 덤프합니다. _ .csv 파일입니다. '-h stat' 옵션을 사용하세요
통계 파일 내용에 대한 자세한 설명을 보려면
-trace_counts
: 개별 메시지 수를 CSV 파일로 덤프합니다.
-trace_rtt
: 모든 응답 시간 추적을 허용합니다. _ _rtt.csv.
-trace_logs
: 추적 허용 의 작업 _ _logs.log.
-사용자 : 고정된 속도로 통화를 시작하는 대신 시작 시 '사용자' 통화를 시작하고
통화 횟수를 일정하게 유지하세요.
-3pcc : 3pcc 모드("제XNUMX자 통화 제어")에서 도구를 실행합니다. 전달된 IP 주소
3PCC 역할에 따라 다릅니다. - 첫 번째 쌍 명령이 'sendCmd'인 경우
이쪽은
원격 트윈 소켓의 주소입니다.
SIPp는 다음을 시도할 것입니다.
쌍 명령을 보내려면 이 주소:포트에 연결하십시오. (이 인스턴스는 다음과 같아야 합니다.
다른 모든 3PCC 시나리오 후에 시작됨).
예: 3PCC-CA 시나리오.
- 첫 번째 쌍 명령이 'recvCmd'인 경우 이는 다음과 같습니다.
로컬 트윈 소켓의 주소입니다. SIPp는 수신을 위해 이 주소:포트를 엽니다.
트윈 명령용.
예: 3PCC-CB 시나리오.
-tdmmap
: TDM 회로 테이블을 생성하고 처리합니다. 회로를 사용할 수 있어야 합니다.
전화를 걸어야 합니다. 체재: -tdmmap {0-3}{99}{5-8}{1-31}
-키 : 키워드 값 "keyword"라는 일반 매개변수를 "value"로 설정합니다.
신호 처리:
SIPp는 posix 신호를 사용하여 제어할 수 있습니다. 다음 신호가 처리됩니다.
USR1: 키보드 'q' 키를 누르는 것과 유사합니다. 소프트 종료를 트리거합니다.
SIPp의. 더 이상 새로운 전화가 걸지 않으며 진행 중인 모든 통화는 이전에 완료됩니다.
SIPp가 종료됩니다. 예: 죽이다 -SIGUSR1 732
USR2: 모든 통계 화면의 덤프를 트리거합니다.
_ _screens.log 파일입니다. 특히 백그라운드 모드에서 유용합니다.
현재 상태가 어떤지 알 수 있다. 예: 죽이다 -SIGUSR2 732
종료 코드:
종료 시(치명적인 오류 발생 시 또는 요청된 호출 수(-m 옵션)에 도달하면
sipp은 다음 종료 코드 중 하나로 종료됩니다.
0: 모든 호출이 성공했습니다. 1: 하나 이상의 호출이 실패했습니다.
97: 내부 명령을 종료합니다. 통화가 처리되었을 수 있습니다. 99: 통화 없이 정상적으로 종료됩니다.
통화 처리됨 -1: 치명적 오류
예:
임베디드 서버(uas) 시나리오로 sipp 실행:
./sipp -sn 우스
동일한 호스트에서 uac(임베디드 클라이언트) 시나리오를 사용하여 sipp를 실행합니다.
./sipp -sn uac 127.0.0.1
SIPp v3.1, 버전 알 수 없음, 13년 2010월 15일, 34:03:XNUMX에 구축됨.
이 프로그램은 무료 소프트웨어입니다. 재배포 및/또는 수정이 가능합니다.
자유 소프트웨어에 의해 게시된 GNU 일반 공중 사용 허가서의 조건
기반; 라이선스 버전 2 또는 (귀하의 선택에 따라) 이후 버전.
이 프로그램은 유용하기를 바라는 마음으로 배포되지만,
보증; MERCHANTABILITY 또는 FITNESS FOR A에 대한 묵시적 보증도 없이
특정 목적. 자세한 내용은 GNU 일반 공중 사용 허가서를 참조하십시오.
이 문서와 함께 GNU General Public License의 사본을 받았어야 합니다.
프로그램; 그렇지 않다면 Free Software Foundation, Inc., 59 Temple Place,
Suite 330, 보스턴, MA 02111-1307 USA
작성자: 소스 파일을 참조하세요.
onworks.net 서비스를 사용하여 온라인으로 sipp 사용