libosmogb 1.10.0.64-ff3d
Osmocom Gb library
|
Structure repesenting a NSE. More...
#include <gprs_ns2_internal.h>
Data Fields | |
uint16_t | nsei |
struct gprs_ns2_inst * | nsi |
entry back to ns2_inst More... | |
struct llist_head | list |
llist entry for gprs_ns2_inst More... | |
struct llist_head | nsvc |
llist head to hold all nsvc More... | |
int | nsvc_count |
count all active NSVCs More... | |
bool | persistent |
true if this NSE was created by VTY or pcu socket) More... | |
bool | first |
true if this NSE wasn't yet alive at all. More... | |
bool | alive |
true if this NSE has at least one alive VC More... | |
enum gprs_ns2_ll | ll |
which link-layer are we based on? More... | |
enum gprs_ns2_dialect | dialect |
which dialect does this NSE speaks? More... | |
struct osmo_fsm_inst * | bss_sns_fi |
uint32_t | sum_data_weight |
sum of all the data weight of alive NS-VCs More... | |
uint32_t | sum_sig_weight |
sum of all the signalling weight of alive NS-VCs More... | |
uint16_t | mtu |
MTU of a NS PDU. More... | |
bool | ip_sns_role_sgsn |
are we implementing the SGSN role? More... | |
struct rate_ctr_group * | ctrg |
NSE-wide statistics. More... | |
bool | freed |
recursive anchor More... | |
struct timespec | ts_alive_change |
when the NSE became alive or dead More... | |
Structure repesenting a NSE.
The BSS/PCU will only have a single NSE, while SGSN has one for each BSS/PCU
bool gprs_ns2_nse::alive |
true if this NSE has at least one alive VC
Referenced by dump_nse(), gprs_ns2_free_nse(), gprs_ns2_recv_prim(), ns2_count_transfer_cap(), ns2_nse_update_mtu(), and ns2_sns_st_all_action().
struct osmo_fsm_inst* gprs_ns2_nse::bss_sns_fi |
Referenced by gprs_ns2_free_nse(), gprs_ns2_free_nsvcs(), gprs_ns2_nse_sns_remote(), gprs_ns2_sns_add_bind(), gprs_ns2_sns_add_endpoint(), gprs_ns2_sns_count(), gprs_ns2_sns_del_bind(), gprs_ns2_sns_del_endpoint(), ns2_add_procedure(), ns2_nse_set_dialect(), ns2_sns_dump_vty(), ns2_sns_notify_alive(), ns2_sns_replace_nsvc(), ns2_sns_rx(), ns2_sns_st_all_action(), ns2_sns_st_configured_onenter(), ns2_sns_st_local_procedure(), ns2_sns_update_weights(), ns2_sns_write_vty(), ns2_tx_sns_ack(), ns2_tx_sns_config(), ns2_tx_sns_config_ack(), ns2_tx_sns_procedure(), ns2_tx_sns_size(), and ns2_tx_sns_size_ack().
struct rate_ctr_group* gprs_ns2_nse::ctrg |
NSE-wide statistics.
Referenced by gprs_ns2_create_nse2(), and gprs_ns2_free_nse().
enum gprs_ns2_dialect gprs_ns2_nse::dialect |
which dialect does this NSE speaks?
Referenced by _config_write_ns_nse(), config_write_nsvc(), DEFUN(), DEFUN_HIDDEN(), gprs_ns2_create_nse(), gprs_ns2_create_nse2(), gprs_ns2_ip_connect2(), gprs_ns2_sns_add_endpoint(), gprs_ns2_sns_count(), gprs_ns2_sns_del_endpoint(), handle_nsip_recvfrom(), ns2_ip_bind_connect(), ns2_nse_set_dialect(), ns2_sns_add_sns_default_binds(), ns2_st_unconfigured(), and ns_nse_nsvc_udp_cmds().
bool gprs_ns2_nse::first |
true if this NSE wasn't yet alive at all.
Will be true after the first status ind with NS_AFF_CAUSE_RECOVERY
Referenced by gprs_ns2_create_nse2(), and ns2_prim_status_ind().
bool gprs_ns2_nse::freed |
recursive anchor
Referenced by gprs_ns2_free_nse(), and gprs_ns2_free_nsvcs().
bool gprs_ns2_nse::ip_sns_role_sgsn |
are we implementing the SGSN role?
Referenced by _config_write_ns_nse(), gprs_ns2_create_nse2(), and ns2_nse_set_dialect().
struct llist_head gprs_ns2_nse::list |
llist entry for gprs_ns2_inst
Referenced by gprs_ns2_create_nse2(), and gprs_ns2_free_nse().
enum gprs_ns2_ll gprs_ns2_nse::ll |
which link-layer are we based on?
Referenced by config_write_nsvc(), DEFUN(), dump_nse(), gprs_ns2_create_nse2(), gprs_ns2_fr_connect(), gprs_ns2_ll_str_buf(), gprs_ns2_sns_add_endpoint(), gprs_ns2_sns_count(), gprs_ns2_sns_del_endpoint(), ns2_create_vc_sns(), ns2_ip_bind_connect(), ns2_load_sharing(), ns2_sns_add_sns_default_binds(), ns2_vc_alloc(), and ns_nse_nsvc_udp_cmds().
uint16_t gprs_ns2_nse::mtu |
MTU of a NS PDU.
This is the lowest MTU of all NSVCs
Referenced by gprs_ns2_create_nse2(), ns2_nse_update_mtu(), and ns2_prim_status_ind().
uint16_t gprs_ns2_nse::nsei |
Referenced by _config_write_ns_nse(), _sns_failed(), DEFUN(), dump_nse(), gprs_ns2_create_nse2(), gprs_ns2_fr_connect(), gprs_ns2_nse_by_nsei(), gprs_ns2_nse_nsei(), ns2_ip_bind_connect(), ns2_nse_set_dialect(), ns2_prim_status_ind(), ns2_sns_rx(), ns2_sns_st_all_action(), ns2_tx_reset(), ns2_tx_reset_ack(), ns2_tx_sns_ack(), ns2_tx_sns_config(), ns2_tx_sns_config_ack(), ns2_tx_sns_procedure(), ns2_tx_sns_size(), ns2_tx_sns_size_ack(), ns2_vc_rx(), ns_nse_nsvc_udp_cmds(), and vty_nse_check_sns().
struct gprs_ns2_inst* gprs_ns2_nse::nsi |
entry back to ns2_inst
Referenced by DEFUN(), DEFUN_HIDDEN(), dump_ns_entities(), gprs_ns2_create_nse(), gprs_ns2_create_nse2(), gprs_ns2_free_nses(), gprs_ns2_nse_by_nsei(), ns2_add_procedure(), ns2_prim_status_ind(), ns2_sns_st_all_action_bss(), ns2_sns_st_bss_config_sgsn(), ns2_sns_st_configured_onenter(), ns2_sns_st_local_procedure(), ns2_st_unconfigured(), ns2_vc_rx(), ns_inst_from_fi(), ns_sns_configured_timeout(), and start_test_procedure().
struct llist_head gprs_ns2_nse::nsvc |
llist head to hold all nsvc
Referenced by _config_write_ns_nse(), DEFUN(), dump_nse(), gprs_ns2_create_nse2(), gprs_ns2_fr_connect2(), gprs_ns2_free_bind(), gprs_ns2_nse_foreach_nsvc(), gprs_ns2_nsvc_by_nsvci(), gprs_ns2_nsvc_by_sockaddr_nse(), gprs_ns2_start_alive_all_nsvcs(), ns2_clear_sgsn(), ns2_count_transfer_cap(), ns2_create_vc_sns(), ns2_free_nsvcs(), ns2_load_sharing_first(), ns2_load_sharing_modulo(), ns2_load_sharing_signal(), ns2_load_sharing_weight_modulo(), ns2_nse_data_sum(), ns2_nse_notify_unblocked(), ns2_nse_update_mtu(), ns2_sns_notify_alive(), ns2_sns_replace_nsvc(), ns2_sns_rx(), ns2_sns_st_all_action(), ns2_sns_st_configured_onenter(), ns2_st_unblocked_on_enter(), ns2_vc_alloc(), and nsvc_for_bind_and_remote().
int gprs_ns2_nse::nsvc_count |
count all active NSVCs
Referenced by ns2_load_sharing_modulo(), ns2_load_sharing_weight_modulo(), and ns2_nse_data_sum().
bool gprs_ns2_nse::persistent |
true if this NSE was created by VTY or pcu socket)
Referenced by _sns_failed(), config_write_ns_nse(), DEFUN(), DEFUN_HIDDEN(), dump_nse(), and ns2_prim_status_ind().
uint32_t gprs_ns2_nse::sum_data_weight |
sum of all the data weight of alive NS-VCs
Referenced by ns2_load_sharing_weight_modulo(), and ns2_nse_data_sum().
uint32_t gprs_ns2_nse::sum_sig_weight |
sum of all the signalling weight of alive NS-VCs
Referenced by ns2_nse_data_sum(), ns2_sns_notify_alive(), and ns2_sns_st_all_action().
struct timespec gprs_ns2_nse::ts_alive_change |
when the NSE became alive or dead
Referenced by dump_nse(), and gprs_ns2_create_nse2().