"backwards/forward-compatibility" 上的语义

Semantics on "backwards/forward-compatibility"

作为一个非英语母语的人,我总是对是否有一种任意的方式来命名以下 client/server 互操作性场景感到困惑:

场景 A:

clientN+1 - serverN+1
          \
clientN  -- serverN           where N is a concrete arch version

场景 B:

clientN+1 - serverN+1
          /
clientN  -- serverN           where N is a concrete arch version 

一种情况叫“向后兼容”,另一种叫“向前兼容”,是不是很随意? 否则,如果两者都可以根据引用两种方式调用,那么,场景A中的客户端是向后兼容和服务器向前兼容还是相反?

当某些东西仍然可以连接到以前的版本时(我假设客户端 - 服务器在 A 中)它是“backwards-compatible”与以前的版本。 “Forwards compatibility”在英文中不常用,但意思正好相反

示例 (A):客户端 N+1 backwards-compatible 与服务器 N,服务器 N forwards-compatible 与客户端 N+1