Confused about the Bolt structure for P2P

I was under the impression that Bolt communicates the players directly P2P, but now I read from this link: https://doc.photonengine.com/en-us/bolt/current/in-depth/server-client-model

That the server acts somewhat of a relay, is this true? Also for the BoltNetwork.Connections there are ping values, those values are pings to the server only or player to player ping?

Comments

  • Clients have no direct connection to other clients, just to the server.

    The server doesn't really act as a "relay" outside of times you are just sending events from one client to other clients.
  • Just events? What if I am synchronizing the transform via an entity?
  • The owner of entities send state updates that haven't been sent yet to proxies.
  • I know but I want to know what path it takes, is it direct or again is it always sent via the server? If I have player A (server), player B and player C. Player B updates it's transform entity, player C receives the information from player A (server) or directly from player B?