Pau Espin Pedrol | 786a6bc | 2020-03-30 13:51:21 +0200 | [diff] [blame] | 1 | /* DRB configuration for each QCI value. If no corresponding QCI is |
| 2 | found, QCI = 9 is used instead. |
| 3 | QCI characteristics in TS 23.203 table 6.1.7 */ |
| 4 | [ |
| 5 | /**************************************** GBR */ |
| 6 | { |
| 7 | qci: 1, /* UM - real time (RTP for VOIP) */ |
| 8 | pdcp_config: { |
| 9 | discardTimer: 100, /* in ms, 0 means infinity */ |
Andre Puschmann | 393cd61 | 2020-06-15 14:30:16 +0200 | [diff] [blame] | 10 | pdcp_SN_Size: 12, |
Pau Espin Pedrol | 786a6bc | 2020-03-30 13:51:21 +0200 | [diff] [blame] | 11 | /* ROHC header compression */ |
| 12 | /* |
| 13 | headerCompression: { |
| 14 | maxCID: 15, |
| 15 | profile0x0001: true, // RTP profile |
| 16 | profile0x0002: true, // UDP profile |
| 17 | profile0x0004: false, // IP profile |
| 18 | }, |
| 19 | */ |
| 20 | }, |
| 21 | rlc_config: { |
| 22 | ul_um: { |
| 23 | sn_FieldLength: 5, |
| 24 | }, |
| 25 | dl_um: { |
| 26 | sn_FieldLength: 5, |
| 27 | t_Reordering: 45, /* should be > to max_harq_tx * HARQ latency */ |
| 28 | }, |
| 29 | }, |
| 30 | logical_channel_config: { |
| 31 | /* Note: SRB1 has priority 1, SRB2 has priority 3. |
| 32 | We start from 4 for priority 0.5 and increase the value */ |
Andre Puschmann | 393cd61 | 2020-06-15 14:30:16 +0200 | [diff] [blame] | 33 | priority: 4, |
| 34 | prioritisedBitRate: 256, /* in kb/s, -1 means infinity */ |
| 35 | bucketSizeDuration: 1000, /* in ms */ |
Pau Espin Pedrol | 786a6bc | 2020-03-30 13:51:21 +0200 | [diff] [blame] | 36 | logicalChannelGroup: 1, |
| 37 | logicalChannelSR_Mask: false, |
| 38 | logicalChannelSR_Prohibit: false, |
| 39 | }, |
| 40 | }, |
| 41 | { |
| 42 | qci: 2, /* UM - real time (video) */ |
| 43 | pdcp_config: { |
| 44 | discardTimer: 150, /* in ms, 0 means infinity */ |
| 45 | pdcp_SN_Size: 12, |
| 46 | }, |
| 47 | rlc_config: { |
| 48 | ul_um: { |
| 49 | sn_FieldLength: 10, |
| 50 | }, |
| 51 | dl_um: { |
| 52 | sn_FieldLength: 10, |
| 53 | t_Reordering: 45, /* should be > to max_harq_tx * HARQ latency */ |
| 54 | }, |
| 55 | }, |
| 56 | logical_channel_config: { |
Andre Puschmann | 393cd61 | 2020-06-15 14:30:16 +0200 | [diff] [blame] | 57 | priority: 5, |
| 58 | prioritisedBitRate: 128, /* in kb/s, -1 means infinity */ |
| 59 | bucketSizeDuration: 1000, /* in ms */ |
Pau Espin Pedrol | 786a6bc | 2020-03-30 13:51:21 +0200 | [diff] [blame] | 60 | logicalChannelGroup: 1, |
| 61 | logicalChannelSR_Mask: false, |
| 62 | logicalChannelSR_Prohibit: false, |
| 63 | }, |
| 64 | }, |
| 65 | { |
| 66 | qci: 3, /* UM - real time (gaming) */ |
| 67 | pdcp_config: { |
| 68 | discardTimer: 100, /* in ms, 0 means infinity */ |
| 69 | pdcp_SN_Size: 12, |
| 70 | }, |
| 71 | rlc_config: { |
| 72 | ul_um: { |
| 73 | sn_FieldLength: 10, |
| 74 | }, |
| 75 | dl_um: { |
| 76 | sn_FieldLength: 10, |
| 77 | t_Reordering: 45, /* should be > to max_harq_tx * HARQ latency */ |
| 78 | }, |
| 79 | }, |
| 80 | logical_channel_config: { |
| 81 | priority: 8, |
| 82 | prioritisedBitRate: 0, /* in kb/s, -1 means infinity */ |
| 83 | bucketSizeDuration: 100, /* in ms */ |
| 84 | logicalChannelGroup: 1, |
| 85 | logicalChannelSR_Mask: false, |
| 86 | logicalChannelSR_Prohibit: false, |
| 87 | }, |
| 88 | }, |
| 89 | { |
| 90 | qci: 4, /* AM - Non-Conversational Video (Buffered Streaming) */ |
| 91 | pdcp_config: { |
| 92 | discardTimer: 0, /* in ms, 0 means infinity */ |
| 93 | statusReportRequired: true, |
| 94 | }, |
| 95 | rlc_config: { |
| 96 | ul_am: { |
| 97 | t_PollRetransmit: 80, /* in ms */ |
| 98 | pollPDU: 64, |
| 99 | pollByte: 125, /* in kBytes, 0 means infinity */ |
| 100 | maxRetxThreshold: 32, |
| 101 | }, |
| 102 | dl_am: { |
| 103 | t_Reordering: 45, /* in ms, should be > to max_harq_tx * HARQ latency */ |
| 104 | t_StatusProhibit: 60, /* in ms */ |
| 105 | }, |
| 106 | }, |
| 107 | logical_channel_config: { |
| 108 | priority: 10, |
| 109 | prioritisedBitRate: 8, /* in kb/s, -1 means infinity */ |
| 110 | bucketSizeDuration: 100, /* in ms */ |
| 111 | logicalChannelGroup: 1, |
| 112 | logicalChannelSR_Mask: false, |
| 113 | logicalChannelSR_Prohibit: false, |
| 114 | }, |
| 115 | }, |
| 116 | { |
| 117 | qci: 65, /* UM - real time (MC-PTT voice) */ |
| 118 | pdcp_config: { |
| 119 | discardTimer: 100, /* in ms, 0 means infinity */ |
| 120 | pdcp_SN_Size: 7, |
| 121 | /* ROHC header compression */ |
| 122 | /* |
| 123 | headerCompression: { |
| 124 | maxCID: 15, |
| 125 | profile0x0001: true, // RTP profile |
| 126 | profile0x0002: true, // UDP profile |
| 127 | profile0x0004: false, // IP profile |
| 128 | }, |
| 129 | */ |
| 130 | }, |
| 131 | rlc_config: { |
| 132 | ul_um: { |
| 133 | sn_FieldLength: 5, |
| 134 | }, |
| 135 | dl_um: { |
| 136 | sn_FieldLength: 5, |
| 137 | t_Reordering: 45, /* should be > to max_harq_tx * HARQ latency */ |
| 138 | }, |
| 139 | }, |
| 140 | logical_channel_config: { |
| 141 | /* Note: SRB1 has priority 1, SRB2 has priority 3. We add an |
| 142 | offset of 4 to the standard priorities */ |
| 143 | priority: 5, |
| 144 | prioritisedBitRate: 0, /* in kb/s, -1 means infinity */ |
| 145 | bucketSizeDuration: 100, /* in ms */ |
| 146 | logicalChannelGroup: 1, |
| 147 | logicalChannelSR_Mask: false, |
| 148 | logicalChannelSR_Prohibit: false, |
| 149 | }, |
| 150 | }, |
| 151 | { |
| 152 | qci: 66, /* UM - real time (non MC-PTT voice) */ |
| 153 | pdcp_config: { |
| 154 | discardTimer: 150, /* in ms, 0 means infinity */ |
| 155 | pdcp_SN_Size: 12, |
| 156 | }, |
| 157 | rlc_config: { |
| 158 | ul_um: { |
| 159 | sn_FieldLength: 10, |
| 160 | }, |
| 161 | dl_um: { |
| 162 | sn_FieldLength: 10, |
| 163 | t_Reordering: 45, /* should be > to max_harq_tx * HARQ latency */ |
| 164 | }, |
| 165 | }, |
| 166 | logical_channel_config: { |
| 167 | /* Note: SRB1 has priority 1, SRB2 has priority 3. |
| 168 | We start from 4 for priority 0.5, ... */ |
| 169 | priority: 7, |
| 170 | prioritisedBitRate: 0, /* in kb/s, -1 means infinity */ |
| 171 | bucketSizeDuration: 100, /* in ms */ |
| 172 | logicalChannelGroup: 1, |
| 173 | logicalChannelSR_Mask: false, |
| 174 | logicalChannelSR_Prohibit: false, |
| 175 | }, |
| 176 | }, |
| 177 | /**************************************** non GBR */ |
| 178 | { |
| 179 | qci: 5, /* AM - high priority (SIP) */ |
| 180 | pdcp_config: { |
| 181 | discardTimer: 0, /* in ms, 0 means infinity */ |
| 182 | statusReportRequired: true, |
| 183 | }, |
| 184 | rlc_config: { |
| 185 | ul_am: { |
| 186 | t_PollRetransmit: 80, /* in ms */ |
| 187 | pollPDU: 64, |
| 188 | pollByte: 125, /* in kBytes, 0 means infinity */ |
| 189 | maxRetxThreshold: 32, |
| 190 | }, |
| 191 | dl_am: { |
| 192 | t_Reordering: 45, /* in ms, should be > to max_harq_tx * HARQ latency */ |
| 193 | t_StatusProhibit: 60, /* in ms */ |
| 194 | }, |
| 195 | }, |
| 196 | logical_channel_config: { |
| 197 | priority: 6, |
| 198 | prioritisedBitRate: 8, /* in kb/s, -1 means infinity */ |
| 199 | bucketSizeDuration: 100, /* in ms */ |
| 200 | logicalChannelGroup: 1, |
| 201 | logicalChannelSR_Mask: false, |
| 202 | logicalChannelSR_Prohibit: false, |
| 203 | }, |
| 204 | }, |
| 205 | { |
| 206 | qci: 6, /* AM - Video (buffered streaming) */ |
| 207 | pdcp_config: { |
| 208 | discardTimer: 0, /* in ms, 0 means infinity */ |
| 209 | statusReportRequired: true, |
| 210 | }, |
| 211 | rlc_config: { |
| 212 | ul_am: { |
| 213 | t_PollRetransmit: 80, /* in ms */ |
| 214 | pollPDU: 64, |
| 215 | pollByte: 125, /* in kBytes, 0 means infinity */ |
| 216 | maxRetxThreshold: 32, |
| 217 | }, |
| 218 | dl_am: { |
| 219 | t_Reordering: 45, /* in ms, should be > to max_harq_tx * HARQ latency */ |
| 220 | t_StatusProhibit: 60, /* in ms */ |
| 221 | }, |
| 222 | }, |
| 223 | logical_channel_config: { |
| 224 | priority: 12, |
| 225 | prioritisedBitRate: 8, /* in kb/s, -1 means infinity */ |
| 226 | bucketSizeDuration: 100, /* in ms */ |
| 227 | logicalChannelGroup: 2, |
| 228 | logicalChannelSR_Mask: false, |
| 229 | logicalChannelSR_Prohibit: false, |
| 230 | }, |
| 231 | }, |
| 232 | { |
| 233 | qci: 7, /* UM - voice, video (live streaming), interactive gaming */ |
| 234 | pdcp_config: { |
| 235 | discardTimer: 100, /* in ms, 0 means infinity */ |
| 236 | pdcp_SN_Size: 12, |
| 237 | }, |
| 238 | rlc_config: { |
| 239 | ul_um: { |
| 240 | sn_FieldLength: 10, |
| 241 | }, |
| 242 | dl_um: { |
| 243 | sn_FieldLength: 10, |
| 244 | t_Reordering: 45, /* should be > to max_harq_tx * HARQ latency */ |
| 245 | }, |
| 246 | }, |
| 247 | logical_channel_config: { |
| 248 | priority: 13, |
| 249 | prioritisedBitRate: 0, /* in kb/s, -1 means infinity */ |
| 250 | bucketSizeDuration: 100, /* in ms */ |
| 251 | logicalChannelGroup: 2, |
| 252 | logicalChannelSR_Mask: false, |
| 253 | logicalChannelSR_Prohibit: false, |
| 254 | }, |
| 255 | }, |
| 256 | { |
Andre Puschmann | bafedff | 2020-07-15 14:29:23 +0200 | [diff] [blame] | 257 | qci: 8, /* Modified UM - best effort (Internet traffic) with full PDCP buffering */ |
Pau Espin Pedrol | 786a6bc | 2020-03-30 13:51:21 +0200 | [diff] [blame] | 258 | pdcp_config: { |
| 259 | discardTimer: 0, /* in ms, 0 means infinity */ |
Andre Puschmann | bafedff | 2020-07-15 14:29:23 +0200 | [diff] [blame] | 260 | pdcp_SN_Size: 12, |
Pau Espin Pedrol | 786a6bc | 2020-03-30 13:51:21 +0200 | [diff] [blame] | 261 | }, |
| 262 | rlc_config: { |
Andre Puschmann | bafedff | 2020-07-15 14:29:23 +0200 | [diff] [blame] | 263 | ul_um: { |
| 264 | sn_FieldLength: 10, |
Pau Espin Pedrol | 786a6bc | 2020-03-30 13:51:21 +0200 | [diff] [blame] | 265 | }, |
Andre Puschmann | bafedff | 2020-07-15 14:29:23 +0200 | [diff] [blame] | 266 | dl_um: { |
| 267 | sn_FieldLength: 10, |
| 268 | t_Reordering: 45, /* should be > to max_harq_tx * HARQ latency */ |
Pau Espin Pedrol | 786a6bc | 2020-03-30 13:51:21 +0200 | [diff] [blame] | 269 | }, |
| 270 | }, |
| 271 | logical_channel_config: { |
| 272 | priority: 14, |
| 273 | prioritisedBitRate: 8, /* in kb/s, -1 means infinity */ |
| 274 | bucketSizeDuration: 100, /* in ms */ |
| 275 | logicalChannelGroup: 2, |
| 276 | logicalChannelSR_Mask: false, |
| 277 | logicalChannelSR_Prohibit: false, |
| 278 | }, |
| 279 | }, |
| 280 | { |
| 281 | qci: 9, /* AM - best effort (Internet traffic) */ |
| 282 | pdcp_config: { |
| 283 | discardTimer: 0, /* in ms, 0 means infinity */ |
| 284 | statusReportRequired: true, |
| 285 | }, |
| 286 | rlc_config: { |
| 287 | ul_am: { |
| 288 | t_PollRetransmit: 80, /* in ms */ |
| 289 | pollPDU: 64, |
| 290 | pollByte: 125, /* in kBytes, 0 means infinity */ |
| 291 | maxRetxThreshold: 32, |
| 292 | }, |
| 293 | dl_am: { |
| 294 | t_Reordering: 45, /* in ms, should be > to max_harq_tx * HARQ latency */ |
| 295 | t_StatusProhibit: 60, /* in ms */ |
| 296 | }, |
| 297 | }, |
| 298 | logical_channel_config: { |
| 299 | priority: 15, |
Andre Puschmann | 393cd61 | 2020-06-15 14:30:16 +0200 | [diff] [blame] | 300 | prioritisedBitRate: -1, /* in kb/s, -1 means infinity */ |
Pau Espin Pedrol | 786a6bc | 2020-03-30 13:51:21 +0200 | [diff] [blame] | 301 | bucketSizeDuration: 100, /* in ms */ |
| 302 | logicalChannelGroup: 3, |
| 303 | logicalChannelSR_Mask: false, |
| 304 | logicalChannelSR_Prohibit: false, |
| 305 | }, |
| 306 | }, |
| 307 | { |
| 308 | qci: 69, /* AM - high priority (MC-PTT signalling) */ |
| 309 | pdcp_config: { |
| 310 | discardTimer: 0, /* in ms, 0 means infinity */ |
| 311 | statusReportRequired: true, |
| 312 | }, |
| 313 | rlc_config: { |
| 314 | ul_am: { |
| 315 | t_PollRetransmit: 80, /* in ms */ |
| 316 | pollPDU: 64, |
| 317 | pollByte: 125, /* in kBytes, 0 means infinity */ |
| 318 | maxRetxThreshold: 32, |
| 319 | }, |
| 320 | dl_am: { |
| 321 | t_Reordering: 45, /* in ms, should be > to max_harq_tx * HARQ latency */ |
| 322 | t_StatusProhibit: 60, /* in ms */ |
| 323 | }, |
| 324 | }, |
| 325 | logical_channel_config: { |
| 326 | priority: 4, |
| 327 | prioritisedBitRate: 8, /* in kb/s, -1 means infinity */ |
| 328 | bucketSizeDuration: 100, /* in ms */ |
| 329 | logicalChannelGroup: 1, |
| 330 | logicalChannelSR_Mask: false, |
| 331 | logicalChannelSR_Prohibit: false, |
| 332 | }, |
| 333 | }, |
| 334 | { |
| 335 | qci: 70, /* AM - MC data */ |
| 336 | pdcp_config: { |
| 337 | discardTimer: 0, /* in ms, 0 means infinity */ |
| 338 | statusReportRequired: true, |
| 339 | }, |
| 340 | rlc_config: { |
| 341 | ul_am: { |
| 342 | t_PollRetransmit: 80, /* in ms */ |
| 343 | pollPDU: 64, |
| 344 | pollByte: 125, /* in kBytes, 0 means infinity */ |
| 345 | maxRetxThreshold: 32, |
| 346 | }, |
| 347 | dl_am: { |
| 348 | t_Reordering: 45, /* in ms, should be > to max_harq_tx * HARQ latency */ |
| 349 | t_StatusProhibit: 60, /* in ms */ |
| 350 | }, |
| 351 | }, |
| 352 | logical_channel_config: { |
| 353 | priority: 11, |
| 354 | prioritisedBitRate: 8, /* in kb/s, -1 means infinity */ |
| 355 | bucketSizeDuration: 100, /* in ms */ |
| 356 | logicalChannelGroup: 2, |
| 357 | logicalChannelSR_Mask: false, |
| 358 | logicalChannelSR_Prohibit: false, |
| 359 | }, |
| 360 | }, |
| 361 | ] |