open5gs/lib/gtp/v2/support
Sukchan Lee a667525041 [GTP/PFCP]] incorrect dst TEI=0/SEID=0 (#3043)
If eg. PCRF or AAA diameter link is not yet ready (eg. PCRF crashed), and
a client sends a CreateSessionRequest announcing its ow F-TEID,
then open5gs-smfd answers with Create Session Response Cause=
"Remote peer not responding", but it is not setting the received F-TEID
in the header of the response, instead it sends with TEI=0.

As a result, the peer cannot match the CreateSessionResponse, and needs
to rely on its own timeout timer to figure out that specific request failed.

This also happens in PFCP, so to solve this problem, I added teid/seid_presence
to the interface that sends the error message as shown below.

void ogs_gtp2_send_error_message(ogs_gtp_xact_t *xact,
        int teid_presence, uint32_t teid, uint8_t type, uint8_t cause_value);
void ogs_pfcp_send_error_message(
    ogs_pfcp_xact_t *xact, int seid_presence, uint64_t seid, uint8_t type,
    uint8_t cause_value, uint16_t offending_ie_value);
2024-03-23 10:06:16 +09:00
..
cache [Release-17] Upgrade GTPv1/v2 to v17.4.0/v17.7.0 2023-03-05 12:37:14 +09:00
29274-h70.docx [Release-17] Upgrade GTPv1/v2 to v17.4.0/v17.7.0 2023-03-05 12:37:14 +09:00
README.md [Release-17] Upgrade GTPv1/v2 to v17.4.0/v17.7.0 2023-03-05 12:37:14 +09:00
gtp-tlv.py [GTP/PFCP]] incorrect dst TEI=0/SEID=0 (#3043) 2024-03-23 10:06:16 +09:00

README.md

  • Install python-docx user@host ~/Documents/git/open5gs/lib/gtp/v2/support$
    sudo pip3 install python-docx

  • Change the format of standard specification from 29274-h70.doc to 29274-h70.docx using Microsoft Office 2007+

  • Adjust table cell in 29274-h70.docx

  • Generate TLV support files user@host ~/Documents/git/open5gs/lib/gtp/v2/support$
    python3 gtp-tlv.py -f 29274-h70.docx -o ..