210 likes | 454 Views
Framework and Model for Automated Interoperability Test and its Application to ROHC. Péter Krémer and Sarolta Dibuz {Peter.Kremer, Sarolta.Dibuz}@eth.ericsson.se Ericsson Hungary. Outline. Introduction Overview of ROHC Conformance test of ROHC Interoperability test with MAIT
E N D
Framework and Model for Automated Interoperability Test and its Application to ROHC Péter Krémer and Sarolta Dibuz {Peter.Kremer, Sarolta.Dibuz}@eth.ericsson.se Ericsson Hungary
Outline • Introduction • Overview of ROHC • Conformance test of ROHC • Interoperability test with MAIT • Comparison of CT and MAIT • Conclusion
Introduction • Conformance test (ETSI, ITU, 3GPP) • systematic, repeatable tests • no 100% coverage • no guarantee for interoperability • Interoperability test (IETF, ETSI, TAHI) • ad-hoc, non-repeatable tests • no guarantee for conformance • inopportune behavior, erroneous situations rarely tested
Overview of ROHC • RObust Header Compression - RFC 3095 • Designed to perform well over wireless links • Redundancy between header fields in consecutive packets • Point-to-point connection, no routing • Complex, stateful protocol • Extremely effective (60 bytes --> 2 bytes) • Three operational modes • Four profiles for different packets
Conformance test of ROHC Compressors • Emulation of a traffic generator and a Decompressor • Deep knowledge in compression methods required • “Manual” decompression of every packet
Conformance test of ROHC Decompressors • Emulation of a destination node and a Compressor • Deep knowledge in decompression methods required • “Manual” compression of every packet
MAIT - Model for Automated Interoperability Test • General, protocol & implementation independent method • Automated testing process • MAIT covers the following tasks: • remote controls IUTs • communicates with IUTs (with protocol messages) • monitors the communication between IUTs • Implemented in TTCN-3
Role of PTCs • PTC R1: • control connection to IUT 1 • configures IUT 1 • starts and stops applications • triggers special tests (changes one parameter of the system) • PTC R2: • same to IUT 2 as PTC R1 to IUT 1 • checks if the test ran correctly
Role of PTCs • PTC P: • sends and receives protocol messages • triggers special tests (e.g. external connection) • gives possibility to test inopportune behavior • PTC M: • monitors & analyzes the communication between IUTs • MTC: • synchronizes and coordinates all PTCs
Synchronization of PTCs • Interoperability test phases: • Configuring of IUTs(PTC R1, PTC R2) • Executing of a test case(PTC R1, PTC R2, PTC P, PTC M) • Restoring the original configuration of IUTs(PTC R1, PTC R2)
MAIT in ROHC • PTC S: • emulates a source node • irregular packet stream (e.g. packet loss) • erroneous packets • PTC D: • analyzes the compressed-decompressed packets • compares the original and the received packets
Comparison of CT and MAIT • Preparation of a Test Suite • Test execution • Role of testing in protocol design • Implementation dependency • Reuse of tests
Preparation of a Test Suite • State of protocol description is different • Deep knowledge of the protocol is needed for CT • Exact definition of the messages is inevitable • CT and MAIT tests different parts of a protocol
Test execution • Automatic in CT and MAIT, manual in IT • CT and MAIT provide repeatable results • Comparison of implementations is possible • Relatively big number of test executions compared to CT
Role of testing in protocol design • No use of Conformance test • Interoperability test of prototypes • Iterative design based on interoperability test results • Protocol specification evolves with interoperability tests • Handling changes in protocol definition
Implementation dependency • Conformance test – independent • detailed protocol standards • standardized interfaces • implementation specific configuration • Interoperability test – ??? • loose protocol standards • not all interfaces are specified • implementation specific configuration
Reuse of tests • CT and MAIT uses the same: • Test notation • Data types, templates and timers • Protocol adaptation module • Contents of messages can be recorded and reused in CT
Conclusion • Easy and fast to write a MAIT Test Suite • Repeatable tests, comparable results • Protocol & implementation independent model and Test Suite • MAIT helps protocol design and later CT • Easy adaptation to a new version of the protocol • Parts of a MAIT Test Suite can be reused in CT