milliseconds? We are in the nanosecond now. 10-20ns round trip on 10G or 25G card, in a server which is in the next room of NASDAQ servers to minimize transfer time. Doing millions of transactions per second.
When a packet is received on the RX line, decoded byte per byte (yes, at 25GBps), a packet is sent at the same time on the TX line byte per byte, when the RX byte with the price is decoded, the FPGA determine if you should sell/buy and send the TX byte accordingly on the bus. This takes nanoseconds.