@classmethod
def packets(cls):
    """ Return a dict of packet classes indexed by type """
    pkts = {}
    for subclass in cls.__subclasses__():
        pkts[getattr(subclass, '_type')] = subclass
    return pkts
