func RegisterTCPPortLayerType(port TCPPort, layerType gopacket.LayerType) {
	tcpPortLayerType[port] = layerType
}
RegisterTCPPortLayerType creates a new mapping between a TCPPort
and an underlaying LayerType.
package layers
import (
	"fmt"
	"strconv"
	"github.com/google/gopacket"
)
type TCPPort uint16
type UDPPort uint16
type RUDPPort uint8
type SCTPPort uint16
type UDPLitePort uint16
var RUDPPortNames = map[RUDPPort]string{}
var UDPLitePortNames = map[UDPLitePort]string{}
func (a TCPPort) String() string {
	if name, ok := TCPPortNames[a]; ok {
		return fmt.Sprintf("%d(%s)", a, name)
	}
	return strconv.Itoa(int(a))
}
func (a TCPPort) LayerType() gopacket.LayerType {
	lt := tcpPortLayerType[uint16(a)]
	if lt != 0 {
		return lt
	}
	return gopacket.LayerTypePayload
}
var tcpPortLayerType = [65536]gopacket.LayerType{
	53:   LayerTypeDNS,
	443:  LayerTypeTLS,        
	502:  LayerTypeModbusTCP,  
	636:  LayerTypeTLS,        
	989:  LayerTypeTLS,        
	990:  LayerTypeTLS,        
	992:  LayerTypeTLS,        
	993:  LayerTypeTLS,        
	994:  LayerTypeTLS,        
	995:  LayerTypeTLS,        
	5061: LayerTypeTLS,        
}