<h1> R404 - TP2 : La procédure d’attachement en 4G </h1> [TOC] <h3> Objectifs </h3> - Comprendre la séquence d'échanges de messages lors de la procédure d'attachement LTE. - Identifier les protocoles et les messages impliqués dans l'attachement. - Analyser les fonctions et les rôles des différents éléments du réseau LTE. <h2> 1. Introduction </h2> voir PDF --- <h2> 2. La procédure d’attachement [1,2,3] </h2> voir PDF --- <h2> 3. Préparation au TP </h2> <h4> 1) La procédure d’authentification mutuelle est de type AKA (Authentication and Key Agreement). La procédure est basée sur un challenge ou défi. Quel est le vecteur d’authentification qui est généré par le HSS et quelles sont toutes les clés qui seront calculées au niveau de l’UICC ? </h4> Le vecteur d'authentification qui est généré par le HSS est le vecteur AUTN. Les clées qui seront calculées au niveau de l'IUCC seront les clés de chiffrement et d’intégrité. <h4> 2) A quoi correspond l’IMEI, est ce que l’IMEI est également identifié ? </h4> IMEI : International Mobile Equipment Identity, ce qui correspond à l'identité nationale de la carte SIM. <h4> 3) La procédure d’attachement pour les smartphones 4G est couplée avec la procédure de connectivité PDN. La connectivité PDN permet l’accès au service Voix Sur IP (si le mobile est compatible au réseau IMS et si l’opérateur a mis en place l’IMS) et Internet. Un bearer est un tunnel IP associé avec une QoS. Que signifie le sigle IMS, à quoi sert l’IMS. </h4> Le sigle IMS signifie : IP Multimedia Subsystem. L'IMS est une architecture qui permet de fournir des services multimédias fixes et mobiles. <h4> 4) Auprès de quelle entité le terminal 4G s’enregistre-t’il ? </h4> Le terminal 4G s'enregistre auprès du MME (Mobility Management Entity). <h4> 5) A quoi correspond le protocole NAS ? </h4> Le NAS (strate de non accès) représente un ensemble de protocoles qui s’établit entre l’UE et le coeur de réseau. Le NAS permet l’échange d’information de contrôle ou de données quelque soit l’accès radio. <h4> 6) A quoi correspond le protocole S1AP ? </h4> Le protocole S1AP permet d'acheminer la signalisation de l'eNB au MME. <h4> 7) Comment se nomme le protocole de signalisation entre l’UE et l’eNB </h4> Le protocole RRC a pour but de transférer les informations de signalisation entre l’UE et l'eNB. <h4> 8) Etudier le call flow suivant : Expliquez chaque ligne. Vous ferez attention à l’état du mobile (RRC_IDLE, RRC_Connected) </h4> ![image](https://hackmd.io/_uploads/Hk_zB6vip.png) 1.1) La requête `RRC Connection Request` est transmise de l’UE vers l’eNB sur un canal aléatoire. 1.2) L'eNB porte connaissance à l’UE du lien radio dédié en envoyant cette information dans le message `RRC Connection Setup` (de l’eNB vers l’UE). 1.3) L'UE acquitte l’eNB par le message `RRC Connection Setup Complete`. 2.1) L'UE envoie requête RRC a l'eNB (`RRC Connection Setup Complete`) qui contient une demande d'attachement (`ATTACH REQUEST`). L'eNB va ensuite transmettre cette demande au MME. 3.1) Le MME alloue l’identifiant MME S1AP UE ID pour identifier l’UE ce qui permet de finaliser la connexion entre l’eNb et le MME. 4.1) Le MME va pour finir procéder à une authentification de l’UE, puis l'acquitter. <h4> 9) A l’issu de cette première phase, le MME (en tant que serveur d’authentification) démarre la procédure d’authentification AKA. Expliquez la procédure. Vous indiquerez notamment la signification des valeurs RAND, AUTN, XRES, Kasme et Ksi. </h4> La procédure AKA permet l'authentification, lorsque le MME recoit l'authentification Information Request il renvoie lles information (RAND, AUTN, ZRES et Kasm) à l'HSS qui à son tour va confirmer les données. Après cela l'UE va recevoir un demande d'authentification et va envoyer au MME les données du Network Authenticate. Le MME va garder ces données et l'UE va donner une réponse à cette demabde. - RAND : désigne un nombre aléatoire - AUTN : désigne un sceau d’authentification - XRES : résultat calculé au niveau du réseau à partir du nombre aléatoire (RAND) et des paramètres connues de l’UE - Kasme : clé de cryptage et de chiffrement - Ksi : clé utilisée par l'UE pour calculer Kasme <h4> 10) Une fois l’étape d’authentification mutuelle passée, le MME génère un identifiant GUTI aumobile. Que signifie le GUTI et en quoi est il nécessaire ? Que signifie l’identifiant GUMMEI et à quoi correspond-il ? Que signifie l’identifiant MMEC et GUMMEI ? A quoi correspond l’identifiant S-TMSI et M-TMSI ? A quoi sert la requête Update Location Request, quelles sont les informations transmises par le HSS au MME ? </h4> GUTI signifie "Globally Unique Temporary Identifier", il est nécessaire du fait qu'il permet de fournir un ID unique à l'UE pour qu'il puisse savoir vers quel eNB doit il aller. Cet ID est composé de l'indentifiant GUMMEI (Globally Unique Mobility Managment Entity Identifier) qui permet d'indentifier les MME sur lequel l'UE s'est déjà inscrit. MMEC signifie MME Code et il correspond à l'ID du MME. Les identifiants M-TMSI est composé du MMEC et M-TSMI et le M-TSMI identie l'UE. Update Location Request est utilisé pour mettre à jour le HLR(Home Location Register) et le HSS(Home Subscriber Server). <h4> 11) Etudier le call flow suivant </h4> ![image](https://hackmd.io/_uploads/HkAisyrh6.png) ![image](https://hackmd.io/_uploads/HkdWnyr3T.png) 1) L'UE souhaite initier une connexion au réseau. Avant de commencer la procédure d'accès aléatoire (RACH), l'UE va choisir de manière aléatoire un préambule. 2) L'UE commence la RACH et envoie le préambule précédemment choisi. 3) l'eNB répond à la requête de l'UE et lui envoie diverses informations : cela conclue la procédure d'accès aléatoire. 4) L'UE souhaite ensuite établir une connexion avec réseau de l'opérateur. Pour cela, il envoie une requête de connexion RRC à l'eNB : `RRC Connection Request`. 5) L'eNB répond à l'UE en envoyant le message `RRC Connection Setup`. 6) L'UE termine l'établissement de cette connexion en s'authentifiant (Avec le message `RRC Connection Setup Complete` et en ajoutant une requête d'attachement NAS : `NAS Attach Request`). 7) Le GUMMEI est une identité unique attribuée à chaque MME dans un réseau de télécommunications mobiles. Lorsqu'un UE change de zone de service ou effectue une commutation de contexte, il doit informer le réseau de sa nouvelle localisation. Pour ce faire, le réseau utilise l'ancien GUMMEI de l'UE pour identifier l'ancienne MME et effectuer le processus de localisation et de gestion de la mobilité. 8) L'eNB communique avec la nouvelle MME pour lui informer que l'UE veut s'enregistrer sur le réseau 9) a 10) a 11) a 12) a 13) a 14) a 15) a 16) a 17) a 18) a <h4> 12) Dessiner les couches protocolaires de l’UE, de l’eNB et du MME </h4> | UE | eNB | MME | |:----:|:-----:|:--------:| | RRC | S1-AP | GTP-CUDP | | PDCP | SCTP | UDP | | RLC | TLC | IP | | MAC | MAC | L2 | <h4> 13) La 5G NSA permet au mobile d’être connecté au MME via l’eNB et d’activer simultanément une double connexion DC sur le réseau 5G (DC NR). Pour avoir accès à la 5G actuellement (5G NSA option 3), le terminal doit supporter la 5G, la station de base doit supporter la double connexion et le client doit avoir un forfait 5G. Faites un schéma de l’architecture réseau 5G NSA. </h4> VOIR https://blogs.univ-poitiers.fr/f-launay/2023/04/26/le-deploiement-dun-reseau-5g-sa-cloud-privee-ou-publique/ --- <h2> 4. Travaux Pratiques : Call Flow via NEMO </h2> <h3> 4.1. Prise en main rapide de NEMO </h3> - On vérifie ma présence du Dongle pour déverrouiller le logiciel, - On lance l'utilitaire : NEMO, - On récupère le fichier `TP1_measurements.nmf` sur UPdago, - On clique sur l’image de la station de base > On sélectionne `Open Measurement` > On sélectionne le fichier précédent (`TP1_measurements.nmf`), - On choisit le workspace `LTE Full Detail` <h3> 4.2. Travail à réaliser </h3> <h4> 14) Repérez les requêtes finalisant la demande d’accès aléatoire (procédure RACH). A quelle heure ont-elles eu lieu ? Quel est le numéro SRB créé par l’eNB ? La signalisation est-elle en mode acquittée ou non acquittée ? La valeur du S-TMSI est transmise lors de la 1ère requête, que vaut elle ? </h4> - Les requêtes finalisant la demande d’accès aléatoire ont eu lieu à : 14h 12m 49s 684 (environ) - Le numéro SRB créé par l’eNB est : `1` ![image](https://hackmd.io/_uploads/SkiZiswip.png) - La signalisation est en mode : acquitté (Acquitted Mode) ![image](https://hackmd.io/_uploads/B1JH2jPjp.png) - La valeur du M-TMSI transmise lors de la 1ère requête vaut : `0x88d12381e9` <h4> 15) Quelle est la requête RRC qui porte (encapsule) le message NAS ATTACH_REQUEST ? Connaît-on la valeur de l’IMSI ? Si oui quelle est elle ? Si non pourquoi et quel identifiant est transmis ? A quoi correspond cet identifiant et que vaut il ? Le message est il chiffré ? Si non que contient le message dedicatedInfoNas ? </h4> - La requête RRC qui porte (encapsule) le message NAS ATTACH_REQUEST est la requête : `RRCConnectionSetup` - Oui, on connaît la valeur de l'IMSI. - L'IMSI est de `0bf602f8 0180e988 d12381e9`. ![image](https://hackmd.io/_uploads/rkNECiwia.png) - Cet identifiant correspond à l'*International Mobile Subscriber Code* : c'est l'identifiant de la carte SIM d'un téléphone. - Non, le message n'est pas chiffré. - Le message `dedicatedInfoNas` contient : ``` 17A8CBE9 0E0E0741 020BF602 F80180E9 88D12381 E907F070 C0401900 90003602 05D03127 30808021 10010000 10810600 00000083 06000000 00000D00 00030000 0A000005 00001000 00110000 1A010100 23000024 005202F8 01B5AA5C 0A003104 65A03E01 1302F801 B5BA1103 5758A620 0D611404 EF65233B 8878D2F2 80004008 04026004 00021F02 5D0103E0 C1100257 006F04F0 007000 ``` ![image](https://hackmd.io/_uploads/B1t7yhDiT.png) <h4> 16) Le message NAS ATTACH_REQUEST est transmis au niveau de la couche NAS vers la couche RRC. </h4> A partir de ce message, répondez aux questions suivantes (certaines réponses peuvent être redondante avec la question 14). - **Le message NAS est il protégé ?** - Non, le message NAS n'est pas protégé : ![image](https://hackmd.io/_uploads/SyGok3DjT.png) - **L’attachement est il combiné avec un attachement du MSC ?** - Oui, l'attachement est combiné avec un attachement du MSC. ![image](https://hackmd.io/_uploads/SyNuW3Dop.png) - **Que vaut l’identifiant IMSI ou GUTI ?** - L'identifiant IMSI ou GUTI vaut : `0bf602f8 0180e988 d12381e9`. ![image](https://hackmd.io/_uploads/Bkx3Whws6.png) - **Sur quel opérateur le mobile était-il attaché ?** - Le mobile est rattaché à l'opérateur SFR (MMC = 10). - **Le mode DCNR (Dual Connectivity New Radio) est-il supporté ?** - Oui, le mode DCNR est supporté. ![image](https://hackmd.io/_uploads/Sk7eGnvjp.png) - **Quels sont les algorithmes de sécurité supportés pour l’intégrité et pour le chiffrement sur le coeur de réseau 4G ?** - Les algorithmes de sécurité supportés sont : ![image](https://hackmd.io/_uploads/H1dvf3vja.png) <h4> 17) Que contient le message AUTHENTICATION_REQUEST : donnez les noms et les valeurs des deux paramètres du vecteur d’authentification. </h4> - 1er vecteur d'authentification : - Nom : RAND - Valeur : `9072 5016 dd87 8ab6 de96 ed6d c086 30e1` - 2eme vecteur d'authentification : - Nom : AUTN - Valeur : `6dc6 6a47 873d 8000 6d6f e2ae 101c d93a` ![image](https://hackmd.io/_uploads/Hyuaf2woT.png) <h4> 18) Que contient le message AUTHENTICATION_RESPONSE : Donner le nom et sa valeur </h4> - Nom : RES - Valeur : `0x084c6985d6ad1337` ![image](https://hackmd.io/_uploads/H1iVQhwjp.png) <h4> 19) Que contient le message SECURITY_MODE_COMMAND, quel est son utilité ? </h4> Le message `SECURITY_MODE_COMMAND` contient tout ce qui est relatif à la sécurité (méthodes de chiffrement, algorithmes...) pour choisir le mode de sécurité que l'on veut utiliser. <h4> 20) Quel est l’algorithme de chiffrement et d’intégrité NAS choisi ? </h4> - Algorithme de chiffrement NAS choisi : `128-EEA2` - Algorithme d'intégrité NAS choisi : `128-EIA2` ![image](https://hackmd.io/_uploads/rk3IHhDjp.png) <h4> 21) Quelles sont les capacités du terminal ? Sur quelles bandes de fréquences fonctionne t’il ? Sur combien de bandes en DL et en UL peut il réaliser de l’agrégation de porteuses ? </h4> - Le terminal dispose de beaucoup de capacités : ``` RRC SIGNALING MESSAGE Time: 14:12:50.087 UECapabilityInformation (3GPP TS 36.331 ver 16.6.0 Rel 16) UL-DCCH-Message message c1 ueCapabilityInformation rrc-TransactionIdentifier : 2 criticalExtensions c1 ueCapabilityInformation-r8 ue-CapabilityRAT-ContainerList ue-CapabilityRAT-ContainerList value 1 rat-Type : eutra ueCapabilityRAT-Container UE-EUTRA-Capability accessStratumRelease : rel15 ue-Category : 4 pdcp-Parameters supportedROHC-Profiles profile0x0001-r15 : true profile0x0002-r15 : true profile0x0003-r15 : false profile0x0004-r15 : false profile0x0006-r15 : false profile0x0101-r15 : false profile0x0102-r15 : false profile0x0103-r15 : false profile0x0104-r15 : false maxNumberROHC-ContextSessions : cs24 phyLayerParameters ue-TxAntennaSelectionSupported : false ue-SpecificRefSigsSupported : false rf-Parameters supportedBandListEUTRA supportedBandListEUTRA value 1 bandEUTRA : 1 halfDuplex : false supportedBandListEUTRA value 2 bandEUTRA : 3 halfDuplex : false supportedBandListEUTRA value 3 bandEUTRA : 7 halfDuplex : false supportedBandListEUTRA value 4 bandEUTRA : 20 halfDuplex : false supportedBandListEUTRA value 5 bandEUTRA : 28 halfDuplex : false supportedBandListEUTRA value 6 bandEUTRA : 8 halfDuplex : false supportedBandListEUTRA value 7 bandEUTRA : 42 halfDuplex : false measParameters bandListEUTRA bandListEUTRA value 1 interFreqBandList interFreqBandList value 1 interFreqNeedForGaps : true interFreqBandList value 2 interFreqNeedForGaps : true interFreqBandList value 3 interFreqNeedForGaps : true interFreqBandList value 4 interFreqNeedForGaps : true interFreqBandList value 5 interFreqNeedForGaps : true interFreqBandList value 6 interFreqNeedForGaps : true interFreqBandList value 7 interFreqNeedForGaps : true ``` - Il fonctionne sur les bandes de fréquences suivantes : - 1 - 3 - 7 - 8 - 20 - 28 - 42 <h4> 22) La demande d’attachement aboutit elle ? Sur quel TAC est le mobile ? A quoi correspond le timer T3412, quelle est sa valeur ? Quel est le nom de point de domaine APN ? </h4> - Oui, la demande d’attachement aboutit (message `ATTACH_ACCEPT`) ![image](https://hackmd.io/_uploads/B1wl92Dop.png) - Le mobile est sur le TAC `46506` : ![image](https://hackmd.io/_uploads/SyYq52woa.png) - Le timer T3412 correspond au temps maximum avant que mobile soit obligé de faire une requête au coeur de réseau, et ici sa valeur est de 30. - Le nom de point de domaine APN est "APN-AMBR" <h4> 23) Le mobile fait-il une demande de désenregistrement ? </h4> Oui, le mobile fait une demande de désengagement : ![image](https://hackmd.io/_uploads/ByyRkpvi6.png)