Chunking should be planned in consideration with the UP-Group scale. There are associated implications of a too large or too
small sized chunk, so maintaining a good balance is important.
-
Smaller chunk size reduces the imbalance between the chunk distribution among the UPs. But, very small chunk sizes lead to
faster chunk exhaustion at the UP, and negatively impacts the CEPS rate.
-
Very large chunk size may result in uneven distribution of chunks among the UPs. This issue may lead to UP override or load
imbalance on certain UPs where no IPs are available, while IP address is still available with another UP.
The following shows a sample configuration where better IP pool resource planning is recommended:
-
IPv6 pool: Poolv6_example_1 pool_group_example1 x:x:x:x::/48 chunk_size = 8192
-
IPv6 pool: Poolv6_example_1 pool_group_example1 x:x:x:x::/48 chunk_size = 8192
-
UPs associated with APN: UP1, UP2, UP3, UP4, and UP5
-
Threshold timer: 60 secs
-
Incoming Subscriber rate per UP: 6k subscribers per minute
(Considering that only one IP pool group is attached to the APN, which this UP group is serving)
Now, both IP pools have 65536 IP addresses.
Case of chunk size being too large Consider that addresses are divided into eight chunks to be distributed among five UPs. This means that not all UPs can get
the comparable number of IP resources, and some UPs exhaust their IP resources sooner than the others.
Once IP resources reach exhaustion, UP override or load imbalance happens on such UPs. In this example, it can start happening
after the usage of around 40960 addresses per pool or around 81920 addresses at IP pool group level.
-
Pool1: (UP1 = 8192 + 8192, UP2 = 8192 + 8192, UP3 = 8192 + 8192, UP4=8192, UP5=8192)
-
Pool2: (UP1 = 8192 + 8192, UP2 = 8192 + 8192, UP3 = 8192 + 8192, UP4=8192, UP5=8192)
Case of chunk size being too small: Consider same pools as described in the previous section are designed with chunk size of 512 with 128 chunks. In that case,
-
Pool1: (UP1 = 26 *512, UP2 =26*512, UP3 = 26*512, UP4=25*512, UP5=25*512)
-
Pool2: (UP1 = 26 *512, UP2 =26*512, UP3 = 26*512, UP4=25*512, UP5=25*512)
Although in this case, UP override or load imbalance due to chunk imbalance happens after 128000 (50 chunks*512 size*5 UPs)
addresses is used, each UP has only 1k address per minute from each UP. Since the threshold timer is 60 sec, but incoming
subscriber rate is 6k, each UP sees load imbalance for 5k subscribers.
Case of Correct design: Better design is to divide the IP pool into chunk size, for example, 4096 IP addresses. This design provides the CP with
16 chunks to distribute to five UPs.
Pool1: (UP1 = 4096 + 4096 + 4096 + 4096, UP2 = 4096 + 4096 + 4096, UP3 = 4096 + 4096 + 4096, UP4= 4096 + 4096 + 4096, UP5= 4096 + 4096 + 4096)
In this case, UP override or load imbalance due to chunk imbalance happens after 122880 (six chunks *4096 size*5 UPs) addresses
is used, and each UP has only 8k addresses per minute from each UP. Since threshold timer is 60 sec and incoming subscriber
rate is 6k, UPs can cater to all subscribers.
As evident in this case, chunk size of 4096 results in better IP resource distribution among the UPs than having 8096 chunk
size. As the IP resources reach exhaustion, the UP override or load imbalance happens on such UPs. In this example, it starts
happening after the usage of around 61440 addresses per pool. Also, because there are two IP pools in the pool group at the
same time, chunk replenishment is 4k from pool1 + 4k from pool2, which is greater than the required rate of 6k.