It has a SIPp-like tool called rtpsend that can take RTP packets in text form and send those to a remote address. I recently came across RTPTools, a possible contender for an entity to send and receive RTP to and from Asterisk. Something that can receive RTP from Asterisk.Something that can send RTP to Asterisk.When performing RTP tests, there will be several other entities required If facilities were added for chan_rtp to accept incoming calls and for chan_rtp to activate RTP features, then it would be an ideal choice for RTP testing in Asterisk. It also has no facility for accepting incoming calls. It has no facility for setting up RTP features such as RTCP, RFC 4733, ICE, SRTP, etc. RIght now, it is only capable of performing outbound calls using the formats given to it by ast_request(). However, all of these have the overhead of some signaling protocol that complicates the test and could potentially sabotage the test if they either have a bug themselves or silently correct a bug in the RTP implementation.Īsterisk has a channel driver for lightweight RTP setup called chan_rtp. RTP Testing Tools Within AsteriskĪsterisk currently has several channel drivers that are capable of setting up RTP sessions. This involves setting up an RTP session with some remote entity and sending and receiving RTP, testing the accuracy of RTP sent and received, and testing RTCP events for expected statistics. The majority of RTP tests will be done in the Asterisk testsuite. While state of RTP streams will affect how certain RTP and RTCP packets are generated, the functions that actually create the packets could be written to take the current stream state as function input, thereby making it easier to unit test. Converting RTP packets to Asterisk frames.Generating RTCP reports from gathered statistics.Encoding outgoing RTP packets (to include telephone-event). Decoding incoming RTP packets (to include telephone-event).Here are some possibly unit-testable operations: RTP on the whole will be difficult to unit test, but there are individual components that may be easier to unit test. Since buffering, reordering, and synchronization of RTP streams has been ruled out as part of the design, this should not be tested.Tests should not rely on specific channel driver behaviors to work.Tests should not revolve around SDP parsing since SDP is not handled by the RTP engine.However, we can do some narrowing of scope up front since we know what is not going to be affected by the RTP work. Scoping the tests is a bit difficult, partially because the requirements for the RTP overhaul have not been nailed down yet. As part of overhauling the RTP engine, a proper set of tests should be implemented as well. Asterisk has many tests involving calls and channels, but there is little that tests RTP.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |