This is merely a historical archive of years 2008-2021, before the migration to mailman3.
A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/OpenBSC@lists.osmocom.org/.
Harald Welte laforge at gnumonks.orgHi Neels, I finally got a chance to catch up with various pending e-mails and hence this thread. On Mon, Jan 14, 2019 at 03:03:56AM +0100, Neels Hofmeyr wrote: > I placed the draft in osmo-msc/doc/interMSC_HO_GSUP_msgs.txt on my branch neels/ho: > http://git.osmocom.org/osmo-msc/tree/doc/interMSC_HO_GSUP_msgs.txt?h=neels/ho > > Anyone else is also more than welcome to take a look and remark on anything > that might seem a bad idea, etc. I'm not the expert on Inter-MSC HO, but it looks fine to me, from what I know. > Also interesting to figure out: Implement the IPA routing for which I added the > source_name and destination_name IEs: N osmo-mscs connected to one osmo-hlr > forward messages to each other via GSUP. > > - Connect two GSUP clients (test programs?) to a running osmo-hlr instance, and > to extend the gsup_server so that we can use the source_name/destination_name > IEs to forward GSUP messages between the two clients. (I added these because > I'm fairly certain there is no existing in-band IPA protocol bits that would > allow such routing; but I only briefly skimmed it, wouldn't hurt if you could > verify that again.) The aim is to have plain gsup_client API to allow me to > "just send messages back and fort". the existing gsup router inside OsmoHLR already does half of the job: It checks the list of GSUP connections and can route a message by the IPA identity of the peer. This is what's used for routing between OsmoMSC[s]s and EUSE[s]. The only difference AFAICT in this inter-msc HO scenario is that the destination identity would be read from a GSUP IE. But the actual route lookup would be just like the existing code, using gsup_route_find(), or even better: the osmo_gsup_addr_send() high level function to which you simply pass the IP identity to which you want to transmit to. > - The session_id/session_state: we still need to figure out how to avoid > collisions in session_id numbers, as any peer may at any point re-use the > same session_id. Vadim suggested using a TI flag that gets flipped between > sender and receiver, but since there are more than two peers, I guess we > should treat each session_id as subordinate to a Request's source_name. IOW, > any peer owns the entire session_id number space itself for sending out > Request message types, and a Response or Error message type echos this > session_id back with the source_name then having become the destination_name; > it is perfectly legal for two peers to use the same session_id and collisions > are avoided by Request vs. Response/Error. Something like... If that works: Great, problem solved! > (We could possibly omit the source_name in Response/Error message types, > because the Requestor already knows the peer from sending out the Request; > but for sanity, maybe rather always keep both names.) It makes filtering in wireshark so much easier to have the context in every message, so please keep it. > - And we need to make sure that we can freely re-use the session_id IE on the > E-interface without conflicting with the Supplementary Services session_id / > without confusing the gsup_client API. Using one common/shared allocator function inside OsmoMSC shouldn't be a problem. Regards, Harald -- - Harald Welte <laforge at gnumonks.org> http://laforge.gnumonks.org/ ============================================================================ "Privacy in residential applications is a desirable marketing option." (ETSI EN 300 175-7 Ch. A6)