mirror of
https://github.com/GNS3/gns3-server.git
synced 2026-08-27 12:30:13 +03:00
Previously the two sides' UDP port reservations and NIO tunnel POSTs were issued sequentially, even though they are independent once the peer addresses are known — each node talks to its own compute/uBridge with no shared lock, so the HTTP round-trips can overlap. - Port allocation: gather _allocate_port for both computes - NIO creation: gather both node.post calls together - Error handling: if either side fails, roll back whichever side succeeded (previously only node2-fails→cleanup-node1) before re-raising the first error Batch loading (open/import project) benefits most because links are created at high concurrency and the per-link wall-clock time is dominated by the sum of its two sequential NIO POSTs.