There are the following possibilities for the data transmission between end device and APN (air interface):
IP: Depending on the capabilities of the radio module IPv4 and IPv6 are supported (IPv6 is still not live in Deutsche Telekom’s network). Here, UDP is the common and recommended transport layer protocol. TCP is in principle supported on the air interface (and specified in the 3GPP standard), but not recommended due to the resulting higher data volume. Likewise, HTTP and HTTPS over the air interface cannot reasonably be implemented because they rely on TCP and demand additional data volume for their overhead. But TCP, HTTP and HTTPS can of course be used between APN and server.
Non-IP: If possible an Non-IP based data transmission is recommended for NB-IoT, which reduces transmitted data volume (as UDP/IP protocol overhead is saved) and further increases security. Please note that this is only possible with a private APN.
In both cases application protocols like MQTT-SN, MQTT and COAP can be used.