travelping / ergw

erGW - Erlang implementations of GGSN or P-GW
GNU General Public License v2.0
82 stars 33 forks source link

GTPv2 Create Session Response with "Cause: No resources available". #324

Closed gantonie closed 3 years ago

gantonie commented 3 years ago

Hi,

I am trying to reproduce your SAE-GW walkthrough (https://github.com/travelping/ergw/blob/master/doc/walkthrough-saegw.md), however I am currently facing a problem.

When I am trying to connect a UE to the network, the MME send a GTPv2 Create Session Request and erGW answer with a GTPv2 Create Session Response with "Cause: No resources available".

I installed erGW and VPP without any problem and they are both working, PFCP messages are sent between the UP and the CP.

My configuration is the following: I use the MME and HSS from Open5GS which are working fine and are installed on my computer. The eNodeB and UE are simulated with srsLTE and are also working. erGW and VPP are installed inside a docker container with 3 network interfaces as it is advised in the walkthrough.

I use erGW version 2.8.5 and this VPP version: https://github.com/travelping/upg-vpp/ Also, do you have an updated version of the init.conf of VPP with the UPG plugin for this walkthrough?

Thank you in advance

vkatsuba commented 3 years ago

Hi @gantonie,

If you can, please provide your full configuration. It would be also helpful if you will run ergw with set log level debug in configuration and will provide output here too. Also, please notes that the documentation is under of development but unfortunately at the moment it is difficult to indicate the exact release date where the updated documentation will be provided.

Regards, @vkatsuba

gantonie commented 3 years ago

Thank you for your response

Here is the network configuration I am using. Docker creates the networks for the S1-U, S11 and SGi interfaces and the container has the addresses 172.20.16.2, 172.20.17.2 and 10.0.0.2 attached to it. image

There is my ergw-c-node.config

%% -*-Erlang-*-
[{setup, [{data_dir, "/var/lib/ergw"},
          {log_dir,  "/var/log/ergw-c-node"}
         ]},

 {kernel,
  [{logger,
    [{handler, default, logger_std_h,
      #{level => debug,        
        formatter =>
            {logger_formatter,
             #{single_line => true,
               legacy_header => false,
               template => [time," ",pid," ",level,": ",msg,"\n"]
              }},

    config =>
        #{sync_mode_qlen => 10000,
          drop_mode_qlen => 10000,
          flush_qlen     => 10000}
       }
     }
    ]}
  ]},
 {ergw, [{'$setup_vars',
          [{"ORIGIN", {value, "epc.mnc093.mcc208.3gppnetwork.org"}}]},
          {plmn_id, {<<"208">>, <<"93">>}},

         {http_api,
          [{port, 8080},
           {ip, {0,0,0,0}}
          ]},

         {node_id, <<"upg">>},
         {sockets,
          [{cp, [{type, 'gtp-u'},
             {vrf, cp},
             {ip,  {192,168,1,2}}
           ]},
            {epc, [{type, 'gtp-c'},
          {vrf, epc},
              {ip,  {172,20,16,2}},
              {netdev, "vrf-irx"}
            ]},
            {sx, [{type, 'pfcp'},
              {socket, cp},
              {ip,  {192,168,1,2}}
           ]}
          ]},

         {vrfs,
          [{sgi, [{pools,  [{{10, 106, 0, 1}, {10, 106, 255, 254}, 32},
                            {{16#8001, 0, 0, 0, 0, 0, 0, 0},
                             {16#8001, 0, 0, 16#FFFF, 0, 0, 0, 0}, 64}
                           ]},
                  {'MS-Primary-DNS-Server', {8,8,8,8}},
                  {'MS-Secondary-DNS-Server', {8,8,4,4}},
                  {'MS-Primary-NBNS-Server', {127,0,0,1}},
                  {'MS-Secondary-NBNS-Server', {127,0,0,1}}
                 ]}
          ]},

         {handlers,
          [{s11, [{handler, saegw_s11},
                  {sockets, [epc]},
                  {node_selection, [default]}
                 ]}
          ]},

         {apns,
          [{[<<"Open5GS">>], [{vrf, sgi}]}
          ]},

         {node_selection,
          [{default,
            {static,
             [
              %% APN NAPTR alternative
              {"_default.apn.$ORIGIN", {300,64536},
               [{"x-3gpp-pgw","x-s5-gtp"},{"x-3gpp-pgw","x-s8-gtp"},
                {"x-3gpp-sgw","x-s5-gtp"},{"x-3gpp-sgw","x-s8-gtp"}],
               "topon.s1u.upg.$ORIGIN"},
              {"_default.apn.$ORIGIN", {300,64536},
               [{"x-3gpp-upf","x-sxb"}],
               "topon.sx.upg01.$ORIGIN"},

              %% A/AAAA record alternatives
              {"topon.s1u.upg.$ORIGIN", [{172,20,17,2}], []},
              {"topon.sx.upg01.$ORIGIN", [{192,168,1,1}], []}
             ]
            }
           }
          ]
         },

         {nodes,
          [{default,
           [{vrfs,
              [{cp, [{features, ['CP-Function']}]},
               {epc, [{features, ['Access']}]},
               {sgi, [{features, ['SGi-LAN']}]}]
             },
             {heartbeat, [
               {interval, 5000},
               {timeout, 500},
               {retry, 5}
             ]},
             {request,
               [{timeout, 30000},
               {retry, 5}]}]
           }]
         }

        ]},

 {jobs, [{samplers,
          [{cpu_feedback, jobs_sampler_cpu, []}
          ]},
         {queues,
          [{path_restart,
            [{regulators, [{counter, [{limit, 100}]}]},
             {modifiers,  [{cpu_feedback, 10}]} %% 10 = % increment by which to modify the limit
            ]},
           {create,
            [{max_time, 5000}, %% max 5 seconds
             {regulators, [{rate, [{limit, 100}]}]},
             {modifiers,  [{cpu_feedback, 10}]} %% 10 = % increment by which to modify the limit
            ]},
           {delete,
            [{regulators, [{counter, [{limit, 100}]}]},
             {modifiers,  [{cpu_feedback, 10}]} %% 10 = % increment by which to modify the limit
            ]},
           {other,
            [{max_time, 10000}, %% max 10 seconds
             {regulators, [{rate, [{limit, 1000}]}]},
             {modifiers,  [{cpu_feedback, 10}]} %% 10 = % increment by which to modify the limit
            ]}
          ]}
         ]}
].

My startup.conf and init.conf for VPP are the following:

unix {
  nodaemon
  log /tmp/vpp.log
  full-coredump
  gid vpp
  interactive
  cli-listen localhost:5002
  exec init.conf
}

api-trace {
  on
}

api-segment {
  gid vpp
}

plugins {
    path /usr/src/upg-vpp/vpp/build-root/install-vpp_debug-native/vpp/lib/vpp_plugins/
    plugin dpdk_plugin.so { disable }
    plugin gtpu_plugin.so { disable }
    plugin upf_plugin.so { enable }
}
ip table add 1
ip table add 2
ip6 table add 1
ip6 table add 2

create host-interface name grx
set interface ip table host-grx 1
set interface ip6 table host-grx 1
set interface ip address host-grx 172.20.17.2/24
set interface state host-grx up

create host-interface name sgi
set interface ip table host-sgi 2
set interface ip6 table host-sgi 2
set interface ip address host-sgi 10.0.0.2/24
set interface state host-sgi up

create tap host-ip4-addr 192.168.1.2/24
set int ip address tap0 192.168.1.1/24
set int state tap0 up

ip route add 0.0.0.0/0 table 1 via 172.20.17.1 host-grx
ip route add 0.0.0.0/0 table 2 via 10.0.0.1 host-sgi

upf pfcp endpoint ip 192.168.1.1 vrf 0

upf nwi name cp vrf 0
upf nwi name epc vrf 1
upf nwi name sgi vrf 2
upf gtpu endpoint ip 192.168.1.1 nwi cp teid 0x80000000/2
upf gtpu endpoint ip 172.20.17.2 nwi epc teid 0x80000000/2

When in debug mode, ergw returns this output after the UE tries to connect

Exec: /usr/lib/erlang/erts-11.1.7/bin/erlexec -noinput +Bd -boot /opt/ergw-c-node/releases/2.8.6/start -mode embedded -boot_var SYSTEM_LIB_DIR /usr/lib/erlang/lib -config /opt/ergw-c-node/releases/2.8.6/sys.config -args_file /opt/ergw-c-node/releases/2.8.6/vm.args -- foreground
Root: /opt/ergw-c-node
/opt/ergw-c-node
2021-02-23T15:25:11.606403+01:00 <0.838.0> notice: Setup running ...
2021-02-23T15:25:11.607227+01:00 <0.838.0> notice: Directories verified. Res = ok
2021-02-23T15:25:11.607411+01:00 <0.838.0> notice: Setup finished processing hooks (Mode=normal)...
2021-02-23T15:25:16.789945+01:00 <0.1134.0> error: Received DOWN information for <0.1133.0> with info normal
2021-02-23T15:25:18.012226+01:00 <0.1140.0> error: Received DOWN information for <0.1139.0> with info normal
2021-02-23T15:25:19.220835+01:00 <0.1144.0> error: Received DOWN information for <0.1143.0> with info normal

This is the configuration for Open5GS's MME

logger:
    file: /var/log/open5gs/mme.log

mme:
    freeDiameter: /etc/freeDiameter/mme.conf
    s1ap:
      - addr: 172.17.0.1
    gtpc:
      - addr: 172.20.16.1
    gummei: 
      plmn_id:
        mcc: 208
        mnc: 93
      mme_gid: 2
      mme_code: 1
    tai:
      plmn_id:
        mcc: 208
        mnc: 93
      tac: 7
    security:
        integrity_order : [ EIA2, EIA1, EIA0 ]
        ciphering_order : [ EEA0, EEA1, EEA2 ]
    network_name:
        full: Open5GS
    mme_name: open5gs-mme0

sgwc:
    gtpc:
      - addr: 172.20.16.2

smf:
    gtpc:
      - addr:
        - 172.20.16.2
        - ::1

max:

pool:

sctp:

time:

I also tried this in a virtual machine on Ubuntu 20.04 with erGW 2.8.6 but I had the same outcome.

RoadRunnr commented 3 years ago

First observation, log level is not really at debug. You need to add a logger_level key to the kernel config, like this:

 {kernel,
  [{logger_level, debug},
   {logger,
    [{handler, default, logger_std_h,
      #{level => debug,        
        formatter =>
            {logger_formatter,
             #{single_line => true,
               legacy_header => false,
               template => [time," ",pid," ",level,": ",msg,"\n"]
              }},
gantonie commented 3 years ago

Here is the ergw output with debug log level

2021-02-23T16:38:30.890412+01:00 <0.782.0> info: Application: ergw. Started at: 'ergw-c-node@8596d8caf4ad'.
2021-02-23T16:38:30.890824+01:00 <0.1129.0> info: Supervisor: {local,runtime_tools_sup}. Started: id=ttb_autostart,pid=<0.1130.0>.
2021-02-23T16:38:30.890981+01:00 <0.782.0> info: Application: runtime_tools. Started at: 'ergw-c-node@8596d8caf4ad'.
2021-02-23T16:38:51.671042+01:00 <0.1021.0> debug: handle message: {gtp,{172,20,16,1},2123,{socket,epc,'gtp-c',<0.1021.0>},{gtp,v2,create_session_request,0,1,undefined,[],<<1,0,8,0,2,152,3,17,0,0,21,248,75,0,8,0,104,37,68,64,69,36,5,53,86,0,13,0,24,2,248,57,0,7,2,248,57,0,1,155,1,83,0,3,0,2,248,57,82,0,1,0,6,87,0,9,0,138,0,0,0,1,172,20,16,1,87,0,25,1,199,0,0,0,0,172,20,16,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,71,0,8,0,7,79,112,101,110,53,71,83,128,0,1,0,252,99,0,1,0,1,79,0,5,0,1,0,0,0,0,127,0,1,0,0,72,0,8,0,0,16,0,0,0,16,0,0,93,0,31,0,73,0,1,0,5,80,0,22,0,97,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,114,0,2,0,64,0,95,0,2,0,84,0>>}}
2021-02-23T16:38:51.671534+01:00 <0.1021.0> debug: HandleRequest: none
2021-02-23T16:38:51.671939+01:00 <0.1134.0> debug: unable to find context {request,{epc,{172,20,16,1},2123,create_session_request,{v2,1}}}
2021-02-23T16:38:51.672198+01:00 <0.1134.0> debug: new([{socket,epc,'gtp-c',<0.1021.0>},{gtp_socket_info,<<3,101,112,99>>,{172,20,16,2}},v2,saegw_s11,#{aaa => #{'AAA-Application-Id' => ergw_aaa_provider,'Password' => #{default => <<"ergw">>},'Username' => #{default => <<"ergw">>,from_protocol_opts => true}},node_selection => [default]},[{hibernate_after,500},{spawn_opt,[{fullsweep_after,0}]}]])
2021-02-23T16:38:51.672493+01:00 <0.1135.0> debug: init([{socket,epc,'gtp-c',<0.1021.0>},{gtp_socket_info,<<3,101,112,99>>,{172,20,16,2}},saegw_s11])
2021-02-23T16:38:51.673102+01:00 <0.1135.0> debug: handle gtp request: 2123, {gtp,v2,create_session_request,0,1,undefined,[],#{{v2_access_point_name,0} => {v2_access_point_name,0,[<<"Open5GS">>]},{v2_aggregate_maximum_bit_rate,0} => {v2_aggregate_maximum_bit_rate,0,1048576,1048576},{v2_apn_restriction,0} => {v2_apn_restriction,0,0},{v2_bearer_context,0} => {v2_bearer_context,0,#{{v2_bearer_level_quality_of_service,0} => {v2_bearer_level_quality_of_service,0,1,8,1,9,0,0,0,0},{v2_eps_bearer_id,0} => {v2_eps_bearer_id,0,5}}},{v2_charging_characteristics,0} => {v2_charging_characteristics,0,<<84,0>>},{v2_fully_qualified_tunnel_endpoint_identifier,0} => {v2_fully_qualified_tunnel_endpoint_identifier,0,10,1,<<172,20,16,1>>,undefined},{v2_fully_qualified_tunnel_endpoint_identifier,1} => {v2_fully_qualified_tunnel_endpoint_identifier,1,7,0,<<172,20,16,2>>,<<0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1>>},{v2_international_mobile_subscriber_identity,0} => {v2_international_mobile_subscriber_identity,0,<<"208930110000518">>},{v2_mobile_equipment_identity,0} => {v2_mobile_equipment_identity,0,<<"8652440454425053">>},{v2_pdn_address_allocation,0} => {v2_pdn_address_allocation,0,ipv4,<<0,0,0,0>>},{v2_pdn_type,0} => {v2_pdn_type,0,ipv4},{v2_rat_type,0} => {v2_rat_type,0,6},{v2_selection_mode,0} => {v2_selection_mode,0,0},{v2_serving_network,0} => {v2_serving_network,0,<<"208">>,<<"93">>},{v2_ue_time_zone,0} => {v2_ue_time_zone,0,64,0},{v2_user_location_information,0} => {v2_user_location_information,0,undefined,undefined,undefined,<<2,248,57,0,7>>,<<2,248,57,0,1,155,1>>,undefined,undefined,undefined}}}
2021-02-23T16:38:51.674013+01:00 <0.1135.0> debug: GTPv2 172.20.16.1:2123: {gtp,v2,create_session_request,0,1,undefined,[],#{{v2_access_point_name,0} => {v2_access_point_name,0,[<<"Open5GS">>]},{v2_aggregate_maximum_bit_rate,0} => {v2_aggregate_maximum_bit_rate,0,1048576,1048576},{v2_apn_restriction,0} => {v2_apn_restriction,0,0},{v2_bearer_context,0} => {v2_bearer_context,0,#{{v2_bearer_level_quality_of_service,0} => {v2_bearer_level_quality_of_service,0,1,8,1,9,0,0,0,0},{v2_eps_bearer_id,0} => {v2_eps_bearer_id,0,5}}},{v2_charging_characteristics,0} => {v2_charging_characteristics,0,<<84,0>>},{v2_fully_qualified_tunnel_endpoint_identifier,0} => {v2_fully_qualified_tunnel_endpoint_identifier,0,10,1,<<172,20,16,1>>,undefined},{v2_fully_qualified_tunnel_endpoint_identifier,1} => {v2_fully_qualified_tunnel_endpoint_identifier,1,7,0,<<172,20,16,2>>,<<0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1>>},{v2_international_mobile_subscriber_identity,0} => {v2_international_mobile_subscriber_identity,0,<<"208930110000518">>},{v2_mobile_equipment_identity,0} => {v2_mobile_equipment_identity,0,<<"8652440454425053">>},{v2_pdn_address_allocation,0} => {v2_pdn_address_allocation,0,ipv4,<<0,0,0,0>>},{v2_pdn_type,0} => {v2_pdn_type,0,ipv4},{v2_rat_type,0} => {v2_rat_type,0,6},{v2_selection_mode,0} => {v2_selection_mode,0,0},{v2_serving_network,0} => {v2_serving_network,0,<<"208">>,<<"93">>},{v2_ue_time_zone,0} => {v2_ue_time_zone,0,64,0},{v2_user_location_information,0} => {v2_user_location_information,0,undefined,undefined,undefined,<<2,248,57,0,7>>,<<2,248,57,0,1,155,1>>,undefined,undefined,undefined}}}
2021-02-23T16:38:51.674961+01:00 <0.1135.0> debug: Selection [default] in #{default => {static,[{"_default.apn.epc.mnc093.mcc208.3gppnetwork.org",{300,64536},[{"x-3gpp-pgw","x-s5-gtp"},{"x-3gpp-pgw","x-s8-gtp"},{"x-3gpp-sgw","x-s5-gtp"},{"x-3gpp-sgw","x-s8-gtp"}],"topon.s1u.upg.epc.mnc093.mcc208.3gppnetwork.org"},{"_default.apn.epc.mnc093.mcc208.3gppnetwork.org",{300,64536},[{"x-3gpp-upf","x-sxb"}],"topon.sx.upg01.epc.mnc093.mcc208.3gppnetwork.org"},{"topon.s1u.upg.epc.mnc093.mcc208.3gppnetwork.org",[{172,20,17,2}],[]},{"topon.sx.upg01.epc.mnc093.mcc208.3gppnetwork.org",[{192,168,1,1}],[]}]}}
2021-02-23T16:38:51.675242+01:00 <0.1135.0> debug: Selection [default] in #{default => {static,[{"_default.apn.epc.mnc093.mcc208.3gppnetwork.org",{300,64536},[{"x-3gpp-pgw","x-s5-gtp"},{"x-3gpp-pgw","x-s8-gtp"},{"x-3gpp-sgw","x-s5-gtp"},{"x-3gpp-sgw","x-s8-gtp"}],"topon.s1u.upg.epc.mnc093.mcc208.3gppnetwork.org"},{"_default.apn.epc.mnc093.mcc208.3gppnetwork.org",{300,64536},[{"x-3gpp-upf","x-sxb"}],"topon.sx.upg01.epc.mnc093.mcc208.3gppnetwork.org"},{"topon.s1u.upg.epc.mnc093.mcc208.3gppnetwork.org",[{172,20,17,2}],[]},{"topon.sx.upg01.epc.mnc093.mcc208.3gppnetwork.org",[{192,168,1,1}],[]}]}}
2021-02-23T16:38:51.675826+01:00 <0.1139.0> debug: State: {state,{peer,up,0},undefined,stopped} Data: #{contexts => #{},down_echo => 600000,down_timeout => 3600000,echo => 60000,handler => gtp_v2_c,idle_echo => 600000,idle_timeout => 1800000,ip => {172,20,16,1},monitors => #{},n3 => 5,reg_key => {epc,v2,{172,20,16,1}},socket => {socket,epc,'gtp-c',<0.1021.0>},t3 => 10000,version => v2}
2021-02-23T16:38:51.676164+01:00 <0.1022.0> debug: PrepSend: {send_req,{192,168,1,1},200,5,undefined,{pfcp,v1,association_setup_request,undefined,undefined,[{recovery_time_stamp,3823083510},{tp_build_identifier,<<"erGW 2.8.5+build.971.refc9fb5f0 on Erlang/OTP 23 [erts 11.1.5]">>},{node_id,[<<"upg">>]}]},undefined,{ergw_sx_node,response,[<0.1138.0>,association_setup_request]},-576460730466693963}
2021-02-23T16:38:51.676172+01:00 <0.1139.0> debug: gtp_path: register(<0.1135.0>)
2021-02-23T16:38:51.676447+01:00 <0.1022.0> debug: PrepSend: Association Setup Request(V: v1, SEID: undefined, Seq: 1): [#recovery_time_stamp{time = 3823083510}, #tp_build_identifier{id = <<"erGW 2.8.5+build.971.refc9fb5f0 on Erlang/OTP 23 [erts 11.1.5]">>}, #node_id{id = [<<"upg">>]}]
2021-02-23T16:38:51.677798+01:00 <0.1022.0> debug: handle message 192.168.1.1:8805: <<32,6,0,151,0,0,1,0,0,60,0,5,2,3,117,112,103,0,19,0,1,1,0,96,0,4,227,223,159,239,0,43,0,6,0,1,0,0,0,0,0,116,0,9,41,128,192,168,1,1,2,99,112,0,116,0,10,41,128,172,20,17,2,3,101,112,99,128,2,0,84,72,249,118,112,112,32,118,50,48,46,48,57,45,114,99,48,126,50,56,57,45,103,98,53,99,48,57,97,48,51,53,32,98,117,105,108,116,32,98,121,32,114,111,111,116,32,111,110,32,56,53,57,54,100,56,99,97,102,52,97,100,32,97,116,32,50,48,50,49,45,48,50,45,49,53,84,49,51,58,49,56,58,50,53>>
2021-02-23T16:38:51.678456+01:00 <0.1022.0> debug: handle message 192.168.1.1:8805: Association Setup Response(V: v1, SEID: undefined, Seq: 1): [#node_id{id = [<<"upg">>]}, #pfcp_cause{cause = 'Request accepted'}, #recovery_time_stamp{time = 3823083503}, #tp_build_identifier{id = <<"vpp v20.09-rc0~289-gb5c09a035 built by root on 8596d8caf4ad at 2021-02-15T13:18:25">>}, #up_function_features{treu = 0,heeu = 0,pfdm = 0,ftup = 0,trst = 0,dlbd = 0, ddnd = 0,bucp = 0,epfar = 0,pfde = 0,frrt = 0, trace = 0,quoac = 0,udbc = 0,pdiu = 0,empu = 1, gcom = 0,bundl = 0,mte = 0,mnop = 0,sset = 0,ueip = 0, adpdp = 0,dpdra = 0,mptcp = 0,tscu = 0,ip6pl = 0, iptv = 0,norp = 0,vtime = 0,rttl = 0,mpas = 0, ethar = 0,ciot = 0,mt_edt = 0,gpqm = 0,qfqm = 0, atsss_ll = 0}, [#user_plane_ip_resource_information{teid_range = {128,2}, ipv4 = <<192,168,1,1>>, ipv6 = undefined, network_instance = <<2,99,112>>}, #user_plane_ip_resource_information{teid_range = {128,2}, ipv4 = <<172,20,17,2>>, ipv6 = undefined, network_instance = <<3,101,112,99>>}]]
2021-02-23T16:38:51.679384+01:00 <0.1022.0> debug: <0.1022.0>: found response: 1: Association Setup Response(V: v1, SEID: undefined, Seq: 1): [#node_id{id = [<<"upg">>]}, #pfcp_cause{cause = 'Request accepted'}, #recovery_time_stamp{time = 3823083503}, #tp_build_identifier{id = <<"vpp v20.09-rc0~289-gb5c09a035 built by root on 8596d8caf4ad at 2021-02-15T13:18:25">>}, #up_function_features{treu = 0,heeu = 0,pfdm = 0,ftup = 0,trst = 0,dlbd = 0, ddnd = 0,bucp = 0,epfar = 0,pfde = 0,frrt = 0, trace = 0,quoac = 0,udbc = 0,pdiu = 0,empu = 1, gcom = 0,bundl = 0,mte = 0,mnop = 0,sset = 0,ueip = 0, adpdp = 0,dpdra = 0,mptcp = 0,tscu = 0,ip6pl = 0, iptv = 0,norp = 0,vtime = 0,rttl = 0,mpas = 0, ethar = 0,ciot = 0,mt_edt = 0,gpqm = 0,qfqm = 0, atsss_ll = 0}, [#user_plane_ip_resource_information{teid_range = {128,2}, ipv4 = <<192,168,1,1>>, ipv6 = undefined, network_instance = <<2,99,112>>}, #user_plane_ip_resource_information{teid_range = {128,2}, ipv4 = <<172,20,17,2>>, ipv6 = undefined, network_instance = <<3,101,112,99>>}]]
2021-02-23T16:38:51.680146+01:00 <0.1022.0> debug: send_request_reply: {send_req,{192,168,1,1},200,5,<<32,5,0,89,0,0,1,0,0,96,0,4,227,223,159,246,128,2,0,64,72,249,101,114,71,87,32,50,46,56,46,53,43,98,117,105,108,100,46,57,55,49,46,114,101,102,99,57,102,98,53,102,48,32,111,110,32,69,114,108,97,110,103,47,79,84,80,32,50,51,32,91,101,114,116,115,32,49,49,46,49,46,53,93,0,60,0,5,2,3,117,112,103>>,{pfcp,v1,association_setup_request,undefined,1,[{recovery_time_stamp,3823083510},{tp_build_identifier,<<"erGW 2.8.5+build.971.refc9fb5f0 on Erlang/OTP 23 [erts 11.1.5]">>},{node_id,[<<"upg">>]}]},undefined,{ergw_sx_node,response,[<0.1138.0>,association_setup_request]},-576460730466693963}
2021-02-23T16:38:51.680709+01:00 <0.1138.0> debug: Node topon.sx.upg01.epc.mnc093.mcc208.3gppnetwork.org (192.168.1.1) is up
2021-02-23T16:38:51.681146+01:00 <0.1138.0> debug: Node IEs: #{node_id => #node_id{id = [<<"upg">>]}, pfcp_cause => #pfcp_cause{cause = 'Request accepted'}, recovery_time_stamp => #recovery_time_stamp{time = 3823083503}, tp_build_identifier =>, #tp_build_identifier{, id =, <<"vpp v20.09-rc0~289-gb5c09a035 built by root on 8596d8caf4ad at 2021-02-15T13:18:25">>}, up_function_features =>, #up_function_features{, treu = 0,heeu = 0,pfdm = 0,ftup = 0,trst = 0,dlbd = 0,ddnd = 0, bucp = 0,epfar = 0,pfde = 0,frrt = 0,trace = 0,quoac = 0,udbc = 0, pdiu = 0,empu = 1,gcom = 0,bundl = 0,mte = 0,mnop = 0,sset = 0, ueip = 0,adpdp = 0,dpdra = 0,mptcp = 0,tscu = 0,ip6pl = 0,iptv = 0, norp = 0,vtime = 0,rttl = 0,mpas = 0,ethar = 0,ciot = 0,mt_edt = 0, gpqm = 0,qfqm = 0,atsss_ll = 0}, user_plane_ip_resource_information =>, [#user_plane_ip_resource_information{, teid_range = {128,2}, ipv4 = <<192,168,1,1>>, ipv6 = undefined, network_instance = <<2,99,112>>}, #user_plane_ip_resource_information{, teid_range = {128,2}, ipv4 = <<172,20,17,2>>, ipv6 = undefined, network_instance = <<3,101,112,99>>}]}
2021-02-23T16:38:51.681797+01:00 <0.1138.0> debug: Update PFCP Rules Old: #{}
2021-02-23T16:38:51.681907+01:00 <0.1138.0> debug: Update PFCP Rules New: #{{far,1} => #{apply_action => {apply_action,0,0,0,0,0,0,1,0,undefined},far_id => {far_id,1},forwarding_parameters => {forwarding_parameters,#{destination_interface => {destination_interface,'Access'},network_instance => {network_instance,<<3,101,112,99>>}}}},{pdr,1} => #{far_id => {far_id,1},outer_header_removal => {outer_header_removal,'GTP-U/UDP/IPv4'},pdi => {pdi,#{f_teid => {f_teid,716410928,undefined,<<192,168,1,1>>,undefined},network_instance => {network_instance,<<2,99,112>>},source_interface => {source_interface,'CP-function'}}},pdr_id => {pdr_id,1},precedence => {precedence,100}}}
2021-02-23T16:38:51.682381+01:00 <0.1022.0> debug: PrepSend: {send_req,{192,168,1,1},30000,5,undefined,{pfcp,v1,session_establishment_request,0,undefined,#{create_far => [{create_far,#{apply_action => {apply_action,0,0,0,0,0,0,1,0,undefined},far_id => {far_id,1},forwarding_parameters => {forwarding_parameters,#{destination_interface => {destination_interface,'Access'},network_instance => {network_instance,<<3,101,112,99>>}}}}}],create_pdr => [{create_pdr,#{far_id => {far_id,1},outer_header_removal => {outer_header_removal,'GTP-U/UDP/IPv4'},pdi => {pdi,#{f_teid => {f_teid,716410928,undefined,<<192,168,1,1>>,undefined},network_instance => {network_instance,<<2,99,112>>},source_interface => {source_interface,'CP-function'}}},pdr_id => {pdr_id,1},precedence => {precedence,100}}}],f_seid => [{f_seid,18437299341101580390,<<192,168,1,2>>,undefined}],node_id => {node_id,[<<"upg">>]},tp_build_identifier => {tp_build_identifier,<<"erGW 2.8.5+build.971.refc9fb5f0 on Erlang/OTP 23 [erts 11.1.5]">>}}},undefined,{ergw_sx_node,response,[<0.1138.0>,from_cp_rule]},-576460730460466540}
2021-02-23T16:38:51.683086+01:00 <0.1022.0> debug: PrepSend: Session Establishment Request(V: v1, SEID: 0, Seq: 2): [[#create_far{, group =, #{apply_action =>, #apply_action{, dfrt = 0,ipmd = 0,ipma = 0,dupl = 0,nocp = 0,buff = 0, forw = 1,drop = 0,edrt = undefined}, far_id => #far_id{id = 1}, forwarding_parameters =>, #forwarding_parameters{, group =, #{destination_interface =>, #destination_interface{interface = 'Access'}, network_instance =>, #network_instance{, instance = <<3,101,112,99>>}}}}}], [#create_pdr{, group =, #{far_id => #far_id{id = 1}, outer_header_removal =>, #outer_header_removal{header = 'GTP-U/UDP/IPv4'}, pdi =>, #pdi{, group =, #{f_teid =>, #f_teid{, teid = 716410928,ipv6 = undefined, ipv4 = <<192,168,1,1>>, choose_id = undefined}, network_instance =>, #network_instance{instance = <<2,99,112>>}, source_interface =>, #source_interface{interface = 'CP-function'}}}, pdr_id => #pdr_id{id = 1}, precedence => #precedence{precedence = 100}}}], [#f_seid{, seid = 18437299341101580390, ipv4 = <<192,168,1,2>>, ipv6 = undefined}], #node_id{id = [<<"upg">>]}, #tp_build_identifier{, id =, <<"erGW 2.8.5+build.971.refc9fb5f0 on Erlang/OTP 23 [erts 11.1.5]">>}]
2021-02-23T16:38:51.684149+01:00 <0.1022.0> debug: handle message 192.168.1.1:8805: <<33,51,0,43,255,222,114,16,211,231,64,102,0,0,2,0,0,60,0,5,2,3,117,112,103,0,19,0,1,1,0,57,0,13,2,255,222,114,16,211,231,64,102,192,168,1,1>>
2021-02-23T16:38:51.684349+01:00 <0.1022.0> debug: handle message 192.168.1.1:8805: Session Establishment Response(V: v1, SEID: 18437299341101580390, Seq: 2): [#f_seid{seid = 18437299341101580390,ipv4 = <<192,168,1,1>>,ipv6 = undefined}, #node_id{id = [<<"upg">>]}, #pfcp_cause{cause = 'Request accepted'}]
2021-02-23T16:38:51.684604+01:00 <0.1022.0> debug: <0.1022.0>: found response: 2: Session Establishment Response(V: v1, SEID: 18437299341101580390, Seq: 2): [#f_seid{seid = 18437299341101580390,ipv4 = <<192,168,1,1>>,ipv6 = undefined}, #node_id{id = [<<"upg">>]}, #pfcp_cause{cause = 'Request accepted'}]
2021-02-23T16:38:51.684773+01:00 <0.1022.0> debug: send_request_reply: {send_req,{192,168,1,1},30000,5,<<33,50,0,200,0,0,0,0,0,0,0,0,0,0,2,0,0,3,0,30,0,44,0,1,2,0,108,0,4,0,0,0,1,0,4,0,13,0,42,0,1,0,0,22,0,4,3,101,112,99,0,1,0,56,0,108,0,4,0,0,0,1,0,95,0,1,0,0,2,0,25,0,21,0,9,1,42,179,144,48,192,168,1,1,0,22,0,3,2,99,112,0,20,0,1,3,0,56,0,2,0,1,0,29,0,4,0,0,0,100,0,57,0,13,2,255,222,114,16,211,231,64,102,192,168,1,2,0,60,0,5,2,3,117,112,103,128,2,0,64,72,249,101,114,71,87,32,50,46,56,46,53,43,98,117,105,108,100,46,57,55,49,46,114,101,102,99,57,102,98,53,102,48,32,111,110,32,69,114,108,97,110,103,47,79,84,80,32,50,51,32,91,101,114,116,115,32,49,49,46,49,46,53,93>>,{pfcp,v1,session_establishment_request,0,2,#{create_far => [{create_far,#{apply_action => {apply_action,0,0,0,0,0,0,1,0,undefined},far_id => {far_id,1},forwarding_parameters => {forwarding_parameters,#{destination_interface => {destination_interface,'Access'},network_instance => {network_instance,<<3,101,112,99>>}}}}}],create_pdr => [{create_pdr,#{far_id => {far_id,1},outer_header_removal => {outer_header_removal,'GTP-U/UDP/IPv4'},pdi => {pdi,#{f_teid => {f_teid,716410928,undefined,<<192,168,1,1>>,undefined},network_instance => {network_instance,<<2,99,112>>},source_interface => {source_interface,'CP-function'}}},pdr_id => {pdr_id,1},precedence => {precedence,100}}}],f_seid => [{f_seid,18437299341101580390,<<192,168,1,2>>,undefined}],node_id => {node_id,[<<"upg">>]},tp_build_identifier => {tp_build_identifier,<<"erGW 2.8.5+build.971.refc9fb5f0 on Erlang/OTP 23 [erts 11.1.5]">>}}},undefined,{ergw_sx_node,response,[<0.1138.0>,from_cp_rule]},-576460730460466540}
2021-02-23T16:38:51.685529+01:00 <0.1138.0> debug: Response: {response,from_cp_rule,{pfcp,v1,session_establishment_response,18437299341101580390,2,#{f_seid => {f_seid,18437299341101580390,<<192,168,1,1>>,undefined},node_id => {node_id,[<<"upg">>]},pfcp_cause => {pfcp_cause,'Request accepted'}}}}
2021-02-23T16:38:51.686274+01:00 <0.1135.0> debug: file: /ergw/src/ergw_pfcp_context.erl, level: 2, line: 854, reply: no_resources_available, stack: [{saegw_s11,handle_request,5,[{file,"/ergw/src/saegw_s11.erl"},{line,170}]},{gtp_context,handle_request,5,[{file,"/ergw/src/gtp_context.erl"},{line,685}]},{gen_statem,loop_state_callback,11,[{file,"gen_statem.erl"},{line,1168}]},{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,226}]}], type: ctx_err
2021-02-23T16:38:51.687491+01:00 <0.1136.0> error: Received DOWN information for <0.1135.0> with info normal
2021-02-23T16:38:52.526409+01:00 <0.1021.0> debug: handle message: {gtp,{172,20,16,1},2123,{socket,epc,'gtp-c',<0.1021.0>},{gtp,v2,create_session_request,0,2,undefined,[],<<1,0,8,0,2,152,3,17,0,0,21,248,75,0,8,0,104,37,68,64,69,36,5,53,86,0,13,0,24,2,248,57,0,7,2,248,57,0,1,155,1,83,0,3,0,2,248,57,82,0,1,0,6,87,0,9,0,138,0,0,0,2,172,20,16,1,87,0,25,1,199,0,0,0,0,172,20,16,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,71,0,8,0,7,79,112,101,110,53,71,83,128,0,1,0,252,99,0,1,0,1,79,0,5,0,1,0,0,0,0,127,0,1,0,0,72,0,8,0,0,16,0,0,0,16,0,0,93,0,31,0,73,0,1,0,5,80,0,22,0,97,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,114,0,2,0,64,0,95,0,2,0,84,0>>}}
2021-02-23T16:38:52.527002+01:00 <0.1021.0> debug: HandleRequest: none
2021-02-23T16:38:52.527320+01:00 <0.1140.0> debug: unable to find context {request,{epc,{172,20,16,1},2123,create_session_request,{v2,2}}}
2021-02-23T16:38:52.527618+01:00 <0.1140.0> debug: new([{socket,epc,'gtp-c',<0.1021.0>},{gtp_socket_info,<<3,101,112,99>>,{172,20,16,2}},v2,saegw_s11,#{aaa => #{'AAA-Application-Id' => ergw_aaa_provider,'Password' => #{default => <<"ergw">>},'Username' => #{default => <<"ergw">>,from_protocol_opts => true}},node_selection => [default]},[{hibernate_after,500},{spawn_opt,[{fullsweep_after,0}]}]])
2021-02-23T16:38:52.528003+01:00 <0.1141.0> debug: init([{socket,epc,'gtp-c',<0.1021.0>},{gtp_socket_info,<<3,101,112,99>>,{172,20,16,2}},saegw_s11])
2021-02-23T16:38:52.529056+01:00 <0.1141.0> debug: handle gtp request: 2123, {gtp,v2,create_session_request,0,2,undefined,[],#{{v2_access_point_name,0} => {v2_access_point_name,0,[<<"Open5GS">>]},{v2_aggregate_maximum_bit_rate,0} => {v2_aggregate_maximum_bit_rate,0,1048576,1048576},{v2_apn_restriction,0} => {v2_apn_restriction,0,0},{v2_bearer_context,0} => {v2_bearer_context,0,#{{v2_bearer_level_quality_of_service,0} => {v2_bearer_level_quality_of_service,0,1,8,1,9,0,0,0,0},{v2_eps_bearer_id,0} => {v2_eps_bearer_id,0,5}}},{v2_charging_characteristics,0} => {v2_charging_characteristics,0,<<84,0>>},{v2_fully_qualified_tunnel_endpoint_identifier,0} => {v2_fully_qualified_tunnel_endpoint_identifier,0,10,2,<<172,20,16,1>>,undefined},{v2_fully_qualified_tunnel_endpoint_identifier,1} => {v2_fully_qualified_tunnel_endpoint_identifier,1,7,0,<<172,20,16,2>>,<<0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1>>},{v2_international_mobile_subscriber_identity,0} => {v2_international_mobile_subscriber_identity,0,<<"208930110000518">>},{v2_mobile_equipment_identity,0} => {v2_mobile_equipment_identity,0,<<"8652440454425053">>},{v2_pdn_address_allocation,0} => {v2_pdn_address_allocation,0,ipv4,<<0,0,0,0>>},{v2_pdn_type,0} => {v2_pdn_type,0,ipv4},{v2_rat_type,0} => {v2_rat_type,0,6},{v2_selection_mode,0} => {v2_selection_mode,0,0},{v2_serving_network,0} => {v2_serving_network,0,<<"208">>,<<"93">>},{v2_ue_time_zone,0} => {v2_ue_time_zone,0,64,0},{v2_user_location_information,0} => {v2_user_location_information,0,undefined,undefined,undefined,<<2,248,57,0,7>>,<<2,248,57,0,1,155,1>>,undefined,undefined,undefined}}}
2021-02-23T16:38:52.529983+01:00 <0.1141.0> debug: GTPv2 172.20.16.1:2123: {gtp,v2,create_session_request,0,2,undefined,[],#{{v2_access_point_name,0} => {v2_access_point_name,0,[<<"Open5GS">>]},{v2_aggregate_maximum_bit_rate,0} => {v2_aggregate_maximum_bit_rate,0,1048576,1048576},{v2_apn_restriction,0} => {v2_apn_restriction,0,0},{v2_bearer_context,0} => {v2_bearer_context,0,#{{v2_bearer_level_quality_of_service,0} => {v2_bearer_level_quality_of_service,0,1,8,1,9,0,0,0,0},{v2_eps_bearer_id,0} => {v2_eps_bearer_id,0,5}}},{v2_charging_characteristics,0} => {v2_charging_characteristics,0,<<84,0>>},{v2_fully_qualified_tunnel_endpoint_identifier,0} => {v2_fully_qualified_tunnel_endpoint_identifier,0,10,2,<<172,20,16,1>>,undefined},{v2_fully_qualified_tunnel_endpoint_identifier,1} => {v2_fully_qualified_tunnel_endpoint_identifier,1,7,0,<<172,20,16,2>>,<<0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1>>},{v2_international_mobile_subscriber_identity,0} => {v2_international_mobile_subscriber_identity,0,<<"208930110000518">>},{v2_mobile_equipment_identity,0} => {v2_mobile_equipment_identity,0,<<"8652440454425053">>},{v2_pdn_address_allocation,0} => {v2_pdn_address_allocation,0,ipv4,<<0,0,0,0>>},{v2_pdn_type,0} => {v2_pdn_type,0,ipv4},{v2_rat_type,0} => {v2_rat_type,0,6},{v2_selection_mode,0} => {v2_selection_mode,0,0},{v2_serving_network,0} => {v2_serving_network,0,<<"208">>,<<"93">>},{v2_ue_time_zone,0} => {v2_ue_time_zone,0,64,0},{v2_user_location_information,0} => {v2_user_location_information,0,undefined,undefined,undefined,<<2,248,57,0,7>>,<<2,248,57,0,1,155,1>>,undefined,undefined,undefined}}}
2021-02-23T16:38:52.530887+01:00 <0.1141.0> debug: Selection [default] in #{default => {static,[{"_default.apn.epc.mnc093.mcc208.3gppnetwork.org",{300,64536},[{"x-3gpp-pgw","x-s5-gtp"},{"x-3gpp-pgw","x-s8-gtp"},{"x-3gpp-sgw","x-s5-gtp"},{"x-3gpp-sgw","x-s8-gtp"}],"topon.s1u.upg.epc.mnc093.mcc208.3gppnetwork.org"},{"_default.apn.epc.mnc093.mcc208.3gppnetwork.org",{300,64536},[{"x-3gpp-upf","x-sxb"}],"topon.sx.upg01.epc.mnc093.mcc208.3gppnetwork.org"},{"topon.s1u.upg.epc.mnc093.mcc208.3gppnetwork.org",[{172,20,17,2}],[]},{"topon.sx.upg01.epc.mnc093.mcc208.3gppnetwork.org",[{192,168,1,1}],[]}]}}
2021-02-23T16:38:52.531315+01:00 <0.1141.0> debug: Selection [default] in #{default => {static,[{"_default.apn.epc.mnc093.mcc208.3gppnetwork.org",{300,64536},[{"x-3gpp-pgw","x-s5-gtp"},{"x-3gpp-pgw","x-s8-gtp"},{"x-3gpp-sgw","x-s5-gtp"},{"x-3gpp-sgw","x-s8-gtp"}],"topon.s1u.upg.epc.mnc093.mcc208.3gppnetwork.org"},{"_default.apn.epc.mnc093.mcc208.3gppnetwork.org",{300,64536},[{"x-3gpp-upf","x-sxb"}],"topon.sx.upg01.epc.mnc093.mcc208.3gppnetwork.org"},{"topon.s1u.upg.epc.mnc093.mcc208.3gppnetwork.org",[{172,20,17,2}],[]},{"topon.sx.upg01.epc.mnc093.mcc208.3gppnetwork.org",[{192,168,1,1}],[]}]}}
2021-02-23T16:38:52.531688+01:00 <0.1139.0> debug: gtp_path: register(<0.1141.0>)
2021-02-23T16:38:52.532248+01:00 <0.1141.0> debug: file: /ergw/src/ergw_pfcp_context.erl, level: 2, line: 854, reply: no_resources_available, stack: [{saegw_s11,handle_request,5,[{file,"/ergw/src/saegw_s11.erl"},{line,170}]},{gtp_context,handle_request,5,[{file,"/ergw/src/gtp_context.erl"},{line,685}]},{gen_statem,loop_state_callback,11,[{file,"gen_statem.erl"},{line,1168}]},{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,226}]}], type: ctx_err
2021-02-23T16:38:52.532655+01:00 <0.1142.0> error: Received DOWN information for <0.1141.0> with info normal
2021-02-23T16:38:53.420503+01:00 <0.1021.0> debug: handle message: {gtp,{172,20,16,1},2123,{socket,epc,'gtp-c',<0.1021.0>},{gtp,v2,create_session_request,0,3,undefined,[],<<1,0,8,0,2,152,3,17,0,0,21,248,75,0,8,0,104,37,68,64,69,36,5,53,86,0,13,0,24,2,248,57,0,7,2,248,57,0,1,155,1,83,0,3,0,2,248,57,82,0,1,0,6,87,0,9,0,138,0,0,0,3,172,20,16,1,87,0,25,1,199,0,0,0,0,172,20,16,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,71,0,8,0,7,79,112,101,110,53,71,83,128,0,1,0,252,99,0,1,0,1,79,0,5,0,1,0,0,0,0,127,0,1,0,0,72,0,8,0,0,16,0,0,0,16,0,0,93,0,31,0,73,0,1,0,5,80,0,22,0,97,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,114,0,2,0,64,0,95,0,2,0,84,0>>}}
2021-02-23T16:38:53.421070+01:00 <0.1021.0> debug: HandleRequest: none
2021-02-23T16:38:53.421537+01:00 <0.1144.0> debug: unable to find context {request,{epc,{172,20,16,1},2123,create_session_request,{v2,3}}}
2021-02-23T16:38:53.421899+01:00 <0.1144.0> debug: new([{socket,epc,'gtp-c',<0.1021.0>},{gtp_socket_info,<<3,101,112,99>>,{172,20,16,2}},v2,saegw_s11,#{aaa => #{'AAA-Application-Id' => ergw_aaa_provider,'Password' => #{default => <<"ergw">>},'Username' => #{default => <<"ergw">>,from_protocol_opts => true}},node_selection => [default]},[{hibernate_after,500},{spawn_opt,[{fullsweep_after,0}]}]])
2021-02-23T16:38:53.422317+01:00 <0.1145.0> debug: init([{socket,epc,'gtp-c',<0.1021.0>},{gtp_socket_info,<<3,101,112,99>>,{172,20,16,2}},saegw_s11])
2021-02-23T16:38:53.423487+01:00 <0.1145.0> debug: handle gtp request: 2123, {gtp,v2,create_session_request,0,3,undefined,[],#{{v2_access_point_name,0} => {v2_access_point_name,0,[<<"Open5GS">>]},{v2_aggregate_maximum_bit_rate,0} => {v2_aggregate_maximum_bit_rate,0,1048576,1048576},{v2_apn_restriction,0} => {v2_apn_restriction,0,0},{v2_bearer_context,0} => {v2_bearer_context,0,#{{v2_bearer_level_quality_of_service,0} => {v2_bearer_level_quality_of_service,0,1,8,1,9,0,0,0,0},{v2_eps_bearer_id,0} => {v2_eps_bearer_id,0,5}}},{v2_charging_characteristics,0} => {v2_charging_characteristics,0,<<84,0>>},{v2_fully_qualified_tunnel_endpoint_identifier,0} => {v2_fully_qualified_tunnel_endpoint_identifier,0,10,3,<<172,20,16,1>>,undefined},{v2_fully_qualified_tunnel_endpoint_identifier,1} => {v2_fully_qualified_tunnel_endpoint_identifier,1,7,0,<<172,20,16,2>>,<<0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1>>},{v2_international_mobile_subscriber_identity,0} => {v2_international_mobile_subscriber_identity,0,<<"208930110000518">>},{v2_mobile_equipment_identity,0} => {v2_mobile_equipment_identity,0,<<"8652440454425053">>},{v2_pdn_address_allocation,0} => {v2_pdn_address_allocation,0,ipv4,<<0,0,0,0>>},{v2_pdn_type,0} => {v2_pdn_type,0,ipv4},{v2_rat_type,0} => {v2_rat_type,0,6},{v2_selection_mode,0} => {v2_selection_mode,0,0},{v2_serving_network,0} => {v2_serving_network,0,<<"208">>,<<"93">>},{v2_ue_time_zone,0} => {v2_ue_time_zone,0,64,0},{v2_user_location_information,0} => {v2_user_location_information,0,undefined,undefined,undefined,<<2,248,57,0,7>>,<<2,248,57,0,1,155,1>>,undefined,undefined,undefined}}}
2021-02-23T16:38:53.424188+01:00 <0.1145.0> debug: GTPv2 172.20.16.1:2123: {gtp,v2,create_session_request,0,3,undefined,[],#{{v2_access_point_name,0} => {v2_access_point_name,0,[<<"Open5GS">>]},{v2_aggregate_maximum_bit_rate,0} => {v2_aggregate_maximum_bit_rate,0,1048576,1048576},{v2_apn_restriction,0} => {v2_apn_restriction,0,0},{v2_bearer_context,0} => {v2_bearer_context,0,#{{v2_bearer_level_quality_of_service,0} => {v2_bearer_level_quality_of_service,0,1,8,1,9,0,0,0,0},{v2_eps_bearer_id,0} => {v2_eps_bearer_id,0,5}}},{v2_charging_characteristics,0} => {v2_charging_characteristics,0,<<84,0>>},{v2_fully_qualified_tunnel_endpoint_identifier,0} => {v2_fully_qualified_tunnel_endpoint_identifier,0,10,3,<<172,20,16,1>>,undefined},{v2_fully_qualified_tunnel_endpoint_identifier,1} => {v2_fully_qualified_tunnel_endpoint_identifier,1,7,0,<<172,20,16,2>>,<<0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1>>},{v2_international_mobile_subscriber_identity,0} => {v2_international_mobile_subscriber_identity,0,<<"208930110000518">>},{v2_mobile_equipment_identity,0} => {v2_mobile_equipment_identity,0,<<"8652440454425053">>},{v2_pdn_address_allocation,0} => {v2_pdn_address_allocation,0,ipv4,<<0,0,0,0>>},{v2_pdn_type,0} => {v2_pdn_type,0,ipv4},{v2_rat_type,0} => {v2_rat_type,0,6},{v2_selection_mode,0} => {v2_selection_mode,0,0},{v2_serving_network,0} => {v2_serving_network,0,<<"208">>,<<"93">>},{v2_ue_time_zone,0} => {v2_ue_time_zone,0,64,0},{v2_user_location_information,0} => {v2_user_location_information,0,undefined,undefined,undefined,<<2,248,57,0,7>>,<<2,248,57,0,1,155,1>>,undefined,undefined,undefined}}}
2021-02-23T16:38:53.425146+01:00 <0.1145.0> debug: Selection [default] in #{default => {static,[{"_default.apn.epc.mnc093.mcc208.3gppnetwork.org",{300,64536},[{"x-3gpp-pgw","x-s5-gtp"},{"x-3gpp-pgw","x-s8-gtp"},{"x-3gpp-sgw","x-s5-gtp"},{"x-3gpp-sgw","x-s8-gtp"}],"topon.s1u.upg.epc.mnc093.mcc208.3gppnetwork.org"},{"_default.apn.epc.mnc093.mcc208.3gppnetwork.org",{300,64536},[{"x-3gpp-upf","x-sxb"}],"topon.sx.upg01.epc.mnc093.mcc208.3gppnetwork.org"},{"topon.s1u.upg.epc.mnc093.mcc208.3gppnetwork.org",[{172,20,17,2}],[]},{"topon.sx.upg01.epc.mnc093.mcc208.3gppnetwork.org",[{192,168,1,1}],[]}]}}
2021-02-23T16:38:53.425807+01:00 <0.1145.0> debug: Selection [default] in #{default => {static,[{"_default.apn.epc.mnc093.mcc208.3gppnetwork.org",{300,64536},[{"x-3gpp-pgw","x-s5-gtp"},{"x-3gpp-pgw","x-s8-gtp"},{"x-3gpp-sgw","x-s5-gtp"},{"x-3gpp-sgw","x-s8-gtp"}],"topon.s1u.upg.epc.mnc093.mcc208.3gppnetwork.org"},{"_default.apn.epc.mnc093.mcc208.3gppnetwork.org",{300,64536},[{"x-3gpp-upf","x-sxb"}],"topon.sx.upg01.epc.mnc093.mcc208.3gppnetwork.org"},{"topon.s1u.upg.epc.mnc093.mcc208.3gppnetwork.org",[{172,20,17,2}],[]},{"topon.sx.upg01.epc.mnc093.mcc208.3gppnetwork.org",[{192,168,1,1}],[]}]}}
2021-02-23T16:38:53.426562+01:00 <0.1139.0> debug: gtp_path: register(<0.1145.0>)
2021-02-23T16:38:53.427104+01:00 <0.1145.0> debug: file: /ergw/src/ergw_pfcp_context.erl, level: 2, line: 854, reply: no_resources_available, stack: [{saegw_s11,handle_request,5,[{file,"/ergw/src/saegw_s11.erl"},{line,170}]},{gtp_context,handle_request,5,[{file,"/ergw/src/gtp_context.erl"},{line,685}]},{gen_statem,loop_state_callback,11,[{file,"gen_statem.erl"},{line,1168}]},{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,226}]}], type: ctx_err
2021-02-23T16:38:53.427674+01:00 <0.1146.0> error: Received DOWN information for <0.1145.0> with info normal
2021-02-23T16:38:54.321966+01:00 <0.1021.0> debug: handle message: {gtp,{172,20,16,1},2123,{socket,epc,'gtp-c',<0.1021.0>},{gtp,v2,create_session_request,0,4,undefined,[],<<1,0,8,0,2,152,3,17,0,0,21,248,75,0,8,0,104,37,68,64,69,36,5,53,86,0,13,0,24,2,248,57,0,7,2,248,57,0,1,155,1,83,0,3,0,2,248,57,82,0,1,0,6,87,0,9,0,138,0,0,0,4,172,20,16,1,87,0,25,1,199,0,0,0,0,172,20,16,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,71,0,8,0,7,79,112,101,110,53,71,83,128,0,1,0,252,99,0,1,0,1,79,0,5,0,1,0,0,0,0,127,0,1,0,0,72,0,8,0,0,16,0,0,0,16,0,0,93,0,31,0,73,0,1,0,5,80,0,22,0,97,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,114,0,2,0,64,0,95,0,2,0,84,0>>}}
2021-02-23T16:38:54.322491+01:00 <0.1021.0> debug: HandleRequest: none
2021-02-23T16:38:54.323019+01:00 <0.1148.0> debug: unable to find context {request,{epc,{172,20,16,1},2123,create_session_request,{v2,4}}}
2021-02-23T16:38:54.323190+01:00 <0.1148.0> debug: new([{socket,epc,'gtp-c',<0.1021.0>},{gtp_socket_info,<<3,101,112,99>>,{172,20,16,2}},v2,saegw_s11,#{aaa => #{'AAA-Application-Id' => ergw_aaa_provider,'Password' => #{default => <<"ergw">>},'Username' => #{default => <<"ergw">>,from_protocol_opts => true}},node_selection => [default]},[{hibernate_after,500},{spawn_opt,[{fullsweep_after,0}]}]])
2021-02-23T16:38:54.323767+01:00 <0.1149.0> debug: init([{socket,epc,'gtp-c',<0.1021.0>},{gtp_socket_info,<<3,101,112,99>>,{172,20,16,2}},saegw_s11])
2021-02-23T16:38:54.324641+01:00 <0.1149.0> debug: handle gtp request: 2123, {gtp,v2,create_session_request,0,4,undefined,[],#{{v2_access_point_name,0} => {v2_access_point_name,0,[<<"Open5GS">>]},{v2_aggregate_maximum_bit_rate,0} => {v2_aggregate_maximum_bit_rate,0,1048576,1048576},{v2_apn_restriction,0} => {v2_apn_restriction,0,0},{v2_bearer_context,0} => {v2_bearer_context,0,#{{v2_bearer_level_quality_of_service,0} => {v2_bearer_level_quality_of_service,0,1,8,1,9,0,0,0,0},{v2_eps_bearer_id,0} => {v2_eps_bearer_id,0,5}}},{v2_charging_characteristics,0} => {v2_charging_characteristics,0,<<84,0>>},{v2_fully_qualified_tunnel_endpoint_identifier,0} => {v2_fully_qualified_tunnel_endpoint_identifier,0,10,4,<<172,20,16,1>>,undefined},{v2_fully_qualified_tunnel_endpoint_identifier,1} => {v2_fully_qualified_tunnel_endpoint_identifier,1,7,0,<<172,20,16,2>>,<<0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1>>},{v2_international_mobile_subscriber_identity,0} => {v2_international_mobile_subscriber_identity,0,<<"208930110000518">>},{v2_mobile_equipment_identity,0} => {v2_mobile_equipment_identity,0,<<"8652440454425053">>},{v2_pdn_address_allocation,0} => {v2_pdn_address_allocation,0,ipv4,<<0,0,0,0>>},{v2_pdn_type,0} => {v2_pdn_type,0,ipv4},{v2_rat_type,0} => {v2_rat_type,0,6},{v2_selection_mode,0} => {v2_selection_mode,0,0},{v2_serving_network,0} => {v2_serving_network,0,<<"208">>,<<"93">>},{v2_ue_time_zone,0} => {v2_ue_time_zone,0,64,0},{v2_user_location_information,0} => {v2_user_location_information,0,undefined,undefined,undefined,<<2,248,57,0,7>>,<<2,248,57,0,1,155,1>>,undefined,undefined,undefined}}}
2021-02-23T16:38:54.325380+01:00 <0.1149.0> debug: GTPv2 172.20.16.1:2123: {gtp,v2,create_session_request,0,4,undefined,[],#{{v2_access_point_name,0} => {v2_access_point_name,0,[<<"Open5GS">>]},{v2_aggregate_maximum_bit_rate,0} => {v2_aggregate_maximum_bit_rate,0,1048576,1048576},{v2_apn_restriction,0} => {v2_apn_restriction,0,0},{v2_bearer_context,0} => {v2_bearer_context,0,#{{v2_bearer_level_quality_of_service,0} => {v2_bearer_level_quality_of_service,0,1,8,1,9,0,0,0,0},{v2_eps_bearer_id,0} => {v2_eps_bearer_id,0,5}}},{v2_charging_characteristics,0} => {v2_charging_characteristics,0,<<84,0>>},{v2_fully_qualified_tunnel_endpoint_identifier,0} => {v2_fully_qualified_tunnel_endpoint_identifier,0,10,4,<<172,20,16,1>>,undefined},{v2_fully_qualified_tunnel_endpoint_identifier,1} => {v2_fully_qualified_tunnel_endpoint_identifier,1,7,0,<<172,20,16,2>>,<<0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1>>},{v2_international_mobile_subscriber_identity,0} => {v2_international_mobile_subscriber_identity,0,<<"208930110000518">>},{v2_mobile_equipment_identity,0} => {v2_mobile_equipment_identity,0,<<"8652440454425053">>},{v2_pdn_address_allocation,0} => {v2_pdn_address_allocation,0,ipv4,<<0,0,0,0>>},{v2_pdn_type,0} => {v2_pdn_type,0,ipv4},{v2_rat_type,0} => {v2_rat_type,0,6},{v2_selection_mode,0} => {v2_selection_mode,0,0},{v2_serving_network,0} => {v2_serving_network,0,<<"208">>,<<"93">>},{v2_ue_time_zone,0} => {v2_ue_time_zone,0,64,0},{v2_user_location_information,0} => {v2_user_location_information,0,undefined,undefined,undefined,<<2,248,57,0,7>>,<<2,248,57,0,1,155,1>>,undefined,undefined,undefined}}}
2021-02-23T16:38:54.325995+01:00 <0.1149.0> debug: Selection [default] in #{default => {static,[{"_default.apn.epc.mnc093.mcc208.3gppnetwork.org",{300,64536},[{"x-3gpp-pgw","x-s5-gtp"},{"x-3gpp-pgw","x-s8-gtp"},{"x-3gpp-sgw","x-s5-gtp"},{"x-3gpp-sgw","x-s8-gtp"}],"topon.s1u.upg.epc.mnc093.mcc208.3gppnetwork.org"},{"_default.apn.epc.mnc093.mcc208.3gppnetwork.org",{300,64536},[{"x-3gpp-upf","x-sxb"}],"topon.sx.upg01.epc.mnc093.mcc208.3gppnetwork.org"},{"topon.s1u.upg.epc.mnc093.mcc208.3gppnetwork.org",[{172,20,17,2}],[]},{"topon.sx.upg01.epc.mnc093.mcc208.3gppnetwork.org",[{192,168,1,1}],[]}]}}
2021-02-23T16:38:54.326298+01:00 <0.1149.0> debug: Selection [default] in #{default => {static,[{"_default.apn.epc.mnc093.mcc208.3gppnetwork.org",{300,64536},[{"x-3gpp-pgw","x-s5-gtp"},{"x-3gpp-pgw","x-s8-gtp"},{"x-3gpp-sgw","x-s5-gtp"},{"x-3gpp-sgw","x-s8-gtp"}],"topon.s1u.upg.epc.mnc093.mcc208.3gppnetwork.org"},{"_default.apn.epc.mnc093.mcc208.3gppnetwork.org",{300,64536},[{"x-3gpp-upf","x-sxb"}],"topon.sx.upg01.epc.mnc093.mcc208.3gppnetwork.org"},{"topon.s1u.upg.epc.mnc093.mcc208.3gppnetwork.org",[{172,20,17,2}],[]},{"topon.sx.upg01.epc.mnc093.mcc208.3gppnetwork.org",[{192,168,1,1}],[]}]}}
2021-02-23T16:38:54.326628+01:00 <0.1139.0> debug: gtp_path: register(<0.1149.0>)
2021-02-23T16:38:54.327024+01:00 <0.1149.0> debug: file: /ergw/src/ergw_pfcp_context.erl, level: 2, line: 854, reply: no_resources_available, stack: [{saegw_s11,handle_request,5,[{file,"/ergw/src/saegw_s11.erl"},{line,170}]},{gtp_context,handle_request,5,[{file,"/ergw/src/gtp_context.erl"},{line,685}]},{gen_statem,loop_state_callback,11,[{file,"gen_statem.erl"},{line,1168}]},{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,226}]}], type: ctx_err
2021-02-23T16:38:54.327865+01:00 <0.1150.0> error: Received DOWN information for <0.1149.0> with info normal
2021-02-23T16:38:56.686864+01:00 <0.1138.0> debug: sending heartbeat
2021-02-23T16:38:56.686978+01:00 <0.1022.0> debug: PrepSend: {send_req,{192,168,1,1},500,5,undefined,{pfcp,v1,heartbeat_request,undefined,undefined,[{recovery_time_stamp,3823083510}]},undefined,{ergw_sx_node,response,[<0.1138.0>,heartbeat]},-576460725455771368}
2021-02-23T16:38:56.687063+01:00 <0.1022.0> debug: PrepSend: Heartbeat Request(V: v1, SEID: undefined, Seq: 3): [#recovery_time_stamp{time = 3823083510}]
2021-02-23T16:38:56.687363+01:00 <0.1022.0> debug: handle message 192.168.1.1:8805: <<32,2,0,12,0,0,3,0,0,96,0,4,227,223,159,239>>
2021-02-23T16:38:56.687503+01:00 <0.1022.0> debug: handle message 192.168.1.1:8805: Heartbeat Response(V: v1, SEID: undefined, Seq: 3): [#recovery_time_stamp{time = 3823083503}]
2021-02-23T16:38:56.687593+01:00 <0.1022.0> debug: <0.1022.0>: found response: 3: Heartbeat Response(V: v1, SEID: undefined, Seq: 3): [#recovery_time_stamp{time = 3823083503}]
2021-02-23T16:38:56.687695+01:00 <0.1022.0> debug: send_request_reply: {send_req,{192,168,1,1},500,5,<<32,1,0,12,0,0,3,0,0,96,0,4,227,223,159,246>>,{pfcp,v1,heartbeat_request,undefined,3,[{recovery_time_stamp,3823083510}]},undefined,{ergw_sx_node,response,[<0.1138.0>,heartbeat]},-576460725455771368}
2021-02-23T16:38:56.687824+01:00 <0.1138.0> debug: PFCP OK Response: #{recovery_time_stamp => #recovery_time_stamp{time = 3823083503}}
2021-02-23T16:39:01.688856+01:00 <0.1138.0> debug: sending heartbeat
2021-02-23T16:39:01.688998+01:00 <0.1022.0> debug: PrepSend: {send_req,{192,168,1,1},500,5,undefined,{pfcp,v1,heartbeat_request,undefined,undefined,[{recovery_time_stamp,3823083510}]},undefined,{ergw_sx_node,response,[<0.1138.0>,heartbeat]},-576460720453752077}
2021-02-23T16:39:01.689111+01:00 <0.1022.0> debug: PrepSend: Heartbeat Request(V: v1, SEID: undefined, Seq: 4): [#recovery_time_stamp{time = 3823083510}]
2021-02-23T16:39:01.689400+01:00 <0.1022.0> debug: handle message 192.168.1.1:8805: <<32,2,0,12,0,0,4,0,0,96,0,4,227,223,159,239>>
2021-02-23T16:39:01.689500+01:00 <0.1022.0> debug: handle message 192.168.1.1:8805: Heartbeat Response(V: v1, SEID: undefined, Seq: 4): [#recovery_time_stamp{time = 3823083503}]
2021-02-23T16:39:01.689588+01:00 <0.1022.0> debug: <0.1022.0>: found response: 4: Heartbeat Response(V: v1, SEID: undefined, Seq: 4): [#recovery_time_stamp{time = 3823083503}]
2021-02-23T16:39:01.689676+01:00 <0.1022.0> debug: send_request_reply: {send_req,{192,168,1,1},500,5,<<32,1,0,12,0,0,4,0,0,96,0,4,227,223,159,246>>,{pfcp,v1,heartbeat_request,undefined,4,[{recovery_time_stamp,3823083510}]},undefined,{ergw_sx_node,response,[<0.1138.0>,heartbeat]},-576460720453752077}
2021-02-23T16:39:01.689808+01:00 <0.1022.0> debug: handle message 192.168.1.1:8805: <<32,1,0,12,0,0,1,0,0,96,0,4,227,223,159,239>>
2021-02-23T16:39:01.689825+01:00 <0.1138.0> debug: PFCP OK Response: #{recovery_time_stamp => #recovery_time_stamp{time = 3823083503}}
2021-02-23T16:39:01.689906+01:00 <0.1022.0> debug: handle message 192.168.1.1:8805: Heartbeat Request(V: v1, SEID: undefined, Seq: 1): [#recovery_time_stamp{time = 3823083503}]
2021-02-23T16:39:01.689976+01:00 <0.1022.0> debug: cast HB request to <0.1138.0>
2021-02-23T16:39:06.690824+01:00 <0.1138.0> debug: sending heartbeat
2021-02-23T16:39:06.690959+01:00 <0.1022.0> debug: PrepSend: {send_req,{192,168,1,1},500,5,undefined,{pfcp,v1,heartbeat_request,undefined,undefined,[{recovery_time_stamp,3823083510}]},undefined,{ergw_sx_node,response,[<0.1138.0>,heartbeat]},-576460715451805777}
2021-02-23T16:39:06.691068+01:00 <0.1022.0> debug: PrepSend: Heartbeat Request(V: v1, SEID: undefined, Seq: 5): [#recovery_time_stamp{time = 3823083510}]
2021-02-23T16:39:06.691371+01:00 <0.1022.0> debug: handle message 192.168.1.1:8805: <<32,2,0,12,0,0,5,0,0,96,0,4,227,223,159,239>>
2021-02-23T16:39:06.691506+01:00 <0.1022.0> debug: handle message 192.168.1.1:8805: Heartbeat Response(V: v1, SEID: undefined, Seq: 5): [#recovery_time_stamp{time = 3823083503}]
2021-02-23T16:39:06.691592+01:00 <0.1022.0> debug: <0.1022.0>: found response: 5: Heartbeat Response(V: v1, SEID: undefined, Seq: 5): [#recovery_time_stamp{time = 3823083503}]
2021-02-23T16:39:06.691707+01:00 <0.1022.0> debug: send_request_reply: {send_req,{192,168,1,1},500,5,<<32,1,0,12,0,0,5,0,0,96,0,4,227,223,159,246>>,{pfcp,v1,heartbeat_request,undefined,5,[{recovery_time_stamp,3823083510}]},undefined,{ergw_sx_node,response,[<0.1138.0>,heartbeat]},-576460715451805777}
2021-02-23T16:39:06.691832+01:00 <0.1138.0> debug: PFCP OK Response: #{recovery_time_stamp => #recovery_time_stamp{time = 3823083503}}
RoadRunnr commented 3 years ago

The sample config from the walk-through is outdated and not even close to working.

Here is a adjusted version, UNTESTED:

%% -*-Erlang-*-
[{setup, [{data_dir, "/var/lib/ergw"},
      {log_dir,  "/var/log/ergw-c-node"}
     ]},

 {kernel,
  [{logger,
    [{logger_level, debug},
     {handler, default, logger_std_h,
      #{level => debug,
    formatter =>
        {logger_formatter,
         #{single_line => true,
           legacy_header => false,
           template => [time," ",pid," ",level,": ",msg,"\n"]
          }},

    config =>
    #{sync_mode_qlen => 10000,
      drop_mode_qlen => 10000,
      flush_qlen     => 10000}
       }
     }
    ]}
  ]},

 {ergw, [{'$setup_vars',
      [{"ORIGIN", {value, "epc.mnc093.mcc208.3gppnetwork.org"}}]},
      {plmn_id, {<<"208">>, <<"93">>}},

     {http_api,
      [{port, 8080},
       {ip, {0,0,0,0}}
      ]},

     {node_id, <<"upg">>},
     {sockets,
      [{cp, [{type, 'gtp-u'},
         {vrf, cp},
         {ip,  {192,168,1,2}}
        ]},
       {epc, [{type, 'gtp-c'},
          {vrf, epc},
          {ip,  {172,20,16,2}},
          {netdev, "vrf-irx"}
         ]},
       {sx, [{type, 'pfcp'},
         {socket, cp},
         {ip,  {192,168,1,2}}
        ]}
      ]},

     {ip_pools,
      [{'pool-A', [{pools,  [{{10, 106, 0, 1}, {10, 106, 255, 254}, 32},
                 {{16#8001, 0, 0, 0, 0, 0, 0, 0},
                  {16#8001, 0, 0, 16#FFFF, 0, 0, 0, 0}, 64}
                ]},
               {'MS-Primary-DNS-Server', {8,8,8,8}},
               {'MS-Secondary-DNS-Server', {8,8,4,4}},
               {'MS-Primary-NBNS-Server', {127,0,0,1}},
               {'MS-Secondary-NBNS-Server', {127,0,0,1}}
              ]}
      ]},

     {handlers,
      [{s11, [{handler, saegw_s11},
          {sockets, [epc]},
          {node_selection, [default]}
         ]}
      ]},

     {apns,
      [{[<<"Open5GS">>], [{vrf, sgi},
                  {ip_pools, ['pool-A']}
                 ]}
      ]},

     {charging,
      [{default,
        [{rulebase,
          [{<<"r-0001">>,
        #{'Rating-Group' => [3000],
          'Flow-Information' =>
              [#{'Flow-Description' => [<<"permit out ip from any to assigned">>],
             'Flow-Direction'   => [1]    %% DownLink
            },
               #{'Flow-Description' => [<<"permit out ip from any to assigned">>],
             'Flow-Direction'   => [2]    %% UpLink
            }],
          'Metering-Method'  => [1],
          'Precedence' => [100],
          'Offline'  => [0],
          'Online'  => [0]
         }}
           {<<"rb-0001">>, [<<"r-0001">>]}
          ]}
        ]}
      ]},

     {node_selection,
      [{default,
        {static,
         [
          %% APN NAPTR alternative
          {"_default.apn.$ORIGIN", {300,64536},
           [{"x-3gpp-pgw","x-s5-gtp"},{"x-3gpp-pgw","x-s8-gtp"},
        {"x-3gpp-sgw","x-s5-gtp"},{"x-3gpp-sgw","x-s8-gtp"}],
           "topon.s1u.upg.$ORIGIN"},
          {"_default.apn.$ORIGIN", {300,64536},
           [{"x-3gpp-upf","x-sxb"}],
           "topon.sx.upg01.$ORIGIN"},

          %% A/AAAA record alternatives
          {"topon.s1u.upg.$ORIGIN", [{172,20,17,2}], []},
          {"topon.sx.upg01.$ORIGIN", [{192,168,1,1}], []}
         ]
        }
       }
      ]
     },

     {nodes,
      [{default,
       [{vrfs,
          [{cp, [{features, ['CP-Function']}]},
           {epc, [{features, ['Access']}]},
           {sgi, [{features, ['SGi-LAN']}]}]
         },
        {ip_pools, ['pool-A']},
        {heartbeat, [{interval, 5000},
             {timeout, 500},
             {retry, 5}
            ]},
        {request, [{timeout, 30000},
               {retry, 5}]}
       ]},
       {"topon.sx.upg01.$ORIGIN", [connect]}
      ]}
    ]},

 {ergw_aaa,
  [
   {handlers,
    [{ergw_aaa_static,
      [{'NAS-Identifier',          <<"NAS-Identifier">>},
       {'Node-Id',                 <<"PGW-001">>},
       {'Charging-Rule-Base-Name', <<"rb-0001">>}
      ]}
    ]},
   {services,
    [{'Default',
      [{handler, 'ergw_aaa_static'},
       {answers,
    #{'Initial-Gx' =>
          #{'Result-Code' => 2001,
        'Charging-Rule-Install' =>
            [#{'Charging-Rule-Base-Name' => [<<"rb-0001">>]}]
           },
      'Update-Gx' => #{'Result-Code' => 2001},
      'Final-Gx' => #{'Result-Code' => 2001}
     }
       }
      ]}
    ]},
   {apps,
    [{default,
      [{session, ['Default']},
       {procedures, [{authenticate, []},
             {authorize, []},
             {start, []},
             {interim, []},
             {stop, []},
             {{gx, 'CCR-Initial'},   [{'Default', [{answer, 'Initial-Gx'}]}]},
             {{gx, 'CCR-Update'},    [{'Default', [{answer, 'Update-Gx'}]}]},
             {{gx, 'CCR-Terminate'}, [{'Default', [{answer, 'Final-Gx'}]}]},
             {{gy, 'CCR-Initial'},   []},
             {{gy, 'CCR-Update'},    []},
             {{gy, 'CCR-Terminate'}, []}
            ]}
      ]}
    ]}
  ]},

 {jobs, [{samplers,
      [{cpu_feedback, jobs_sampler_cpu, []}
      ]},
     {queues,
      [{path_restart,
        [{regulators, [{counter, [{limit, 100}]}]},
         {modifiers,  [{cpu_feedback, 10}]} %% 10 = % increment by which to modify the limit
        ]},
       {create,
        [{max_time, 5000}, %% max 5 seconds
         {regulators, [{rate, [{limit, 100}]}]},
         {modifiers,  [{cpu_feedback, 10}]} %% 10 = % increment by which to modify the limit
        ]},
       {delete,
        [{regulators, [{counter, [{limit, 100}]}]},
         {modifiers,  [{cpu_feedback, 10}]} %% 10 = % increment by which to modify the limit
        ]},
       {other,
        [{max_time, 10000}, %% max 10 seconds
         {regulators, [{rate, [{limit, 1000}]}]},
         {modifiers,  [{cpu_feedback, 10}]} %% 10 = % increment by which to modify the limit
        ]}
      ]}
     ]}
].
gantonie commented 3 years ago

I tried this config file but I got this error

2021-02-23T17:10:13.101940+01:00 <0.1003.0> debug: SAEGW S11 Options: [{handler,saegw_s11},{sockets,[epc]},{node_selection,[default]},{protocol,s11}]
2021-02-23T17:10:13.102276+01:00 <0.1003.0> debug: IP Pool Options: [{pools,[{{10,106,0,1},{10,106,255,254},32},{{32769,0,0,0,0,0,0,0},{32769,0,0,65535,0,0,0,0},64}]},{'MS-Primary-DNS-Server',{8,8,8,8}},{'MS-Secondary-DNS-Server',{8,8,4,4}},{'MS-Primary-NBNS-Server',{127,0,0,1}},{'MS-Secondary-NBNS-Server',{127,0,0,1}}]
2021-02-23T17:10:13.102677+01:00 <0.1003.0> debug: IP Pool Options: [{pools,[{{10,106,0,1},{10,106,255,254},32},{{32769,0,0,0,0,0,0,0},{32769,0,0,65535,0,0,0,0},64}]},{'MS-Primary-DNS-Server',{8,8,8,8}},{'MS-Secondary-DNS-Server',{8,8,4,4}},{'MS-Primary-NBNS-Server',{127,0,0,1}},{'MS-Secondary-NBNS-Server',{127,0,0,1}}]
2021-02-23T17:10:13.103198+01:00 <0.1002.0> error: crasher: initial call: application_master:init/4, pid: <0.1002.0>, registered_name: [], exit: {{{options,{pools,[{{10,106,0,1},{10,106,255,254},32},{{32769,0,0,0,0,0,0,0},{32769,0,0,65535,0,0,0,0},64}]}},{ergw_app,start,[normal,[]]}},[{application_master,init,4,[{file,"application_master.erl"},{line,138}]},{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,226}]}]}, ancestors: [<0.1001.0>], message_queue_len: 1, messages: [{'EXIT',<0.1003.0>,normal}], links: [<0.1001.0>,<0.782.0>], dictionary: [], trap_exit: true, status: running, heap_size: 376, stack_size: 28, reductions: 199; neighbours:
2021-02-23T17:10:13.104412+01:00 <0.782.0> notice: Application: ergw. Exited: {{options,{pools,[{{10,106,0,1},{10,106,255,254},32},{{32769,0,0,0,0,0,0,0},{32769,0,0,65535,0,0,0,0},64}]}},{ergw_app,start,[normal,[]]}}. Type: permanent.
[os_mon] memory supervisor port (memsup): Erlang has closed
[os_mon] cpu supervisor port (cpu_sup): Erlang has closed
{"Kernel pid terminated",application_controller,"{application_start_failure,ergw,{{options,{pools,[{{10,106,0,1},{10,106,255,254},32},{{32769,0,0,0,0,0,0,0},{32769,0,0,65535,0,0,0,0},64}]}},{ergw_app,start,[normal,[]]}}}"}
Kernel pid terminated (application_controller) ({application_start_failure,ergw,{{options,{pools,[{{10,106,0,1},{10,106,255,254},32},{{32769,0,0,0,0,0,0,0},{32769,0,0,65535,0,0,0,0},64}]}},{ergw_app,s
RoadRunnr commented 3 years ago

right, I made a mistake in the pool in the ip_pools config, it should be

     {ip_pools,
      [{'pool-A', [{ranges,  [{{10, 106, 0, 1}, {10, 106, 255, 254}, 32},
                  {{16#8001, 0, 0, 0, 0, 0, 0, 0},
                   {16#8001, 0, 0, 16#FFFF, 0, 0, 0, 0}, 64}
                 ]},
               {'MS-Primary-DNS-Server', {8,8,8,8}},
               {'MS-Secondary-DNS-Server', {8,8,4,4}},
               {'MS-Primary-NBNS-Server', {127,0,0,1}},
               {'MS-Secondary-NBNS-Server', {127,0,0,1}}
              ]}
      ]},
gantonie commented 3 years ago

It seems to work fine now.

Thank you very much for your time.

Regards, @gantonie

vkatsuba commented 3 years ago

Closed due that the configuration issue is resolved.