Package

root package

Permalink

package root

Visibility
  1. Public
  2. All

Type Members

  1. final case class Closed() extends SessionState with Product with Serializable

    Permalink
  2. final case class Closing() extends SessionState with Product with Serializable

    Permalink
  3. sealed trait CryptoSessionAPI extends AnyRef

    Permalink
  4. class CryptoSessionActor extends Actor with MDCContextAware

    Permalink

    Actor that stores crypto state for a connection, appropriately encrypts and decrypts packets, and passes packets along to the next hop once processed.

  5. final case class DropCryptoSession() extends CryptoSessionAPI with Product with Serializable

    Permalink
  6. final case class DropSession(id: Long, reason: String) extends SessionRouterAPI with Product with Serializable

    Permalink
  7. final case class Established() extends SessionState with Product with Serializable

    Permalink
  8. final case class Handshaking() extends SessionState with Product with Serializable

    Permalink
  9. final case class Hello() extends Product with Serializable

    Permalink
  10. final case class HelloFriend(sessionId: Long, next: Iterator[ActorRef]) extends Product with Serializable

    Permalink
  11. class LoginSessionActor extends Actor with MDCContextAware

    Permalink
  12. trait MDCPropagatingExecutionContext extends ExecutionContext

    Permalink
  13. class MDCPropagatingExecutionContextWrapper extends ExecutionContext with MDCPropagatingExecutionContext

    Permalink

    Wrapper around an existing ExecutionContext that makes it propagate MDC information.

  14. case class NetworkSimulatorParameters(packetLoss: Double, packetDelay: Int, packetReorderingChance: Double, packetReorderingTime: Int) extends Product with Serializable

    Permalink

    Parameters for the Network simulator

    Parameters for the Network simulator

    packetLoss

    The percentage from [0.0, 1.0] that a packet will be lost

    packetDelay

    The end-to-end delay (ping) of all packets

    packetReorderingChance

    The percentage from [0.0, 1.0] that a packet will be reordered

    packetReorderingTime

    The absolute adjustment in milliseconds that a packet can have (either forward or backwards in time)

  15. final case class New() extends SessionState with Product with Serializable

    Permalink
  16. class PacketCodingActor extends Actor with MDCContextAware

    Permalink

    In between the network side and the higher functioning side of the simulation: accept packets and transform them into a sequence of data (encoding), and accept a sequence of data and transform it into s packet (decoding).

    Following the standardization of the SessionRouter pipeline, the throughput of this Actor has directionality.

    In between the network side and the higher functioning side of the simulation: accept packets and transform them into a sequence of data (encoding), and accept a sequence of data and transform it into s packet (decoding).

    Following the standardization of the SessionRouter pipeline, the throughput of this Actor has directionality. The "network," where the encoded data comes and goes, is assumed to be leftRef. The "simulation", where the decoded packets come and go, is assumed to be rightRef. rightRef can accept a sequence that looks like encoded data but it will merely pass out the same sequence. Likewise, leftRef accepts decoded packets but merely ejects the same packets without doing any work on them. The former functionality is anticipated. The latter functionality is deprecated.

    Encoded data leaving the Actor (leftRef) is limited by an upper bound capacity. Sequences can not be larger than that bound or else they will be dropped. This maximum transmission unit (MTU) is used to divide the encoded sequence into chunks of encoded data, re-packaged into nested ControlPacket units, and each unit encoded. The outer packaging is numerically consistent with a subslot that starts counting once the simulation starts. The client is very specific about the subslot number and will reject out-of-order packets. It resets to 0 each time this Actor starts up and the client reflects this functionality.

  17. final case class RawPacket(data: ByteVector) extends SessionRouterAPI with Product with Serializable

    Permalink
  18. final case class ReceivedPacket(msg: ByteVector, from: InetSocketAddress) extends Product with Serializable

    Permalink
  19. final case class Related() extends SessionState with Product with Serializable

    Permalink
  20. final case class ResponsePacket(data: ByteVector) extends SessionRouterAPI with Product with Serializable

    Permalink
  21. final case class SendPacket(msg: ByteVector, to: InetSocketAddress) extends Product with Serializable

    Permalink
  22. class Session extends AnyRef

    Permalink
  23. case class SessionPipeline(nameTemplate: String, props: Props) extends Product with Serializable

    Permalink
  24. final case class SessionReaper() extends SessionRouterAPI with Product with Serializable

    Permalink
  25. class SessionRouter extends Actor with MDCContextAware

    Permalink

    Login sessions are divided between two actors.

    Login sessions are divided between two actors. The crypto session actor transparently handles all of the cryptographic setup of the connection. Once a correct crypto session has been established, all packets, after being decrypted will be passed on to the login session actor. This actor has important state that is used to maintain the login session.

    > PlanetSide Session Pipeline <

    read() route decrypt UDP Socket -----> [Session Router] -----> [Crypto Actor] -----> [Session Actor] | | ^ | | write() | | encrypt | | response | +--------------+ +-----------+ +-----------------+

  26. sealed trait SessionRouterAPI extends AnyRef

    Permalink
  27. sealed trait SessionState extends AnyRef

    Permalink
  28. class UdpListener extends Actor

    Permalink
  29. class UdpNetworkSimulator extends Actor

    Permalink
  30. class WorldSessionActor extends Actor with MDCContextAware

    Permalink

Value Members

  1. object DatabaseConnector

    Permalink
  2. object LoginConfig

    Permalink
  3. object MDCPropagatingExecutionContext

    Permalink
  4. object MDCPropagatingExecutionContextWrapper

    Permalink
  5. object Maps

    Permalink
  6. object PacketCodingActor

    Permalink
  7. object PsLogin

    Permalink
  8. object WorldConfig extends ConfigParser

    Permalink
  9. object WorldSessionActor

    Permalink
  10. object Zones

    Permalink
  11. package akka

    Permalink
  12. package csr

    Permalink
  13. package net

    Permalink
  14. package services

    Permalink
  15. package sna

    Permalink
  16. package zonemaps

    Permalink

Ungrouped