4G/LTE - NAS

 

 

 

 

GUTI(Globaly Unique Temporary ID)

 

As the name implies, GUTI is a kind of temporary ID. Each of the UE has a couple of different kind of it's own Unique ID like IMSI, IMEI etc, but to use these unique ID all the time during the communication would make the security vulnerable. So in some wireless communication, we use a temporary ID which maps the unique ID allocated to UE. And this temporary ID changes often, so even if somebody hacked out the ID it will be useless soon.

 

In WCDMA, you may remember that we had several commonly used IDs, IMSI, TMSI, P-TMSI. IMSI is a unique ID stored in USIM and permanent ID. TMSI, P-TMSI is a temporary ID which is mainly used as a replacement for IMSI.

 

GUTI is also a temporary ID and it is slimilar to P-TMSI in UMTS. The structure of GUTI is as follows :

  • PLMN (3 Bytes)
  • MME Group ID (2 Bytes)
  • MME Code (1 Bytes)
  • M-TMSI (4 Bytes)

  +-GUTI ::= TLV OPTIONAL:Exist

  | +-Octet1 ::= DIVISION

  | | +-EPS mobile identity IEI ::= IEI [50]

  | +-Octet2 ::= DIVISION

  | | +-Length of EPS mobile identity contents ::= LEN (0..255) [11]

  | +-Octet3 ::= DIVISION

  | | +-Spare ::= FIX [F]

  | | +-Odd/even indication ::= CHOICE [....]

  | | +-Type of identity ::= CHOICE [GUTI]

  | +-Octet4 ::= DIVISION

  | | +-MCC digit 2 ::= INT (0..15) [0]

  | | +-MCC digit 1 ::= INT (0..15) [0]

  | +-Octet5 ::= DIVISION

  | | +-MNC digit 3 ::= INT (0..15) [15]

  | | +-MCC digit 3 ::= INT (0..15) [1]

  | +-Octet6 ::= DIVISION

  | | +-MNC digit 2 ::= INT (0..15) [1]

  | | +-MNC digit 1 ::= INT (0..15) [0]

  | +-Octet7 ::= DIVISION

  | | +-MME Group ID ::= INT (0..255) [128]

  | +-Octet8 ::= DIVISION

  | | +-MME Group ID(continued) ::= INT (0..255) [1]

  | +-Octet9 ::= DIVISION

  | | +-MME Code ::= INT (0..255) [1]

  | +-Octet10 ::= DIVISION

  | | +-M-TMSI ::= INT (0..255) [0]

  | +-Octet11 ::= DIVISION

  | | +-M-TMSI(continued) ::= INT (0..255) [0]

  | +-Octet12 ::= DIVISION

  | | +-M-TMSI(continued) ::= INT (0..255) [0]

  | +-Octet13 ::= DIVISION

  |   +-M-TMSI(continued) ::= INT (0..255) [1]

 

Examples of NAS messages using GUTI are

  • Attach Request
  • Attach Accept
  • Attach Complete