第二章 网络基础回顾:OSI七层模型与TCP/IP四层模型、核心网络设备、VLAN与网络隔离
做量化交易系统,网络是命脉。你策略再牛,订单发不出去,或者比别人慢了几毫秒,结果就是亏钱。所以,咱们得先把网络基础夯实了。
这一章,我带你回顾一下网络的核心骨架。别嫌基础,我见过太多人在这上面栽跟头。
2.1 OSI七层模型与TCP/IP四层模型
这两个模型,说白了就是网络世界的「通用语言」。它们定义了数据怎么打包、怎么传输、怎么解包。
OSI七层模型,是个理论上的完美框架。从上到下分别是:应用层、表示层、会话层、传输层、网络层、数据链路层、物理层。
嗯,说实话,实际工作中没人会死磕七层。我们更常用的是TCP/IP四层模型:应用层、传输层、网络层、网络接口层。
我个人习惯把OSI的上面三层(应用、表示、会话)都归到TCP/IP的应用层里。这样更实用。
核心对应关系:
- 应用层(HTTP、FTP、交易协议FIX)→ 处理业务逻辑
- 传输层(TCP、UDP)→ 保证数据可靠或快速到达
- 网络层(IP)→ 负责寻址和路由
- 网络接口层(以太网)→ 物理传输介质
你想想看,你的交易订单从客户端发到交易所服务器,数据就是一层层封装,再一层层解封。这个过程,我们叫「封装与解封装」。
我曾经调试过一个跨机房延迟问题,查了半天,最后发现是MTU(最大传输单元)设置不对,导致IP层分片过多。这就是网络层没搞明白的典型坑。
2.2 核心网络设备
搞量化交易,你至少得跟这三样设备打交道:交换机、路由器、防火墙。
2.2.1 交换机
交换机工作在数据链路层(第二层)。它只看MAC地址,不关心IP。它的核心能力是「快速转发」。
在交易机房里,我们追求的是低延迟交换机。我记得有一次选型,对比了几款主流型号,有的交换机端口到端口延迟能差出几微秒。别小看这几微秒,高频交易里这就是胜负手。
2.2.2 路由器
路由器工作在网络层(第三层)。它根据IP地址做路由决策,连接不同的网络。
在跨数据中心部署时,路由器是核心。你需要配置OSPF或BGP协议,让路由自动收敛。我建议你尽量用动态路由,别手写静态路由,否则网络拓扑一变,你就得手动改一堆配置,容易出事故。
2.2.3 防火墙
防火墙是安全的第一道门。它工作在网络层到应用层,可以基于IP、端口、甚至应用协议做过滤。
但注意,防火墙会引入延迟。在交易链路上,能不经过防火墙就别经过。我曾经见过一个团队,为了安全把交易前置机和核心交易网关之间串了防火墙,结果订单延迟暴增。后来我们改成了ACL(访问控制列表)直接在交换机上做过滤,延迟降下来了。
避坑指南: 交易网络里,防火墙只放在管理网段和外部互联网的边界。内部交易网络,尽量用交换机+ACL实现隔离。延迟和安全要平衡,但交易链路优先保证低延迟。
2.3 VLAN与网络隔离
VLAN(虚拟局域网),说白了就是把一台物理交换机,逻辑上切成多台独立的交换机。
为什么要这么做?因为交易系统里,不同业务需要隔离。比如:
- 交易网段(低延迟、高优先级)
- 行情网段(广播流量大)
- 管理网段(带外管理、监控)
- 办公网段(员工上网)
如果不做VLAN隔离,行情广播风暴可能会影响交易报文的正常转发。你想想看,一个行情数据包在交换机里泛洪,把交易订单给堵了,这损失谁来担?
我习惯的做法是:
- 每个网段分配独立的VLAN ID(比如VLAN 100是交易,VLAN 200是行情)
- 交换机端口配置Access模式,只允许一个VLAN通过
- 跨交换机通信用Trunk链路,并打上802.1Q标签
- 在核心交换机上配置三层接口,实现VLAN间路由
小技巧: 在配置VLAN时,记得把管理VLAN单独拿出来。我曾经犯过一个错,把管理VLAN和交易VLAN混在一起,结果一次误操作导致交易中断。从那以后,管理网段永远独立VLAN,并且只允许特定IP访问。
下面这张图,是我画的一个典型的多品种交易系统网络隔离结构。你可以看到,不同业务被VLAN隔开,通过核心交换机进行三层转发。
这张图里,核心交换机承担了所有VLAN之间的路由。交易和行情网段之间,通过ACL严格控制访问权限。管理网段则完全隔离,只能通过堡垒机跳转登录。
嗯,这就是网络基础的核心内容。你把这些搞明白了,后面设计多品种交易系统的网络架构时,心里就有底了。