On the other hand, the switching time is referred to the time required to migrate a session from one running data plane platform to another. As mentioned before, this time measurement is considered as part of the metrics considered to evaluate the performance of our proposed system implementation. The total switching time describes the amount of time that an operation of sessions migration takes place, and is counted from the start of the operation execution and lapses after the last successfully session migration. Whereas in the first time configuration the time is not a vital performance property, in the switching time for a session operation is truly important. The operation switching time for a session migration must be as short as possible independently of the reliability of the system meaning that the services provided to the user session must not be endangered rather ensured.After the finalization of the negotiation and establishment protocol, the process for session migration can be triggered. It contains two phases which are introduced hereafter, namely the extit{session migration identification phase} and the extit{session migration deployment phase}. For the former phase, the control plane must gather the information about the user sessions handled, including the connection time, connection duration, status, user identification and user profile. This information is necessary for two aspects. First for the identification of sessions to be migrated and second to provide the adequate configuration on the platform objective. Unless another configuration is specified, we decide to split the number of sessions on equal parts according to the number of data path elements that compose the BRAS system that for our design case example which handles two active sessions, at the end of the session migration process, one remains in the original data path platform whereas the second is migrated to the scaled out element. To obtain the migrating-user sessions are identified, the control plane communicates with the support system of authentication, authorization and accounting services in order to obtain account information about the configuration profiles of the pool of sessions handled in the system. It allows relating, for example, the provided layer 3 configuration or the bandwidth granted to a specific user or session. Furthermore, it is necessary also to identify the rules that are required on the forwarding unit of the scaled data-path element to be able to steer the traffic properly. In order to achieve this, the session control virtualized function is introduced as a virtualized network function that runs on top of a BRAS data path element. The control plane must communicate with it to obtain the running entries that have already been deployed in the original data path element in such a way that later on the control plane is able to trigger the configuration of those entries in the scaled element. Thus, the control plane will first communicate with the session control function of the original data path element sending a session identification request message whose objective is to retrieve the handled sessions as well as the configured entries deployed in the forwarding unit. When the session control function receives the message, it queries the forwarding unit to extract the entries deployed, and once this is retrieved, the session control function sends back a session identification reply message with the gathered data as the payload. The next part of the protocol requires a communication between the BRAS control plane and the AAA support service. This communication has the objective of acquiring the information previously mentioned (session-user profiles). A message pair is used for this purpose. The names given to those messages are AAA session information request and reply respectively. At this point, the control plane has obtained enough information to decide how to split the sessions/entries between the available data path elements. This will lean on the following proposed cases:For our two sessions case example the control plane is not able to do much in order to level proportionally the number of deployed sessions since it will end up in any case with one session for each data path element unless the proportion of sessions to be migrated is fixed as the minimum limit which means to migrate cero sessions. When more sessions are evaluated a split algorithm identifies the proportional number of sessions and at the same time intend to proportionally even the number of rules that will remain in the original element and the ones that will be deployed on the scaled element. On the other hand if the profile-wise distribution is preferred, depending on the decision method introduced as follows, any of the sessions can be migrated depending on the contractual session profile agreed.Next considering the table
ef{tab:Session_information} where the information from our two sessions example has been captured, we will define the extit{profile-wise distribution algorithm}. First it has to consider the profile whose representation in the table correspond to the letter A or B. According to the provided profile of the sessions, the system recognizes that for instance, the profile B must provide a higher number of collocated services than profile A and therefore it is preferred to be placed in the data path element with better performance since it will benefit from the information that the profile has provided.This decision algorithm is explained for the sake of deployed sessions that are being moved from an original platform to a scaled one. However, the same principle applies for the new incoming subscribers. It follows the session common joining process and afterward, according to the session distribution case chosen the incoming session will be handled by one of the available data path elements.Once the algorithm converges and the migrating-sessions are identified, the rules and additional services can be installed in the scaled element. Thus, the control plane sends the order to execute the installation of those entries. The migration protocol will operate as presented in figure
ef{fig:Session_migration_ruledeployment}.After installing the entries on the forwarding unit of the scaled element and the sessions profiles have been enforced, the control plane is ready to start with the extit{session migration deployment phase}. In principle, two modes of operation are proposed for this phase. First a extit{one by one mode} and second a extit{group mode}. The first aims, as per its name suggest, to migrate one session after another. Thus the user session number 1 would require not only certain system resources and VNFs from the platform, which have been previously ensured but also forwarding rules deployed in the forwarding unit of the new data path element. Thus, the advanced services module of the control plane must send a new entry packet that installs those required entries in the new data path element. Subsequently, the system configures the incoming and outcoming traffic of this session to be handled by this element. Once the session is identified as alive the control plane can trigger the migration for the following session and then the process will be repeated up to the last chosen session has been moved. In general, this method is a design slowly but surely because even when the total switching time will rise and lasts considerably longer than a more abrupt approach, the system’s resources are used and consumed progressively instead of all at once. In principle, this leads to a better management of the resources involved in the system, since for instance the CPU consumption of the platform might be kept down throughout the migration process and hence, other services running on the same platform are less vulnerable. In addition, it is interesting to observe the behavior of the system as each single session is being configured and deployed and consequently an evaluation on the resources consumption can be performed in such a way that an issue prediction strategies can be applied to avoid them.On the other hand, the extit{group mode} allows migrating as many sessions as possible according to the available resources reserved for this task. This implies that multiple sessions are deployed at the same time which will compete for the same amount of resources to do so. Presumably the switching time is increased compared with the previous method, nevertheless, we expect that the total switching time is shortened considerably when more than one session is being migrated as there is no dependency for the system to evaluate whether the status of a migrated session is active to proceed with the next one. For this case is also interesting to evaluate the behavior of the system regarding the utilization of resources and the distribution of task among them in order to find a method that allows mitigating malfunctioning of the system.According to the switching mode chosen to perform the sessions migration ( extit{one by one mode} or extit{group mode}), the control plane of the BRAS system proceeds with the session migration. Basically, the control plane executes an enable function on the scaled data path element and a cancel function on the original one for the selected sessions. Thus, for the proposed two sessions example, where the second session has been previously selected to be migrated, it is pointed by the control plane to be handled on the scaled data path element. It is decided to overlap the session handling by the two platforms rather than cancelling it out from the first platform and enforce it on the second one because it is believed that the time gap left in between with no platform responsible for handling a session with respect to the second situation, might deteriorate the performance of the system leading to possible loss of packets which is, of course, unwanted. Therefore the BRAS control plane sends a session start request message to the scaled data path element which contains the session identification. At this point, the control plane waits until a session started reply message is received confirming that the session was successfully started and whereby the system redirects the incoming packets concerning the session into consideration towards the scaled element. Afterwards, a session stop request is sent to the original element which removes the rules and the related information over the migrated session. Then the original data path element must respond with a session stopped reply which confirmes that the actions where executed successfully and hence, the migration has been executed which as well dictates the end of the switching session time. %The functionality of this stop packet is expanded in the following subsection. If the selected migration mode corresponds to the extit{one by one mode}, the scaled data path element must send an active session confirmation message which ensures that the traffic of the session is being successfully received, processed and forwarded. After the reception of the confirmation message, the control plane can proceed with the next session migration. In case that the control plane does not receive a confirmation message after a time-out then it sends a confirmation time-out message indicating that the message has not been received yet and then one situation takes place, in which the session control function of the scaled data path element sends a keep-alive packet towards the user device to ensure that the session is active and wait for a reply. Once the reply packet arrives, then the active session confirmation message is sent. In the case that no keep-alive message is replied from the user side then the function decides to tear down the session and send a disabled session confirmation message back to the controller that resumes the migration process allowing to proceed with the next session. Whereas for the extit{group mode}, in case of migrating more than one session, the start and stop request packets might contain more than one session to deploy on the scaled data path element, likewise happen with the reply packets which are able to confirm either multiple sessions started or stopped, executed in one go. Furthermore, the control plane must not wait for any active session confirmation message in order to continue with the session migration deployment. However, those confirmations are received and at the end of the whole migration and are used for informational purposes. The extit{session migration deployment phase} will operate as presented in figure
ef{fig:Session_migration_deploymentphase}. It is important to notice that the control packets are colored with a light grey while the data packets for a user session are displayed in blue.In addition, this migration protocol can be as well seen as a traffic balancing protocol since it enables the traffic distribution through various platforms. Even though it is the first approach for this characteristic, it copes with the requirements explained in the requirements chapter for a traffic balancing functionality. Additional operational features such as specific traffic distribution profile and characteristics can be designed and implemented, nonetheless, we leave them as a future work.At the end of the migration process for our two sessions case, it is expected that each runs over each one of the two deployed data path elements. This is shown in figure
ef{fig:FinalSessions_scaling-out}. Notice that the interfaces are colored with a different tone because they are attached with the configuration of the overall system. 


I'm Dora!

Would you like to get a custom essay? How about receiving a customized one?

Click here