Skip to content

slytechs-repos/protocol-pack-api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Core Protocol Pack

Core Protocol pack consisting of many common protocols and runtime support for other modules.

Optional additional modules

  • Web protocol pack - TLS/SSL, Quic, etc...
  • (several others under development) - Coming soon!
    • Telco/Carrier protocol pack
    • Voice/Video protocol pack - with various codecs and streaming protocols
    • Database protocol pack - database monitoring and quality assurance
    • System tables - auxilary module with support for ARP, ROUTING and other system tables

How to use this module

This module, core-protocols is an extension module which provides protocol level support for one of the main public APIs. You need to setup your application using either jnetpcap-pro or jNetWorks (Coming Soon!) modules which provide the main APIs for building applications using any of the protocol packs.

What's inside

The core-protocols module provides support for the following services:

  • Runtime support for all of the modules using combination of public and private APIs
    • Private APIs are exported to other modules and provide common implementation features across all modules
    • A small public API is also exported for things like capture Timestamp and TimestampUnit classes, etc...
  • Raw packet dissection
    • Advanced packet descriptors store the results of the dissection process after packet capture
    • Information about the presence of each protocol header is recorded in PacketDescriptorType.TYPE2
  • IP Fragmentation processing
    • IP fragment reassembly into full IP datagrams
    • IP fragment tracking regardless if reassembly is enabled
  • A very efficient packet implementation using the Packet class
    • Instrumentation using MetaPacket class, similar to java beans
  • Packet formatters, various packet formatters for displaying packet state and fields
    • A pretty print formatter which dumps easy to read details about a packet and its headers
    • Coverters for XML, JSON and other output types
  • A set of protocols which are considered core or common on most networks

Protocol Table

Here is a table of all of the protocol definitions provided by this core-protocols module.

Builtin Layer2 Layer3 Layer4 Layer7
Payload Ethernet IPv4 TCP DHCP2
Frame LLC IPv6 UDP
SNAP IPX2 SCTP2
VLAN MPLS2 ICMPv4
STP IGMP2 ICMPv6
ARP
PPP2

Status and Updates

  • May 5th, 2023 - Currently working IP fragmentation and reassembly. Check this pull request #11 for the latest on IPF support, including some examples!