Project

General

Profile

Feature #4380

Updated by osmith about 4 years ago

@neels wrote: 
 > ttcn3-hlr-tests have been enhanced to include GSUP tests simulating messages arriving via a proxy instead of an MSC 
 > (making sure messages are sent back including the original remote sender as destination_name). 
 > 
 >todo: 
 > 
 > * include mDNS MS lookup in ttcn3 tests, to also simulate osmo-hlr being the proxy, not the final recipient. 
 > * include mDNS to make sure osmo-hlr responds to MSISDN requests 
 > ** when it is the proxy that is closest to the MSC 
 > ** when there is no proxy involved and the MSC is directly talking to the home HLR 

     

 h3. OsmoHLR being the final recipient 

 * Added titan.ProtocolModules.DNS as dependency to osmo-ttcn3-hacks 
 * Integrated the DNS server from that repository into OsmoHLR_Tests.ttcn (needs some clean up, but works) 
 * Configured the DNS server to listen on the multicast IP and port, as used by mslookup. To prevent an "address already in use" error, I have added a reuseAddr parameter to titan.TestPorts.UDPasp. So I've forked it to the Osmocom github repository (as done with SCTPasp) and patched it there. 
 * Added WIP templates for receiving and sending mslookup DNS messages 
 * Successfully received and verified a test message from osmo-mslookup-client 
 * Successfully sent back the mslookup result to osmo-mslookup-client 
 * Patches: https://gerrit.osmocom.org/q/topic:dgsm-ttcn3 

 h3. OsmoHLR being the proxy 

 * Concept: 
 ** TS (testsuite) tries LU (location update) towards OsmoHLR with unknown IMSI 
 ** OsmoHLR does mslookup 
 ** TS answers to mslookup 
 ** OsmoHLR connects to emulated OsmoHLR server by TS 
 ** TS is now talking to itself with real OsmoHLR in the middle, and finishes the LU 
 * Implementation: 
 ** mslookup mDNS emulation was attached to HLR Conn Hdlr already in previous patch 
 ** Started with two HLR Conn Hdlrs, so I could reuse f_perform_UL without modification and have the testsuite emulating a second OsmoHLR in parallel. But that lead to lots of port runtime errors ("port has neither connections nor mappings" or "more than one active connections"). It was not possible to answer the mslookup request from the testsuite with the second mslookup emulation instance. 
 ** I've changed the approach to only use one HLR Conn Hdlr (and one mslookup emulation therefore), that makes the code much simpler. 
 ** It's possible to answer the mslookup request from the testsuite 
 ** OsmoHLR connects to the emulated emulates OsmoHLR server by TS 
 ** Sending GSUP messages from the emulated emulates OsmoHLR to the real OsmoHLR results in another port runtime error, continuing here today. 
 ** WIP branch: osmith/dgsm at osmo-ttcn3-hacks.git

Back

Add picture from clipboard (Maximum size: 48.8 MB)