= Error Correction Control Services = [[TOC(WiMAX/17*, depth=2, heading=WiMAX RF Aggregate Manager)]] == bs/arq - ARQ Control == The functions in this service are used to set parameters of Automatic Repeat reQuest (ARQ) which is one of the MAC level data connection's error control mechanisms used by the basestation. The arq service has the following functions: {{{ Set ARQ parameters ACK proc time [] (0) ARQ block lifetime [] (5000) Tx ACK delay [] (100) Sync loss timeout [] (10000) Delivery in order: true/false (true) ARQ window size [0..1024] (1024) RX purge timeout [] (5000) Enable ARQ: true/false (false) TX retry timeout [] (1000) ARQ block size [0..(ARQ windows size/2)] (256) RX retry timeout [] (1000) }}} Arguments to /arq service are: === ackproctime === ACK proc time. === blockltm === ARQ block lifetime. This is the maximum time interval an ARQ block shall be managed by te transmitter ARQ state machine, once initial transmission of the block has occurred. If transmission (or subsequent retransmission) of the block is not acknowledged by the receiver before the time limit is reach, the block is discarded. Units: 100us. Allowed values: (0..65535) === txackdelay === Tx ACK delay. This is the time delay before receiver sends of an acknowledgement. Default: 100. === sltmo === Sync loss timeout. This is the maximum time interval ARQ_TX_WINDOW_START or ARQ_RX WINDOW_START parameters can stay at the same value before declaring a loss of synchronization between transmitter and receiver. === dlvrorder === Deliver in order on/off. This option tells received to forward SDUs in same order as sent by transmitter. Default: on === wsize === Transmission window size. This is the number of queued ARQ acknowledgement blocks at any given time for a connection. Default: 1024. === rxpurgetmo === RX purge timeout. This is the time interval the receiver shall wait after successful reception of a block that does not result in advancement of ARQ_RX_WINDOW_START value, before advancing to a new ARQ_RX_WINDOW_START. === enable === Indicates if ARQ is enabled for connection. Default: false. [[BR]]NOTE: HARQ pdusn must be turned off if ARQ is enabled! === rtmotx === TX retry timeout. The minimum time interval a transmitter shall wait before retransmission of an unacknowledged block for retransmission. The interval begins when the ARQ block was last transmitted. Units: 100us. Allowed values: (0..65535) === bloksize === ARQ block size in bytes. Before transmission each SDU block is partitioned into a sequence of ARQ blocks of this size. Allowed values are powers of two ranging from 16 to 1024 bytes, e.g. 16, 32, 64 and so on. Default: 1024. '''NB: Even if a large block size or window size is permitted by the base station, the client may still negotiate something smaller.''' (As we have seen on a Linux client with the Intel 6250 card.) === rtmorx === RX retry timeout. Units: 100us. Allowed values: (0..65535) == bs/harq - HARQ Control == Service for controlling Hybrid Automatic Repeat reQuest (HARQ) parameters. With HARQ, in addition to ARQ error detection, blocks of data are FEC encoded before transmission. This service has the following arguments: {{{ Set HARQ parameters MIMO HARQ support: true/false (IGNORED - mimo support not available for this BS) PDU SN extended subheader reordering enabled: true/false (true) Maximum number of retransmissions [0..255] (4) Maximum number of HARQ bursts per frame [0..255] (17) Enable HARQ: true/false (false) Frame offset of UL ACK delay wrt to UL Burst [2,3] (3) Frame offset of DL ACK delay wrt to DL Burst [1,2,3] (1) }}} === enable === Indicates if HARQ is enabled for connection. Default: false Note: Permuation mode must be PUSC if HARQ is enabled (permuation --> 0) === pdusn === Indicates if PDU SN extended sub-header reordering is enabled. Default: true. This must be disabled if ARQ is turned on. [[BR]]NOTE: Intel 5150/6250 clients need this feature turned off if harq is enabled! === mret === Maximum number of retransmissions. Range = [0,255], Default: 4 === burst === Maximum number of HARQ bursts per frame. Range: [0,255], Default: 17 === mimoul === Indicates if MIMO HARQ support is enabled. (IGNORED - mimo support not available for this BS) === dldelay === Frame offset of DL ACK delay with respect to DL Burst. Range: [1,3], Default: 1 === uldelay === Frame offset of UL ACK delay with respect to UL Burst. Range: [2,3], Default: 3 === References === 1. http://wiki.hsc.com/wiki/Main/WimaxArq 2. http://www.simet.com.tr/documents/product/F83D610A-B7F6-ADBD-907AB9D8F8708319.pdf 3. Performance Analysis of the IEEE 802.16 ARQ Mechanism. Sayenko, Tykhomyrov, Martikainen, Alanen.