diff options
Diffstat (limited to 'tests')
-rw-r--r-- | tests/tbf/TbfTest.cpp | 89 | ||||
-rw-r--r-- | tests/tbf/TbfTest.err | 3061 |
2 files changed, 2329 insertions, 821 deletions
diff --git a/tests/tbf/TbfTest.cpp b/tests/tbf/TbfTest.cpp index 9a4b8463..bf308912 100644 --- a/tests/tbf/TbfTest.cpp +++ b/tests/tbf/TbfTest.cpp @@ -197,6 +197,32 @@ static void setup_bts(struct gprs_rlcmac_bts *bts, uint8_t ts_no, uint8_t cs = 1 bts_set_current_frame_number(bts, DUMMY_FN); } +static unsigned fn_add_blocks(unsigned fn, unsigned blocks) +{ + unsigned bn = fn2bn(fn) + blocks; + fn = fn - (fn % 52); + fn += bn * 4 + bn / 3; + return fn % GSM_MAX_FN; +} + +static void request_dl_rlc_block(struct gprs_rlcmac_bts *bts, + struct gprs_rlcmac_pdch *pdch, + uint32_t *fn, uint8_t *block_nr = NULL) +{ + uint8_t bn = fn2bn(*fn); + gprs_rlcmac_rcv_rts_block(bts, pdch->trx->trx_no, pdch->ts_no, *fn, bn); + *fn = fn_add_blocks(*fn, 1); + bn += 1; + if (block_nr) + *block_nr = bn; +} + +static void request_dl_rlc_block(struct gprs_rlcmac_tbf *tbf, + uint32_t *fn, uint8_t *block_nr = NULL) +{ + request_dl_rlc_block(tbf->bts, tbf->control_ts, fn, block_nr); +} + static gprs_rlcmac_dl_tbf *create_dl_tbf(struct gprs_rlcmac_bts *bts, uint8_t ms_class, uint8_t egprs_ms_class, uint8_t *trx_no_) { @@ -218,8 +244,8 @@ static gprs_rlcmac_dl_tbf *create_dl_tbf(struct gprs_rlcmac_bts *bts, uint8_t ms check_tbf(dl_tbf); /* "Establish" the DL TBF */ - osmo_fsm_inst_dispatch(dl_tbf->dl_ass_fsm.fi, TBF_DL_ASS_EV_SCHED_ASS, NULL); - osmo_fsm_inst_dispatch(dl_tbf->state_fi, TBF_EV_ASSIGN_ACK_PACCH, NULL); + osmo_fsm_inst_dispatch(dl_tbf->state_fi, TBF_EV_ASSIGN_ADD_CCCH, NULL); + osmo_fsm_inst_dispatch(dl_tbf->state_fi, TBF_EV_ASSIGN_READY_CCCH, NULL); check_tbf(dl_tbf); *trx_no_ = trx_no; @@ -227,32 +253,6 @@ static gprs_rlcmac_dl_tbf *create_dl_tbf(struct gprs_rlcmac_bts *bts, uint8_t ms return dl_tbf; } -static unsigned fn_add_blocks(unsigned fn, unsigned blocks) -{ - unsigned bn = fn2bn(fn) + blocks; - fn = fn - (fn % 52); - fn += bn * 4 + bn / 3; - return fn % GSM_MAX_FN; -} - -static void request_dl_rlc_block(struct gprs_rlcmac_bts *bts, - struct gprs_rlcmac_pdch *pdch, - uint32_t *fn, uint8_t *block_nr = NULL) -{ - uint8_t bn = fn2bn(*fn); - gprs_rlcmac_rcv_rts_block(bts, pdch->trx->trx_no, pdch->ts_no, *fn, bn); - *fn = fn_add_blocks(*fn, 1); - bn += 1; - if (block_nr) - *block_nr = bn; -} - -static void request_dl_rlc_block(struct gprs_rlcmac_tbf *tbf, - uint32_t *fn, uint8_t *block_nr = NULL) -{ - request_dl_rlc_block(tbf->bts, tbf->control_ts, fn, block_nr); -} - enum test_tbf_final_ack_mode { TEST_MODE_STANDARD, TEST_MODE_REVERSE_FREE @@ -327,6 +327,13 @@ static void test_tbf_final_ack(enum test_tbf_final_ack_mode test_mode) OSMO_ASSERT(dl_tbf->have_data()); OSMO_ASSERT(dl_tbf->state_is(TBF_ST_FLOW)); + do { + /* Request to send one block */ + request_dl_rlc_block(dl_tbf, &fn, &block_nr); + } while (dl_tbf->state_is(TBF_ST_FLOW)); + + OSMO_ASSERT(dl_tbf->state_is(TBF_ST_FINISHED)); + /* Queue a final ACK */ memset(rbb, 0, sizeof(rbb)); /* Receive a final ACK */ @@ -334,6 +341,9 @@ static void test_tbf_final_ack(enum test_tbf_final_ack_mode test_mode) /* Clean up and ensure tbfs are in the correct state */ OSMO_ASSERT(dl_tbf->state_is(TBF_ST_WAIT_RELEASE)); + + /* Now append new data, a new DL TBF should be created and assigned through the old one due to T3192: */ + ms_append_llc_dl_data(dl_tbf->ms(), 1000, llc_data, sizeof(llc_data)); new_tbf = ms_dl_tbf(ms); check_tbf(new_tbf); OSMO_ASSERT(new_tbf != dl_tbf); @@ -2895,9 +2905,16 @@ static void establish_and_use_egprs_dl_tbf(struct gprs_rlcmac_bts *bts, int mcs) /* Request to send one RLC/MAC block */ request_dl_rlc_block(dl_tbf, &fn); } + /* ACK all blocks */ + memset(rbb, 0xff, sizeof(rbb)); + _rcv_ack(false, dl_tbf, rbb); + /* X2031 may keep the TBF open for a while: */ + while (dl_tbf->state_is(TBF_ST_FLOW)) { + request_dl_rlc_block(dl_tbf, &fn); + } send_empty_block(dl_tbf, dl_tbf->control_ts, fn); - OSMO_ASSERT(dl_tbf->state_is(TBF_ST_FLOW)); + OSMO_ASSERT(dl_tbf->state_is(TBF_ST_FINISHED)); _rcv_ack(true, dl_tbf, rbb); /* Receive a final ACK */ @@ -2946,6 +2963,19 @@ static gprs_rlcmac_dl_tbf *tbf_init(struct gprs_rlcmac_bts *bts, static void tbf_cleanup(gprs_rlcmac_dl_tbf *dl_tbf) { uint8_t rbb[64/8]; + uint32_t fn = 0; + + if (dl_tbf->state_is(TBF_ST_FLOW)) { + /* X2031 may keep the TBF open for a while: */ + while (dl_tbf->state_is(TBF_ST_FLOW)) { + /* ACK all blocks */ + memset(rbb, 0xff, sizeof(rbb)); + _rcv_ack(false, dl_tbf, rbb); + request_dl_rlc_block(dl_tbf, &fn); + } + } + + OSMO_ASSERT(dl_tbf->state_is(TBF_ST_FINISHED)); _rcv_ack(true, dl_tbf, rbb); /* Receive a final ACK */ @@ -3237,7 +3267,6 @@ static void establish_and_use_egprs_dl_tbf_for_retx(struct gprs_rlcmac_bts *bts, MAKE_ACKED(msg, dl_tbf, fn, mcs, true); } /* Clean up pending items in UL controller: */ - send_empty_block(dl_tbf, dl_tbf->control_ts, fn+50); tbf_cleanup(dl_tbf); } diff --git a/tests/tbf/TbfTest.err b/tests/tbf/TbfTest.err index 867ee9ec..a78e2044 100644 --- a/tests/tbf/TbfTest.err +++ b/tests/tbf/TbfTest.err @@ -96,26 +96,16 @@ TBF(DL:TFI-0-0-0:G){NEW} set ass. type CCCH [prev CCCH:0, PACCH:0] DL_TBF(DL:TFI-0-0-0:G){NEW}: state_chg to ASSIGN TBF(DL:TFI-0-0-0:G){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=220 Modifying MS object, TLLI = 0xffffffff, TA 220 -> 0 -DL_ASS_TBF(DL:TFI-0-0-0:G){NONE}: Received Event SCHED_ASS -DL_ASS_TBF(DL:TFI-0-0-0:G){NONE}: state_chg to SEND_ASS -DL_TBF(DL:TFI-0-0-0:G){ASSIGN}: Received Event ASSIGN_ACK_PACCH -TBF(DL:TFI-0-0-0:G){ASSIGN} The TBF has been confirmed on the PACCH, changed type from CCCH to PACCH -TBF(DL:TFI-0-0-0:G){ASSIGN} unset ass. type CCCH [prev CCCH:1, PACCH:0] -TBF(DL:TFI-0-0-0:G){ASSIGN} set ass. type PACCH [prev CCCH:0, PACCH:0] +DL_TBF(DL:TFI-0-0-0:G){ASSIGN}: Received Event ASSIGN_ADD_CCCH +TBF(DL:TFI-0-0-0:G){ASSIGN} set ass. type CCCH [prev CCCH:1, PACCH:0] +TBF(DL:TFI-0-0-0:G){ASSIGN} Attempted to set ass. type CCCH which is already set +TBF(DL:TFI-0-0-0:G){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=0 +DL_TBF(DL:TFI-0-0-0:G){ASSIGN}: Received Event ASSIGN_READY_CCCH DL_TBF(DL:TFI-0-0-0:G){ASSIGN}: state_chg to FLOW The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly confirmed MS(TLLI-0xffeeddcc:TA-0:MSCLS-45-0:DL) appending 200 bytes to DL LLC queue MS(TLLI-0xffeeddcc:TA-0:MSCLS-45-0:DL) appending 200 bytes to DL LLC queue -DL_ASS_TBF(DL:TFI-0-0-0:G){SEND_ASS}: Received Event CREATE_RLCMAC_MSG -PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 0 + 13 = 13 -TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} start Packet Downlink Assignment (PACCH) -+++++++++++++++++++++++++ TX : Packet Downlink Assignment +++++++++++++++++++++++++ -------------------------- TX : Packet Downlink Assignment ------------------------- -PDCH(bts=0,trx=0,ts=4) Reserving FN 13 for type POLL -TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Scheduled DL Assignment polling on PACCH (FN=13, TS=4) -DL_ASS_TBF(DL:TFI-0-0-0:G){SEND_ASS}: state_chg to WAIT_ACK -PDCH(bts=0,trx=0,ts=4) FN=0 Scheduling control message at RTS for TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} -PDCH(bts=0,trx=0,ts=4) FN=4 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=0 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==0) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 0, CS=CS-1 TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Dequeue next LLC (len=200) @@ -124,8 +114,7 @@ TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 0) TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 0, CS-1): 07 00 01 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 -PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=8 block_nr=2 scheduling free USF for polling at FN=13 of TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} -PDCH(bts=0,trx=0,ts=4) FN=8 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=4 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==1) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 1, CS=CS-1 TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 1, CS-1): 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20 21 22 23 24 25 26 27 @@ -133,14 +122,180 @@ TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 1) TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 1, CS-1): 07 00 03 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20 21 22 23 24 25 26 27 -TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink acknowledge -TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} ack: (BSN=0)"RR"(BSN=1) R=ACK I=NACK -TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} DL analysis, range=0:2, lost=0, recv=2, skipped=0, bsn=0, info='RR..............................................................' -TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid -TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Final ACK received. -DL_TBF(DL:TFI-0-0-0:G){FLOW}: Received Event FINAL_ACK_RECVD -DL_TBF(DL:TFI-0-0-0:G){FLOW}: state_chg to WAIT_RELEASE -TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:0, PACCH:1] +PDCH(bts=0,trx=0,ts=4) FN=8 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==2) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 2, CS=CS-1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 2, CS-1): 28 29 2a 2b 2c 2d 2e 2f 30 31 32 33 34 35 36 37 38 39 3a 3b +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 2 BSN2 -1) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 2) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 2, CS-1): 07 00 05 28 29 2a 2b 2c 2d 2e 2f 30 31 32 33 34 35 36 37 38 39 3a 3b +PDCH(bts=0,trx=0,ts=4) FN=13 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==3) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 3, CS=CS-1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 3, CS-1): 3c 3d 3e 3f 40 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d 4e 4f +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 3 BSN2 -1) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 3) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 3, CS-1): 07 00 07 3c 3d 3e 3f 40 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d 4e 4f +PDCH(bts=0,trx=0,ts=4) FN=17 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==4) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 4, CS=CS-1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 4, CS-1): 50 51 52 53 54 55 56 57 58 59 5a 5b 5c 5d 5e 5f 60 61 62 63 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 4 BSN2 -1) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 4) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 4, CS-1): 07 00 09 50 51 52 53 54 55 56 57 58 59 5a 5b 5c 5d 5e 5f 60 61 62 63 +PDCH(bts=0,trx=0,ts=4) FN=21 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==5) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 5, CS=CS-1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 5, CS-1): 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f 70 71 72 73 74 75 76 77 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 5 BSN2 -1) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 5) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 5, CS-1): 07 00 0b 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f 70 71 72 73 74 75 76 77 +PDCH(bts=0,trx=0,ts=4) FN=26 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==6) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 6, CS=CS-1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 6, CS-1): 78 79 7a 7b 7c 7d 7e 7f 80 81 82 83 84 85 86 87 88 89 8a 8b +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 6 BSN2 -1) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 6) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 6, CS-1): 07 00 0d 78 79 7a 7b 7c 7d 7e 7f 80 81 82 83 84 85 86 87 88 89 8a 8b +PDCH(bts=0,trx=0,ts=4) FN=30 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==7) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 7, CS=CS-1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 7, CS-1): 8c 8d 8e 8f 90 91 92 93 94 95 96 97 98 99 9a 9b 9c 9d 9e 9f +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 7 BSN2 -1) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 7) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 7, CS-1): 07 00 0f 8c 8d 8e 8f 90 91 92 93 94 95 96 97 98 99 9a 9b 9c 9d 9e 9f +PDCH(bts=0,trx=0,ts=4) FN=34 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==8) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 8, CS=CS-1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 8, CS-1): a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 8 BSN2 -1) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 8) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 8, CS-1): 07 00 11 a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 +PDCH(bts=0,trx=0,ts=4) FN=39 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==9) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 9, CS=CS-1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 9, CS-1): 01 b4 b5 b6 b7 b8 b9 ba bb bc bd be bf c0 c1 c2 c3 c4 c5 c6 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 9 BSN2 -1) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 9) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 9, CS-1): 07 00 12 01 b4 b5 b6 b7 b8 b9 ba bb bc bd be bf c0 c1 c2 c3 c4 c5 c6 +PDCH(bts=0,trx=0,ts=4) FN=43 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==10) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 10, CS=CS-1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=200 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Dequeue next LLC (len=200) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 10, CS-1): 07 c7 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 10 BSN2 -1) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 10) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 10, CS-1): 07 00 14 07 c7 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 +PDCH(bts=0,trx=0,ts=4) FN=47 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==11) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 11, CS=CS-1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 11, CS-1): 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20 21 22 23 24 25 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 11 BSN2 -1) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 11) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 11, CS-1): 07 00 17 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20 21 22 23 24 25 +PDCH(bts=0,trx=0,ts=4) FN=52 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==12) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 12, CS=CS-1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 12, CS-1): 26 27 28 29 2a 2b 2c 2d 2e 2f 30 31 32 33 34 35 36 37 38 39 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 12 BSN2 -1) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 12) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 12, CS-1): 07 00 19 26 27 28 29 2a 2b 2c 2d 2e 2f 30 31 32 33 34 35 36 37 38 39 +PDCH(bts=0,trx=0,ts=4) FN=56 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==13) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 13, CS=CS-1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 13, CS-1): 3a 3b 3c 3d 3e 3f 40 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 13 BSN2 -1) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 13) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 13, CS-1): 07 00 1b 3a 3b 3c 3d 3e 3f 40 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d +PDCH(bts=0,trx=0,ts=4) FN=60 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==14) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 14, CS=CS-1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 14, CS-1): 4e 4f 50 51 52 53 54 55 56 57 58 59 5a 5b 5c 5d 5e 5f 60 61 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 14 BSN2 -1) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 14) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 14, CS-1): 07 00 1d 4e 4f 50 51 52 53 54 55 56 57 58 59 5a 5b 5c 5d 5e 5f 60 61 +PDCH(bts=0,trx=0,ts=4) FN=65 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==15) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 15, CS=CS-1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 15, CS-1): 62 63 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f 70 71 72 73 74 75 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 15 BSN2 -1) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 15) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 15, CS-1): 07 00 1f 62 63 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f 70 71 72 73 74 75 +PDCH(bts=0,trx=0,ts=4) FN=69 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==16) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 16, CS=CS-1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 16, CS-1): 76 77 78 79 7a 7b 7c 7d 7e 7f 80 81 82 83 84 85 86 87 88 89 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 16 BSN2 -1) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 16) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 16, CS-1): 07 00 21 76 77 78 79 7a 7b 7c 7d 7e 7f 80 81 82 83 84 85 86 87 88 89 +PDCH(bts=0,trx=0,ts=4) FN=73 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==17) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 17, CS=CS-1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 17, CS-1): 8a 8b 8c 8d 8e 8f 90 91 92 93 94 95 96 97 98 99 9a 9b 9c 9d +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 17 BSN2 -1) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 17) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 17, CS-1): 07 00 23 8a 8b 8c 8d 8e 8f 90 91 92 93 94 95 96 97 98 99 9a 9b 9c 9d +PDCH(bts=0,trx=0,ts=4) FN=78 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==18) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 18, CS=CS-1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 18, CS-1): 9e 9f a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 18 BSN2 -1) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 18) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 18, CS-1): 07 00 25 9e 9f a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 +PDCH(bts=0,trx=0,ts=4) FN=82 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==19) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 19, CS=CS-1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 19, CS-1): b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd be bf c0 c1 c2 c3 c4 c5 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 19 BSN2 -1) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 19) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 19, CS-1): 07 00 27 b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd be bf c0 c1 c2 c3 c4 c5 +PDCH(bts=0,trx=0,ts=4) FN=86 Scheduling data message at RTS for DL TFI=0 prio=5 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==20) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 20, CS=CS-1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=200 +DL_TBF(DL:TFI-0-0-0:G){FLOW}: Received Event LAST_DL_DATA_SENT +DL_TBF(DL:TFI-0-0-0:G){FLOW}: state_chg to FINISHED +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} data block (BSN 20, CS-1): 09 c6 c7 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} need_padding 0 spb_status 0 spb 0 (BSN1 20 BSN2 -1) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} Copying data unit 0 (BSN 20) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 86 + 13 = 99 +PDCH(bts=0,trx=0,ts=4) Reserving FN 99 for type POLL +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} Scheduled DL Acknowledgement polling on PACCH (FN=99, TS=4) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} Starting timer T3191 [final block (DL-TBF)] with 5 sec. 0 microsec, cur_fn=2654167 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} Scheduled Ack/Nack polling on FN=99, TS=4 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} msg block (BSN 20, CS-1): 0f 01 28 09 c6 c7 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} downlink acknowledge +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} stopping timer T3191 [ACK/NACK received] +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} ack: (BSN=0)"RRRRRRRRRRRRRRRRRRRRR"(BSN=20) R=ACK I=NACK +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} DL analysis, range=0:21, lost=0, recv=21, skipped=0, bsn=0, info='RRRRRRRRRRRRRRRRRRRRR...........................................' +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} V(B): (V(A)=21)""(V(S)-1=20) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} Final ACK received. +DL_TBF(DL:TFI-0-0-0:G){FINISHED}: Received Event FINAL_ACK_RECVD +DL_TBF(DL:TFI-0-0-0:G){FINISHED}: state_chg to WAIT_RELEASE +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:1, PACCH:0] +MS(TLLI-0xffeeddcc:TA-0:MSCLS-45-0:DL) appending 200 bytes to DL LLC queue +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){WAIT_RELEASE} in WAIT RELEASE state (T3193), so reuse TBF [DL] algo A <multi> (suggested TRX: 0): Alloc start - Skipping TS 0, because not enabled - Skipping TS 1, because not enabled @@ -162,8 +317,8 @@ MS(TLLI-0xffeeddcc:TA-0:MSCLS-45-0:DL) Attaching DL TBF: TBF(DL:TFI-0-0-1:G:TLLI MS(TLLI-0xffeeddcc:TA-0:MSCLS-45-0:DL): + tbf: now used by 2 (2*tbf) TBF(DL:TFI-0-0-1:G:TLLI-0xffeeddcc){NEW} [DOWNLINK] START (PACCH) TBF(DL:TFI-0-0-1:G:TLLI-0xffeeddcc){NEW} Send downlink assignment on PACCH, because TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){WAIT_RELEASE} exists -DL_ASS_TBF(DL:TFI-0-0-0:G){WAIT_ACK}: Received Event SCHED_ASS -DL_ASS_TBF(DL:TFI-0-0-0:G){WAIT_ACK}: Event SCHED_ASS not permitted +DL_ASS_TBF(DL:TFI-0-0-0:G){NONE}: Received Event SCHED_ASS +DL_ASS_TBF(DL:TFI-0-0-0:G){NONE}: state_chg to SEND_ASS DL_TBF(DL:TFI-0-0-1:G:TLLI-0xffeeddcc){NEW}: Received Event ASSIGN_ADD_PACCH TBF(DL:TFI-0-0-1:G:TLLI-0xffeeddcc){NEW} set ass. type PACCH [prev CCCH:0, PACCH:0] DL_TBF(DL:TFI-0-0-1:G:TLLI-0xffeeddcc){NEW}: state_chg to ASSIGN @@ -176,7 +331,7 @@ MS(TLLI-0xffeeddcc:TA-0:MSCLS-45-0:DL): - tbf: now used by 2 (tbf,test_tbf_final ********** DL-TBF ends here ********** DL_TBF(DL:TFI-0-0-0:G){WAIT_RELEASE}: Deallocated UL_ASS_TBF(DL:TFI-0-0-0:G){NONE}: Deallocated -DL_ASS_TBF(DL:TFI-0-0-0:G){WAIT_ACK}: Deallocated +DL_ASS_TBF(DL:TFI-0-0-0:G){SEND_ASS}: Deallocated TBF(DL:TFI-0-0-1:G:TLLI-0xffeeddcc){ASSIGN} free PDCH(bts=0,trx=0,ts=4) Detaching TBF(DL:TFI-0-0-1:G:TLLI-0xffeeddcc){ASSIGN}, 1 TBFs, USFs = 00, TFIs = 00000002. MS(TLLI-0xffeeddcc:TA-0:MSCLS-45-0:DL) Detaching TBF: TBF(DL:G:TLLI-0xffeeddcc){ASSIGN} @@ -219,26 +374,16 @@ TBF(DL:TFI-0-0-0:G){NEW} set ass. type CCCH [prev CCCH:0, PACCH:0] DL_TBF(DL:TFI-0-0-0:G){NEW}: state_chg to ASSIGN TBF(DL:TFI-0-0-0:G){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=220 Modifying MS object, TLLI = 0xffffffff, TA 220 -> 0 -DL_ASS_TBF(DL:TFI-0-0-0:G){NONE}: Received Event SCHED_ASS -DL_ASS_TBF(DL:TFI-0-0-0:G){NONE}: state_chg to SEND_ASS -DL_TBF(DL:TFI-0-0-0:G){ASSIGN}: Received Event ASSIGN_ACK_PACCH -TBF(DL:TFI-0-0-0:G){ASSIGN} The TBF has been confirmed on the PACCH, changed type from CCCH to PACCH -TBF(DL:TFI-0-0-0:G){ASSIGN} unset ass. type CCCH [prev CCCH:1, PACCH:0] -TBF(DL:TFI-0-0-0:G){ASSIGN} set ass. type PACCH [prev CCCH:0, PACCH:0] +DL_TBF(DL:TFI-0-0-0:G){ASSIGN}: Received Event ASSIGN_ADD_CCCH +TBF(DL:TFI-0-0-0:G){ASSIGN} set ass. type CCCH [prev CCCH:1, PACCH:0] +TBF(DL:TFI-0-0-0:G){ASSIGN} Attempted to set ass. type CCCH which is already set +TBF(DL:TFI-0-0-0:G){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=0 +DL_TBF(DL:TFI-0-0-0:G){ASSIGN}: Received Event ASSIGN_READY_CCCH DL_TBF(DL:TFI-0-0-0:G){ASSIGN}: state_chg to FLOW The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly confirmed MS(TLLI-0xffeeddcc:TA-0:MSCLS-45-0:DL) appending 200 bytes to DL LLC queue MS(TLLI-0xffeeddcc:TA-0:MSCLS-45-0:DL) appending 200 bytes to DL LLC queue -DL_ASS_TBF(DL:TFI-0-0-0:G){SEND_ASS}: Received Event CREATE_RLCMAC_MSG -PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 0 + 13 = 13 -TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} start Packet Downlink Assignment (PACCH) -+++++++++++++++++++++++++ TX : Packet Downlink Assignment +++++++++++++++++++++++++ -------------------------- TX : Packet Downlink Assignment ------------------------- -PDCH(bts=0,trx=0,ts=4) Reserving FN 13 for type POLL -TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Scheduled DL Assignment polling on PACCH (FN=13, TS=4) -DL_ASS_TBF(DL:TFI-0-0-0:G){SEND_ASS}: state_chg to WAIT_ACK -PDCH(bts=0,trx=0,ts=4) FN=0 Scheduling control message at RTS for TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} -PDCH(bts=0,trx=0,ts=4) FN=4 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=0 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==0) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 0, CS=CS-1 TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Dequeue next LLC (len=200) @@ -247,8 +392,7 @@ TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 0) TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 0, CS-1): 07 00 01 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 -PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=8 block_nr=2 scheduling free USF for polling at FN=13 of TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} -PDCH(bts=0,trx=0,ts=4) FN=8 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=4 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==1) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 1, CS=CS-1 TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 1, CS-1): 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20 21 22 23 24 25 26 27 @@ -256,14 +400,180 @@ TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 1) TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 1, CS-1): 07 00 03 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20 21 22 23 24 25 26 27 -TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink acknowledge -TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} ack: (BSN=0)"RR"(BSN=1) R=ACK I=NACK -TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} DL analysis, range=0:2, lost=0, recv=2, skipped=0, bsn=0, info='RR..............................................................' -TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid -TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Final ACK received. -DL_TBF(DL:TFI-0-0-0:G){FLOW}: Received Event FINAL_ACK_RECVD -DL_TBF(DL:TFI-0-0-0:G){FLOW}: state_chg to WAIT_RELEASE -TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:0, PACCH:1] +PDCH(bts=0,trx=0,ts=4) FN=8 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==2) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 2, CS=CS-1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 2, CS-1): 28 29 2a 2b 2c 2d 2e 2f 30 31 32 33 34 35 36 37 38 39 3a 3b +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 2 BSN2 -1) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 2) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 2, CS-1): 07 00 05 28 29 2a 2b 2c 2d 2e 2f 30 31 32 33 34 35 36 37 38 39 3a 3b +PDCH(bts=0,trx=0,ts=4) FN=13 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==3) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 3, CS=CS-1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 3, CS-1): 3c 3d 3e 3f 40 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d 4e 4f +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 3 BSN2 -1) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 3) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 3, CS-1): 07 00 07 3c 3d 3e 3f 40 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d 4e 4f +PDCH(bts=0,trx=0,ts=4) FN=17 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==4) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 4, CS=CS-1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 4, CS-1): 50 51 52 53 54 55 56 57 58 59 5a 5b 5c 5d 5e 5f 60 61 62 63 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 4 BSN2 -1) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 4) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 4, CS-1): 07 00 09 50 51 52 53 54 55 56 57 58 59 5a 5b 5c 5d 5e 5f 60 61 62 63 +PDCH(bts=0,trx=0,ts=4) FN=21 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==5) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 5, CS=CS-1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 5, CS-1): 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f 70 71 72 73 74 75 76 77 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 5 BSN2 -1) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 5) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 5, CS-1): 07 00 0b 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f 70 71 72 73 74 75 76 77 +PDCH(bts=0,trx=0,ts=4) FN=26 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==6) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 6, CS=CS-1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 6, CS-1): 78 79 7a 7b 7c 7d 7e 7f 80 81 82 83 84 85 86 87 88 89 8a 8b +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 6 BSN2 -1) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 6) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 6, CS-1): 07 00 0d 78 79 7a 7b 7c 7d 7e 7f 80 81 82 83 84 85 86 87 88 89 8a 8b +PDCH(bts=0,trx=0,ts=4) FN=30 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==7) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 7, CS=CS-1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 7, CS-1): 8c 8d 8e 8f 90 91 92 93 94 95 96 97 98 99 9a 9b 9c 9d 9e 9f +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 7 BSN2 -1) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 7) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 7, CS-1): 07 00 0f 8c 8d 8e 8f 90 91 92 93 94 95 96 97 98 99 9a 9b 9c 9d 9e 9f +PDCH(bts=0,trx=0,ts=4) FN=34 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==8) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 8, CS=CS-1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 8, CS-1): a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 8 BSN2 -1) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 8) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 8, CS-1): 07 00 11 a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 +PDCH(bts=0,trx=0,ts=4) FN=39 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==9) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 9, CS=CS-1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 9, CS-1): 01 b4 b5 b6 b7 b8 b9 ba bb bc bd be bf c0 c1 c2 c3 c4 c5 c6 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 9 BSN2 -1) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 9) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 9, CS-1): 07 00 12 01 b4 b5 b6 b7 b8 b9 ba bb bc bd be bf c0 c1 c2 c3 c4 c5 c6 +PDCH(bts=0,trx=0,ts=4) FN=43 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==10) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 10, CS=CS-1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=200 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Dequeue next LLC (len=200) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 10, CS-1): 07 c7 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 10 BSN2 -1) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 10) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 10, CS-1): 07 00 14 07 c7 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 +PDCH(bts=0,trx=0,ts=4) FN=47 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==11) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 11, CS=CS-1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 11, CS-1): 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20 21 22 23 24 25 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 11 BSN2 -1) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 11) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 11, CS-1): 07 00 17 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20 21 22 23 24 25 +PDCH(bts=0,trx=0,ts=4) FN=52 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==12) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 12, CS=CS-1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 12, CS-1): 26 27 28 29 2a 2b 2c 2d 2e 2f 30 31 32 33 34 35 36 37 38 39 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 12 BSN2 -1) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 12) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 12, CS-1): 07 00 19 26 27 28 29 2a 2b 2c 2d 2e 2f 30 31 32 33 34 35 36 37 38 39 +PDCH(bts=0,trx=0,ts=4) FN=56 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==13) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 13, CS=CS-1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 13, CS-1): 3a 3b 3c 3d 3e 3f 40 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 13 BSN2 -1) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 13) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 13, CS-1): 07 00 1b 3a 3b 3c 3d 3e 3f 40 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d +PDCH(bts=0,trx=0,ts=4) FN=60 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==14) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 14, CS=CS-1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 14, CS-1): 4e 4f 50 51 52 53 54 55 56 57 58 59 5a 5b 5c 5d 5e 5f 60 61 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 14 BSN2 -1) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 14) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 14, CS-1): 07 00 1d 4e 4f 50 51 52 53 54 55 56 57 58 59 5a 5b 5c 5d 5e 5f 60 61 +PDCH(bts=0,trx=0,ts=4) FN=65 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==15) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 15, CS=CS-1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 15, CS-1): 62 63 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f 70 71 72 73 74 75 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 15 BSN2 -1) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 15) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 15, CS-1): 07 00 1f 62 63 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f 70 71 72 73 74 75 +PDCH(bts=0,trx=0,ts=4) FN=69 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==16) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 16, CS=CS-1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 16, CS-1): 76 77 78 79 7a 7b 7c 7d 7e 7f 80 81 82 83 84 85 86 87 88 89 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 16 BSN2 -1) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 16) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 16, CS-1): 07 00 21 76 77 78 79 7a 7b 7c 7d 7e 7f 80 81 82 83 84 85 86 87 88 89 +PDCH(bts=0,trx=0,ts=4) FN=73 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==17) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 17, CS=CS-1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 17, CS-1): 8a 8b 8c 8d 8e 8f 90 91 92 93 94 95 96 97 98 99 9a 9b 9c 9d +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 17 BSN2 -1) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 17) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 17, CS-1): 07 00 23 8a 8b 8c 8d 8e 8f 90 91 92 93 94 95 96 97 98 99 9a 9b 9c 9d +PDCH(bts=0,trx=0,ts=4) FN=78 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==18) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 18, CS=CS-1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 18, CS-1): 9e 9f a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 18 BSN2 -1) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 18) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 18, CS-1): 07 00 25 9e 9f a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 +PDCH(bts=0,trx=0,ts=4) FN=82 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==19) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 19, CS=CS-1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 19, CS-1): b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd be bf c0 c1 c2 c3 c4 c5 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 19 BSN2 -1) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 19) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 19, CS-1): 07 00 27 b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd be bf c0 c1 c2 c3 c4 c5 +PDCH(bts=0,trx=0,ts=4) FN=86 Scheduling data message at RTS for DL TFI=0 prio=5 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==20) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 20, CS=CS-1 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=200 +DL_TBF(DL:TFI-0-0-0:G){FLOW}: Received Event LAST_DL_DATA_SENT +DL_TBF(DL:TFI-0-0-0:G){FLOW}: state_chg to FINISHED +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} data block (BSN 20, CS-1): 09 c6 c7 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} need_padding 0 spb_status 0 spb 0 (BSN1 20 BSN2 -1) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} Copying data unit 0 (BSN 20) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 86 + 13 = 99 +PDCH(bts=0,trx=0,ts=4) Reserving FN 99 for type POLL +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} Scheduled DL Acknowledgement polling on PACCH (FN=99, TS=4) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} Starting timer T3191 [final block (DL-TBF)] with 5 sec. 0 microsec, cur_fn=2654167 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} Scheduled Ack/Nack polling on FN=99, TS=4 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} msg block (BSN 20, CS-1): 0f 01 28 09 c6 c7 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} downlink acknowledge +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} stopping timer T3191 [ACK/NACK received] +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} ack: (BSN=0)"RRRRRRRRRRRRRRRRRRRRR"(BSN=20) R=ACK I=NACK +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} DL analysis, range=0:21, lost=0, recv=21, skipped=0, bsn=0, info='RRRRRRRRRRRRRRRRRRRRR...........................................' +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} V(B): (V(A)=21)""(V(S)-1=20) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} Final ACK received. +DL_TBF(DL:TFI-0-0-0:G){FINISHED}: Received Event FINAL_ACK_RECVD +DL_TBF(DL:TFI-0-0-0:G){FINISHED}: state_chg to WAIT_RELEASE +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:1, PACCH:0] +MS(TLLI-0xffeeddcc:TA-0:MSCLS-45-0:DL) appending 200 bytes to DL LLC queue +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){WAIT_RELEASE} in WAIT RELEASE state (T3193), so reuse TBF [DL] algo A <multi> (suggested TRX: 0): Alloc start - Skipping TS 0, because not enabled - Skipping TS 1, because not enabled @@ -285,8 +595,8 @@ MS(TLLI-0xffeeddcc:TA-0:MSCLS-45-0:DL) Attaching DL TBF: TBF(DL:TFI-0-0-1:G:TLLI MS(TLLI-0xffeeddcc:TA-0:MSCLS-45-0:DL): + tbf: now used by 2 (2*tbf) TBF(DL:TFI-0-0-1:G:TLLI-0xffeeddcc){NEW} [DOWNLINK] START (PACCH) TBF(DL:TFI-0-0-1:G:TLLI-0xffeeddcc){NEW} Send downlink assignment on PACCH, because TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){WAIT_RELEASE} exists -DL_ASS_TBF(DL:TFI-0-0-0:G){WAIT_ACK}: Received Event SCHED_ASS -DL_ASS_TBF(DL:TFI-0-0-0:G){WAIT_ACK}: Event SCHED_ASS not permitted +DL_ASS_TBF(DL:TFI-0-0-0:G){NONE}: Received Event SCHED_ASS +DL_ASS_TBF(DL:TFI-0-0-0:G){NONE}: state_chg to SEND_ASS DL_TBF(DL:TFI-0-0-1:G:TLLI-0xffeeddcc){NEW}: Received Event ASSIGN_ADD_PACCH TBF(DL:TFI-0-0-1:G:TLLI-0xffeeddcc){NEW} set ass. type PACCH [prev CCCH:0, PACCH:0] DL_TBF(DL:TFI-0-0-1:G:TLLI-0xffeeddcc){NEW}: state_chg to ASSIGN @@ -307,7 +617,7 @@ MS(TLLI-0xffeeddcc:TA-0:MSCLS-45-0): - tbf: now used by 1 (test_tbf_final_ack) ********** DL-TBF ends here ********** DL_TBF(DL:TFI-0-0-0:G){WAIT_RELEASE}: Deallocated UL_ASS_TBF(DL:TFI-0-0-0:G){NONE}: Deallocated -DL_ASS_TBF(DL:TFI-0-0-0:G){WAIT_ACK}: Deallocated +DL_ASS_TBF(DL:TFI-0-0-0:G){SEND_ASS}: Deallocated MS(TLLI-0xffeeddcc:TA-0:MSCLS-45-0): - test_tbf_final_ack: now used by 0 (-) MS(TLLI-0xffeeddcc:TA-0:MSCLS-45-0) Destroying MS object === end test_tbf_final_ack === @@ -342,26 +652,16 @@ TBF(DL:TFI-0-0-0:G){NEW} set ass. type CCCH [prev CCCH:0, PACCH:0] DL_TBF(DL:TFI-0-0-0:G){NEW}: state_chg to ASSIGN TBF(DL:TFI-0-0-0:G){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=220 Modifying MS object, TLLI = 0xffffffff, TA 220 -> 0 -DL_ASS_TBF(DL:TFI-0-0-0:G){NONE}: Received Event SCHED_ASS -DL_ASS_TBF(DL:TFI-0-0-0:G){NONE}: state_chg to SEND_ASS -DL_TBF(DL:TFI-0-0-0:G){ASSIGN}: Received Event ASSIGN_ACK_PACCH -TBF(DL:TFI-0-0-0:G){ASSIGN} The TBF has been confirmed on the PACCH, changed type from CCCH to PACCH -TBF(DL:TFI-0-0-0:G){ASSIGN} unset ass. type CCCH [prev CCCH:1, PACCH:0] -TBF(DL:TFI-0-0-0:G){ASSIGN} set ass. type PACCH [prev CCCH:0, PACCH:0] +DL_TBF(DL:TFI-0-0-0:G){ASSIGN}: Received Event ASSIGN_ADD_CCCH +TBF(DL:TFI-0-0-0:G){ASSIGN} set ass. type CCCH [prev CCCH:1, PACCH:0] +TBF(DL:TFI-0-0-0:G){ASSIGN} Attempted to set ass. type CCCH which is already set +TBF(DL:TFI-0-0-0:G){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=0 +DL_TBF(DL:TFI-0-0-0:G){ASSIGN}: Received Event ASSIGN_READY_CCCH DL_TBF(DL:TFI-0-0-0:G){ASSIGN}: state_chg to FLOW The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly confirmed MS(TLLI-0xffeeddcc:TA-0:MSCLS-45-0:DL) appending 200 bytes to DL LLC queue MS(TLLI-0xffeeddcc:TA-0:MSCLS-45-0:DL) appending 200 bytes to DL LLC queue -DL_ASS_TBF(DL:TFI-0-0-0:G){SEND_ASS}: Received Event CREATE_RLCMAC_MSG -PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 0 + 13 = 13 -TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} start Packet Downlink Assignment (PACCH) -+++++++++++++++++++++++++ TX : Packet Downlink Assignment +++++++++++++++++++++++++ -------------------------- TX : Packet Downlink Assignment ------------------------- -PDCH(bts=0,trx=0,ts=4) Reserving FN 13 for type POLL -TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Scheduled DL Assignment polling on PACCH (FN=13, TS=4) -DL_ASS_TBF(DL:TFI-0-0-0:G){SEND_ASS}: state_chg to WAIT_ACK -PDCH(bts=0,trx=0,ts=4) FN=0 Scheduling control message at RTS for TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} -PDCH(bts=0,trx=0,ts=4) FN=4 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=0 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==0) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 0, CS=CS-1 TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Dequeue next LLC (len=200) @@ -370,8 +670,7 @@ TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 0) TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 0, CS-1): 07 00 01 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 -PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=8 block_nr=2 scheduling free USF for polling at FN=13 of TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} -PDCH(bts=0,trx=0,ts=4) FN=8 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=4 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==1) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 1, CS=CS-1 TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 1, CS-1): 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20 21 22 23 24 25 26 27 @@ -379,7 +678,7 @@ TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 1) TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 1, CS-1): 07 00 03 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20 21 22 23 24 25 26 27 -PDCH(bts=0,trx=0,ts=4) FN=13 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=8 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==2) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 2, CS=CS-1 TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 2, CS-1): 28 29 2a 2b 2c 2d 2e 2f 30 31 32 33 34 35 36 37 38 39 3a 3b @@ -387,7 +686,7 @@ TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 2) TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 2, CS-1): 07 00 05 28 29 2a 2b 2c 2d 2e 2f 30 31 32 33 34 35 36 37 38 39 3a 3b -PDCH(bts=0,trx=0,ts=4) FN=17 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=13 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==3) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 3, CS=CS-1 TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 3, CS-1): 3c 3d 3e 3f 40 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d 4e 4f @@ -395,7 +694,7 @@ TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 3) TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 3, CS-1): 07 00 07 3c 3d 3e 3f 40 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d 4e 4f -PDCH(bts=0,trx=0,ts=4) FN=21 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=17 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==4) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 4, CS=CS-1 TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 4, CS-1): 50 51 52 53 54 55 56 57 58 59 5a 5b 5c 5d 5e 5f 60 61 62 63 @@ -403,7 +702,7 @@ TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 4) TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 4, CS-1): 07 00 09 50 51 52 53 54 55 56 57 58 59 5a 5b 5c 5d 5e 5f 60 61 62 63 -PDCH(bts=0,trx=0,ts=4) FN=26 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=21 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==5) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 5, CS=CS-1 TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 5, CS-1): 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f 70 71 72 73 74 75 76 77 @@ -411,7 +710,7 @@ TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 5) TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 5, CS-1): 07 00 0b 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f 70 71 72 73 74 75 76 77 -PDCH(bts=0,trx=0,ts=4) FN=30 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=26 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==6) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 6, CS=CS-1 TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 6, CS-1): 78 79 7a 7b 7c 7d 7e 7f 80 81 82 83 84 85 86 87 88 89 8a 8b @@ -419,7 +718,7 @@ TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 6) TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 6, CS-1): 07 00 0d 78 79 7a 7b 7c 7d 7e 7f 80 81 82 83 84 85 86 87 88 89 8a 8b -PDCH(bts=0,trx=0,ts=4) FN=34 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=30 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==7) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 7, CS=CS-1 TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 7, CS-1): 8c 8d 8e 8f 90 91 92 93 94 95 96 97 98 99 9a 9b 9c 9d 9e 9f @@ -427,7 +726,7 @@ TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 7) TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 7, CS-1): 07 00 0f 8c 8d 8e 8f 90 91 92 93 94 95 96 97 98 99 9a 9b 9c 9d 9e 9f -PDCH(bts=0,trx=0,ts=4) FN=39 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=34 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==8) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 8, CS=CS-1 TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 8, CS-1): a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 @@ -435,7 +734,7 @@ TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 8) TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 8, CS-1): 07 00 11 a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 b2 b3 -PDCH(bts=0,trx=0,ts=4) FN=43 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=39 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==9) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 9, CS=CS-1 TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 9, CS-1): 01 b4 b5 b6 b7 b8 b9 ba bb bc bd be bf c0 c1 c2 c3 c4 c5 c6 @@ -443,7 +742,7 @@ TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 9) TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 9, CS-1): 07 00 12 01 b4 b5 b6 b7 b8 b9 ba bb bc bd be bf c0 c1 c2 c3 c4 c5 c6 -PDCH(bts=0,trx=0,ts=4) FN=47 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=43 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==10) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 10, CS=CS-1 TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=200 @@ -453,7 +752,7 @@ TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 10) TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 10, CS-1): 07 00 14 07 c7 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 -PDCH(bts=0,trx=0,ts=4) FN=52 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=47 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==11) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 11, CS=CS-1 TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 11, CS-1): 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20 21 22 23 24 25 @@ -461,7 +760,7 @@ TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 11) TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 11, CS-1): 07 00 17 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20 21 22 23 24 25 -PDCH(bts=0,trx=0,ts=4) FN=56 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=52 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==12) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 12, CS=CS-1 TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 12, CS-1): 26 27 28 29 2a 2b 2c 2d 2e 2f 30 31 32 33 34 35 36 37 38 39 @@ -469,7 +768,7 @@ TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 12) TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 12, CS-1): 07 00 19 26 27 28 29 2a 2b 2c 2d 2e 2f 30 31 32 33 34 35 36 37 38 39 -PDCH(bts=0,trx=0,ts=4) FN=60 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=56 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==13) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 13, CS=CS-1 TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 13, CS-1): 3a 3b 3c 3d 3e 3f 40 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d @@ -477,7 +776,7 @@ TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 13) TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 13, CS-1): 07 00 1b 3a 3b 3c 3d 3e 3f 40 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d -PDCH(bts=0,trx=0,ts=4) FN=65 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=60 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==14) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 14, CS=CS-1 TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 14, CS-1): 4e 4f 50 51 52 53 54 55 56 57 58 59 5a 5b 5c 5d 5e 5f 60 61 @@ -485,7 +784,7 @@ TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 14) TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 14, CS-1): 07 00 1d 4e 4f 50 51 52 53 54 55 56 57 58 59 5a 5b 5c 5d 5e 5f 60 61 -PDCH(bts=0,trx=0,ts=4) FN=69 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=65 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==15) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 15, CS=CS-1 TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 15, CS-1): 62 63 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f 70 71 72 73 74 75 @@ -493,7 +792,7 @@ TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 15) TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 15, CS-1): 07 00 1f 62 63 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f 70 71 72 73 74 75 -PDCH(bts=0,trx=0,ts=4) FN=73 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=69 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==16) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 16, CS=CS-1 TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 16, CS-1): 76 77 78 79 7a 7b 7c 7d 7e 7f 80 81 82 83 84 85 86 87 88 89 @@ -501,7 +800,7 @@ TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 16) TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 16, CS-1): 07 00 21 76 77 78 79 7a 7b 7c 7d 7e 7f 80 81 82 83 84 85 86 87 88 89 -PDCH(bts=0,trx=0,ts=4) FN=78 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=73 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==17) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 17, CS=CS-1 TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 17, CS-1): 8a 8b 8c 8d 8e 8f 90 91 92 93 94 95 96 97 98 99 9a 9b 9c 9d @@ -509,7 +808,7 @@ TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 17) TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 17, CS-1): 07 00 23 8a 8b 8c 8d 8e 8f 90 91 92 93 94 95 96 97 98 99 9a 9b 9c 9d -PDCH(bts=0,trx=0,ts=4) FN=82 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=78 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==18) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 18, CS=CS-1 TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 18, CS-1): 9e 9f a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 @@ -517,7 +816,7 @@ TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 18) TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 18, CS-1): 07 00 25 9e 9f a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 aa ab ac ad ae af b0 b1 -PDCH(bts=0,trx=0,ts=4) FN=86 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=82 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==19) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 19, CS=CS-1 TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} data block (BSN 19, CS-1): b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd be bf c0 c1 c2 c3 c4 c5 @@ -525,7 +824,7 @@ TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 19) TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 19, CS-1): 07 00 27 b2 b3 b4 b5 b6 b7 b8 b9 ba bb bc bd be bf c0 c1 c2 c3 c4 c5 -PDCH(bts=0,trx=0,ts=4) FN=91 Scheduling data message at RTS for DL TFI=0 prio=5 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=86 Scheduling data message at RTS for DL TFI=0 prio=5 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==20) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 20, CS=CS-1 TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=200 @@ -536,10 +835,10 @@ TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 20) TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). -PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 91 + 13 = 104 -PDCH(bts=0,trx=0,ts=4) Reserving FN 104 for type POLL -TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=104, TS=4) -TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=104, TS=4 +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 86 + 13 = 99 +PDCH(bts=0,trx=0,ts=4) Reserving FN 99 for type POLL +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=99, TS=4) +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=99, TS=4 TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} msg block (BSN 20, CS-1): 0f 00 28 09 c6 c7 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink acknowledge TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} ack: (BSN=0)"RRRRRRRRRRRRRRRRRRRRR"(BSN=20) R=ACK I=NACK @@ -549,11 +848,11 @@ TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink acknowledge TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} ack: (BSN=21)""(BSN=20) R=ACK I=NACK TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} DL analysis, range=21:21, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=21)""(V(S)-1=20) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid -PDCH(bts=0,trx=0,ts=4) FN=203 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=199 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} downlink (V(A)==21 .. V(S)==21) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Sending new dummy block at BSN 21, CS=CS-1 -TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Empty chunk, added LLC dummy command of size 19, drained_since=112 -TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Keep idle TBF open: 112/43 -> no +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Empty chunk, added LLC dummy command of size 19, drained_since=113 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Keep idle TBF open: 113/43 -> no TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=19 DL_TBF(DL:TFI-0-0-0:G){FLOW}: Received Event LAST_DL_DATA_SENT DL_TBF(DL:TFI-0-0-0:G){FLOW}: state_chg to FINISHED @@ -562,11 +861,11 @@ TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} need_padding 0 spb_status 0 spb 0 TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} Copying data unit 0 (BSN 21) TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). -PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 203 + 13 = 216 -PDCH(bts=0,trx=0,ts=4) Reserving FN 216 for type POLL -TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} Scheduled DL Acknowledgement polling on PACCH (FN=216, TS=4) +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 199 + 13 = 212 +PDCH(bts=0,trx=0,ts=4) Reserving FN 212 for type POLL +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} Scheduled DL Acknowledgement polling on PACCH (FN=212, TS=4) TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} Starting timer T3191 [final block (DL-TBF)] with 5 sec. 0 microsec, cur_fn=2654167 -TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} Scheduled Ack/Nack polling on FN=216, TS=4 +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} Scheduled Ack/Nack polling on FN=212, TS=4 TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} msg block (BSN 21, CS-1): 0f 01 2a 4d 43 c0 01 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} downlink acknowledge TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} stopping timer T3191 [ACK/NACK received] @@ -576,7 +875,7 @@ TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} V(B): (V(A)=22)""(V(S)-1=21) A=Ac TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){FINISHED} Final ACK received. DL_TBF(DL:TFI-0-0-0:G){FINISHED}: Received Event FINAL_ACK_RECVD DL_TBF(DL:TFI-0-0-0:G){FINISHED}: state_chg to WAIT_RELEASE -TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:0, PACCH:1] +TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:1, PACCH:0] TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){WAIT_RELEASE} free PDCH(bts=0,trx=0,ts=4) Detaching TBF(DL:TFI-0-0-0:G:TLLI-0xffeeddcc){WAIT_RELEASE}, 1 TBFs, USFs = 00, TFIs = 00000001. MS(TLLI-0xffeeddcc:TA-0:MSCLS-45-0:DL) Detaching TBF: TBF(DL:G:TLLI-0xffeeddcc){WAIT_RELEASE} @@ -585,7 +884,7 @@ MS(TLLI-0xffeeddcc:TA-0:MSCLS-45-0) Destroying MS object ********** DL-TBF ends here ********** DL_TBF(DL:TFI-0-0-0:G){WAIT_RELEASE}: Deallocated UL_ASS_TBF(DL:TFI-0-0-0:G){NONE}: Deallocated -DL_ASS_TBF(DL:TFI-0-0-0:G){WAIT_ACK}: Deallocated +DL_ASS_TBF(DL:TFI-0-0-0:G){NONE}: Deallocated === end test_tbf_delayed_release === === start test_tbf_imsi === PDCH(bts=0,trx=0,ts=4) PDCH state: disabled => enabled @@ -618,12 +917,11 @@ TBF(DL:TFI-0-0-0:G){NEW} set ass. type CCCH [prev CCCH:0, PACCH:0] DL_TBF(DL:TFI-0-0-0:G){NEW}: state_chg to ASSIGN TBF(DL:TFI-0-0-0:G){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=220 Modifying MS object, TLLI = 0xffffffff, TA 220 -> 0 -DL_ASS_TBF(DL:TFI-0-0-0:G){NONE}: Received Event SCHED_ASS -DL_ASS_TBF(DL:TFI-0-0-0:G){NONE}: state_chg to SEND_ASS -DL_TBF(DL:TFI-0-0-0:G){ASSIGN}: Received Event ASSIGN_ACK_PACCH -TBF(DL:TFI-0-0-0:G){ASSIGN} The TBF has been confirmed on the PACCH, changed type from CCCH to PACCH -TBF(DL:TFI-0-0-0:G){ASSIGN} unset ass. type CCCH [prev CCCH:1, PACCH:0] -TBF(DL:TFI-0-0-0:G){ASSIGN} set ass. type PACCH [prev CCCH:0, PACCH:0] +DL_TBF(DL:TFI-0-0-0:G){ASSIGN}: Received Event ASSIGN_ADD_CCCH +TBF(DL:TFI-0-0-0:G){ASSIGN} set ass. type CCCH [prev CCCH:1, PACCH:0] +TBF(DL:TFI-0-0-0:G){ASSIGN} Attempted to set ass. type CCCH which is already set +TBF(DL:TFI-0-0-0:G){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=0 +DL_TBF(DL:TFI-0-0-0:G){ASSIGN}: Received Event ASSIGN_READY_CCCH DL_TBF(DL:TFI-0-0-0:G){ASSIGN}: state_chg to FLOW Creating MS object Modifying MS object, TLLI = 0xffffffff, MS class 0 -> 45 @@ -654,12 +952,11 @@ TBF(DL:TFI-0-0-1:G){NEW} set ass. type CCCH [prev CCCH:0, PACCH:0] DL_TBF(DL:TFI-0-0-1:G){NEW}: state_chg to ASSIGN TBF(DL:TFI-0-0-1:G){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=220 Modifying MS object, TLLI = 0xffffffff, TA 220 -> 0 -DL_ASS_TBF(DL:TFI-0-0-1:G){NONE}: Received Event SCHED_ASS -DL_ASS_TBF(DL:TFI-0-0-1:G){NONE}: state_chg to SEND_ASS -DL_TBF(DL:TFI-0-0-1:G){ASSIGN}: Received Event ASSIGN_ACK_PACCH -TBF(DL:TFI-0-0-1:G){ASSIGN} The TBF has been confirmed on the PACCH, changed type from CCCH to PACCH -TBF(DL:TFI-0-0-1:G){ASSIGN} unset ass. type CCCH [prev CCCH:1, PACCH:0] -TBF(DL:TFI-0-0-1:G){ASSIGN} set ass. type PACCH [prev CCCH:0, PACCH:0] +DL_TBF(DL:TFI-0-0-1:G){ASSIGN}: Received Event ASSIGN_ADD_CCCH +TBF(DL:TFI-0-0-1:G){ASSIGN} set ass. type CCCH [prev CCCH:1, PACCH:0] +TBF(DL:TFI-0-0-1:G){ASSIGN} Attempted to set ass. type CCCH which is already set +TBF(DL:TFI-0-0-1:G){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=0 +DL_TBF(DL:TFI-0-0-1:G){ASSIGN}: Received Event ASSIGN_READY_CCCH DL_TBF(DL:TFI-0-0-1:G){ASSIGN}: state_chg to FLOW The MS object cannot fully confirm an unexpected TLLI: 0xf1000001, partly confirmed The MS object cannot fully confirm an unexpected TLLI: 0xf1000002, partly confirmed @@ -678,7 +975,7 @@ MS(IMSI-001001000000002:TLLI-0xf1000001:TA-0:MSCLS-45-0): - tbf: now used by 2 ( ********** DL-TBF ends here ********** DL_TBF(DL:TFI-0-0-0:G:IMSI-001001000000002:TLLI-0xf1000001){FLOW}: Deallocated UL_ASS_TBF(DL:TFI-0-0-0:G:IMSI-001001000000002:TLLI-0xf1000001){NONE}: Deallocated -DL_ASS_TBF(DL:TFI-0-0-0:G:IMSI-001001000000002:TLLI-0xf1000001){SEND_ASS}: Deallocated +DL_ASS_TBF(DL:TFI-0-0-0:G:IMSI-001001000000002:TLLI-0xf1000001){NONE}: Deallocated MS(TA-0:MSCLS-45-0): - ms_merge_and_clear_ms: now used by 1 (test_tbf_imsi) MS(TA-0:MSCLS-45-0): - test_tbf_imsi: now used by 0 (-) MS(TA-0:MSCLS-45-0) Destroying MS object @@ -690,7 +987,7 @@ MS(IMSI-001001000000002:TLLI-0xf1000002:TA-0:MSCLS-45-0) Destroying MS object ********** DL-TBF ends here ********** DL_TBF(DL:TFI-0-0-1:G:IMSI-001001000000002:TLLI-0xf1000002){FLOW}: Deallocated UL_ASS_TBF(DL:TFI-0-0-1:G:IMSI-001001000000002:TLLI-0xf1000002){NONE}: Deallocated -DL_ASS_TBF(DL:TFI-0-0-1:G:IMSI-001001000000002:TLLI-0xf1000002){SEND_ASS}: Deallocated +DL_ASS_TBF(DL:TFI-0-0-1:G:IMSI-001001000000002:TLLI-0xf1000002){NONE}: Deallocated === end test_tbf_imsi === === start test_tbf_exhaustion === PDCH(bts=0,trx=0,ts=4) PDCH state: disabled => enabled @@ -4602,25 +4899,15 @@ TBF(DL:TFI-0-0-0:E){NEW} set ass. type CCCH [prev CCCH:0, PACCH:0] DL_TBF(DL:TFI-0-0-0:E){NEW}: state_chg to ASSIGN TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=220 Modifying MS object, TLLI = 0xffffffff, TA 220 -> 0 -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Received Event SCHED_ASS -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: state_chg to SEND_ASS -DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ACK_PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} The TBF has been confirmed on the PACCH, changed type from CCCH to PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} unset ass. type CCCH [prev CCCH:1, PACCH:0] -TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type PACCH [prev CCCH:0, PACCH:0] +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ADD_CCCH +TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type CCCH [prev CCCH:1, PACCH:0] +TBF(DL:TFI-0-0-0:E){ASSIGN} Attempted to set ass. type CCCH which is already set +TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=0 +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_READY_CCCH DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: state_chg to FLOW The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly confirmed MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) appending 10 bytes to DL LLC queue -DL_ASS_TBF(DL:TFI-0-0-0:E){SEND_ASS}: Received Event CREATE_RLCMAC_MSG -PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 0 + 13 = 13 -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} start Packet Downlink Assignment (PACCH) -+++++++++++++++++++++++++ TX : Packet Downlink Assignment +++++++++++++++++++++++++ -------------------------- TX : Packet Downlink Assignment ------------------------- -PDCH(bts=0,trx=0,ts=4) Reserving FN 13 for type POLL -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Assignment polling on PACCH (FN=13, TS=4) -DL_ASS_TBF(DL:TFI-0-0-0:E){SEND_ASS}: state_chg to WAIT_ACK -PDCH(bts=0,trx=0,ts=4) FN=0 Scheduling control message at RTS for TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -PDCH(bts=0,trx=0,ts=4) FN=4 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=0 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==0) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 0, CS=MCS-1 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Dequeue next LLC (len=10) @@ -4632,15 +4919,14 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 0) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). -PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 4 + 13 = 17 -PDCH(bts=0,trx=0,ts=4) Reserving FN 17 for type POLL -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=17, TS=4) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=17, TS=4 +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 0 + 13 = 13 +PDCH(bts=0,trx=0,ts=4) Reserving FN 13 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=13, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=13, TS=4 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 0, MCS-1): 0f 00 00 16 28 fe 03 02 02 02 02 02 02 02 02 02 56 56 56 56 56 56 56 56 56 56 00 -Detected FN jump! 2654167 -> 8 (expected 2654171, delta 61489) +Detected FN jump! 2654167 -> 4 (expected 2654171, delta 61485) MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) appending 512 bytes to DL LLC queue -PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=8 block_nr=2 scheduling free USF for polling at FN=13 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -PDCH(bts=0,trx=0,ts=4) FN=8 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=4 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==1) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 1, CS=MCS-1 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Dequeue next LLC (len=512) @@ -4649,8 +4935,8 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 1) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 1, MCS-1): 07 40 00 96 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=13 block_nr=3 scheduling free USF for polling at FN=17 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -PDCH(bts=0,trx=0,ts=4) FN=13 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=8 block_nr=2 scheduling free USF for polling at FN=13 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} +PDCH(bts=0,trx=0,ts=4) FN=8 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==2) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 2, CS=MCS-1 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 2, MCS-1): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -4658,7 +4944,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 2) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 2, MCS-1): 07 80 00 96 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=17 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=13 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==3) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 3, CS=MCS-1 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 3, MCS-1): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -4666,7 +4952,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 3) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 3, MCS-1): 07 c0 00 96 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=21 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=17 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==4) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 4, CS=MCS-1 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 4, MCS-1): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -4674,7 +4960,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 4) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 4, MCS-1): 07 00 01 96 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=26 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=21 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==5) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 5, CS=MCS-1 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 5, MCS-1): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -4682,7 +4968,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 5) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 5, MCS-1): 07 40 01 96 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=30 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=26 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==6) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 6, CS=MCS-1 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 6, MCS-1): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -4690,7 +4976,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 6) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 6, MCS-1): 07 80 01 96 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=34 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=30 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==7) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 7, CS=MCS-1 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 7, MCS-1): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -4698,7 +4984,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 7) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 7, MCS-1): 07 c0 01 96 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=39 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=34 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==8) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 8, CS=MCS-1 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 8, MCS-1): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -4706,7 +4992,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 8) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 8, MCS-1): 07 00 02 96 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=43 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=39 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==9) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 9, CS=MCS-1 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 9, MCS-1): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -4714,7 +5000,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 9) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 9, MCS-1): 07 40 02 96 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=47 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=43 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==10) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 10, CS=MCS-1 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 10, MCS-1): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -4722,7 +5008,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 10) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 10, MCS-1): 07 80 02 96 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=52 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=47 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==11) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 11, CS=MCS-1 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 11, MCS-1): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -4730,7 +5016,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 11) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 11, MCS-1): 07 c0 02 96 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=56 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=52 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==12) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 12, CS=MCS-1 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 12, MCS-1): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -4738,7 +5024,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 12) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 12, MCS-1): 07 00 03 96 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=60 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=56 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==13) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 13, CS=MCS-1 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 13, MCS-1): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -4746,7 +5032,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 13) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 13, MCS-1): 07 40 03 96 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=65 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=60 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==14) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 14, CS=MCS-1 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 14, MCS-1): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -4754,7 +5040,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 14) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 14, MCS-1): 07 80 03 96 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=69 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=65 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==15) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 15, CS=MCS-1 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 15, MCS-1): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -4762,7 +5048,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 15) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 15, MCS-1): 07 c0 03 96 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=73 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=69 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==16) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 16, CS=MCS-1 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 16, MCS-1): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -4770,7 +5056,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 16) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 16, MCS-1): 07 00 04 96 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=78 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=73 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==17) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 17, CS=MCS-1 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 17, MCS-1): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -4778,7 +5064,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 17) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 17, MCS-1): 07 40 04 96 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=82 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=78 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==18) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 18, CS=MCS-1 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 18, MCS-1): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -4786,7 +5072,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 18) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 18, MCS-1): 07 80 04 96 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=86 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=82 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==19) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 19, CS=MCS-1 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 19, MCS-1): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -4794,7 +5080,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 19) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 19, MCS-1): 07 c0 04 96 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=91 Scheduling data message at RTS for DL TFI=0 prio=5 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=86 Scheduling data message at RTS for DL TFI=0 prio=5 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==20) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 20, CS=MCS-1 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 20, MCS-1): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -4802,12 +5088,12 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 20) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduling Ack/Nack polling, because 20 blocks sent. -PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 91 + 13 = 104 -PDCH(bts=0,trx=0,ts=4) Reserving FN 104 for type POLL -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=104, TS=4) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=104, TS=4 +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 86 + 13 = 99 +PDCH(bts=0,trx=0,ts=4) Reserving FN 99 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=99, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=99, TS=4 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 20, MCS-1): 0f 00 05 96 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=95 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=91 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==21) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 21, CS=MCS-1 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 21, MCS-1): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -4815,8 +5101,8 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 21) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 21, MCS-1): 07 40 05 96 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=99 block_nr=11 scheduling free USF for polling at FN=104 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -PDCH(bts=0,trx=0,ts=4) FN=99 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=95 block_nr=10 scheduling free USF for polling at FN=99 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} +PDCH(bts=0,trx=0,ts=4) FN=95 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==22) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 22, CS=MCS-1 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 22, MCS-1): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -4824,7 +5110,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 22) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 22, MCS-1): 07 80 05 96 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=104 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=99 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==23) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 23, CS=MCS-1 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 23, MCS-1): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -4832,7 +5118,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 23) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 23, MCS-1): 07 c0 05 96 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=108 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=104 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==24) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 24, CS=MCS-1 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=512 @@ -4843,38 +5129,61 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 24) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). -PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 108 + 13 = 121 -PDCH(bts=0,trx=0,ts=4) Reserving FN 121 for type POLL -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=121, TS=4) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=121, TS=4 +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 104 + 13 = 117 +PDCH(bts=0,trx=0,ts=4) Reserving FN 117 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=117, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=117, TS=4 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 24, MCS-1): 0f 00 06 16 18 fe 03 02 02 02 02 02 56 56 56 56 56 56 56 56 56 56 56 56 56 56 00 -Detected FN jump! 8 -> 112 (expected 13, delta 104) -PDCH(bts=0,trx=0,ts=4) Expiring FN=112 but previous FN=13 is still reserved! -PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=13, reason=DL_ASS): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} poll timeout for FN=13, TS=4 (curr FN 112) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} N3105 0 => 1 (< MAX 8) -DL_ASS_TBF(DL:TFI-0-0-0:E){WAIT_ACK}: Received Event ASS_POLL_TIMEOUT -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Timeout for polling PACKET CONTROL ACK for PACKET DOWNLINK ASSIGNMENT: |Assignment was on PACCH|No downlink ACK received yet| -DL_ASS_TBF(DL:TFI-0-0-0:E){WAIT_ACK}: state_chg to SEND_ASS -PDCH(bts=0,trx=0,ts=4) Expiring FN=112 but previous FN=17 is still reserved! -PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=17, reason=DL_ACK): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} poll timeout for FN=17, TS=4 (curr FN 112) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Timeout for polling PACKET DOWNLINK ACK: |Assignment was on PACCH|No downlink ACK received yet| -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} N3105 1 => 2 (< MAX 8) -DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event DL_ACKNACK_MISS -PDCH(bts=0,trx=0,ts=4) Expiring FN=112 but previous FN=104 is still reserved! -PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=104, reason=DL_ACK): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} poll timeout for FN=104, TS=4 (curr FN 112) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} N3105 2 => 3 (< MAX 8) -DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event DL_ACKNACK_MISS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=0)"RRRRRRRRRRRRRRRRRRRRRRRRR"(BSN=24) R=ACK I=NACK TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=0:25, lost=0, recv=25, skipped=0, bsn=0, info='RRRRRRRRRRRRRRRRRRRRRRRRR.......................................' TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=25)""(V(S)-1=24) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Final ACK received. -DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event FINAL_ACK_RECVD -DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to WAIT_RELEASE -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:0, PACCH:1] +PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=112 block_nr=2 scheduling free USF for polling at FN=117 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} +PDCH(bts=0,trx=0,ts=4) FN=164 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==25 .. V(S)==25) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new dummy block at BSN 25, CS=MCS-1 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Empty chunk, added LLC dummy command of size 21, drained_since=60 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Keep idle TBF open: 60/43 -> no +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=21 +DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event LAST_DL_DATA_SENT +DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to FINISHED +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} data block (BSN 25, MCS-1): 2b 43 c0 01 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} need_padding 0 spb_status 0 spb 0 (BSN1 25 BSN2 -1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying data unit 0 (BSN 25) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 164 + 13 = 177 +PDCH(bts=0,trx=0,ts=4) Reserving FN 177 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled DL Acknowledgement polling on PACCH (FN=177, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Starting timer T3191 [final block (DL-TBF)] with 5 sec. 0 microsec, cur_fn=4 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled Ack/Nack polling on FN=177, TS=4 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} msg block (BSN 25, MCS-1): 0f 40 06 16 57 86 80 03 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 00 +Detected FN jump! 4 -> 169 (expected 8, delta 165) +PDCH(bts=0,trx=0,ts=4) Expiring FN=169 but previous FN=13 is still reserved! +PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=13, reason=DL_ACK): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} poll timeout for FN=13, TS=4 (curr FN 169) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Timeout for polling PACKET DOWNLINK ACK: |Assignment was on CCCH|Downlink ACK was received| +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} N3105 0 => 1 (< MAX 8) +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: Received Event DL_ACKNACK_MISS +PDCH(bts=0,trx=0,ts=4) Expiring FN=169 but previous FN=99 is still reserved! +PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=99, reason=DL_ACK): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} poll timeout for FN=99, TS=4 (curr FN 169) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} N3105 1 => 2 (< MAX 8) +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: Received Event DL_ACKNACK_MISS +PDCH(bts=0,trx=0,ts=4) Expiring FN=169 but previous FN=117 is still reserved! +PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=117, reason=DL_ACK): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} poll timeout for FN=117, TS=4 (curr FN 169) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} N3105 2 => 3 (< MAX 8) +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: Received Event DL_ACKNACK_MISS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} stopping timer T3191 [ACK/NACK received] +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} ack: (BSN=25)"R"(BSN=25) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} DL analysis, range=25:26, lost=0, recv=1, skipped=0, bsn=25, info='R...............................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} V(B): (V(A)=26)""(V(S)-1=25) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Final ACK received. +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: Received Event FINAL_ACK_RECVD +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: state_chg to WAIT_RELEASE +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:1, PACCH:0] TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} free PDCH(bts=0,trx=0,ts=4) Detaching TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE}, 1 TBFs, USFs = 00, TFIs = 00000001. MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) Detaching TBF: TBF(DL:E:TLLI-0xffeeddcc){WAIT_RELEASE} @@ -4883,7 +5192,7 @@ MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11) Destroying MS object ********** DL-TBF ends here ********** DL_TBF(DL:TFI-0-0-0:E){WAIT_RELEASE}: Deallocated UL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated -DL_ASS_TBF(DL:TFI-0-0-0:E){SEND_ASS}: Deallocated +DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated Testing MCS-2 Creating MS object Modifying MS object, TLLI = 0xffffffff, MS class 0 -> 11 @@ -4918,25 +5227,15 @@ TBF(DL:TFI-0-0-0:E){NEW} set ass. type CCCH [prev CCCH:0, PACCH:0] DL_TBF(DL:TFI-0-0-0:E){NEW}: state_chg to ASSIGN TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=220 Modifying MS object, TLLI = 0xffffffff, TA 220 -> 0 -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Received Event SCHED_ASS -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: state_chg to SEND_ASS -DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ACK_PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} The TBF has been confirmed on the PACCH, changed type from CCCH to PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} unset ass. type CCCH [prev CCCH:1, PACCH:0] -TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type PACCH [prev CCCH:0, PACCH:0] +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ADD_CCCH +TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type CCCH [prev CCCH:1, PACCH:0] +TBF(DL:TFI-0-0-0:E){ASSIGN} Attempted to set ass. type CCCH which is already set +TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=0 +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_READY_CCCH DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: state_chg to FLOW The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly confirmed MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) appending 10 bytes to DL LLC queue -DL_ASS_TBF(DL:TFI-0-0-0:E){SEND_ASS}: Received Event CREATE_RLCMAC_MSG -PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 0 + 13 = 13 -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} start Packet Downlink Assignment (PACCH) -+++++++++++++++++++++++++ TX : Packet Downlink Assignment +++++++++++++++++++++++++ -------------------------- TX : Packet Downlink Assignment ------------------------- -PDCH(bts=0,trx=0,ts=4) Reserving FN 13 for type POLL -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Assignment polling on PACCH (FN=13, TS=4) -DL_ASS_TBF(DL:TFI-0-0-0:E){SEND_ASS}: state_chg to WAIT_ACK -PDCH(bts=0,trx=0,ts=4) FN=0 Scheduling control message at RTS for TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -PDCH(bts=0,trx=0,ts=4) FN=4 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=0 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==0) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 0, CS=MCS-2 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Dequeue next LLC (len=10) @@ -4948,14 +5247,13 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 0) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). -PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 4 + 13 = 17 -PDCH(bts=0,trx=0,ts=4) Reserving FN 17 for type POLL -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=17, TS=4) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=17, TS=4 +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 0 + 13 = 13 +PDCH(bts=0,trx=0,ts=4) Reserving FN 13 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=13, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=13, TS=4 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 0, MCS-2): 0f 00 00 12 28 fe 03 02 02 02 02 02 02 02 02 02 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 00 MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) appending 512 bytes to DL LLC queue -PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=8 block_nr=2 scheduling free USF for polling at FN=13 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -PDCH(bts=0,trx=0,ts=4) FN=8 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=4 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==1) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 1, CS=MCS-2 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Dequeue next LLC (len=512) @@ -4964,8 +5262,8 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 1) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 1, MCS-2): 07 40 00 92 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=13 block_nr=3 scheduling free USF for polling at FN=17 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -PDCH(bts=0,trx=0,ts=4) FN=13 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=8 block_nr=2 scheduling free USF for polling at FN=13 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} +PDCH(bts=0,trx=0,ts=4) FN=8 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==2) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 2, CS=MCS-2 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 2, MCS-2): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -4973,7 +5271,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 2) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 2, MCS-2): 07 80 00 92 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=17 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=13 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==3) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 3, CS=MCS-2 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 3, MCS-2): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -4981,7 +5279,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 3) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 3, MCS-2): 07 c0 00 92 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=21 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=17 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==4) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 4, CS=MCS-2 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 4, MCS-2): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -4989,7 +5287,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 4) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 4, MCS-2): 07 00 01 92 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=26 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=21 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==5) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 5, CS=MCS-2 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 5, MCS-2): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -4997,7 +5295,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 5) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 5, MCS-2): 07 40 01 92 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=30 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=26 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==6) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 6, CS=MCS-2 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 6, MCS-2): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5005,7 +5303,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 6) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 6, MCS-2): 07 80 01 92 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=34 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=30 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==7) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 7, CS=MCS-2 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 7, MCS-2): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5013,7 +5311,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 7) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 7, MCS-2): 07 c0 01 92 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=39 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=34 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==8) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 8, CS=MCS-2 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 8, MCS-2): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5021,7 +5319,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 8) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 8, MCS-2): 07 00 02 92 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=43 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=39 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==9) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 9, CS=MCS-2 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 9, MCS-2): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5029,7 +5327,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 9) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 9, MCS-2): 07 40 02 92 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=47 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=43 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==10) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 10, CS=MCS-2 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 10, MCS-2): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5037,7 +5335,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 10) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 10, MCS-2): 07 80 02 92 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=52 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=47 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==11) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 11, CS=MCS-2 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 11, MCS-2): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5045,7 +5343,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 11) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 11, MCS-2): 07 c0 02 92 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=56 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=52 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==12) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 12, CS=MCS-2 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 12, MCS-2): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5053,7 +5351,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 12) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 12, MCS-2): 07 00 03 92 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=60 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=56 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==13) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 13, CS=MCS-2 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 13, MCS-2): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5061,7 +5359,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 13) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 13, MCS-2): 07 40 03 92 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=65 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=60 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==14) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 14, CS=MCS-2 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 14, MCS-2): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5069,7 +5367,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 14) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 14, MCS-2): 07 80 03 92 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=69 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=65 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==15) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 15, CS=MCS-2 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 15, MCS-2): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5077,7 +5375,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 15) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 15, MCS-2): 07 c0 03 92 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=73 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=69 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==16) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 16, CS=MCS-2 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 16, MCS-2): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5085,7 +5383,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 16) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 16, MCS-2): 07 00 04 92 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=78 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=73 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==17) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 17, CS=MCS-2 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 17, MCS-2): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5093,7 +5391,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 17) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 17, MCS-2): 07 40 04 92 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=82 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=78 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==18) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 18, CS=MCS-2 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 18, MCS-2): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5101,7 +5399,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 18) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 18, MCS-2): 07 80 04 92 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=86 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=82 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==19) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 19, CS=MCS-2 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=512 @@ -5112,32 +5410,55 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 19) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). -PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 86 + 13 = 99 -PDCH(bts=0,trx=0,ts=4) Reserving FN 99 for type POLL -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=99, TS=4) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=99, TS=4 +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 82 + 13 = 95 +PDCH(bts=0,trx=0,ts=4) Reserving FN 95 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=95, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=95, TS=4 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 19, MCS-2): 0f c0 04 12 20 fe 03 02 02 02 02 02 02 02 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 00 -PDCH(bts=0,trx=0,ts=4) Expiring FN=91 but previous FN=13 is still reserved! -PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=13, reason=DL_ASS): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} poll timeout for FN=13, TS=4 (curr FN 112) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} N3105 0 => 1 (< MAX 8) -DL_ASS_TBF(DL:TFI-0-0-0:E){WAIT_ACK}: Received Event ASS_POLL_TIMEOUT -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Timeout for polling PACKET CONTROL ACK for PACKET DOWNLINK ASSIGNMENT: |Assignment was on PACCH|No downlink ACK received yet| -DL_ASS_TBF(DL:TFI-0-0-0:E){WAIT_ACK}: state_chg to SEND_ASS -PDCH(bts=0,trx=0,ts=4) Expiring FN=91 but previous FN=17 is still reserved! -PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=17, reason=DL_ACK): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} poll timeout for FN=17, TS=4 (curr FN 112) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Timeout for polling PACKET DOWNLINK ACK: |Assignment was on PACCH|No downlink ACK received yet| -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} N3105 1 => 2 (< MAX 8) -DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event DL_ACKNACK_MISS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=0)"RRRRRRRRRRRRRRRRRRRR"(BSN=19) R=ACK I=NACK TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=0:20, lost=0, recv=20, skipped=0, bsn=0, info='RRRRRRRRRRRRRRRRRRRR............................................' TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=20)""(V(S)-1=19) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Final ACK received. -DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event FINAL_ACK_RECVD -DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to WAIT_RELEASE -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:0, PACCH:1] +PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=91 block_nr=9 scheduling free USF for polling at FN=95 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} +PDCH(bts=0,trx=0,ts=4) FN=143 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==20 .. V(S)==20) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new dummy block at BSN 20, CS=MCS-2 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Empty chunk, added LLC dummy command of size 27, drained_since=61 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Keep idle TBF open: 61/43 -> no +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=27 +DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event LAST_DL_DATA_SENT +DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to FINISHED +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} data block (BSN 20, MCS-2): 37 43 c0 01 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} need_padding 0 spb_status 0 spb 0 (BSN1 20 BSN2 -1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying data unit 0 (BSN 20) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 143 + 13 = 156 +PDCH(bts=0,trx=0,ts=4) Reserving FN 156 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled DL Acknowledgement polling on PACCH (FN=156, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Starting timer T3191 [final block (DL-TBF)] with 5 sec. 0 microsec, cur_fn=169 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled Ack/Nack polling on FN=156, TS=4 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} msg block (BSN 20, MCS-2): 0f 00 05 12 6f 86 80 03 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 00 +PDCH(bts=0,trx=0,ts=4) Expiring FN=147 but previous FN=13 is still reserved! +PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=13, reason=DL_ACK): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} poll timeout for FN=13, TS=4 (curr FN 169) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Timeout for polling PACKET DOWNLINK ACK: |Assignment was on CCCH|Downlink ACK was received| +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} N3105 0 => 1 (< MAX 8) +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: Received Event DL_ACKNACK_MISS +PDCH(bts=0,trx=0,ts=4) Expiring FN=147 but previous FN=95 is still reserved! +PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=95, reason=DL_ACK): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} poll timeout for FN=95, TS=4 (curr FN 169) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} N3105 1 => 2 (< MAX 8) +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: Received Event DL_ACKNACK_MISS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} stopping timer T3191 [ACK/NACK received] +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} ack: (BSN=20)"R"(BSN=20) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} DL analysis, range=20:21, lost=0, recv=1, skipped=0, bsn=20, info='R...............................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} V(B): (V(A)=21)""(V(S)-1=20) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Final ACK received. +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: Received Event FINAL_ACK_RECVD +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: state_chg to WAIT_RELEASE +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:1, PACCH:0] TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} free PDCH(bts=0,trx=0,ts=4) Detaching TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE}, 1 TBFs, USFs = 00, TFIs = 00000001. MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) Detaching TBF: TBF(DL:E:TLLI-0xffeeddcc){WAIT_RELEASE} @@ -5146,7 +5467,7 @@ MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11) Destroying MS object ********** DL-TBF ends here ********** DL_TBF(DL:TFI-0-0-0:E){WAIT_RELEASE}: Deallocated UL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated -DL_ASS_TBF(DL:TFI-0-0-0:E){SEND_ASS}: Deallocated +DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated Testing MCS-3 Creating MS object Modifying MS object, TLLI = 0xffffffff, MS class 0 -> 11 @@ -5181,25 +5502,15 @@ TBF(DL:TFI-0-0-0:E){NEW} set ass. type CCCH [prev CCCH:0, PACCH:0] DL_TBF(DL:TFI-0-0-0:E){NEW}: state_chg to ASSIGN TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=220 Modifying MS object, TLLI = 0xffffffff, TA 220 -> 0 -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Received Event SCHED_ASS -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: state_chg to SEND_ASS -DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ACK_PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} The TBF has been confirmed on the PACCH, changed type from CCCH to PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} unset ass. type CCCH [prev CCCH:1, PACCH:0] -TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type PACCH [prev CCCH:0, PACCH:0] +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ADD_CCCH +TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type CCCH [prev CCCH:1, PACCH:0] +TBF(DL:TFI-0-0-0:E){ASSIGN} Attempted to set ass. type CCCH which is already set +TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=0 +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_READY_CCCH DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: state_chg to FLOW The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly confirmed MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) appending 10 bytes to DL LLC queue -DL_ASS_TBF(DL:TFI-0-0-0:E){SEND_ASS}: Received Event CREATE_RLCMAC_MSG -PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 0 + 13 = 13 -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} start Packet Downlink Assignment (PACCH) -+++++++++++++++++++++++++ TX : Packet Downlink Assignment +++++++++++++++++++++++++ -------------------------- TX : Packet Downlink Assignment ------------------------- -PDCH(bts=0,trx=0,ts=4) Reserving FN 13 for type POLL -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Assignment polling on PACCH (FN=13, TS=4) -DL_ASS_TBF(DL:TFI-0-0-0:E){SEND_ASS}: state_chg to WAIT_ACK -PDCH(bts=0,trx=0,ts=4) FN=0 Scheduling control message at RTS for TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -PDCH(bts=0,trx=0,ts=4) FN=4 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=0 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==0) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 0, CS=MCS-3 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Dequeue next LLC (len=10) @@ -5211,14 +5522,13 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 0) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). -PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 4 + 13 = 17 -PDCH(bts=0,trx=0,ts=4) Reserving FN 17 for type POLL -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=17, TS=4) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=17, TS=4 +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 0 + 13 = 13 +PDCH(bts=0,trx=0,ts=4) Reserving FN 13 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=13, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=13, TS=4 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 0, MCS-3): 0f 00 00 06 28 fe 03 02 02 02 02 02 02 02 02 02 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 00 MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) appending 512 bytes to DL LLC queue -PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=8 block_nr=2 scheduling free USF for polling at FN=13 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -PDCH(bts=0,trx=0,ts=4) FN=8 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=4 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==1) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 1, CS=MCS-3 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Dequeue next LLC (len=512) @@ -5227,8 +5537,8 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 1) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 1, MCS-3): 07 40 00 86 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=13 block_nr=3 scheduling free USF for polling at FN=17 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -PDCH(bts=0,trx=0,ts=4) FN=13 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=8 block_nr=2 scheduling free USF for polling at FN=13 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} +PDCH(bts=0,trx=0,ts=4) FN=8 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==2) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 2, CS=MCS-3 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 2, MCS-3): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5236,7 +5546,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 2) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 2, MCS-3): 07 80 00 86 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=17 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=13 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==3) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 3, CS=MCS-3 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 3, MCS-3): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5244,7 +5554,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 3) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 3, MCS-3): 07 c0 00 86 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=21 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=17 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==4) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 4, CS=MCS-3 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 4, MCS-3): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5252,7 +5562,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 4) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 4, MCS-3): 07 00 01 86 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=26 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=21 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==5) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 5, CS=MCS-3 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 5, MCS-3): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5260,7 +5570,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 5) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 5, MCS-3): 07 40 01 86 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=30 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=26 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==6) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 6, CS=MCS-3 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 6, MCS-3): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5268,7 +5578,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 6) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 6, MCS-3): 07 80 01 86 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=34 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=30 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==7) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 7, CS=MCS-3 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 7, MCS-3): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5276,7 +5586,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 7) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 7, MCS-3): 07 c0 01 86 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=39 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=34 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==8) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 8, CS=MCS-3 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 8, MCS-3): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5284,7 +5594,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 8) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 8, MCS-3): 07 00 02 86 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=43 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=39 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==9) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 9, CS=MCS-3 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 9, MCS-3): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5292,7 +5602,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 9) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 9, MCS-3): 07 40 02 86 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=47 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=43 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==10) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 10, CS=MCS-3 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 10, MCS-3): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5300,7 +5610,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 10) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 10, MCS-3): 07 80 02 86 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=52 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=47 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==11) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 11, CS=MCS-3 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 11, MCS-3): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5308,7 +5618,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 11) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 11, MCS-3): 07 c0 02 86 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=56 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=52 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==12) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 12, CS=MCS-3 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 12, MCS-3): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5316,7 +5626,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 12) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 12, MCS-3): 07 00 03 86 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=60 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=56 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==13) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 13, CS=MCS-3 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 13, MCS-3): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5324,7 +5634,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 13) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 13, MCS-3): 07 40 03 86 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=65 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=60 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==14) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 14, CS=MCS-3 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=512 @@ -5335,32 +5645,55 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 14) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). -PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 65 + 13 = 78 -PDCH(bts=0,trx=0,ts=4) Reserving FN 78 for type POLL -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=78, TS=4) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=78, TS=4 +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 60 + 13 = 73 +PDCH(bts=0,trx=0,ts=4) Reserving FN 73 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=73, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=73, TS=4 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 14, MCS-3): 0f 80 03 06 7c fe 03 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 56 56 56 56 00 -PDCH(bts=0,trx=0,ts=4) Expiring FN=69 but previous FN=13 is still reserved! -PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=13, reason=DL_ASS): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} poll timeout for FN=13, TS=4 (curr FN 112) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} N3105 0 => 1 (< MAX 8) -DL_ASS_TBF(DL:TFI-0-0-0:E){WAIT_ACK}: Received Event ASS_POLL_TIMEOUT -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Timeout for polling PACKET CONTROL ACK for PACKET DOWNLINK ASSIGNMENT: |Assignment was on PACCH|No downlink ACK received yet| -DL_ASS_TBF(DL:TFI-0-0-0:E){WAIT_ACK}: state_chg to SEND_ASS -PDCH(bts=0,trx=0,ts=4) Expiring FN=69 but previous FN=17 is still reserved! -PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=17, reason=DL_ACK): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} poll timeout for FN=17, TS=4 (curr FN 112) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Timeout for polling PACKET DOWNLINK ACK: |Assignment was on PACCH|No downlink ACK received yet| -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} N3105 1 => 2 (< MAX 8) -DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event DL_ACKNACK_MISS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=0)"RRRRRRRRRRRRRRR"(BSN=14) R=ACK I=NACK TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=0:15, lost=0, recv=15, skipped=0, bsn=0, info='RRRRRRRRRRRRRRR.................................................' TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=15)""(V(S)-1=14) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Final ACK received. -DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event FINAL_ACK_RECVD -DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to WAIT_RELEASE -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:0, PACCH:1] +PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=69 block_nr=4 scheduling free USF for polling at FN=73 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} +PDCH(bts=0,trx=0,ts=4) FN=117 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==15 .. V(S)==15) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new dummy block at BSN 15, CS=MCS-3 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Empty chunk, added LLC dummy command of size 36, drained_since=57 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Keep idle TBF open: 57/43 -> no +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=36 +DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event LAST_DL_DATA_SENT +DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to FINISHED +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} data block (BSN 15, MCS-3): 49 43 c0 01 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} need_padding 0 spb_status 0 spb 0 (BSN1 15 BSN2 -1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying data unit 0 (BSN 15) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 117 + 13 = 130 +PDCH(bts=0,trx=0,ts=4) Reserving FN 130 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled DL Acknowledgement polling on PACCH (FN=130, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Starting timer T3191 [final block (DL-TBF)] with 5 sec. 0 microsec, cur_fn=169 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled Ack/Nack polling on FN=130, TS=4 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} msg block (BSN 15, MCS-3): 0f c0 03 06 93 86 80 03 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 00 +PDCH(bts=0,trx=0,ts=4) Expiring FN=121 but previous FN=13 is still reserved! +PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=13, reason=DL_ACK): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} poll timeout for FN=13, TS=4 (curr FN 169) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Timeout for polling PACKET DOWNLINK ACK: |Assignment was on CCCH|Downlink ACK was received| +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} N3105 0 => 1 (< MAX 8) +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: Received Event DL_ACKNACK_MISS +PDCH(bts=0,trx=0,ts=4) Expiring FN=121 but previous FN=73 is still reserved! +PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=73, reason=DL_ACK): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} poll timeout for FN=73, TS=4 (curr FN 169) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} N3105 1 => 2 (< MAX 8) +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: Received Event DL_ACKNACK_MISS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} stopping timer T3191 [ACK/NACK received] +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} ack: (BSN=15)"R"(BSN=15) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} DL analysis, range=15:16, lost=0, recv=1, skipped=0, bsn=15, info='R...............................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} V(B): (V(A)=16)""(V(S)-1=15) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Final ACK received. +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: Received Event FINAL_ACK_RECVD +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: state_chg to WAIT_RELEASE +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:1, PACCH:0] TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} free PDCH(bts=0,trx=0,ts=4) Detaching TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE}, 1 TBFs, USFs = 00, TFIs = 00000001. MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) Detaching TBF: TBF(DL:E:TLLI-0xffeeddcc){WAIT_RELEASE} @@ -5369,7 +5702,7 @@ MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11) Destroying MS object ********** DL-TBF ends here ********** DL_TBF(DL:TFI-0-0-0:E){WAIT_RELEASE}: Deallocated UL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated -DL_ASS_TBF(DL:TFI-0-0-0:E){SEND_ASS}: Deallocated +DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated Testing MCS-4 Creating MS object Modifying MS object, TLLI = 0xffffffff, MS class 0 -> 11 @@ -5404,25 +5737,15 @@ TBF(DL:TFI-0-0-0:E){NEW} set ass. type CCCH [prev CCCH:0, PACCH:0] DL_TBF(DL:TFI-0-0-0:E){NEW}: state_chg to ASSIGN TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=220 Modifying MS object, TLLI = 0xffffffff, TA 220 -> 0 -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Received Event SCHED_ASS -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: state_chg to SEND_ASS -DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ACK_PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} The TBF has been confirmed on the PACCH, changed type from CCCH to PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} unset ass. type CCCH [prev CCCH:1, PACCH:0] -TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type PACCH [prev CCCH:0, PACCH:0] +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ADD_CCCH +TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type CCCH [prev CCCH:1, PACCH:0] +TBF(DL:TFI-0-0-0:E){ASSIGN} Attempted to set ass. type CCCH which is already set +TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=0 +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_READY_CCCH DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: state_chg to FLOW The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly confirmed MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) appending 10 bytes to DL LLC queue -DL_ASS_TBF(DL:TFI-0-0-0:E){SEND_ASS}: Received Event CREATE_RLCMAC_MSG -PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 0 + 13 = 13 -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} start Packet Downlink Assignment (PACCH) -+++++++++++++++++++++++++ TX : Packet Downlink Assignment +++++++++++++++++++++++++ -------------------------- TX : Packet Downlink Assignment ------------------------- -PDCH(bts=0,trx=0,ts=4) Reserving FN 13 for type POLL -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Assignment polling on PACCH (FN=13, TS=4) -DL_ASS_TBF(DL:TFI-0-0-0:E){SEND_ASS}: state_chg to WAIT_ACK -PDCH(bts=0,trx=0,ts=4) FN=0 Scheduling control message at RTS for TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -PDCH(bts=0,trx=0,ts=4) FN=4 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=0 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==0) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 0, CS=MCS-4 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Dequeue next LLC (len=10) @@ -5434,14 +5757,13 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 0) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). -PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 4 + 13 = 17 -PDCH(bts=0,trx=0,ts=4) Reserving FN 17 for type POLL -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=17, TS=4) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=17, TS=4 +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 0 + 13 = 13 +PDCH(bts=0,trx=0,ts=4) Reserving FN 13 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=13, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=13, TS=4 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 0, MCS-4): 0f 00 00 00 28 fe 03 02 02 02 02 02 02 02 02 02 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 00 MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) appending 512 bytes to DL LLC queue -PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=8 block_nr=2 scheduling free USF for polling at FN=13 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -PDCH(bts=0,trx=0,ts=4) FN=8 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=4 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==1) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 1, CS=MCS-4 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Dequeue next LLC (len=512) @@ -5450,8 +5772,8 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 1) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 1, MCS-4): 07 40 00 80 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=13 block_nr=3 scheduling free USF for polling at FN=17 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -PDCH(bts=0,trx=0,ts=4) FN=13 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=8 block_nr=2 scheduling free USF for polling at FN=13 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} +PDCH(bts=0,trx=0,ts=4) FN=8 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==2) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 2, CS=MCS-4 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 2, MCS-4): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5459,7 +5781,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 2) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 2, MCS-4): 07 80 00 80 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=17 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=13 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==3) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 3, CS=MCS-4 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 3, MCS-4): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5467,7 +5789,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 3) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 3, MCS-4): 07 c0 00 80 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=21 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=17 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==4) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 4, CS=MCS-4 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 4, MCS-4): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5475,7 +5797,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 4) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 4, MCS-4): 07 00 01 80 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=26 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=21 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==5) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 5, CS=MCS-4 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 5, MCS-4): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5483,7 +5805,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 5) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 5, MCS-4): 07 40 01 80 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=30 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=26 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==6) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 6, CS=MCS-4 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 6, MCS-4): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5491,7 +5813,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 6) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 6, MCS-4): 07 80 01 80 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=34 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=30 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==7) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 7, CS=MCS-4 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 7, MCS-4): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5499,7 +5821,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 7) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 7, MCS-4): 07 c0 01 80 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=39 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=34 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==8) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 8, CS=MCS-4 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 8, MCS-4): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5507,7 +5829,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 8) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 8, MCS-4): 07 00 02 80 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=43 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=39 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==9) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 9, CS=MCS-4 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 9, MCS-4): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5515,7 +5837,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 9) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 9, MCS-4): 07 40 02 80 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=47 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=43 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==10) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 10, CS=MCS-4 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 10, MCS-4): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5523,7 +5845,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 10) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 10, MCS-4): 07 80 02 80 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=52 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=47 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==11) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 11, CS=MCS-4 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 11, MCS-4): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5531,7 +5853,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 11) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 11, MCS-4): 07 c0 02 80 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 00 -PDCH(bts=0,trx=0,ts=4) FN=56 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=52 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==12) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 12, CS=MCS-4 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=512 @@ -5542,32 +5864,55 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 12) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). -PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 56 + 13 = 69 -PDCH(bts=0,trx=0,ts=4) Reserving FN 69 for type POLL -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=69, TS=4) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=69, TS=4 +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 52 + 13 = 65 +PDCH(bts=0,trx=0,ts=4) Reserving FN 65 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=65, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=65, TS=4 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 12, MCS-4): 0f 00 03 00 70 fe 03 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 02 56 56 56 56 56 56 56 56 56 56 56 56 56 56 00 -PDCH(bts=0,trx=0,ts=4) Expiring FN=60 but previous FN=13 is still reserved! -PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=13, reason=DL_ASS): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} poll timeout for FN=13, TS=4 (curr FN 112) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} N3105 0 => 1 (< MAX 8) -DL_ASS_TBF(DL:TFI-0-0-0:E){WAIT_ACK}: Received Event ASS_POLL_TIMEOUT -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Timeout for polling PACKET CONTROL ACK for PACKET DOWNLINK ASSIGNMENT: |Assignment was on PACCH|No downlink ACK received yet| -DL_ASS_TBF(DL:TFI-0-0-0:E){WAIT_ACK}: state_chg to SEND_ASS -PDCH(bts=0,trx=0,ts=4) Expiring FN=60 but previous FN=17 is still reserved! -PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=17, reason=DL_ACK): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} poll timeout for FN=17, TS=4 (curr FN 112) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Timeout for polling PACKET DOWNLINK ACK: |Assignment was on PACCH|No downlink ACK received yet| -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} N3105 1 => 2 (< MAX 8) -DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event DL_ACKNACK_MISS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=0)"RRRRRRRRRRRRR"(BSN=12) R=ACK I=NACK TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=0:13, lost=0, recv=13, skipped=0, bsn=0, info='RRRRRRRRRRRRR...................................................' TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=13)""(V(S)-1=12) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Final ACK received. -DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event FINAL_ACK_RECVD -DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to WAIT_RELEASE -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:0, PACCH:1] +PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=60 block_nr=2 scheduling free USF for polling at FN=65 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} +PDCH(bts=0,trx=0,ts=4) FN=112 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==13 .. V(S)==13) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new dummy block at BSN 13, CS=MCS-4 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Empty chunk, added LLC dummy command of size 43, drained_since=60 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Keep idle TBF open: 60/43 -> no +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=43 +DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event LAST_DL_DATA_SENT +DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to FINISHED +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} data block (BSN 13, MCS-4): 57 43 c0 01 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} need_padding 0 spb_status 0 spb 0 (BSN1 13 BSN2 -1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying data unit 0 (BSN 13) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 112 + 13 = 125 +PDCH(bts=0,trx=0,ts=4) Reserving FN 125 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled DL Acknowledgement polling on PACCH (FN=125, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Starting timer T3191 [final block (DL-TBF)] with 5 sec. 0 microsec, cur_fn=169 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled Ack/Nack polling on FN=125, TS=4 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} msg block (BSN 13, MCS-4): 0f 40 03 00 af 86 80 03 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 00 +PDCH(bts=0,trx=0,ts=4) Expiring FN=117 but previous FN=13 is still reserved! +PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=13, reason=DL_ACK): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} poll timeout for FN=13, TS=4 (curr FN 169) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Timeout for polling PACKET DOWNLINK ACK: |Assignment was on CCCH|Downlink ACK was received| +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} N3105 0 => 1 (< MAX 8) +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: Received Event DL_ACKNACK_MISS +PDCH(bts=0,trx=0,ts=4) Expiring FN=117 but previous FN=65 is still reserved! +PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=65, reason=DL_ACK): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} poll timeout for FN=65, TS=4 (curr FN 169) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} N3105 1 => 2 (< MAX 8) +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: Received Event DL_ACKNACK_MISS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} stopping timer T3191 [ACK/NACK received] +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} ack: (BSN=13)"R"(BSN=13) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} DL analysis, range=13:14, lost=0, recv=1, skipped=0, bsn=13, info='R...............................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} V(B): (V(A)=14)""(V(S)-1=13) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Final ACK received. +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: Received Event FINAL_ACK_RECVD +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: state_chg to WAIT_RELEASE +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:1, PACCH:0] TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} free PDCH(bts=0,trx=0,ts=4) Detaching TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE}, 1 TBFs, USFs = 00, TFIs = 00000001. MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) Detaching TBF: TBF(DL:E:TLLI-0xffeeddcc){WAIT_RELEASE} @@ -5576,7 +5921,7 @@ MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11) Destroying MS object ********** DL-TBF ends here ********** DL_TBF(DL:TFI-0-0-0:E){WAIT_RELEASE}: Deallocated UL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated -DL_ASS_TBF(DL:TFI-0-0-0:E){SEND_ASS}: Deallocated +DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated Testing MCS-5 Creating MS object Modifying MS object, TLLI = 0xffffffff, MS class 0 -> 11 @@ -5611,25 +5956,15 @@ TBF(DL:TFI-0-0-0:E){NEW} set ass. type CCCH [prev CCCH:0, PACCH:0] DL_TBF(DL:TFI-0-0-0:E){NEW}: state_chg to ASSIGN TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=220 Modifying MS object, TLLI = 0xffffffff, TA 220 -> 0 -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Received Event SCHED_ASS -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: state_chg to SEND_ASS -DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ACK_PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} The TBF has been confirmed on the PACCH, changed type from CCCH to PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} unset ass. type CCCH [prev CCCH:1, PACCH:0] -TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type PACCH [prev CCCH:0, PACCH:0] +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ADD_CCCH +TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type CCCH [prev CCCH:1, PACCH:0] +TBF(DL:TFI-0-0-0:E){ASSIGN} Attempted to set ass. type CCCH which is already set +TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=0 +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_READY_CCCH DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: state_chg to FLOW The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly confirmed MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) appending 10 bytes to DL LLC queue -DL_ASS_TBF(DL:TFI-0-0-0:E){SEND_ASS}: Received Event CREATE_RLCMAC_MSG -PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 0 + 13 = 13 -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} start Packet Downlink Assignment (PACCH) -+++++++++++++++++++++++++ TX : Packet Downlink Assignment +++++++++++++++++++++++++ -------------------------- TX : Packet Downlink Assignment ------------------------- -PDCH(bts=0,trx=0,ts=4) Reserving FN 13 for type POLL -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Assignment polling on PACCH (FN=13, TS=4) -DL_ASS_TBF(DL:TFI-0-0-0:E){SEND_ASS}: state_chg to WAIT_ACK -PDCH(bts=0,trx=0,ts=4) FN=0 Scheduling control message at RTS for TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -PDCH(bts=0,trx=0,ts=4) FN=4 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=0 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==0) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 0, CS=MCS-5 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Dequeue next LLC (len=10) @@ -5641,14 +5976,13 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 0) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). -PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 4 + 13 = 17 -PDCH(bts=0,trx=0,ts=4) Reserving FN 17 for type POLL -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=17, TS=4) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=17, TS=4 +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 0 + 13 = 13 +PDCH(bts=0,trx=0,ts=4) Reserving FN 13 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=13, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=13, TS=4 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 0, MCS-5): 0f 00 00 08 c5 7f 40 40 40 40 40 40 40 40 40 c0 ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca 0a MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) appending 512 bytes to DL LLC queue -PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=8 block_nr=2 scheduling free USF for polling at FN=13 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -PDCH(bts=0,trx=0,ts=4) FN=8 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=4 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==1) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 1, CS=MCS-5 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Dequeue next LLC (len=512) @@ -5657,8 +5991,8 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 1) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 1, MCS-5): 07 40 00 58 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 00 -PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=13 block_nr=3 scheduling free USF for polling at FN=17 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -PDCH(bts=0,trx=0,ts=4) FN=13 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=8 block_nr=2 scheduling free USF for polling at FN=13 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} +PDCH(bts=0,trx=0,ts=4) FN=8 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==2) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 2, CS=MCS-5 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 2, MCS-5): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5666,7 +6000,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 2) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 2, MCS-5): 07 80 00 58 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 00 -PDCH(bts=0,trx=0,ts=4) FN=17 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=13 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==3) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 3, CS=MCS-5 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 3, MCS-5): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5674,7 +6008,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 3) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 3, MCS-5): 07 c0 00 58 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 00 -PDCH(bts=0,trx=0,ts=4) FN=21 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=17 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==4) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 4, CS=MCS-5 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 4, MCS-5): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5682,7 +6016,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 4) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 4, MCS-5): 07 00 01 58 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 00 -PDCH(bts=0,trx=0,ts=4) FN=26 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=21 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==5) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 5, CS=MCS-5 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 5, MCS-5): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5690,7 +6024,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 5) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 5, MCS-5): 07 40 01 58 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 00 -PDCH(bts=0,trx=0,ts=4) FN=30 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=26 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==6) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 6, CS=MCS-5 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 6, MCS-5): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5698,7 +6032,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 6) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 6, MCS-5): 07 80 01 58 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 00 -PDCH(bts=0,trx=0,ts=4) FN=34 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=30 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==7) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 7, CS=MCS-5 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 7, MCS-5): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5706,7 +6040,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 7) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 7, MCS-5): 07 c0 01 58 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 00 -PDCH(bts=0,trx=0,ts=4) FN=39 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=34 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==8) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 8, CS=MCS-5 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 8, MCS-5): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5714,7 +6048,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 8) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 8, MCS-5): 07 00 02 58 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 00 -PDCH(bts=0,trx=0,ts=4) FN=43 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=39 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==9) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 9, CS=MCS-5 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 9, MCS-5): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5722,7 +6056,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 9) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 9, MCS-5): 07 40 02 58 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 00 -PDCH(bts=0,trx=0,ts=4) FN=47 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=43 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==10) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 10, CS=MCS-5 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=512 @@ -5733,32 +6067,55 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 10) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). -PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 47 + 13 = 60 -PDCH(bts=0,trx=0,ts=4) Reserving FN 60 for type POLL -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=60, TS=4) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=60, TS=4 +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 43 + 13 = 56 +PDCH(bts=0,trx=0,ts=4) Reserving FN 56 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=56, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=56, TS=4 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 10, MCS-5): 0f 80 02 08 c4 7f 40 40 40 40 40 40 40 c0 ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca 0a -PDCH(bts=0,trx=0,ts=4) Expiring FN=52 but previous FN=13 is still reserved! -PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=13, reason=DL_ASS): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} poll timeout for FN=13, TS=4 (curr FN 112) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} N3105 0 => 1 (< MAX 8) -DL_ASS_TBF(DL:TFI-0-0-0:E){WAIT_ACK}: Received Event ASS_POLL_TIMEOUT -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Timeout for polling PACKET CONTROL ACK for PACKET DOWNLINK ASSIGNMENT: |Assignment was on PACCH|No downlink ACK received yet| -DL_ASS_TBF(DL:TFI-0-0-0:E){WAIT_ACK}: state_chg to SEND_ASS -PDCH(bts=0,trx=0,ts=4) Expiring FN=52 but previous FN=17 is still reserved! -PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=17, reason=DL_ACK): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} poll timeout for FN=17, TS=4 (curr FN 112) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Timeout for polling PACKET DOWNLINK ACK: |Assignment was on PACCH|No downlink ACK received yet| -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} N3105 1 => 2 (< MAX 8) -DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event DL_ACKNACK_MISS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=0)"RRRRRRRRRRR"(BSN=10) R=ACK I=NACK TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=0:11, lost=0, recv=11, skipped=0, bsn=0, info='RRRRRRRRRRR.....................................................' TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=11)""(V(S)-1=10) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Final ACK received. -DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event FINAL_ACK_RECVD -DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to WAIT_RELEASE -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:0, PACCH:1] +PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=52 block_nr=0 scheduling free USF for polling at FN=56 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} +PDCH(bts=0,trx=0,ts=4) FN=104 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==11 .. V(S)==11) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new dummy block at BSN 11, CS=MCS-5 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Empty chunk, added LLC dummy command of size 55, drained_since=61 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Keep idle TBF open: 61/43 -> no +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=55 +DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event LAST_DL_DATA_SENT +DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to FINISHED +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} data block (BSN 11, MCS-5): 6f 43 c0 01 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} need_padding 0 spb_status 0 spb 0 (BSN1 11 BSN2 -1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying data unit 0 (BSN 11) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 104 + 13 = 117 +PDCH(bts=0,trx=0,ts=4) Reserving FN 117 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled DL Acknowledgement polling on PACCH (FN=117, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Starting timer T3191 [final block (DL-TBF)] with 5 sec. 0 microsec, cur_fn=169 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled Ack/Nack polling on FN=117, TS=4 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} msg block (BSN 11, MCS-5): 0f c0 02 e8 db 10 70 c0 ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca 0a +PDCH(bts=0,trx=0,ts=4) Expiring FN=108 but previous FN=13 is still reserved! +PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=13, reason=DL_ACK): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} poll timeout for FN=13, TS=4 (curr FN 169) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Timeout for polling PACKET DOWNLINK ACK: |Assignment was on CCCH|Downlink ACK was received| +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} N3105 0 => 1 (< MAX 8) +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: Received Event DL_ACKNACK_MISS +PDCH(bts=0,trx=0,ts=4) Expiring FN=108 but previous FN=56 is still reserved! +PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=56, reason=DL_ACK): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} poll timeout for FN=56, TS=4 (curr FN 169) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} N3105 1 => 2 (< MAX 8) +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: Received Event DL_ACKNACK_MISS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} stopping timer T3191 [ACK/NACK received] +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} ack: (BSN=11)"R"(BSN=11) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} DL analysis, range=11:12, lost=0, recv=1, skipped=0, bsn=11, info='R...............................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} V(B): (V(A)=12)""(V(S)-1=11) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Final ACK received. +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: Received Event FINAL_ACK_RECVD +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: state_chg to WAIT_RELEASE +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:1, PACCH:0] TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} free PDCH(bts=0,trx=0,ts=4) Detaching TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE}, 1 TBFs, USFs = 00, TFIs = 00000001. MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) Detaching TBF: TBF(DL:E:TLLI-0xffeeddcc){WAIT_RELEASE} @@ -5767,7 +6124,7 @@ MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11) Destroying MS object ********** DL-TBF ends here ********** DL_TBF(DL:TFI-0-0-0:E){WAIT_RELEASE}: Deallocated UL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated -DL_ASS_TBF(DL:TFI-0-0-0:E){SEND_ASS}: Deallocated +DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated Testing MCS-6 Creating MS object Modifying MS object, TLLI = 0xffffffff, MS class 0 -> 11 @@ -5802,25 +6159,15 @@ TBF(DL:TFI-0-0-0:E){NEW} set ass. type CCCH [prev CCCH:0, PACCH:0] DL_TBF(DL:TFI-0-0-0:E){NEW}: state_chg to ASSIGN TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=220 Modifying MS object, TLLI = 0xffffffff, TA 220 -> 0 -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Received Event SCHED_ASS -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: state_chg to SEND_ASS -DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ACK_PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} The TBF has been confirmed on the PACCH, changed type from CCCH to PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} unset ass. type CCCH [prev CCCH:1, PACCH:0] -TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type PACCH [prev CCCH:0, PACCH:0] +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ADD_CCCH +TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type CCCH [prev CCCH:1, PACCH:0] +TBF(DL:TFI-0-0-0:E){ASSIGN} Attempted to set ass. type CCCH which is already set +TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=0 +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_READY_CCCH DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: state_chg to FLOW The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly confirmed MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) appending 10 bytes to DL LLC queue -DL_ASS_TBF(DL:TFI-0-0-0:E){SEND_ASS}: Received Event CREATE_RLCMAC_MSG -PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 0 + 13 = 13 -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} start Packet Downlink Assignment (PACCH) -+++++++++++++++++++++++++ TX : Packet Downlink Assignment +++++++++++++++++++++++++ -------------------------- TX : Packet Downlink Assignment ------------------------- -PDCH(bts=0,trx=0,ts=4) Reserving FN 13 for type POLL -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Assignment polling on PACCH (FN=13, TS=4) -DL_ASS_TBF(DL:TFI-0-0-0:E){SEND_ASS}: state_chg to WAIT_ACK -PDCH(bts=0,trx=0,ts=4) FN=0 Scheduling control message at RTS for TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -PDCH(bts=0,trx=0,ts=4) FN=4 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=0 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==0) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 0, CS=MCS-6 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Dequeue next LLC (len=10) @@ -5832,14 +6179,13 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 0) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). -PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 4 + 13 = 17 -PDCH(bts=0,trx=0,ts=4) Reserving FN 17 for type POLL -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=17, TS=4) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=17, TS=4 +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 0 + 13 = 13 +PDCH(bts=0,trx=0,ts=4) Reserving FN 13 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=13, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=13, TS=4 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 0, MCS-6): 0f 00 00 00 c5 7f 40 40 40 40 40 40 40 40 40 c0 ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca 0a MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) appending 512 bytes to DL LLC queue -PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=8 block_nr=2 scheduling free USF for polling at FN=13 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -PDCH(bts=0,trx=0,ts=4) FN=8 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=4 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==1) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 1, CS=MCS-6 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Dequeue next LLC (len=512) @@ -5848,8 +6194,8 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 1) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 1, MCS-6): 07 40 00 50 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 00 -PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=13 block_nr=3 scheduling free USF for polling at FN=17 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -PDCH(bts=0,trx=0,ts=4) FN=13 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=8 block_nr=2 scheduling free USF for polling at FN=13 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} +PDCH(bts=0,trx=0,ts=4) FN=8 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==2) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 2, CS=MCS-6 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 2, MCS-6): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5857,7 +6203,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 2) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 2, MCS-6): 07 80 00 50 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 00 -PDCH(bts=0,trx=0,ts=4) FN=17 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=13 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==3) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 3, CS=MCS-6 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 3, MCS-6): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5865,7 +6211,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 3) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 3, MCS-6): 07 c0 00 50 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 00 -PDCH(bts=0,trx=0,ts=4) FN=21 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=17 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==4) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 4, CS=MCS-6 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 4, MCS-6): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5873,7 +6219,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 4) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 4, MCS-6): 07 00 01 50 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 00 -PDCH(bts=0,trx=0,ts=4) FN=26 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=21 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==5) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 5, CS=MCS-6 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 5, MCS-6): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5881,7 +6227,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 5) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 5, MCS-6): 07 40 01 50 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 00 -PDCH(bts=0,trx=0,ts=4) FN=30 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=26 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==6) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 6, CS=MCS-6 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 6, MCS-6): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -5889,7 +6235,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 6) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 6, MCS-6): 07 80 01 50 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 00 -PDCH(bts=0,trx=0,ts=4) FN=34 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=30 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==7) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 7, CS=MCS-6 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=512 @@ -5900,32 +6246,55 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 7) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). -PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 34 + 13 = 47 -PDCH(bts=0,trx=0,ts=4) Reserving FN 47 for type POLL -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=47, TS=4) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=47, TS=4 +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 30 + 13 = 43 +PDCH(bts=0,trx=0,ts=4) Reserving FN 43 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=43, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=43, TS=4 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 7, MCS-6): 0f c0 01 00 e2 7f 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 c0 ca ca ca 0a -PDCH(bts=0,trx=0,ts=4) Expiring FN=39 but previous FN=13 is still reserved! -PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=13, reason=DL_ASS): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} poll timeout for FN=13, TS=4 (curr FN 112) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} N3105 0 => 1 (< MAX 8) -DL_ASS_TBF(DL:TFI-0-0-0:E){WAIT_ACK}: Received Event ASS_POLL_TIMEOUT -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Timeout for polling PACKET CONTROL ACK for PACKET DOWNLINK ASSIGNMENT: |Assignment was on PACCH|No downlink ACK received yet| -DL_ASS_TBF(DL:TFI-0-0-0:E){WAIT_ACK}: state_chg to SEND_ASS -PDCH(bts=0,trx=0,ts=4) Expiring FN=39 but previous FN=17 is still reserved! -PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=17, reason=DL_ACK): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} poll timeout for FN=17, TS=4 (curr FN 112) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Timeout for polling PACKET DOWNLINK ACK: |Assignment was on PACCH|No downlink ACK received yet| -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} N3105 1 => 2 (< MAX 8) -DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event DL_ACKNACK_MISS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=0)"RRRRRRRR"(BSN=7) R=ACK I=NACK TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=0:8, lost=0, recv=8, skipped=0, bsn=0, info='RRRRRRRR........................................................' TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=8)""(V(S)-1=7) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Final ACK received. -DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event FINAL_ACK_RECVD -DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to WAIT_RELEASE -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:0, PACCH:1] +PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=39 block_nr=9 scheduling free USF for polling at FN=43 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} +PDCH(bts=0,trx=0,ts=4) FN=91 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==8 .. V(S)==8) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new dummy block at BSN 8, CS=MCS-6 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Empty chunk, added LLC dummy command of size 73, drained_since=61 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Keep idle TBF open: 61/43 -> no +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=73 +DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event LAST_DL_DATA_SENT +DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to FINISHED +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} data block (BSN 8, MCS-6): 93 43 c0 01 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} need_padding 0 spb_status 0 spb 0 (BSN1 8 BSN2 -1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying data unit 0 (BSN 8) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 91 + 13 = 104 +PDCH(bts=0,trx=0,ts=4) Reserving FN 104 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled DL Acknowledgement polling on PACCH (FN=104, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Starting timer T3191 [final block (DL-TBF)] with 5 sec. 0 microsec, cur_fn=169 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled Ack/Nack polling on FN=104, TS=4 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} msg block (BSN 8, MCS-6): 0f 00 02 e0 e4 10 70 c0 ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca 0a +PDCH(bts=0,trx=0,ts=4) Expiring FN=95 but previous FN=13 is still reserved! +PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=13, reason=DL_ACK): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} poll timeout for FN=13, TS=4 (curr FN 169) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Timeout for polling PACKET DOWNLINK ACK: |Assignment was on CCCH|Downlink ACK was received| +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} N3105 0 => 1 (< MAX 8) +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: Received Event DL_ACKNACK_MISS +PDCH(bts=0,trx=0,ts=4) Expiring FN=95 but previous FN=43 is still reserved! +PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=43, reason=DL_ACK): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} poll timeout for FN=43, TS=4 (curr FN 169) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} N3105 1 => 2 (< MAX 8) +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: Received Event DL_ACKNACK_MISS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} stopping timer T3191 [ACK/NACK received] +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} ack: (BSN=8)"R"(BSN=8) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} DL analysis, range=8:9, lost=0, recv=1, skipped=0, bsn=8, info='R...............................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} V(B): (V(A)=9)""(V(S)-1=8) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Final ACK received. +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: Received Event FINAL_ACK_RECVD +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: state_chg to WAIT_RELEASE +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:1, PACCH:0] TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} free PDCH(bts=0,trx=0,ts=4) Detaching TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE}, 1 TBFs, USFs = 00, TFIs = 00000001. MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) Detaching TBF: TBF(DL:E:TLLI-0xffeeddcc){WAIT_RELEASE} @@ -5934,7 +6303,7 @@ MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11) Destroying MS object ********** DL-TBF ends here ********** DL_TBF(DL:TFI-0-0-0:E){WAIT_RELEASE}: Deallocated UL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated -DL_ASS_TBF(DL:TFI-0-0-0:E){SEND_ASS}: Deallocated +DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated Testing MCS-7 Creating MS object Modifying MS object, TLLI = 0xffffffff, MS class 0 -> 11 @@ -5969,25 +6338,15 @@ TBF(DL:TFI-0-0-0:E){NEW} set ass. type CCCH [prev CCCH:0, PACCH:0] DL_TBF(DL:TFI-0-0-0:E){NEW}: state_chg to ASSIGN TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=220 Modifying MS object, TLLI = 0xffffffff, TA 220 -> 0 -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Received Event SCHED_ASS -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: state_chg to SEND_ASS -DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ACK_PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} The TBF has been confirmed on the PACCH, changed type from CCCH to PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} unset ass. type CCCH [prev CCCH:1, PACCH:0] -TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type PACCH [prev CCCH:0, PACCH:0] +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ADD_CCCH +TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type CCCH [prev CCCH:1, PACCH:0] +TBF(DL:TFI-0-0-0:E){ASSIGN} Attempted to set ass. type CCCH which is already set +TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=0 +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_READY_CCCH DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: state_chg to FLOW The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly confirmed MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) appending 10 bytes to DL LLC queue -DL_ASS_TBF(DL:TFI-0-0-0:E){SEND_ASS}: Received Event CREATE_RLCMAC_MSG -PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 0 + 13 = 13 -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} start Packet Downlink Assignment (PACCH) -+++++++++++++++++++++++++ TX : Packet Downlink Assignment +++++++++++++++++++++++++ -------------------------- TX : Packet Downlink Assignment ------------------------- -PDCH(bts=0,trx=0,ts=4) Reserving FN 13 for type POLL -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Assignment polling on PACCH (FN=13, TS=4) -DL_ASS_TBF(DL:TFI-0-0-0:E){SEND_ASS}: state_chg to WAIT_ACK -PDCH(bts=0,trx=0,ts=4) FN=0 Scheduling control message at RTS for TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -PDCH(bts=0,trx=0,ts=4) FN=4 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=0 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==0) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 0, CS=MCS-7 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Dequeue next LLC (len=10) @@ -6000,14 +6359,13 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 0) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). -PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 4 + 13 = 17 -PDCH(bts=0,trx=0,ts=4) Reserving FN 17 for type POLL -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=17, TS=4) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=17, TS=4 +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 0 + 13 = 13 +PDCH(bts=0,trx=0,ts=4) Reserving FN 13 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=13, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=13, TS=4 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 0, MCS-5): 0f 00 00 08 c5 7f 40 40 40 40 40 40 40 40 40 c0 ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca 0a MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) appending 512 bytes to DL LLC queue -PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=8 block_nr=2 scheduling free USF for polling at FN=13 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -PDCH(bts=0,trx=0,ts=4) FN=8 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=4 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==1) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} initial_cs_dl(MCS-7) last_mcs(MCS-5) demanded_mcs(MCS-7) cs_trans(MCS-7) arq_type(1) bsn(0) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Resending BSN 0 @@ -6019,8 +6377,8 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 2 RLC blocks, 2 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 0) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 1 (BSN 1) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 0, MCS-7): 07 00 00 02 b8 50 fc 07 04 04 04 04 04 04 04 04 04 ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac 14 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 00 -PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=13 block_nr=3 scheduling free USF for polling at FN=17 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -PDCH(bts=0,trx=0,ts=4) FN=13 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=8 block_nr=2 scheduling free USF for polling at FN=13 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} +PDCH(bts=0,trx=0,ts=4) FN=8 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==2) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 2, CS=MCS-7 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 2, MCS-7): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -6031,7 +6389,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 2 RLC blocks, 2 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 2) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 1 (BSN 3) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 2, MCS-7): 07 80 00 02 a0 05 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 14 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 00 -PDCH(bts=0,trx=0,ts=4) FN=17 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=13 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==4) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 4, CS=MCS-7 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 4, MCS-7): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -6042,7 +6400,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 2 RLC blocks, 2 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 4) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 1 (BSN 5) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 4, MCS-7): 07 00 01 02 a0 05 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 14 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 00 -PDCH(bts=0,trx=0,ts=4) FN=21 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=17 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==6) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 6, CS=MCS-7 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 6, MCS-7): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -6053,7 +6411,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 2 RLC blocks, 2 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 6) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 1 (BSN 7) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 6, MCS-7): 07 80 01 02 a0 05 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 14 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 00 -PDCH(bts=0,trx=0,ts=4) FN=26 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=21 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==8) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 8, CS=MCS-7 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 8, MCS-7): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -6064,7 +6422,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 2 RLC blocks, 2 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 8) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 1 (BSN 9) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 8, MCS-7): 07 00 02 02 a0 05 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 14 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 00 -PDCH(bts=0,trx=0,ts=4) FN=30 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=26 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==10) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 10, CS=MCS-7 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=512 @@ -6076,32 +6434,56 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 10) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). -PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 30 + 13 = 43 -PDCH(bts=0,trx=0,ts=4) Reserving FN 43 for type POLL -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=43, TS=4) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=43, TS=4 +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 26 + 13 = 39 +PDCH(bts=0,trx=0,ts=4) Reserving FN 39 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=39, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=39, TS=4 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 10, MCS-5): 0f 80 02 08 c4 7f 40 40 40 40 40 40 40 c0 ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca 0a -PDCH(bts=0,trx=0,ts=4) Expiring FN=34 but previous FN=13 is still reserved! -PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=13, reason=DL_ASS): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} poll timeout for FN=13, TS=4 (curr FN 112) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} N3105 0 => 1 (< MAX 8) -DL_ASS_TBF(DL:TFI-0-0-0:E){WAIT_ACK}: Received Event ASS_POLL_TIMEOUT -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Timeout for polling PACKET CONTROL ACK for PACKET DOWNLINK ASSIGNMENT: |Assignment was on PACCH|No downlink ACK received yet| -DL_ASS_TBF(DL:TFI-0-0-0:E){WAIT_ACK}: state_chg to SEND_ASS -PDCH(bts=0,trx=0,ts=4) Expiring FN=34 but previous FN=17 is still reserved! -PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=17, reason=DL_ACK): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} poll timeout for FN=17, TS=4 (curr FN 112) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Timeout for polling PACKET DOWNLINK ACK: |Assignment was on PACCH|No downlink ACK received yet| -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} N3105 1 => 2 (< MAX 8) -DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event DL_ACKNACK_MISS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=0)"RRRRRRRRRRR"(BSN=10) R=ACK I=NACK TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=0:11, lost=0, recv=10, skipped=1, bsn=0, info='xRRRRRRRRRR.....................................................' TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=11)""(V(S)-1=10) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Final ACK received. -DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event FINAL_ACK_RECVD -DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to WAIT_RELEASE -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:0, PACCH:1] +PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=34 block_nr=8 scheduling free USF for polling at FN=39 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} +PDCH(bts=0,trx=0,ts=4) FN=86 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==11 .. V(S)==11) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new dummy block at BSN 11, CS=MCS-7 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Empty chunk, added LLC dummy command of size 55, drained_since=60 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Keep idle TBF open: 60/43 -> no +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=55 +DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event LAST_DL_DATA_SENT +DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to FINISHED +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} data block (BSN 11, MCS-7): 6f 43 c0 01 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Restarting at BSN 11, because all blocks have been transmitted. +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} need_padding 0 spb_status 0 spb 0 (BSN1 11 BSN2 -1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying data unit 0 (BSN 11) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 86 + 13 = 99 +PDCH(bts=0,trx=0,ts=4) Reserving FN 99 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled DL Acknowledgement polling on PACCH (FN=99, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Starting timer T3191 [final block (DL-TBF)] with 5 sec. 0 microsec, cur_fn=169 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled Ack/Nack polling on FN=99, TS=4 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} msg block (BSN 11, MCS-5): 0f c0 02 e8 db 10 70 c0 ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca 0a +PDCH(bts=0,trx=0,ts=4) Expiring FN=91 but previous FN=13 is still reserved! +PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=13, reason=DL_ACK): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} poll timeout for FN=13, TS=4 (curr FN 169) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Timeout for polling PACKET DOWNLINK ACK: |Assignment was on CCCH|Downlink ACK was received| +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} N3105 0 => 1 (< MAX 8) +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: Received Event DL_ACKNACK_MISS +PDCH(bts=0,trx=0,ts=4) Expiring FN=91 but previous FN=39 is still reserved! +PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=39, reason=DL_ACK): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} poll timeout for FN=39, TS=4 (curr FN 169) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} N3105 1 => 2 (< MAX 8) +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: Received Event DL_ACKNACK_MISS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} stopping timer T3191 [ACK/NACK received] +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} ack: (BSN=11)"R"(BSN=11) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} DL analysis, range=11:12, lost=0, recv=0, skipped=1, bsn=11, info='x...............................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} V(B): (V(A)=12)""(V(S)-1=11) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Final ACK received. +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: Received Event FINAL_ACK_RECVD +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: state_chg to WAIT_RELEASE +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:1, PACCH:0] TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} free PDCH(bts=0,trx=0,ts=4) Detaching TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE}, 1 TBFs, USFs = 00, TFIs = 00000001. MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) Detaching TBF: TBF(DL:E:TLLI-0xffeeddcc){WAIT_RELEASE} @@ -6110,7 +6492,7 @@ MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11) Destroying MS object ********** DL-TBF ends here ********** DL_TBF(DL:TFI-0-0-0:E){WAIT_RELEASE}: Deallocated UL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated -DL_ASS_TBF(DL:TFI-0-0-0:E){SEND_ASS}: Deallocated +DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated Testing MCS-8 Creating MS object Modifying MS object, TLLI = 0xffffffff, MS class 0 -> 11 @@ -6145,25 +6527,15 @@ TBF(DL:TFI-0-0-0:E){NEW} set ass. type CCCH [prev CCCH:0, PACCH:0] DL_TBF(DL:TFI-0-0-0:E){NEW}: state_chg to ASSIGN TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=220 Modifying MS object, TLLI = 0xffffffff, TA 220 -> 0 -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Received Event SCHED_ASS -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: state_chg to SEND_ASS -DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ACK_PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} The TBF has been confirmed on the PACCH, changed type from CCCH to PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} unset ass. type CCCH [prev CCCH:1, PACCH:0] -TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type PACCH [prev CCCH:0, PACCH:0] +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ADD_CCCH +TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type CCCH [prev CCCH:1, PACCH:0] +TBF(DL:TFI-0-0-0:E){ASSIGN} Attempted to set ass. type CCCH which is already set +TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=0 +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_READY_CCCH DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: state_chg to FLOW The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly confirmed MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) appending 10 bytes to DL LLC queue -DL_ASS_TBF(DL:TFI-0-0-0:E){SEND_ASS}: Received Event CREATE_RLCMAC_MSG -PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 0 + 13 = 13 -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} start Packet Downlink Assignment (PACCH) -+++++++++++++++++++++++++ TX : Packet Downlink Assignment +++++++++++++++++++++++++ -------------------------- TX : Packet Downlink Assignment ------------------------- -PDCH(bts=0,trx=0,ts=4) Reserving FN 13 for type POLL -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Assignment polling on PACCH (FN=13, TS=4) -DL_ASS_TBF(DL:TFI-0-0-0:E){SEND_ASS}: state_chg to WAIT_ACK -PDCH(bts=0,trx=0,ts=4) FN=0 Scheduling control message at RTS for TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -PDCH(bts=0,trx=0,ts=4) FN=4 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=0 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==0) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 0, CS=MCS-8 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Dequeue next LLC (len=10) @@ -6177,14 +6549,13 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 2 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 0) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 1 (BSN 0) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). -PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 4 + 13 = 17 -PDCH(bts=0,trx=0,ts=4) Reserving FN 17 for type POLL -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=17, TS=4) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=17, TS=4 +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 0 + 13 = 13 +PDCH(bts=0,trx=0,ts=4) Reserving FN 13 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=13, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=13, TS=4 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 0, MCS-8): 0f 00 00 00 60 50 fc 07 04 04 04 04 04 04 04 04 04 ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac 40 f1 1f 10 10 10 10 10 10 10 10 10 b0 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 02 MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) appending 512 bytes to DL LLC queue -PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=8 block_nr=2 scheduling free USF for polling at FN=13 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -PDCH(bts=0,trx=0,ts=4) FN=8 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=4 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==1) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} initial_cs_dl(MCS-8) last_mcs(MCS-8) demanded_mcs(MCS-8) cs_trans(MCS-8) arq_type(1) bsn(0) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Resending BSN 0 @@ -6196,8 +6567,8 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 2 RLC blocks, 2 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 0) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 1 (BSN 1) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 0, MCS-8): 07 00 00 02 88 50 fc 07 04 04 04 04 04 04 04 04 04 ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac 14 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 00 -PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=13 block_nr=3 scheduling free USF for polling at FN=17 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -PDCH(bts=0,trx=0,ts=4) FN=13 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=8 block_nr=2 scheduling free USF for polling at FN=13 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} +PDCH(bts=0,trx=0,ts=4) FN=8 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==2) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 2, CS=MCS-8 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 2, MCS-8): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -6208,7 +6579,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 2 RLC blocks, 2 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 2) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 1 (BSN 3) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 2, MCS-8): 07 80 00 02 58 05 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 14 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 00 -PDCH(bts=0,trx=0,ts=4) FN=17 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=13 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==4) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 4, CS=MCS-8 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 4, MCS-8): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -6219,7 +6590,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 2 RLC blocks, 2 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 4) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 1 (BSN 5) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 4, MCS-8): 07 00 01 02 58 05 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 14 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 00 -PDCH(bts=0,trx=0,ts=4) FN=21 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=17 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==6) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 6, CS=MCS-8 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 6, MCS-8): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -6230,7 +6601,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 2 RLC blocks, 2 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 6) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 1 (BSN 7) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 6, MCS-8): 07 80 01 02 58 05 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 14 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 00 -PDCH(bts=0,trx=0,ts=4) FN=26 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=21 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==8) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 8, CS=MCS-8 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=512 @@ -6243,32 +6614,57 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 2 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 8) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 1 (BSN 8) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). -PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 26 + 13 = 39 -PDCH(bts=0,trx=0,ts=4) Reserving FN 39 for type POLL -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=39, TS=4) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=39, TS=4 +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 21 + 13 = 34 +PDCH(bts=0,trx=0,ts=4) Reserving FN 34 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=34, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=34, TS=4 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 8, MCS-8): 0f 00 02 00 60 20 fd 07 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac 80 f4 1f 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 b0 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 02 -PDCH(bts=0,trx=0,ts=4) Expiring FN=30 but previous FN=13 is still reserved! -PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=13, reason=DL_ASS): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} poll timeout for FN=13, TS=4 (curr FN 112) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} N3105 0 => 1 (< MAX 8) -DL_ASS_TBF(DL:TFI-0-0-0:E){WAIT_ACK}: Received Event ASS_POLL_TIMEOUT -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Timeout for polling PACKET CONTROL ACK for PACKET DOWNLINK ASSIGNMENT: |Assignment was on PACCH|No downlink ACK received yet| -DL_ASS_TBF(DL:TFI-0-0-0:E){WAIT_ACK}: state_chg to SEND_ASS -PDCH(bts=0,trx=0,ts=4) Expiring FN=30 but previous FN=17 is still reserved! -PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=17, reason=DL_ACK): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} poll timeout for FN=17, TS=4 (curr FN 112) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Timeout for polling PACKET DOWNLINK ACK: |Assignment was on PACCH|No downlink ACK received yet| -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} N3105 1 => 2 (< MAX 8) -DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event DL_ACKNACK_MISS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=0)"RRRRRRRRR"(BSN=8) R=ACK I=NACK TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=0:9, lost=0, recv=9, skipped=0, bsn=0, info='RRRRRRRRR.......................................................' TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=9)""(V(S)-1=8) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Final ACK received. -DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event FINAL_ACK_RECVD -DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to WAIT_RELEASE -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:0, PACCH:1] +PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=30 block_nr=7 scheduling free USF for polling at FN=34 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} +PDCH(bts=0,trx=0,ts=4) FN=78 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==9 .. V(S)==9) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new dummy block at BSN 9, CS=MCS-8 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Empty chunk, added LLC dummy command of size 67, drained_since=57 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Keep idle TBF open: 57/43 -> no +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=67 +DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event LAST_DL_DATA_SENT +DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to FINISHED +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} data block (BSN 9, MCS-8): 87 43 c0 01 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Restarting at BSN 9, because all blocks have been transmitted. +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} need_padding 0 spb_status 0 spb 0 (BSN1 9 BSN2 -1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying 2 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying data unit 0 (BSN 9) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying data unit 1 (BSN 9) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 78 + 13 = 91 +PDCH(bts=0,trx=0,ts=4) Reserving FN 91 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled DL Acknowledgement polling on PACCH (FN=91, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Starting timer T3191 [final block (DL-TBF)] with 5 sec. 0 microsec, cur_fn=169 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled Ack/Nack polling on FN=91, TS=4 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} msg block (BSN 9, MCS-8): 0f 40 02 00 60 1e 0e 01 07 ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac 78 38 04 1c b0 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 02 +PDCH(bts=0,trx=0,ts=4) Expiring FN=82 but previous FN=13 is still reserved! +PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=13, reason=DL_ACK): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} poll timeout for FN=13, TS=4 (curr FN 169) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Timeout for polling PACKET DOWNLINK ACK: |Assignment was on CCCH|Downlink ACK was received| +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} N3105 0 => 1 (< MAX 8) +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: Received Event DL_ACKNACK_MISS +PDCH(bts=0,trx=0,ts=4) Expiring FN=82 but previous FN=34 is still reserved! +PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=34, reason=DL_ACK): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} poll timeout for FN=34, TS=4 (curr FN 169) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} N3105 1 => 2 (< MAX 8) +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: Received Event DL_ACKNACK_MISS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} stopping timer T3191 [ACK/NACK received] +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} ack: (BSN=9)"R"(BSN=9) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} DL analysis, range=9:10, lost=0, recv=1, skipped=0, bsn=9, info='R...............................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} V(B): (V(A)=10)""(V(S)-1=9) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Final ACK received. +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: Received Event FINAL_ACK_RECVD +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: state_chg to WAIT_RELEASE +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:1, PACCH:0] TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} free PDCH(bts=0,trx=0,ts=4) Detaching TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE}, 1 TBFs, USFs = 00, TFIs = 00000001. MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) Detaching TBF: TBF(DL:E:TLLI-0xffeeddcc){WAIT_RELEASE} @@ -6277,7 +6673,7 @@ MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11) Destroying MS object ********** DL-TBF ends here ********** DL_TBF(DL:TFI-0-0-0:E){WAIT_RELEASE}: Deallocated UL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated -DL_ASS_TBF(DL:TFI-0-0-0:E){SEND_ASS}: Deallocated +DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated Testing MCS-9 Creating MS object Modifying MS object, TLLI = 0xffffffff, MS class 0 -> 11 @@ -6312,25 +6708,15 @@ TBF(DL:TFI-0-0-0:E){NEW} set ass. type CCCH [prev CCCH:0, PACCH:0] DL_TBF(DL:TFI-0-0-0:E){NEW}: state_chg to ASSIGN TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=220 Modifying MS object, TLLI = 0xffffffff, TA 220 -> 0 -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Received Event SCHED_ASS -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: state_chg to SEND_ASS -DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ACK_PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} The TBF has been confirmed on the PACCH, changed type from CCCH to PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} unset ass. type CCCH [prev CCCH:1, PACCH:0] -TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type PACCH [prev CCCH:0, PACCH:0] +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ADD_CCCH +TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type CCCH [prev CCCH:1, PACCH:0] +TBF(DL:TFI-0-0-0:E){ASSIGN} Attempted to set ass. type CCCH which is already set +TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=0 +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_READY_CCCH DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: state_chg to FLOW The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly confirmed MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) appending 10 bytes to DL LLC queue -DL_ASS_TBF(DL:TFI-0-0-0:E){SEND_ASS}: Received Event CREATE_RLCMAC_MSG -PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 0 + 13 = 13 -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} start Packet Downlink Assignment (PACCH) -+++++++++++++++++++++++++ TX : Packet Downlink Assignment +++++++++++++++++++++++++ -------------------------- TX : Packet Downlink Assignment ------------------------- -PDCH(bts=0,trx=0,ts=4) Reserving FN 13 for type POLL -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Assignment polling on PACCH (FN=13, TS=4) -DL_ASS_TBF(DL:TFI-0-0-0:E){SEND_ASS}: state_chg to WAIT_ACK -PDCH(bts=0,trx=0,ts=4) FN=0 Scheduling control message at RTS for TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -PDCH(bts=0,trx=0,ts=4) FN=4 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=0 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==0) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 0, CS=MCS-9 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Dequeue next LLC (len=10) @@ -6343,14 +6729,13 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 0) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). -PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 4 + 13 = 17 -PDCH(bts=0,trx=0,ts=4) Reserving FN 17 for type POLL -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=17, TS=4) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=17, TS=4 +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 0 + 13 = 13 +PDCH(bts=0,trx=0,ts=4) Reserving FN 13 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=13, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=13, TS=4 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 0, MCS-6): 0f 00 00 00 c5 7f 40 40 40 40 40 40 40 40 40 c0 ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca 0a MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) appending 512 bytes to DL LLC queue -PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=8 block_nr=2 scheduling free USF for polling at FN=13 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -PDCH(bts=0,trx=0,ts=4) FN=8 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=4 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==1) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} initial_cs_dl(MCS-9) last_mcs(MCS-6) demanded_mcs(MCS-9) cs_trans(MCS-9) arq_type(1) bsn(0) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Resending BSN 0 @@ -6362,8 +6747,8 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 2 RLC blocks, 2 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 0) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 1 (BSN 1) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 0, MCS-9): 07 00 00 02 20 50 fc 07 04 04 04 04 04 04 04 04 04 ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac ac 14 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 00 -PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=13 block_nr=3 scheduling free USF for polling at FN=17 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -PDCH(bts=0,trx=0,ts=4) FN=13 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=8 block_nr=2 scheduling free USF for polling at FN=13 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} +PDCH(bts=0,trx=0,ts=4) FN=8 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==2) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 2, CS=MCS-9 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 2, MCS-9): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -6374,7 +6759,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 2 RLC blocks, 2 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 2) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 1 (BSN 3) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 2, MCS-9): 07 80 00 02 00 05 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 14 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 00 -PDCH(bts=0,trx=0,ts=4) FN=17 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=13 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==4) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 4, CS=MCS-9 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 4, MCS-9): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -6385,7 +6770,7 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 2 RLC blocks, 2 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 4) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 1 (BSN 5) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 4, MCS-9): 07 00 01 02 00 05 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 14 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 00 -PDCH(bts=0,trx=0,ts=4) FN=21 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +PDCH(bts=0,trx=0,ts=4) FN=17 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==0 .. V(S)==6) mcs_mode_restrict=EGPRS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 6, CS=MCS-9 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 6, MCS-9): 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 @@ -6399,32 +6784,56 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 2 RLC blocks, 2 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 6) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 1 (BSN 7) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). -PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 21 + 13 = 34 -PDCH(bts=0,trx=0,ts=4) Reserving FN 34 for type POLL -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=34, TS=4) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=34, TS=4 +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 17 + 13 = 30 +PDCH(bts=0,trx=0,ts=4) Reserving FN 30 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=30, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=30, TS=4 TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 6, MCS-9): 0f 80 01 02 00 05 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 04 80 f8 1f 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 b0 b2 b2 b2 02 -PDCH(bts=0,trx=0,ts=4) Expiring FN=26 but previous FN=13 is still reserved! -PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=13, reason=DL_ASS): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} poll timeout for FN=13, TS=4 (curr FN 112) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} N3105 0 => 1 (< MAX 8) -DL_ASS_TBF(DL:TFI-0-0-0:E){WAIT_ACK}: Received Event ASS_POLL_TIMEOUT -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Timeout for polling PACKET CONTROL ACK for PACKET DOWNLINK ASSIGNMENT: |Assignment was on PACCH|No downlink ACK received yet| -DL_ASS_TBF(DL:TFI-0-0-0:E){WAIT_ACK}: state_chg to SEND_ASS -PDCH(bts=0,trx=0,ts=4) Expiring FN=26 but previous FN=17 is still reserved! -PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=17, reason=DL_ACK): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} poll timeout for FN=17, TS=4 (curr FN 112) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Timeout for polling PACKET DOWNLINK ACK: |Assignment was on PACCH|No downlink ACK received yet| -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} N3105 1 => 2 (< MAX 8) -DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event DL_ACKNACK_MISS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=0)"RRRRRRRR"(BSN=7) R=ACK I=NACK TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=0:8, lost=0, recv=8, skipped=0, bsn=0, info='RRRRRRRR........................................................' TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=8)""(V(S)-1=7) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Final ACK received. -DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event FINAL_ACK_RECVD -DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to WAIT_RELEASE -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:0, PACCH:1] +PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=26 block_nr=6 scheduling free USF for polling at FN=30 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} +PDCH(bts=0,trx=0,ts=4) FN=78 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==8 .. V(S)==8) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new dummy block at BSN 8, CS=MCS-9 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Empty chunk, added LLC dummy command of size 73, drained_since=61 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Keep idle TBF open: 61/43 -> no +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=73 +DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event LAST_DL_DATA_SENT +DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to FINISHED +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} data block (BSN 8, MCS-9): 93 43 c0 01 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Restarting at BSN 8, because all blocks have been transmitted. +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} need_padding 0 spb_status 0 spb 0 (BSN1 8 BSN2 -1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying data unit 0 (BSN 8) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 78 + 13 = 91 +PDCH(bts=0,trx=0,ts=4) Reserving FN 91 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled DL Acknowledgement polling on PACCH (FN=91, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Starting timer T3191 [final block (DL-TBF)] with 5 sec. 0 microsec, cur_fn=169 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled Ack/Nack polling on FN=91, TS=4 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} msg block (BSN 8, MCS-6): 0f 00 02 e0 e4 10 70 c0 ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca 0a +PDCH(bts=0,trx=0,ts=4) Expiring FN=82 but previous FN=13 is still reserved! +PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=13, reason=DL_ACK): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} poll timeout for FN=13, TS=4 (curr FN 169) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Timeout for polling PACKET DOWNLINK ACK: |Assignment was on CCCH|Downlink ACK was received| +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} N3105 0 => 1 (< MAX 8) +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: Received Event DL_ACKNACK_MISS +PDCH(bts=0,trx=0,ts=4) Expiring FN=82 but previous FN=30 is still reserved! +PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=30, reason=DL_ACK): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} poll timeout for FN=30, TS=4 (curr FN 169) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} N3105 1 => 2 (< MAX 8) +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: Received Event DL_ACKNACK_MISS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} stopping timer T3191 [ACK/NACK received] +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} ack: (BSN=8)"R"(BSN=8) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} DL analysis, range=8:9, lost=0, recv=0, skipped=1, bsn=8, info='x...............................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} V(B): (V(A)=9)""(V(S)-1=8) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Final ACK received. +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: Received Event FINAL_ACK_RECVD +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: state_chg to WAIT_RELEASE +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:1, PACCH:0] TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} free PDCH(bts=0,trx=0,ts=4) Detaching TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE}, 1 TBFs, USFs = 00, TFIs = 00000001. MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) Detaching TBF: TBF(DL:E:TLLI-0xffeeddcc){WAIT_RELEASE} @@ -6433,7 +6842,7 @@ MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11) Destroying MS object ********** DL-TBF ends here ********** DL_TBF(DL:TFI-0-0-0:E){WAIT_RELEASE}: Deallocated UL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated -DL_ASS_TBF(DL:TFI-0-0-0:E){SEND_ASS}: Deallocated +DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated === end test_tbf_egprs_dl === === start test_tbf_egprs_retx_dl === PDCH(bts=0,trx=0,ts=4) PDCH state: disabled => enabled @@ -6471,12 +6880,11 @@ TBF(DL:TFI-0-0-0:E){NEW} set ass. type CCCH [prev CCCH:0, PACCH:0] DL_TBF(DL:TFI-0-0-0:E){NEW}: state_chg to ASSIGN TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=220 Modifying MS object, TLLI = 0xffffffff, TA 220 -> 0 -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Received Event SCHED_ASS -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: state_chg to SEND_ASS -DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ACK_PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} The TBF has been confirmed on the PACCH, changed type from CCCH to PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} unset ass. type CCCH [prev CCCH:1, PACCH:0] -TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type PACCH [prev CCCH:0, PACCH:0] +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ADD_CCCH +TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type CCCH [prev CCCH:1, PACCH:0] +TBF(DL:TFI-0-0-0:E){ASSIGN} Attempted to set ass. type CCCH which is already set +TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=0 +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_READY_CCCH DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: state_chg to FLOW The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly confirmed MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) appending 100 bytes to DL LLC queue @@ -6495,15 +6903,111 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 0) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 0, MCS-6): 07 00 00 12 40 80 c0 00 41 81 c1 01 42 82 c2 02 43 83 c3 03 44 84 c4 04 45 85 c5 05 46 86 c6 06 47 87 c7 07 48 88 c8 08 49 89 c9 09 4a 8a ca 0a 4b 8b cb 0b 4c 8c cc 0c 4d 8d cd 0d 4e 8e ce 0e 4f 8f cf 0f 50 90 d0 10 51 91 d1 11 52 12 -Detected FN jump! 2654167 -> 58 (expected 2654171, delta 61539) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=0)"R"(BSN=0) R=ACK I=NACK TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=0:1, lost=0, recv=1, skipped=0, bsn=0, info='R...............................................................' TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=1)""(V(S)-1=0) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Final ACK received. -DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event FINAL_ACK_RECVD -DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to WAIT_RELEASE -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:0, PACCH:1] +PDCH(bts=0,trx=0,ts=4) FN=0 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==1 .. V(S)==1) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 1, CS=MCS-6 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=100 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} LLC queue completely drained and there's still 47 free bytes in rlcmac data block +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Keep idle TBF open: 0/43 -> yes +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 1, MCS-6): 34 ff 4a 4b 4c 4d 4e 4f 50 51 52 53 54 55 56 57 58 59 5a 5b 5c 5d 5e 5f 60 61 62 63 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 1 BSN2 -1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 0 + 13 = 13 +PDCH(bts=0,trx=0,ts=4) Reserving FN 13 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=13, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=13, TS=4 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 1, MCS-6): 0f 40 00 00 cd bf d2 12 53 93 d3 13 54 94 d4 14 55 95 d5 15 56 96 d6 16 57 97 d7 17 58 98 d8 d8 ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca 0a +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=1)"R"(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=1:2, lost=0, recv=1, skipped=0, bsn=1, info='R...............................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=8 block_nr=2 scheduling free USF for polling at FN=13 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +PDCH(bts=0,trx=0,ts=4) FN=60 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==2 .. V(S)==2) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new dummy block at BSN 2, CS=MCS-6 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Empty chunk, added LLC dummy command of size 73, drained_since=60 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Keep idle TBF open: 60/43 -> no +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=73 +DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event LAST_DL_DATA_SENT +DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to FINISHED +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} data block (BSN 2, MCS-6): 93 43 c0 01 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} need_padding 0 spb_status 0 spb 0 (BSN1 2 BSN2 -1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying data unit 0 (BSN 2) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 60 + 13 = 73 +PDCH(bts=0,trx=0,ts=4) Reserving FN 73 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled DL Acknowledgement polling on PACCH (FN=73, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Starting timer T3191 [final block (DL-TBF)] with 5 sec. 0 microsec, cur_fn=2654167 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled Ack/Nack polling on FN=73, TS=4 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} msg block (BSN 2, MCS-6): 0f 80 00 e0 e4 10 70 c0 ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca 0a +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} stopping timer T3191 [ACK/NACK received] +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} ack: (BSN=2)"R"(BSN=2) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} DL analysis, range=2:3, lost=0, recv=1, skipped=0, bsn=2, info='R...............................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} V(B): (V(A)=3)""(V(S)-1=2) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Final ACK received. +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: Received Event FINAL_ACK_RECVD +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: state_chg to WAIT_RELEASE +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:1, PACCH:0] TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} free PDCH(bts=0,trx=0,ts=4) Detaching TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE}, 1 TBFs, USFs = 00, TFIs = 00000001. MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) Detaching TBF: TBF(DL:E:TLLI-0xffeeddcc){WAIT_RELEASE} @@ -6512,7 +7016,7 @@ MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11) Destroying MS object ********** DL-TBF ends here ********** DL_TBF(DL:TFI-0-0-0:E){WAIT_RELEASE}: Deallocated UL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated -DL_ASS_TBF(DL:TFI-0-0-0:E){SEND_ASS}: Deallocated +DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated Testing retx for MCS 1 - 9 Creating MS object Modifying MS object, TLLI = 0xffffffff, MS class 0 -> 11 @@ -6547,12 +7051,11 @@ TBF(DL:TFI-0-0-0:E){NEW} set ass. type CCCH [prev CCCH:0, PACCH:0] DL_TBF(DL:TFI-0-0-0:E){NEW}: state_chg to ASSIGN TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=220 Modifying MS object, TLLI = 0xffffffff, TA 220 -> 0 -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Received Event SCHED_ASS -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: state_chg to SEND_ASS -DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ACK_PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} The TBF has been confirmed on the PACCH, changed type from CCCH to PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} unset ass. type CCCH [prev CCCH:1, PACCH:0] -TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type PACCH [prev CCCH:0, PACCH:0] +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ADD_CCCH +TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type CCCH [prev CCCH:1, PACCH:0] +TBF(DL:TFI-0-0-0:E){ASSIGN} Attempted to set ass. type CCCH which is already set +TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=0 +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_READY_CCCH DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: state_chg to FLOW The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly confirmed MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) appending 100 bytes to DL LLC queue @@ -6575,10 +7078,143 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=0)"R"(BSN=0) R=ACK I=NACK TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=0:1, lost=0, recv=1, skipped=0, bsn=0, info='R...............................................................' TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=1)""(V(S)-1=0) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Final ACK received. -DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event FINAL_ACK_RECVD -DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to WAIT_RELEASE -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:0, PACCH:1] +PDCH(bts=0,trx=0,ts=4) FN=0 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==1 .. V(S)==1) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 1, CS=MCS-1 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 1, MCS-1): 16 17 18 19 1a 1b 1c 1d 1e 1f 20 21 22 23 24 25 26 27 28 29 2a 2b +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 1 BSN2 -1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 1, MCS-1): 07 40 00 96 2c 2e 30 32 34 36 38 3a 3c 3e 40 42 44 46 48 4a 4c 4e 50 52 54 56 00 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=1)"R"(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=1:2, lost=0, recv=1, skipped=0, bsn=1, info='R...............................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +PDCH(bts=0,trx=0,ts=4) FN=4 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==2 .. V(S)==2) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 2, CS=MCS-1 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 2, MCS-1): 2c 2d 2e 2f 30 31 32 33 34 35 36 37 38 39 3a 3b 3c 3d 3e 3f 40 41 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 2 BSN2 -1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 2) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 2, MCS-1): 07 80 00 96 58 5a 5c 5e 60 62 64 66 68 6a 6c 6e 70 72 74 76 78 7a 7c 7e 80 82 00 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)"R"(BSN=2) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:3, lost=0, recv=1, skipped=0, bsn=2, info='R...............................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=3)""(V(S)-1=2) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +PDCH(bts=0,trx=0,ts=4) FN=8 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==3 .. V(S)==3) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 3, CS=MCS-1 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 3, MCS-1): 42 43 44 45 46 47 48 49 4a 4b 4c 4d 4e 4f 50 51 52 53 54 55 56 57 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 3 BSN2 -1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 3) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 3, MCS-1): 07 c0 00 96 84 86 88 8a 8c 8e 90 92 94 96 98 9a 9c 9e a0 a2 a4 a6 a8 aa ac ae 00 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=3)"R"(BSN=3) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=3:4, lost=0, recv=1, skipped=0, bsn=3, info='R...............................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=4)""(V(S)-1=3) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +PDCH(bts=0,trx=0,ts=4) FN=13 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==4 .. V(S)==4) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 4, CS=MCS-1 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=100 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} LLC queue completely drained and there's still 9 free bytes in rlcmac data block +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Keep idle TBF open: 0/43 -> yes +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 4, MCS-1): 18 ff 58 59 5a 5b 5c 5d 5e 5f 60 61 62 63 2b 2b 2b 2b 2b 2b 2b 2b +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 4 BSN2 -1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 13 + 13 = 26 +PDCH(bts=0,trx=0,ts=4) Reserving FN 26 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=26, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=26, TS=4 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 4, MCS-1): 0f 00 01 16 30 fe b1 b2 b4 b6 b8 ba bc be c0 c2 c4 c6 56 56 56 56 56 56 56 56 00 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=4)"R"(BSN=4) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=4:5, lost=0, recv=1, skipped=0, bsn=4, info='R...............................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=5)""(V(S)-1=4) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=5)""(BSN=4) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=5:5, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=5)""(V(S)-1=4) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=21 block_nr=5 scheduling free USF for polling at FN=26 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=5)""(BSN=4) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=5:5, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=5)""(V(S)-1=4) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=5)""(BSN=4) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=5:5, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=5)""(V(S)-1=4) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=5)""(BSN=4) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=5:5, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=5)""(V(S)-1=4) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=5)""(BSN=4) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=5:5, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=5)""(V(S)-1=4) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=5)""(BSN=4) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=5:5, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=5)""(V(S)-1=4) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=5)""(BSN=4) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=5:5, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=5)""(V(S)-1=4) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=5)""(BSN=4) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=5:5, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=5)""(V(S)-1=4) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=5)""(BSN=4) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=5:5, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=5)""(V(S)-1=4) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=5)""(BSN=4) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=5:5, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=5)""(V(S)-1=4) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=5)""(BSN=4) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=5:5, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=5)""(V(S)-1=4) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=5)""(BSN=4) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=5:5, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=5)""(V(S)-1=4) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=5)""(BSN=4) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=5:5, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=5)""(V(S)-1=4) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +PDCH(bts=0,trx=0,ts=4) FN=73 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==5 .. V(S)==5) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new dummy block at BSN 5, CS=MCS-1 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Empty chunk, added LLC dummy command of size 21, drained_since=60 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Keep idle TBF open: 60/43 -> no +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=21 +DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event LAST_DL_DATA_SENT +DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to FINISHED +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} data block (BSN 5, MCS-1): 2b 43 c0 01 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} need_padding 0 spb_status 0 spb 0 (BSN1 5 BSN2 -1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying data unit 0 (BSN 5) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 73 + 13 = 86 +PDCH(bts=0,trx=0,ts=4) Reserving FN 86 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled DL Acknowledgement polling on PACCH (FN=86, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Starting timer T3191 [final block (DL-TBF)] with 5 sec. 0 microsec, cur_fn=2654167 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled Ack/Nack polling on FN=86, TS=4 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} msg block (BSN 5, MCS-1): 0f 40 01 16 57 86 80 03 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 00 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} stopping timer T3191 [ACK/NACK received] +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} ack: (BSN=5)"R"(BSN=5) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} DL analysis, range=5:6, lost=0, recv=1, skipped=0, bsn=5, info='R...............................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} V(B): (V(A)=6)""(V(S)-1=5) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Final ACK received. +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: Received Event FINAL_ACK_RECVD +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: state_chg to WAIT_RELEASE +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:1, PACCH:0] TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} free PDCH(bts=0,trx=0,ts=4) Detaching TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE}, 1 TBFs, USFs = 00, TFIs = 00000001. MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) Detaching TBF: TBF(DL:E:TLLI-0xffeeddcc){WAIT_RELEASE} @@ -6587,7 +7223,7 @@ MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11) Destroying MS object ********** DL-TBF ends here ********** DL_TBF(DL:TFI-0-0-0:E){WAIT_RELEASE}: Deallocated UL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated -DL_ASS_TBF(DL:TFI-0-0-0:E){SEND_ASS}: Deallocated +DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated Testing retx for MCS 2 - 8 Creating MS object Modifying MS object, TLLI = 0xffffffff, MS class 0 -> 11 @@ -6622,12 +7258,11 @@ TBF(DL:TFI-0-0-0:E){NEW} set ass. type CCCH [prev CCCH:0, PACCH:0] DL_TBF(DL:TFI-0-0-0:E){NEW}: state_chg to ASSIGN TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=220 Modifying MS object, TLLI = 0xffffffff, TA 220 -> 0 -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Received Event SCHED_ASS -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: state_chg to SEND_ASS -DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ACK_PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} The TBF has been confirmed on the PACCH, changed type from CCCH to PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} unset ass. type CCCH [prev CCCH:1, PACCH:0] -TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type PACCH [prev CCCH:0, PACCH:0] +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ADD_CCCH +TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type CCCH [prev CCCH:1, PACCH:0] +TBF(DL:TFI-0-0-0:E){ASSIGN} Attempted to set ass. type CCCH which is already set +TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=0 +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_READY_CCCH DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: state_chg to FLOW The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly confirmed MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) appending 100 bytes to DL LLC queue @@ -6650,10 +7285,127 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=0)"R"(BSN=0) R=ACK I=NACK TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=0:1, lost=0, recv=1, skipped=0, bsn=0, info='R...............................................................' TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=1)""(V(S)-1=0) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Final ACK received. -DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event FINAL_ACK_RECVD -DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to WAIT_RELEASE -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:0, PACCH:1] +PDCH(bts=0,trx=0,ts=4) FN=0 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==1 .. V(S)==1) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 1, CS=MCS-2 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 1, MCS-2): 1c 1d 1e 1f 20 21 22 23 24 25 26 27 28 29 2a 2b 2c 2d 2e 2f 30 31 32 33 34 35 36 37 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 1 BSN2 -1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 1, MCS-2): 07 40 00 92 38 3a 3c 3e 40 42 44 46 48 4a 4c 4e 50 52 54 56 58 5a 5c 5e 60 62 64 66 68 6a 6c 6e 00 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=1)"R"(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=1:2, lost=0, recv=1, skipped=0, bsn=1, info='R...............................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +PDCH(bts=0,trx=0,ts=4) FN=4 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==2 .. V(S)==2) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 2, CS=MCS-2 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 2, MCS-2): 38 39 3a 3b 3c 3d 3e 3f 40 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d 4e 4f 50 51 52 53 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 2 BSN2 -1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 2) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 2, MCS-2): 07 80 00 92 70 72 74 76 78 7a 7c 7e 80 82 84 86 88 8a 8c 8e 90 92 94 96 98 9a 9c 9e a0 a2 a4 a6 00 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)"R"(BSN=2) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:3, lost=0, recv=1, skipped=0, bsn=2, info='R...............................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=3)""(V(S)-1=2) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +PDCH(bts=0,trx=0,ts=4) FN=8 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==3 .. V(S)==3) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 3, CS=MCS-2 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=100 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} LLC queue completely drained and there's still 11 free bytes in rlcmac data block +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Keep idle TBF open: 0/43 -> yes +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 3, MCS-2): 20 ff 54 55 56 57 58 59 5a 5b 5c 5d 5e 5f 60 61 62 63 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 3 BSN2 -1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 3) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 8 + 13 = 21 +PDCH(bts=0,trx=0,ts=4) Reserving FN 21 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=21, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=21, TS=4 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 3, MCS-2): 0f c0 00 12 40 fe a9 aa ac ae b0 b2 b4 b6 b8 ba bc be c0 c2 c4 c6 56 56 56 56 56 56 56 56 56 56 00 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=3)"R"(BSN=3) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=3:4, lost=0, recv=1, skipped=0, bsn=3, info='R...............................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=4)""(V(S)-1=3) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=4)""(BSN=3) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=4:4, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=4)""(V(S)-1=3) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=17 block_nr=4 scheduling free USF for polling at FN=21 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=4)""(BSN=3) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=4:4, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=4)""(V(S)-1=3) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=4)""(BSN=3) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=4:4, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=4)""(V(S)-1=3) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=4)""(BSN=3) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=4:4, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=4)""(V(S)-1=3) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=4)""(BSN=3) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=4:4, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=4)""(V(S)-1=3) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=4)""(BSN=3) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=4:4, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=4)""(V(S)-1=3) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=4)""(BSN=3) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=4:4, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=4)""(V(S)-1=3) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=4)""(BSN=3) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=4:4, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=4)""(V(S)-1=3) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=4)""(BSN=3) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=4:4, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=4)""(V(S)-1=3) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=4)""(BSN=3) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=4:4, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=4)""(V(S)-1=3) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=4)""(BSN=3) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=4:4, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=4)""(V(S)-1=3) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=4)""(BSN=3) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=4:4, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=4)""(V(S)-1=3) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +PDCH(bts=0,trx=0,ts=4) FN=65 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==4 .. V(S)==4) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new dummy block at BSN 4, CS=MCS-2 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Empty chunk, added LLC dummy command of size 27, drained_since=57 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Keep idle TBF open: 57/43 -> no +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=27 +DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event LAST_DL_DATA_SENT +DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to FINISHED +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} data block (BSN 4, MCS-2): 37 43 c0 01 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} need_padding 0 spb_status 0 spb 0 (BSN1 4 BSN2 -1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying data unit 0 (BSN 4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 65 + 13 = 78 +PDCH(bts=0,trx=0,ts=4) Reserving FN 78 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled DL Acknowledgement polling on PACCH (FN=78, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Starting timer T3191 [final block (DL-TBF)] with 5 sec. 0 microsec, cur_fn=2654167 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled Ack/Nack polling on FN=78, TS=4 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} msg block (BSN 4, MCS-2): 0f 00 01 12 6f 86 80 03 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 00 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} stopping timer T3191 [ACK/NACK received] +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} ack: (BSN=4)"R"(BSN=4) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} DL analysis, range=4:5, lost=0, recv=1, skipped=0, bsn=4, info='R...............................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} V(B): (V(A)=5)""(V(S)-1=4) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Final ACK received. +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: Received Event FINAL_ACK_RECVD +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: state_chg to WAIT_RELEASE +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:1, PACCH:0] TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} free PDCH(bts=0,trx=0,ts=4) Detaching TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE}, 1 TBFs, USFs = 00, TFIs = 00000001. MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) Detaching TBF: TBF(DL:E:TLLI-0xffeeddcc){WAIT_RELEASE} @@ -6662,7 +7414,7 @@ MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11) Destroying MS object ********** DL-TBF ends here ********** DL_TBF(DL:TFI-0-0-0:E){WAIT_RELEASE}: Deallocated UL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated -DL_ASS_TBF(DL:TFI-0-0-0:E){SEND_ASS}: Deallocated +DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated Testing retx for MCS 5 - 7 Creating MS object Modifying MS object, TLLI = 0xffffffff, MS class 0 -> 11 @@ -6697,12 +7449,11 @@ TBF(DL:TFI-0-0-0:E){NEW} set ass. type CCCH [prev CCCH:0, PACCH:0] DL_TBF(DL:TFI-0-0-0:E){NEW}: state_chg to ASSIGN TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=220 Modifying MS object, TLLI = 0xffffffff, TA 220 -> 0 -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Received Event SCHED_ASS -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: state_chg to SEND_ASS -DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ACK_PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} The TBF has been confirmed on the PACCH, changed type from CCCH to PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} unset ass. type CCCH [prev CCCH:1, PACCH:0] -TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type PACCH [prev CCCH:0, PACCH:0] +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ADD_CCCH +TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type CCCH [prev CCCH:1, PACCH:0] +TBF(DL:TFI-0-0-0:E){ASSIGN} Attempted to set ass. type CCCH which is already set +TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=0 +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_READY_CCCH DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: state_chg to FLOW The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly confirmed MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) appending 100 bytes to DL LLC queue @@ -6739,21 +7490,100 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 2 RLC blocks, 2 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 0) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 1 (BSN 1) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 0, MCS-7): 07 00 00 02 c0 01 04 08 0c 10 14 18 1c 20 24 28 2c 30 34 38 3c 40 44 48 4c 50 54 58 5c 60 64 68 6c 70 74 78 7c 80 84 88 8c 90 94 98 9c a0 a4 a8 ac b0 b4 b8 bc c0 c4 c8 cc d0 d4 d8 dc 80 f5 8f 93 a3 b3 c3 d3 e3 f3 03 14 24 34 44 54 64 74 84 94 a4 b4 c4 d4 e4 f4 04 15 25 35 45 55 65 75 85 95 a5 b5 c5 d5 e5 f5 05 16 26 36 b6 b2 b2 b2 b2 b2 b2 b2 b2 b2 02 -Detected FN jump! 58 -> 63 (expected 60, delta 5) -PDCH(bts=0,trx=0,ts=4) Expiring FN=63 but previous FN=21 is still reserved! -PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=21, reason=DL_ACK): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} poll timeout for FN=21, TS=4 (curr FN 63) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Timeout for polling PACKET DOWNLINK ACK: |Assignment was on PACCH|No downlink ACK received yet| -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} N3105 0 => 1 (< MAX 8) -DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event DL_ACKNACK_MISS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=0)"RR"(BSN=1) R=ACK I=NACK TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=0:2, lost=0, recv=2, skipped=0, bsn=0, info='RR..............................................................' TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Final ACK received. -DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event FINAL_ACK_RECVD -DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to WAIT_RELEASE -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:0, PACCH:1] +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=17 block_nr=4 scheduling free USF for polling at FN=21 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +PDCH(bts=0,trx=0,ts=4) FN=65 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==2 .. V(S)==2) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new dummy block at BSN 2, CS=MCS-7 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Empty chunk, added LLC dummy command of size 55, drained_since=57 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Keep idle TBF open: 57/43 -> no +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=55 +DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event LAST_DL_DATA_SENT +DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to FINISHED +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} data block (BSN 2, MCS-7): 6f 43 c0 01 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Restarting at BSN 2, because all blocks have been transmitted. +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} need_padding 0 spb_status 0 spb 0 (BSN1 2 BSN2 -1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying data unit 0 (BSN 2) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 65 + 13 = 78 +PDCH(bts=0,trx=0,ts=4) Reserving FN 78 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled DL Acknowledgement polling on PACCH (FN=78, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Starting timer T3191 [final block (DL-TBF)] with 5 sec. 0 microsec, cur_fn=2654167 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled Ack/Nack polling on FN=78, TS=4 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} msg block (BSN 2, MCS-5): 0f 80 00 e8 db 10 70 c0 ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca 0a +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} stopping timer T3191 [ACK/NACK received] +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} ack: (BSN=2)"R"(BSN=2) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} DL analysis, range=2:3, lost=0, recv=0, skipped=1, bsn=2, info='x...............................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} V(B): (V(A)=3)""(V(S)-1=2) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Final ACK received. +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: Received Event FINAL_ACK_RECVD +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: state_chg to WAIT_RELEASE +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:1, PACCH:0] TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} free PDCH(bts=0,trx=0,ts=4) Detaching TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE}, 1 TBFs, USFs = 00, TFIs = 00000001. MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) Detaching TBF: TBF(DL:E:TLLI-0xffeeddcc){WAIT_RELEASE} @@ -6762,7 +7592,7 @@ MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11) Destroying MS object ********** DL-TBF ends here ********** DL_TBF(DL:TFI-0-0-0:E){WAIT_RELEASE}: Deallocated UL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated -DL_ASS_TBF(DL:TFI-0-0-0:E){SEND_ASS}: Deallocated +DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated Testing retx for MCS 6 - 9 Creating MS object Modifying MS object, TLLI = 0xffffffff, MS class 0 -> 11 @@ -6797,12 +7627,11 @@ TBF(DL:TFI-0-0-0:E){NEW} set ass. type CCCH [prev CCCH:0, PACCH:0] DL_TBF(DL:TFI-0-0-0:E){NEW}: state_chg to ASSIGN TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=220 Modifying MS object, TLLI = 0xffffffff, TA 220 -> 0 -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Received Event SCHED_ASS -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: state_chg to SEND_ASS -DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ACK_PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} The TBF has been confirmed on the PACCH, changed type from CCCH to PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} unset ass. type CCCH [prev CCCH:1, PACCH:0] -TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type PACCH [prev CCCH:0, PACCH:0] +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ADD_CCCH +TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type CCCH [prev CCCH:1, PACCH:0] +TBF(DL:TFI-0-0-0:E){ASSIGN} Attempted to set ass. type CCCH which is already set +TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=0 +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_READY_CCCH DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: state_chg to FLOW The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly confirmed MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) appending 100 bytes to DL LLC queue @@ -6839,20 +7668,100 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 2 RLC blocks, 2 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 0) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 1 (BSN 1) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 0, MCS-9): 07 00 00 02 28 01 04 08 0c 10 14 18 1c 20 24 28 2c 30 34 38 3c 40 44 48 4c 50 54 58 5c 60 64 68 6c 70 74 78 7c 80 84 88 8c 90 94 98 9c a0 a4 a8 ac b0 b4 b8 bc c0 c4 c8 cc d0 d4 d8 dc e0 e4 e8 ec f0 f4 f8 fc 00 05 09 0d 11 15 19 1d 21 25 41 f3 af b4 c4 d4 e4 f4 04 15 25 35 45 55 65 75 85 95 a5 b5 c5 d5 e5 f5 05 16 26 36 b6 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 b2 02 -PDCH(bts=0,trx=0,ts=4) Expiring FN=63 but previous FN=21 is still reserved! -PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=21, reason=DL_ACK): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} poll timeout for FN=21, TS=4 (curr FN 63) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Timeout for polling PACKET DOWNLINK ACK: |Assignment was on PACCH|No downlink ACK received yet| -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} N3105 0 => 1 (< MAX 8) -DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event DL_ACKNACK_MISS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=0)"RR"(BSN=1) R=ACK I=NACK TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=0:2, lost=0, recv=2, skipped=0, bsn=0, info='RR..............................................................' TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Final ACK received. -DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event FINAL_ACK_RECVD -DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to WAIT_RELEASE -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:0, PACCH:1] +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=17 block_nr=4 scheduling free USF for polling at FN=21 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +PDCH(bts=0,trx=0,ts=4) FN=65 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==2 .. V(S)==2) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new dummy block at BSN 2, CS=MCS-9 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Empty chunk, added LLC dummy command of size 73, drained_since=57 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Keep idle TBF open: 57/43 -> no +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=73 +DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event LAST_DL_DATA_SENT +DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to FINISHED +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} data block (BSN 2, MCS-9): 93 43 c0 01 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Restarting at BSN 2, because all blocks have been transmitted. +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} need_padding 0 spb_status 0 spb 0 (BSN1 2 BSN2 -1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying data unit 0 (BSN 2) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 65 + 13 = 78 +PDCH(bts=0,trx=0,ts=4) Reserving FN 78 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled DL Acknowledgement polling on PACCH (FN=78, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Starting timer T3191 [final block (DL-TBF)] with 5 sec. 0 microsec, cur_fn=2654167 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled Ack/Nack polling on FN=78, TS=4 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} msg block (BSN 2, MCS-6): 0f 80 00 e0 e4 10 70 c0 ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca 0a +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} stopping timer T3191 [ACK/NACK received] +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} ack: (BSN=2)"R"(BSN=2) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} DL analysis, range=2:3, lost=0, recv=0, skipped=1, bsn=2, info='x...............................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} V(B): (V(A)=3)""(V(S)-1=2) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Final ACK received. +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: Received Event FINAL_ACK_RECVD +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: state_chg to WAIT_RELEASE +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:1, PACCH:0] TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} free PDCH(bts=0,trx=0,ts=4) Detaching TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE}, 1 TBFs, USFs = 00, TFIs = 00000001. MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) Detaching TBF: TBF(DL:E:TLLI-0xffeeddcc){WAIT_RELEASE} @@ -6861,7 +7770,7 @@ MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11) Destroying MS object ********** DL-TBF ends here ********** DL_TBF(DL:TFI-0-0-0:E){WAIT_RELEASE}: Deallocated UL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated -DL_ASS_TBF(DL:TFI-0-0-0:E){SEND_ASS}: Deallocated +DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated Testing retx for MCS 7 - 5 Creating MS object Modifying MS object, TLLI = 0xffffffff, MS class 0 -> 11 @@ -6896,12 +7805,11 @@ TBF(DL:TFI-0-0-0:E){NEW} set ass. type CCCH [prev CCCH:0, PACCH:0] DL_TBF(DL:TFI-0-0-0:E){NEW}: state_chg to ASSIGN TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=220 Modifying MS object, TLLI = 0xffffffff, TA 220 -> 0 -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Received Event SCHED_ASS -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: state_chg to SEND_ASS -DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ACK_PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} The TBF has been confirmed on the PACCH, changed type from CCCH to PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} unset ass. type CCCH [prev CCCH:1, PACCH:0] -TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type PACCH [prev CCCH:0, PACCH:0] +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ADD_CCCH +TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type CCCH [prev CCCH:1, PACCH:0] +TBF(DL:TFI-0-0-0:E){ASSIGN} Attempted to set ass. type CCCH which is already set +TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=0 +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_READY_CCCH DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: state_chg to FLOW The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly confirmed MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) appending 100 bytes to DL LLC queue @@ -6938,20 +7846,99 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 1) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 1, MCS-5): 07 40 00 08 d6 3f 4e 8e ce 0e 4f 8f cf 0f 50 90 d0 10 51 91 d1 11 52 92 d2 12 53 93 d3 13 54 94 d4 14 55 95 d5 15 56 96 d6 16 57 97 d7 17 58 98 d8 d8 ca ca ca ca ca ca ca ca ca 0a -PDCH(bts=0,trx=0,ts=4) Expiring FN=63 but previous FN=17 is still reserved! -PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=17, reason=DL_ACK): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} poll timeout for FN=17, TS=4 (curr FN 63) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Timeout for polling PACKET DOWNLINK ACK: |Assignment was on PACCH|No downlink ACK received yet| -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} N3105 0 => 1 (< MAX 8) -DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event DL_ACKNACK_MISS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=0)"RR"(BSN=1) R=ACK I=NACK TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=0:2, lost=0, recv=2, skipped=0, bsn=0, info='RR..............................................................' TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Final ACK received. -DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event FINAL_ACK_RECVD -DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to WAIT_RELEASE -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:0, PACCH:1] +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=13 block_nr=3 scheduling free USF for polling at FN=17 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +PDCH(bts=0,trx=0,ts=4) FN=65 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==2 .. V(S)==2) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new dummy block at BSN 2, CS=MCS-5 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Empty chunk, added LLC dummy command of size 55, drained_since=61 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Keep idle TBF open: 61/43 -> no +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=55 +DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event LAST_DL_DATA_SENT +DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to FINISHED +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} data block (BSN 2, MCS-5): 6f 43 c0 01 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} need_padding 0 spb_status 0 spb 0 (BSN1 2 BSN2 -1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying data unit 0 (BSN 2) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 65 + 13 = 78 +PDCH(bts=0,trx=0,ts=4) Reserving FN 78 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled DL Acknowledgement polling on PACCH (FN=78, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Starting timer T3191 [final block (DL-TBF)] with 5 sec. 0 microsec, cur_fn=2654167 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled Ack/Nack polling on FN=78, TS=4 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} msg block (BSN 2, MCS-5): 0f 80 00 e8 db 10 70 c0 ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca 0a +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} stopping timer T3191 [ACK/NACK received] +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} ack: (BSN=2)"R"(BSN=2) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} DL analysis, range=2:3, lost=0, recv=1, skipped=0, bsn=2, info='R...............................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} V(B): (V(A)=3)""(V(S)-1=2) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Final ACK received. +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: Received Event FINAL_ACK_RECVD +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: state_chg to WAIT_RELEASE +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:1, PACCH:0] TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} free PDCH(bts=0,trx=0,ts=4) Detaching TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE}, 1 TBFs, USFs = 00, TFIs = 00000001. MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) Detaching TBF: TBF(DL:E:TLLI-0xffeeddcc){WAIT_RELEASE} @@ -6960,7 +7947,7 @@ MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11) Destroying MS object ********** DL-TBF ends here ********** DL_TBF(DL:TFI-0-0-0:E){WAIT_RELEASE}: Deallocated UL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated -DL_ASS_TBF(DL:TFI-0-0-0:E){SEND_ASS}: Deallocated +DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated Testing retx for MCS 9 - 6 Creating MS object Modifying MS object, TLLI = 0xffffffff, MS class 0 -> 11 @@ -6995,12 +7982,11 @@ TBF(DL:TFI-0-0-0:E){NEW} set ass. type CCCH [prev CCCH:0, PACCH:0] DL_TBF(DL:TFI-0-0-0:E){NEW}: state_chg to ASSIGN TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=220 Modifying MS object, TLLI = 0xffffffff, TA 220 -> 0 -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Received Event SCHED_ASS -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: state_chg to SEND_ASS -DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ACK_PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} The TBF has been confirmed on the PACCH, changed type from CCCH to PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} unset ass. type CCCH [prev CCCH:1, PACCH:0] -TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type PACCH [prev CCCH:0, PACCH:0] +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ADD_CCCH +TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type CCCH [prev CCCH:1, PACCH:0] +TBF(DL:TFI-0-0-0:E){ASSIGN} Attempted to set ass. type CCCH which is already set +TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=0 +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_READY_CCCH DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: state_chg to FLOW The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly confirmed MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) appending 100 bytes to DL LLC queue @@ -7037,20 +8023,99 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 1) TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 1, MCS-6): 07 40 00 02 cd bf d2 12 53 93 d3 13 54 94 d4 14 55 95 d5 15 56 96 d6 16 57 97 d7 17 58 98 d8 d8 ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca 0a -PDCH(bts=0,trx=0,ts=4) Expiring FN=63 but previous FN=17 is still reserved! -PDCH(bts=0,trx=0,ts=4) Timeout for registered POLL (FN=17, reason=DL_ACK): TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} poll timeout for FN=17, TS=4 (curr FN 63) -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Timeout for polling PACKET DOWNLINK ACK: |Assignment was on PACCH|No downlink ACK received yet| -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} N3105 0 => 1 (< MAX 8) -DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event DL_ACKNACK_MISS TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=0)"RR"(BSN=1) R=ACK I=NACK TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=0:2, lost=0, recv=2, skipped=0, bsn=0, info='RR..............................................................' TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Final ACK received. -DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event FINAL_ACK_RECVD -DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to WAIT_RELEASE -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:0, PACCH:1] +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=13 block_nr=3 scheduling free USF for polling at FN=17 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +PDCH(bts=0,trx=0,ts=4) FN=65 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==2 .. V(S)==2) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new dummy block at BSN 2, CS=MCS-6 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Empty chunk, added LLC dummy command of size 73, drained_since=61 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Keep idle TBF open: 61/43 -> no +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=73 +DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event LAST_DL_DATA_SENT +DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to FINISHED +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} data block (BSN 2, MCS-6): 93 43 c0 01 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} need_padding 0 spb_status 0 spb 0 (BSN1 2 BSN2 -1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying data unit 0 (BSN 2) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 65 + 13 = 78 +PDCH(bts=0,trx=0,ts=4) Reserving FN 78 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled DL Acknowledgement polling on PACCH (FN=78, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Starting timer T3191 [final block (DL-TBF)] with 5 sec. 0 microsec, cur_fn=2654167 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled Ack/Nack polling on FN=78, TS=4 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} msg block (BSN 2, MCS-6): 0f 80 00 e0 e4 10 70 c0 ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca 0a +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} stopping timer T3191 [ACK/NACK received] +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} ack: (BSN=2)"R"(BSN=2) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} DL analysis, range=2:3, lost=0, recv=1, skipped=0, bsn=2, info='R...............................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} V(B): (V(A)=3)""(V(S)-1=2) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Final ACK received. +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: Received Event FINAL_ACK_RECVD +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: state_chg to WAIT_RELEASE +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:1, PACCH:0] TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} free PDCH(bts=0,trx=0,ts=4) Detaching TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE}, 1 TBFs, USFs = 00, TFIs = 00000001. MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) Detaching TBF: TBF(DL:E:TLLI-0xffeeddcc){WAIT_RELEASE} @@ -7059,7 +8124,7 @@ MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11) Destroying MS object ********** DL-TBF ends here ********** DL_TBF(DL:TFI-0-0-0:E){WAIT_RELEASE}: Deallocated UL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated -DL_ASS_TBF(DL:TFI-0-0-0:E){SEND_ASS}: Deallocated +DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated === end test_tbf_egprs_retx_dl === === start test_tbf_egprs_spb_dl === PDCH(bts=0,trx=0,ts=4) PDCH state: disabled => enabled @@ -7097,12 +8162,11 @@ TBF(DL:TFI-0-0-0:E){NEW} set ass. type CCCH [prev CCCH:0, PACCH:0] DL_TBF(DL:TFI-0-0-0:E){NEW}: state_chg to ASSIGN TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=220 Modifying MS object, TLLI = 0xffffffff, TA 220 -> 0 -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Received Event SCHED_ASS -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: state_chg to SEND_ASS -DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ACK_PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} The TBF has been confirmed on the PACCH, changed type from CCCH to PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} unset ass. type CCCH [prev CCCH:1, PACCH:0] -TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type PACCH [prev CCCH:0, PACCH:0] +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ADD_CCCH +TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type CCCH [prev CCCH:1, PACCH:0] +TBF(DL:TFI-0-0-0:E){ASSIGN} Attempted to set ass. type CCCH which is already set +TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=0 +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_READY_CCCH DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: state_chg to FLOW The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly confirmed MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) appending 100 bytes to DL LLC queue @@ -7132,10 +8196,107 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=0)"R"(BSN=0) R=ACK I=NACK TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=0:1, lost=0, recv=1, skipped=0, bsn=0, info='R...............................................................' TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=1)""(V(S)-1=0) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Final ACK received. -DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event FINAL_ACK_RECVD -DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to WAIT_RELEASE -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:0, PACCH:1] +PDCH(bts=0,trx=0,ts=4) FN=0 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==1 .. V(S)==1) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 1, CS=MCS-3 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=100 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} LLC queue completely drained and there's still 10 free bytes in rlcmac data block +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Keep idle TBF open: 0/43 -> yes +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 1, MCS-3): 34 ff 4a 4b 4c 4d 4e 4f 50 51 52 53 54 55 56 57 58 59 5a 5b 5c 5d 5e 5f 60 61 62 63 2b 2b 2b 2b 2b 2b 2b 2b 2b +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 1 BSN2 -1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 0 + 13 = 13 +PDCH(bts=0,trx=0,ts=4) Reserving FN 13 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=13, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=13, TS=4 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 1, MCS-3): 0f 40 00 06 68 fe 95 96 98 9a 9c 9e a0 a2 a4 a6 a8 aa ac ae b0 b2 b4 b6 b8 ba bc be c0 c2 c4 c6 56 56 56 56 56 56 56 56 56 00 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=1)"R"(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=1:2, lost=0, recv=1, skipped=0, bsn=1, info='R...............................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=8 block_nr=2 scheduling free USF for polling at FN=13 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +PDCH(bts=0,trx=0,ts=4) FN=60 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==2 .. V(S)==2) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new dummy block at BSN 2, CS=MCS-3 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Empty chunk, added LLC dummy command of size 36, drained_since=60 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Keep idle TBF open: 60/43 -> no +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=36 +DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event LAST_DL_DATA_SENT +DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to FINISHED +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} data block (BSN 2, MCS-3): 49 43 c0 01 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} need_padding 0 spb_status 0 spb 0 (BSN1 2 BSN2 -1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying data unit 0 (BSN 2) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 60 + 13 = 73 +PDCH(bts=0,trx=0,ts=4) Reserving FN 73 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled DL Acknowledgement polling on PACCH (FN=73, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Starting timer T3191 [final block (DL-TBF)] with 5 sec. 0 microsec, cur_fn=2654167 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled Ack/Nack polling on FN=73, TS=4 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} msg block (BSN 2, MCS-3): 0f 80 00 06 93 86 80 03 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 00 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} stopping timer T3191 [ACK/NACK received] +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} ack: (BSN=2)"R"(BSN=2) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} DL analysis, range=2:3, lost=0, recv=1, skipped=0, bsn=2, info='R...............................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} V(B): (V(A)=3)""(V(S)-1=2) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Final ACK received. +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: Received Event FINAL_ACK_RECVD +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: state_chg to WAIT_RELEASE +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:1, PACCH:0] TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} free PDCH(bts=0,trx=0,ts=4) Detaching TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE}, 1 TBFs, USFs = 00, TFIs = 00000001. MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) Detaching TBF: TBF(DL:E:TLLI-0xffeeddcc){WAIT_RELEASE} @@ -7144,7 +8305,7 @@ MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11) Destroying MS object ********** DL-TBF ends here ********** DL_TBF(DL:TFI-0-0-0:E){WAIT_RELEASE}: Deallocated UL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated -DL_ASS_TBF(DL:TFI-0-0-0:E){SEND_ASS}: Deallocated +DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated Testing retx for MCS 5 to reseg_mcs 2 Creating MS object Modifying MS object, TLLI = 0xffffffff, MS class 0 -> 11 @@ -7179,12 +8340,11 @@ TBF(DL:TFI-0-0-0:E){NEW} set ass. type CCCH [prev CCCH:0, PACCH:0] DL_TBF(DL:TFI-0-0-0:E){NEW}: state_chg to ASSIGN TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=220 Modifying MS object, TLLI = 0xffffffff, TA 220 -> 0 -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Received Event SCHED_ASS -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: state_chg to SEND_ASS -DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ACK_PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} The TBF has been confirmed on the PACCH, changed type from CCCH to PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} unset ass. type CCCH [prev CCCH:1, PACCH:0] -TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type PACCH [prev CCCH:0, PACCH:0] +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ADD_CCCH +TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type CCCH [prev CCCH:1, PACCH:0] +TBF(DL:TFI-0-0-0:E){ASSIGN} Attempted to set ass. type CCCH which is already set +TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=0 +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_READY_CCCH DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: state_chg to FLOW The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly confirmed MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) appending 100 bytes to DL LLC queue @@ -7214,10 +8374,119 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=0)"R"(BSN=0) R=ACK I=NACK TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=0:1, lost=0, recv=1, skipped=0, bsn=0, info='R...............................................................' TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=1)""(V(S)-1=0) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Final ACK received. -DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event FINAL_ACK_RECVD -DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to WAIT_RELEASE -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:0, PACCH:1] +PDCH(bts=0,trx=0,ts=4) FN=0 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==1 .. V(S)==1) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 1, CS=MCS-2 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 1, MCS-2): 38 39 3a 3b 3c 3d 3e 3f 40 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d 4e 4f 50 51 52 53 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 1 BSN2 -1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 1, MCS-2): 07 40 00 92 70 72 74 76 78 7a 7c 7e 80 82 84 86 88 8a 8c 8e 90 92 94 96 98 9a 9c 9e a0 a2 a4 a6 00 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=1)"R"(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=1:2, lost=0, recv=1, skipped=0, bsn=1, info='R...............................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +PDCH(bts=0,trx=0,ts=4) FN=4 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==2 .. V(S)==2) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 2, CS=MCS-2 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=100 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} LLC queue completely drained and there's still 11 free bytes in rlcmac data block +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Keep idle TBF open: 0/43 -> yes +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 2, MCS-2): 20 ff 54 55 56 57 58 59 5a 5b 5c 5d 5e 5f 60 61 62 63 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 2 BSN2 -1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 2) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 4 + 13 = 17 +PDCH(bts=0,trx=0,ts=4) Reserving FN 17 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=17, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=17, TS=4 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 2, MCS-2): 0f 80 00 12 40 fe a9 aa ac ae b0 b2 b4 b6 b8 ba bc be c0 c2 c4 c6 56 56 56 56 56 56 56 56 56 56 00 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)"R"(BSN=2) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:3, lost=0, recv=1, skipped=0, bsn=2, info='R...............................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=3)""(V(S)-1=2) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=3)""(BSN=2) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=3:3, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=3)""(V(S)-1=2) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=13 block_nr=3 scheduling free USF for polling at FN=17 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=3)""(BSN=2) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=3:3, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=3)""(V(S)-1=2) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=3)""(BSN=2) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=3:3, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=3)""(V(S)-1=2) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=3)""(BSN=2) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=3:3, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=3)""(V(S)-1=2) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=3)""(BSN=2) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=3:3, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=3)""(V(S)-1=2) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=3)""(BSN=2) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=3:3, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=3)""(V(S)-1=2) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=3)""(BSN=2) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=3:3, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=3)""(V(S)-1=2) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=3)""(BSN=2) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=3:3, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=3)""(V(S)-1=2) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=3)""(BSN=2) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=3:3, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=3)""(V(S)-1=2) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=3)""(BSN=2) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=3:3, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=3)""(V(S)-1=2) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=3)""(BSN=2) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=3:3, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=3)""(V(S)-1=2) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=3)""(BSN=2) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=3:3, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=3)""(V(S)-1=2) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=3)""(BSN=2) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=3:3, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=3)""(V(S)-1=2) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +PDCH(bts=0,trx=0,ts=4) FN=65 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==3 .. V(S)==3) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new dummy block at BSN 3, CS=MCS-2 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Empty chunk, added LLC dummy command of size 27, drained_since=61 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Keep idle TBF open: 61/43 -> no +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=27 +DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event LAST_DL_DATA_SENT +DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to FINISHED +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} data block (BSN 3, MCS-2): 37 43 c0 01 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} need_padding 0 spb_status 0 spb 0 (BSN1 3 BSN2 -1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying data unit 0 (BSN 3) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 65 + 13 = 78 +PDCH(bts=0,trx=0,ts=4) Reserving FN 78 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled DL Acknowledgement polling on PACCH (FN=78, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Starting timer T3191 [final block (DL-TBF)] with 5 sec. 0 microsec, cur_fn=2654167 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled Ack/Nack polling on FN=78, TS=4 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} msg block (BSN 3, MCS-2): 0f c0 00 12 6f 86 80 03 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 00 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} stopping timer T3191 [ACK/NACK received] +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} ack: (BSN=3)"R"(BSN=3) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} DL analysis, range=3:4, lost=0, recv=1, skipped=0, bsn=3, info='R...............................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} V(B): (V(A)=4)""(V(S)-1=3) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Final ACK received. +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: Received Event FINAL_ACK_RECVD +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: state_chg to WAIT_RELEASE +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:1, PACCH:0] TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} free PDCH(bts=0,trx=0,ts=4) Detaching TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE}, 1 TBFs, USFs = 00, TFIs = 00000001. MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) Detaching TBF: TBF(DL:E:TLLI-0xffeeddcc){WAIT_RELEASE} @@ -7226,7 +8495,7 @@ MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11) Destroying MS object ********** DL-TBF ends here ********** DL_TBF(DL:TFI-0-0-0:E){WAIT_RELEASE}: Deallocated UL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated -DL_ASS_TBF(DL:TFI-0-0-0:E){SEND_ASS}: Deallocated +DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated Testing retx for MCS 4 to reseg_mcs 1 Creating MS object Modifying MS object, TLLI = 0xffffffff, MS class 0 -> 11 @@ -7261,12 +8530,11 @@ TBF(DL:TFI-0-0-0:E){NEW} set ass. type CCCH [prev CCCH:0, PACCH:0] DL_TBF(DL:TFI-0-0-0:E){NEW}: state_chg to ASSIGN TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=220 Modifying MS object, TLLI = 0xffffffff, TA 220 -> 0 -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Received Event SCHED_ASS -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: state_chg to SEND_ASS -DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ACK_PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} The TBF has been confirmed on the PACCH, changed type from CCCH to PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} unset ass. type CCCH [prev CCCH:1, PACCH:0] -TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type PACCH [prev CCCH:0, PACCH:0] +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ADD_CCCH +TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type CCCH [prev CCCH:1, PACCH:0] +TBF(DL:TFI-0-0-0:E){ASSIGN} Attempted to set ass. type CCCH which is already set +TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=0 +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_READY_CCCH DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: state_chg to FLOW The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly confirmed MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) appending 100 bytes to DL LLC queue @@ -7296,10 +8564,127 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=0)"R"(BSN=0) R=ACK I=NACK TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=0:1, lost=0, recv=1, skipped=0, bsn=0, info='R...............................................................' TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=1)""(V(S)-1=0) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Final ACK received. -DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event FINAL_ACK_RECVD -DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to WAIT_RELEASE -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:0, PACCH:1] +PDCH(bts=0,trx=0,ts=4) FN=0 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==1 .. V(S)==1) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 1, CS=MCS-1 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 1, MCS-1): 2c 2d 2e 2f 30 31 32 33 34 35 36 37 38 39 3a 3b 3c 3d 3e 3f 40 41 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 1 BSN2 -1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 1, MCS-1): 07 40 00 96 58 5a 5c 5e 60 62 64 66 68 6a 6c 6e 70 72 74 76 78 7a 7c 7e 80 82 00 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=1)"R"(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=1:2, lost=0, recv=1, skipped=0, bsn=1, info='R...............................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +PDCH(bts=0,trx=0,ts=4) FN=4 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==2 .. V(S)==2) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 2, CS=MCS-1 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 2, MCS-1): 42 43 44 45 46 47 48 49 4a 4b 4c 4d 4e 4f 50 51 52 53 54 55 56 57 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 2 BSN2 -1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 2) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 2, MCS-1): 07 80 00 96 84 86 88 8a 8c 8e 90 92 94 96 98 9a 9c 9e a0 a2 a4 a6 a8 aa ac ae 00 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)"R"(BSN=2) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:3, lost=0, recv=1, skipped=0, bsn=2, info='R...............................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=3)""(V(S)-1=2) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +PDCH(bts=0,trx=0,ts=4) FN=8 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==3 .. V(S)==3) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 3, CS=MCS-1 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=100 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} LLC queue completely drained and there's still 9 free bytes in rlcmac data block +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Keep idle TBF open: 0/43 -> yes +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 3, MCS-1): 18 ff 58 59 5a 5b 5c 5d 5e 5f 60 61 62 63 2b 2b 2b 2b 2b 2b 2b 2b +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 3 BSN2 -1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 3) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 8 + 13 = 21 +PDCH(bts=0,trx=0,ts=4) Reserving FN 21 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=21, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=21, TS=4 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 3, MCS-1): 0f c0 00 16 30 fe b1 b2 b4 b6 b8 ba bc be c0 c2 c4 c6 56 56 56 56 56 56 56 56 00 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=3)"R"(BSN=3) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=3:4, lost=0, recv=1, skipped=0, bsn=3, info='R...............................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=4)""(V(S)-1=3) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=4)""(BSN=3) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=4:4, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=4)""(V(S)-1=3) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=17 block_nr=4 scheduling free USF for polling at FN=21 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=4)""(BSN=3) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=4:4, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=4)""(V(S)-1=3) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=4)""(BSN=3) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=4:4, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=4)""(V(S)-1=3) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=4)""(BSN=3) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=4:4, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=4)""(V(S)-1=3) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=4)""(BSN=3) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=4:4, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=4)""(V(S)-1=3) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=4)""(BSN=3) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=4:4, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=4)""(V(S)-1=3) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=4)""(BSN=3) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=4:4, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=4)""(V(S)-1=3) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=4)""(BSN=3) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=4:4, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=4)""(V(S)-1=3) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=4)""(BSN=3) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=4:4, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=4)""(V(S)-1=3) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=4)""(BSN=3) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=4:4, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=4)""(V(S)-1=3) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=4)""(BSN=3) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=4:4, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=4)""(V(S)-1=3) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=4)""(BSN=3) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=4:4, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=4)""(V(S)-1=3) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +PDCH(bts=0,trx=0,ts=4) FN=65 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==4 .. V(S)==4) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new dummy block at BSN 4, CS=MCS-1 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Empty chunk, added LLC dummy command of size 21, drained_since=57 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Keep idle TBF open: 57/43 -> no +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=21 +DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event LAST_DL_DATA_SENT +DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to FINISHED +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} data block (BSN 4, MCS-1): 2b 43 c0 01 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} need_padding 0 spb_status 0 spb 0 (BSN1 4 BSN2 -1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying data unit 0 (BSN 4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 65 + 13 = 78 +PDCH(bts=0,trx=0,ts=4) Reserving FN 78 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled DL Acknowledgement polling on PACCH (FN=78, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Starting timer T3191 [final block (DL-TBF)] with 5 sec. 0 microsec, cur_fn=2654167 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled Ack/Nack polling on FN=78, TS=4 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} msg block (BSN 4, MCS-1): 0f 00 01 16 57 86 80 03 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 00 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} stopping timer T3191 [ACK/NACK received] +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} ack: (BSN=4)"R"(BSN=4) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} DL analysis, range=4:5, lost=0, recv=1, skipped=0, bsn=4, info='R...............................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} V(B): (V(A)=5)""(V(S)-1=4) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Final ACK received. +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: Received Event FINAL_ACK_RECVD +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: state_chg to WAIT_RELEASE +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:1, PACCH:0] TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} free PDCH(bts=0,trx=0,ts=4) Detaching TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE}, 1 TBFs, USFs = 00, TFIs = 00000001. MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) Detaching TBF: TBF(DL:E:TLLI-0xffeeddcc){WAIT_RELEASE} @@ -7308,7 +8693,7 @@ MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11) Destroying MS object ********** DL-TBF ends here ********** DL_TBF(DL:TFI-0-0-0:E){WAIT_RELEASE}: Deallocated UL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated -DL_ASS_TBF(DL:TFI-0-0-0:E){SEND_ASS}: Deallocated +DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated Testing retx for MCS 6 to reseg_mcs 3 Creating MS object Modifying MS object, TLLI = 0xffffffff, MS class 0 -> 11 @@ -7343,12 +8728,11 @@ TBF(DL:TFI-0-0-0:E){NEW} set ass. type CCCH [prev CCCH:0, PACCH:0] DL_TBF(DL:TFI-0-0-0:E){NEW}: state_chg to ASSIGN TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=220 Modifying MS object, TLLI = 0xffffffff, TA 220 -> 0 -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Received Event SCHED_ASS -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: state_chg to SEND_ASS -DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ACK_PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} The TBF has been confirmed on the PACCH, changed type from CCCH to PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} unset ass. type CCCH [prev CCCH:1, PACCH:0] -TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type PACCH [prev CCCH:0, PACCH:0] +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ADD_CCCH +TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type CCCH [prev CCCH:1, PACCH:0] +TBF(DL:TFI-0-0-0:E){ASSIGN} Attempted to set ass. type CCCH which is already set +TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=0 +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_READY_CCCH DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: state_chg to FLOW The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly confirmed MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) appending 100 bytes to DL LLC queue @@ -7385,10 +8769,107 @@ TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=0)"R"(BSN=0) R=ACK I=NACK TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=0:1, lost=0, recv=1, skipped=0, bsn=0, info='R...............................................................' TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=1)""(V(S)-1=0) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Final ACK received. -DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event FINAL_ACK_RECVD -DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to WAIT_RELEASE -TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:0, PACCH:1] +PDCH(bts=0,trx=0,ts=4) FN=0 Scheduling data message at RTS for DL TFI=0 prio=3 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==1 .. V(S)==1) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new block at BSN 1, CS=MCS-6 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=100 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} LLC queue completely drained and there's still 47 free bytes in rlcmac data block +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Keep idle TBF open: 0/43 -> yes +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} data block (BSN 1, MCS-6): 34 ff 4a 4b 4c 4d 4e 4f 50 51 52 53 54 55 56 57 58 59 5a 5b 5c 5d 5e 5f 60 61 62 63 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} need_padding 0 spb_status 0 spb 0 (BSN1 1 BSN2 -1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Copying data unit 0 (BSN 1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 0 + 13 = 13 +PDCH(bts=0,trx=0,ts=4) Reserving FN 13 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled DL Acknowledgement polling on PACCH (FN=13, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Scheduled Ack/Nack polling on FN=13, TS=4 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} msg block (BSN 1, MCS-6): 0f 40 00 00 cd bf d2 12 53 93 d3 13 54 94 d4 14 55 95 d5 15 56 96 d6 16 57 97 d7 17 58 98 d8 d8 ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca 0a +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=1)"R"(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=1:2, lost=0, recv=1, skipped=0, bsn=1, info='R...............................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +PDCH(bts=0,trx=0,ts=4) Received RTS for PDCH: FN=8 block_nr=2 scheduling free USF for polling at FN=13 of TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} ack: (BSN=2)""(BSN=1) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} DL analysis, range=2:2, lost=0, recv=0, skipped=0, bsn=0, info='................................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} V(B): (V(A)=2)""(V(S)-1=1) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +PDCH(bts=0,trx=0,ts=4) FN=60 Scheduling data message at RTS for DL TFI=0 prio=4 mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} downlink (V(A)==2 .. V(S)==2) mcs_mode_restrict=EGPRS +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Sending new dummy block at BSN 2, CS=MCS-6 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Empty chunk, added LLC dummy command of size 73, drained_since=60 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Keep idle TBF open: 60/43 -> no +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FLOW} Complete DL frame, len=73 +DL_TBF(DL:TFI-0-0-0:E){FLOW}: Received Event LAST_DL_DATA_SENT +DL_TBF(DL:TFI-0-0-0:E){FLOW}: state_chg to FINISHED +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} data block (BSN 2, MCS-6): 93 43 c0 01 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} need_padding 0 spb_status 0 spb 0 (BSN1 2 BSN2 -1) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying 1 RLC blocks, 1 BSNs +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Copying data unit 0 (BSN 2) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduling Ack/Nack polling, because it was requested explicitly (e.g. first final block sent). +PDCH(bts=0,trx=0,ts=4) POLL scheduled at FN 60 + 13 = 73 +PDCH(bts=0,trx=0,ts=4) Reserving FN 73 for type POLL +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled DL Acknowledgement polling on PACCH (FN=73, TS=4) +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Starting timer T3191 [final block (DL-TBF)] with 5 sec. 0 microsec, cur_fn=2654167 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Scheduled Ack/Nack polling on FN=73, TS=4 +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} msg block (BSN 2, MCS-6): 0f 80 00 e0 e4 10 70 c0 ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca ca 0a +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} downlink acknowledge +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} stopping timer T3191 [ACK/NACK received] +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} ack: (BSN=2)"R"(BSN=2) R=ACK I=NACK +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} DL analysis, range=2:3, lost=0, recv=1, skipped=0, bsn=2, info='R...............................................................' +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} V(B): (V(A)=3)""(V(S)-1=2) A=Acked N=Nacked U=Unacked X=Resend-Unacked I=Invalid +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){FINISHED} Final ACK received. +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: Received Event FINAL_ACK_RECVD +DL_TBF(DL:TFI-0-0-0:E){FINISHED}: state_chg to WAIT_RELEASE +TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} unset ass. type CCCH [prev CCCH:1, PACCH:0] TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE} free PDCH(bts=0,trx=0,ts=4) Detaching TBF(DL:TFI-0-0-0:E:TLLI-0xffeeddcc){WAIT_RELEASE}, 1 TBFs, USFs = 00, TFIs = 00000001. MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) Detaching TBF: TBF(DL:E:TLLI-0xffeeddcc){WAIT_RELEASE} @@ -7397,7 +8878,7 @@ MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11) Destroying MS object ********** DL-TBF ends here ********** DL_TBF(DL:TFI-0-0-0:E){WAIT_RELEASE}: Deallocated UL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated -DL_ASS_TBF(DL:TFI-0-0-0:E){SEND_ASS}: Deallocated +DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated === end test_tbf_egprs_spb_dl === === start test_tbf_puan_urbb_len === PDCH(bts=0,trx=0,ts=7) PDCH state: disabled => enabled @@ -7786,12 +9267,11 @@ TBF(DL:TFI-0-0-0:E){NEW} set ass. type CCCH [prev CCCH:0, PACCH:0] DL_TBF(DL:TFI-0-0-0:E){NEW}: state_chg to ASSIGN TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=220 Modifying MS object, TLLI = 0xffffffff, TA 220 -> 0 -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Received Event SCHED_ASS -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: state_chg to SEND_ASS -DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ACK_PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} The TBF has been confirmed on the PACCH, changed type from CCCH to PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} unset ass. type CCCH [prev CCCH:1, PACCH:0] -TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type PACCH [prev CCCH:0, PACCH:0] +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ADD_CCCH +TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type CCCH [prev CCCH:1, PACCH:0] +TBF(DL:TFI-0-0-0:E){ASSIGN} Attempted to set ass. type CCCH which is already set +TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=0 +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_READY_CCCH DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: state_chg to FLOW The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly confirmed ws(480) @@ -7807,7 +9287,7 @@ MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11) Destroying MS object ********** DL-TBF ends here ********** DL_TBF(DL:TFI-0-0-0:E){FLOW}: Deallocated UL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated -DL_ASS_TBF(DL:TFI-0-0-0:E){SEND_ASS}: Deallocated +DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Deallocated === end test_tbf_epdan_out_of_rx_window === === start test_immediate_assign_rej_multi_block === PDCH(bts=0,trx=0,ts=7) PDCH state: disabled => enabled @@ -9390,12 +10870,11 @@ TBF(DL:TFI-0-0-0:E){NEW} set ass. type CCCH [prev CCCH:0, PACCH:0] DL_TBF(DL:TFI-0-0-0:E){NEW}: state_chg to ASSIGN TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=220 Modifying MS object, TLLI = 0xffffffff, TA 220 -> 0 -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: Received Event SCHED_ASS -DL_ASS_TBF(DL:TFI-0-0-0:E){NONE}: state_chg to SEND_ASS -DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ACK_PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} The TBF has been confirmed on the PACCH, changed type from CCCH to PACCH -TBF(DL:TFI-0-0-0:E){ASSIGN} unset ass. type CCCH [prev CCCH:1, PACCH:0] -TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type PACCH [prev CCCH:0, PACCH:0] +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_ADD_CCCH +TBF(DL:TFI-0-0-0:E){ASSIGN} set ass. type CCCH [prev CCCH:1, PACCH:0] +TBF(DL:TFI-0-0-0:E){ASSIGN} Attempted to set ass. type CCCH which is already set +TBF(DL:TFI-0-0-0:E){ASSIGN} Tx CCCH (PCH) Immediate Assignment [PktDlAss=PDCH(bts=0,trx=0,ts=4)] TA=0 +DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: Received Event ASSIGN_READY_CCCH DL_TBF(DL:TFI-0-0-0:E){ASSIGN}: state_chg to FLOW The MS object cannot fully confirm an unexpected TLLI: 0xffeeddcc, partly confirmed MS(TLLI-0xffeeddcc:TA-0:MSCLS-11-11:DL) appending 100 bytes to DL LLC queue |