Si c'est ça https://github.com/mtcp-stack/mtcp, ça ne paraît plus très actif 
Question pour ma curiosité personnelle (désolé, ma connaissance des protocoles est très ancienne) : comment penses-tu gérer des millions de connexions "clientes" sur une (seule ?) machine générant les sessions compte tenu de la limitation du nombre de ports TCP utilisables (< 2^16) ? Vas-tu multiplier les adresses IP secondaires/virtuelles sur l'émetteur ? Ca va en faire un paquet ...
Hello
C'est bien justement le soucis.. C'est impossible de faire cela au niveau OS.
Donc soit on multiplie les machines "à l'infini" soit on gère cela hostless directement protocolaire ...
En python j'ai fait un truc pour tunner les BNG sur la partie DHCP v4v6, 64K clients dual stack, cela représente 128K stack IPs. les injecteurs HARDWARE qui lancent un thread par stack, comment dire, ils n'ont pas voulu (et c'est pas une question de prix, j'ai accès à des machine couteuses ...)
C'est grosso modo écrire un stack IP avec un contexte externe au stack, contexte le plus petit possible pour pouvoir multiplier les contextes.
Vu le nb de trucs en potentiel timeout et avec des timers, la gestion du temps est aussi un des gros gros truc difficile. Le résultat n'est d'ailleurs pas temps réel, mais plutôt "temps réel mou" ...
En python je visais "petit" (64 K client dual stack) là je veux changer d'échelle et donc passer en C + DPDK.
Une contrainte cependant, au niveau routage, il faut que la machine qui fasse cela soit destinataire des paquets pour toutes les plages d'IPs.
Là j'ai un POC sur une boitier à 300 € ... sur un stack incomplet je tiens 500K sessions TCP secondes, mais le stack (surtout TCP, la base IP qui fait PING (et même pas ARP, c'est géré ailleurs par le HOP précédent) est totalement incomplet d'où ma recherche.
Je me demande si une lib FSM en "include only en C Only (cause DPDK... et mon niveau de C++ qui date d'il y a 30 ans ...)" avec la même problématique d'avoir un moteur pour x milliers de contexte existe. C'est un peu spécifique comme cas d'usage ...
Des idées la dessus aussi ??
LeVieux