Safe Haskell | None |
---|---|
Language | Haskell2010 |
The type of the keep alive protocol.
The keep alive protocol is used for
- sending keep alive messages
- making round trip measuremnets
Each side will run its own version of the keep alive protocol. It should be configured so that any intermediate state (such as in customer premise equipment or in a carrier grade NAT) is kept alive. This has to be a per-node configuration element as this is about the properties of that nodes network connectivity.
For making round trip measurements its in the interest of the other side to reply promptly.
Synopsis
- newtype Cookie = Cookie {}
- data KeepAliveProtocolFailure = KeepAliveCookieMissmatch Cookie Cookie
- data KeepAlive where
- data SingKeepAlive (k :: KeepAlive) where
Documentation
A 16bit value used to match responses to requests.
Instances
NFData Cookie Source # | |||||
Defined in Ouroboros.Network.Protocol.KeepAlive.Type | |||||
Generic Cookie Source # | |||||
Defined in Ouroboros.Network.Protocol.KeepAlive.Type
| |||||
Show Cookie Source # | |||||
Eq Cookie Source # | |||||
type Rep Cookie Source # | |||||
Defined in Ouroboros.Network.Protocol.KeepAlive.Type |
data KeepAliveProtocolFailure Source #
Instances
A kind to identify our protocol, and the types of the states in the state transition diagram of the protocol.
StClient :: KeepAlive | The client can send a request and the server is waiting for a request. |
StServer :: KeepAlive | The server is responsible for sending response back. |
StDone :: KeepAlive | Both the client and server are in the terminal state. They're done. |
Instances
data SingKeepAlive (k :: KeepAlive) where Source #
Singletons for KeepAlive
state types.
SingClient :: SingKeepAlive 'StClient | |
SingServer :: SingKeepAlive 'StServer | |
SingDone :: SingKeepAlive 'StDone |
Instances
Show (SingKeepAlive st) Source # | |
Defined in Ouroboros.Network.Protocol.KeepAlive.Type showsPrec :: Int -> SingKeepAlive st -> ShowS # show :: SingKeepAlive st -> String # showList :: [SingKeepAlive st] -> ShowS # |