This repository has been archived on 2020-12-30. You can view files and clone it, but cannot push or open issues or pull requests.
Go to file
Marcel c1fe1e32cc added udp and ipv6 basic 2015-01-04 12:59:35 +01:00
protocols added udp and ipv6 basic 2015-01-04 12:59:35 +01:00
README.md little addition to readme... 2015-01-04 12:25:05 +01:00
example.yml kwalify structure schema, eth-frame, tcp and a example (which is tcp...) 2015-01-04 11:23:12 +01:00
structure-schema.yml structure update, + ipv4 2015-01-04 12:04:36 +01:00

README.md

Network Protocol Dictionary

This is a YAML network protocol dictionary for all (binary based) OSI-Layer 1-4 protocols, eg. Ethernet, IP, TCP, UDP, etc.

The list may not be complete, if you're missing a protocol, just add it!

How to add a new protocol

Clone. Check structure-schema.yml. Install kwalify (has ruby as dependency!). Write protocol file in ./protocols/osi[layer]/[protocolname].yml. Validate structure with 'kwalify -lf structure-schema.yml [path/to/protocolname].yml' or validate all at once with 'kwalify -lf structure-schema.yml ./protocols/osi*/*.yml'. Be happy.

How to use this dictionary

Clone. Get a YAML library for your program language. Load desired protocol files, or all of them. Use resulting data structures to build protocol packet structures.

This repository will provide examples or useable code snippets for specific programming languages in the future...