S'il s'agit d'un prototype, envisagez d'ajouter un adaptateur Ethernet USB.
Si vous construisez un produit, j'envisagerais une puce de commutation Ethernet intégrée. Comme ceci :
http://www.micrel.com/page.do?page=product-info/fastether_sw.jsp
(source :micrel.com)
L'ADM6996 peut également être une option, si vous pouvez le trouver.
Si votre processeur n'a qu'un seul PHY, vous n'obtiendrez pas beaucoup plus de vitesse en intégrant le commutateur sur votre carte. Il sera beaucoup plus facile d'ajouter simplement un commutateur :
Comme le texte de cet exemple l'indique, tout commutateur décent à mi-chemin négociera automatiquement 10/100/1000 Mbps, croisement de câble.
Les commutateurs sont disponibles de 4 à 48 ports, 5 ports étant un nombre courant pour les commutateurs de bureau simples. Ils peuvent s'asseoir sur votre bureau ou être montés en rack. Vous pouvez les enchaîner pour un nombre ridicule de ports, si vous vous sentez si obligé. Vous pouvez les obtenir pour moins de 10 $ (visitez Newegg), ou jusqu'à 10 000. Une chose importante à considérer est de savoir si vous voulez un commutateur géré ou non géré, mais nous aurions besoin de plus d'informations pour prendre cette décision, et cela se transforme rapidement en une question pour ServerFault.
Un commutateur externe est probablement le moyen le plus flexible, le plus simple et le moins cher de faire ce que vous voulez. Ce sera physiquement plus gros que de mettre le contenu d'un interrupteur sur votre PCB, mais je ne le ferais pas à moins que ce ne soit absolument nécessaire.
Si chaque port va sur un réseau complètement séparé, vous pouvez vous en sortir avec une seule adresse MAC, mais cela ne fonctionne vraiment pas si vous allez l'avoir sur le même réseau.
Je recommanderais fortement d'avoir des pilotes séparés avec une adresse MAC distincte par port.
Ma réponse se concentre sur si vous créiez un appareil comme un pare-feu intégré où vous vouliez que le trafic arrive sur un port, filtré, puis renvoyé sur un autre port vers un autre réseau.