Project

General

Profile

Actions

Osmo io » History » Revision 3

« Previous | Revision 3/8 (diff) | Next »
laforge, 03/13/2024 11:16 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 pending gerrit

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-hnbgw MGCP UDP indirect via libosmo-mgcp-client
osmo-msc MGCP UDP indirect via libosmo-mgcp-client
Files (0)

Updated by laforge 2 months ago · 3 revisions

Add picture from clipboard (Maximum size: 48.8 MB)