Hi everyone,
we're currently working with the LENA module on a test bed where we have two TCP Accelerators deployed (since they're GTP capable, we can optimize the TCP packets inside the tunnel). The problem is that, for some reason, those accelerators (Xiplink vendor) are changing the following GTP-U headers (also shown in the image):
- Reserved (from 1 to 0)
- Is Sequence Number Present? (from Yes to No)
- Is N-PDU number present? (from Yes to No)
Because we cannot force the TCP Accelerator to modify these values, we're trying to make these changes from the NS3 side. Checking the code, we've been able to modify Boolean values of Sequence Number and N-PDU from src/lte/model/epc-gtpu-header.cc:
GtpuHeader::GtpuHeader ()
: m_version (1),
m_protocolType (true),
m_extensionHeaderFlag (false),
m_sequenceNumberFlag (true),
m_nPduNumberFlag (true),
m_messageType (255),
m_length (0),
m_teid (0),
m_sequenceNumber (0),
m_nPduNumber (0),
m_nextExtensionType (0)
{
However, we cannot locate where to change (or even if it's possible ) the "Reserved" field. Without this field and only changing Sequence Number and NPDU to False, the tunnel is identified as a PPP Unknown protocol.
Please note the attached image, showing a screenshot from Wireshark showing the value differences.
Thanks a lot in advance,
Bruno