I couldn't decide if this should go in this section or the networking one but I decided since it's only about the hardware side it best belonged here. Also, I know this has been asked before, but I couldn't find any posts that were recent and specific to my needs.
So, I have been looking at getting FTTH and am looking at using FreeBSD as a router. The speed I'm looking at is 2gbit so a conventional home router won't handle it and enterprise routers are stupidly expensive compared to their stated performance. So, I decided hey, let's build a FreeBSD server to act as a router.
Here's the plan so far as far as hardware goes: Fiber into a Mellanox ConnectX-3 10GbE SFP+ card. Passive copper from another Mellanox ConnectX-3 10GbE SFP+ card going to a Ubiquiti Networks US-16-XG (10G 16-port managed switch). From there it will branch out into a Linksys EA9500 for wireless (in bridge mode) and a Ubiquiti BULLET-M2 (also in bridge mode) as well as switches, etc.
The plan is to be truly dedicated to this task, nothing else will be on this hardware. It would perform the same functions as a typical home router. This includes routing, standard firewall (closed ports/port forwarding), DHCP, DNS, QoS (to some extent), etc. No databases, web servers, media servers, etc.
So, that brings me to my question. What would the optimal CPU be for this task? I don't want to skimp on it, but I also don't want to go way overkill. I want to reduce latency and maximize PPS. What matters most here? Single-core speed? The number of cores? How much and how many are needed? Intel vs AMD? ECC sounds like a good idea, so if Intel a Xeon would be needed. That might make AMD a better choice if tons of CPU isn't needed while the higher end Intels tend to perform better. Speaking of RAM, how much RAM would be ideal? I've used FreeBSD for a long time, but I've never used it for this before. If you are going to recommend a barebone system, I'm going for a 1U/2U form factor. Power consumption is not a top concern, performance is more important.
Any advice about anything I've said is appreciated. If you see anything in my setup that seems wrong or has a better choice available feel free to let me know. Also, if another flavor of BSD would be better-suited feel free to state the case for it, though I'm more comfortable using FreeBSD as I have not used the others at all.
Thanks.
So, I have been looking at getting FTTH and am looking at using FreeBSD as a router. The speed I'm looking at is 2gbit so a conventional home router won't handle it and enterprise routers are stupidly expensive compared to their stated performance. So, I decided hey, let's build a FreeBSD server to act as a router.
Here's the plan so far as far as hardware goes: Fiber into a Mellanox ConnectX-3 10GbE SFP+ card. Passive copper from another Mellanox ConnectX-3 10GbE SFP+ card going to a Ubiquiti Networks US-16-XG (10G 16-port managed switch). From there it will branch out into a Linksys EA9500 for wireless (in bridge mode) and a Ubiquiti BULLET-M2 (also in bridge mode) as well as switches, etc.
The plan is to be truly dedicated to this task, nothing else will be on this hardware. It would perform the same functions as a typical home router. This includes routing, standard firewall (closed ports/port forwarding), DHCP, DNS, QoS (to some extent), etc. No databases, web servers, media servers, etc.
So, that brings me to my question. What would the optimal CPU be for this task? I don't want to skimp on it, but I also don't want to go way overkill. I want to reduce latency and maximize PPS. What matters most here? Single-core speed? The number of cores? How much and how many are needed? Intel vs AMD? ECC sounds like a good idea, so if Intel a Xeon would be needed. That might make AMD a better choice if tons of CPU isn't needed while the higher end Intels tend to perform better. Speaking of RAM, how much RAM would be ideal? I've used FreeBSD for a long time, but I've never used it for this before. If you are going to recommend a barebone system, I'm going for a 1U/2U form factor. Power consumption is not a top concern, performance is more important.
Any advice about anything I've said is appreciated. If you see anything in my setup that seems wrong or has a better choice available feel free to let me know. Also, if another flavor of BSD would be better-suited feel free to state the case for it, though I'm more comfortable using FreeBSD as I have not used the others at all.
Thanks.