Osmo io » History » Revision 5
« Previous |
Revision 5/8
(diff)
| Next »
laforge, 03/14/2024 07:42 AM
osmo_io¶
osmo_io
is the new (2023) way of ho we do I/O in osmocom projects. It moves from a raw select/poll abstraction (where every application performs its own read/write once the fd becomes readble/writable) to a submission/completion model, where the actual I/O is performed by the library, an the application just submits write requests (as struct msgb
) and receives write-completion and read-completion call-backs.
For more information, see: FIXME
API reference at https://ftp.osmocom.org/api/latest/libosmocore/core/html/osmo__io_8c.html#details
Implementation status¶
The below tables indicate the implementation status of the osmo_io migration:
Libraries¶
library/interface | protocol | transport | users | commit |
---|---|---|---|---|
libosmo-mgcp-client | MGCP | UDP | osmo-bsc, osmo-msc, osmo-hnbgw | osmo-mgw |
libosmogb ns2 | NS | UDP | osmo-pcu, osmo-gbproxy, osmo-sgsn | libosmocore |
libosmo-netif | stream_cli | TCP | libosmo-sigtran(ipa), osmo-bsc(cbsp), osmo-cbc(cbsp) | libosmo-netif |
libosmo-netif | stream_cli | SCTP | libosmo-sigtran | libosmo-netif |
libosmo-sigtran | xUA ASP (SUA, M3UA) | SCTP | osmo-bsc, osmo-msc, osmo-sgsn, osmo-hnbgw, osmo-smlc | libosmo-sigtran |
Program¶
program | Interface/protocol | transport | commit |
---|---|---|---|
osmo-gbproxy | Gb/NS | UDP | indirect via libosmogb ns2 |
osmo-bsc | CBSP | TCP client+server | osmo-bsc |
osmo-bsc | meas_feed | UDP | osmo-bsc |
osmo-bsc | MGCP | UDP | indirect via libosmo-mgcp-client |
osmo-bsc | M3UA/SUA/IPA | SCTP/TCP | indirect via libosmo-sigtran |
osmo-hnbgw | MGCP | UDP | indirect via libosmo-mgcp-client |
osmo-hnbgw | M3UA/SUA/IPA | SCTP/TCP | indirect via libosmo-sigtran |
osmo-msc | MGCP | UDP | indirect via libosmo-mgcp-client |
osmo-msc | M3UA/SUA/IPA | SCTP/TCP | indirect via libosmo-sigtran |
osmo-sgsn | M3UA/SUA/IPA | SCTP/TCP | indirect via libosmo-sigtran |
osmo-sgsn | Gb/NS | UDP | indirect via libosmogb ns2 |
osmo-smlc | M3UA/SUA/IPA | SCTP/TCP | indirect via libosmo-sigtran |
osmo-stp | M3UA/SUA/IPA | SCTP/TCP | indirect via libosmo-sigtran |
Updated by laforge 2 months ago · 5 revisions