diff --git a/entry/src/kni_entry.cpp b/entry/src/kni_entry.cpp index 34f4090..e3f7fa8 100644 --- a/entry/src/kni_entry.cpp +++ b/entry/src/kni_entry.cpp @@ -1254,6 +1254,11 @@ static char data_opstate(struct streaminfo *stream, struct pme_info *pmeinfo, co ipv4_hdr = (struct iphdr*)a_packet; len = ntohs(ipv4_hdr->tot_len); } + if(pktinfo.ip_totlen > KNI_DEFAULT_MTU){ + KNI_LOG_DEBUG(logger, "Next data packet exceed MTU(1500), stream traceid = %s, stream addr = %s", + pmeinfo->stream_traceid, pmeinfo->stream_addr); + return APP_STATE_DROPPKT | APP_STATE_GIVEME; + } ret = send_to_tfe((char*)a_packet, len, thread_seq, pmeinfo->tfe_id, pmeinfo->addr_type); if(ret < 0){ KNI_LOG_ERROR(logger, "Failed at send continue packet to tfe%d, stream traceid = %s, stream addr = %s",