Hi,
I tried the gprs yesterday, and in the end, it worked quite well albeit slow (but that's GPRS I guess :p)
I had to fix a couple of crashes (both of SGSN and of the BTS, the latter being due to malformed packets) and the fixes are in my sylvain/pending branch.
Also, a couple of 'gotcha' I hit for future reference: - Even if running on the same machine, the SGSN & GGSN GTP interfaces need to have different IPs or they'll try to bind to the same ports and fail. - Using 'TCH/F_PDCH' channel config doesn't work (that's what I used with the old gprs branch a long time ago). You need to use 'PDCH'
Finally a list of the IPs in the configuration and what they mean (I stumbled a little when trying to setup all those :):
----- In openbsc.cfg:
gprs nsvc 0 local udp port 23000 gprs nsvc 0 remote udp port 23000 gprs nsvc 0 remote ip A.B.C.D
A.B.C.D -> This is the IPs of the SGSN that will be sent to the BTS (and the BTS will try to connect to it obviously ...)
In osmo_sgsn.cfg: gtp local-ip A.B.C.D ggsn 0 remote-ip W.X.Y.Z
A.B.C.D -> This is the local ip of the SGSN where the GTP link (between GGSN & SGSN) will be bound to. W.X.Y.Z -> This is the ip of the GGSN for the GTP link.
As I mentionned earlier, even if both SGSN & GGSN are running on the same machine, they need to be different (using ip aliases or whatever)
encapsulation udp local-ip A.B.C.D encapsulation udp local-port 23000
A.B.C.D -> This is the ip/port the BTS will connect to. Must obviously match the 'gprs nsvc 0 remote' config in openbsc.cfg
In ggsn.conf:
listen A.B.C.D
A.B.C.D -> This is the local IP for the GTP link of the GGSN. Must match the 'ggsn 0 remote-ip' of osmo_sgsn.cfg -----
Sylvain