Additional interfaces#
Additional functionalities for the lab.SCHC FullSDK are declared in separate interfaces that enhance and extend the capabilities of the main interfaces and the SDK itself. These interfaces are designed to provide advanced features, improve usability, and offer greater flexibility in integrating with our SDK
Statistics interface#
The header file for the Statistics interface is fullsdkstats.h
.
This statistics interface is used to provide SCHC information related to the number of SCHC compressed packets and SCHC fragments exchanged in uplink and downlink directions by the lab.SCHC FullSDK stack.
Packet counter#
stats_schc_packets_tx_counter()
: Returns the number of SCHC unfragmented packets that are transmitted by the library.stats_schc_packets_rx_counter()
: Returns the number of SCHC unfragmented packets received by the library.
Fragment counter#
stats_schc_fragments_tx_counter()
: Returns the number of SCHC fragments transmitted by the library.stats_schc_fragments_rx_counter()
: Returns th enumber of SCHC fragments received by the library.
ACK counter#
These functions do not concern the No-ACK mode.
stats_schc_ack_tx_counter()
: Returns the number of SCHC ACK transmitted by the library.stats_schc_ack_rx_counter()
: Returns the number of SCHC ACK received by the library.
Reset#
stats_reset()
: Resets all metrics to 0.
Advanced SCHC Configuration interface#
The functions defined in the advanced SCHC configuration interface are used for tuning and customization. They will affect the way lab.SCHC FullSDK handle the applicative packets.
The header file for the SCHC Configuration interface is fullsdkschc.h
.
This interface can be used to configure SCHC technology profile and fragmentation parameters.
Change retransmission timer#
schc_set_retransmission_timer()
: Allows to modify the value of the retransmission timer used by the current profile. This function must be provided with the parameterrt_exp_time
which value is a 32-bits integer.
Change inactivity timer#
schc_set_inactivity_timer()
: Allows to modify the value of the inactivity timer used by the current profile. This function must be provided with the parameterit_exp_time
which value is a 32-bits integer.
Polling#
schc_set_polling_status()
: Allows to activate polling for downlink sessions as well as suspending uplink sessions in the meanwhile. This function must be provided with the following boolean parameters:enable
:true
to activate polling.suspend_uplinks
:true
to suspend uplink sessions.
ACK-Always mode#
These functions are only used with ACK-Always downlink fragmentation mode.
schc_set_schc_ack_req_dn_opportunity()
: To set the new value of ACK_REQ_DN_OPPORTUNITY in the computation of the ACK retransmission timer expiration. This function must be provided with the parameterack_req_dn_opportunity
whose value is a 8-bits integer.schc_set_idle_polling_timer()
: To set the value of the idle polling timer that is used to create downlink opportunities on quasi-bidirectional links. This function must be provided with the parametertime
whose value is a 32-bits integer.schc_set_ack_retransmission_timer()
: To set the value of the ACK retransmission timer that is used to create downlink opportunities on quasi-bidirectional links. This function must be provided with the parametertime
whose value is a 32-bits integer.
Maximum ACK requests#
schc_set_max_ack_req()
: Allows to set the value ofMAX ACK REQUESTS
that indicates the number of time a sender will send an ACK before sending an ABORT message. This function must be provided with the parametermax_ack_req
which value is a 8-bits integer.