Main Page/Cloud Browser TF/UseCases/session

From Web and TV IG

Session

UC-Session-1: Cloud Browser Client creates a session with the Cloud Browser environment

Extends

Description

For each session there will be one UI stream and one or more control channels. Also the Cloud Browser environment can store resources associated to the session.
The Cloud Browser Client ...
  1. Connects to the Cloud Browser environment
  2. Authenticates itself
  3. If authentication was successful the Cloud environment responds with a session id
Possible implementations would be
  1. HTTP GET or better HTTPS GET
  2. A kind of RPC (eg. JSON-RPC)
A possible representation for session ids would be UUID http://www.ietf.org/rfc/rfc4122.txt

Actors

  1. Cloud Browser Client
  2. Cloud Browser environment

Dependencies

Gaps

The authentication method is not specified.

Notes

See UC-Control-1 for how to create a control channel for the session and UC-Session-3 for how to create the UI channel.
It is recommended to use a secure communication protocol (eg. HTTPS, TLS, ..).
Open questions
  1. Should the Cloud environment start a Cloud Browser upon creating a session?
  2. Enough security?

Requirements

The session id MUST be unique.

Author

Eugen Osiptschuk (talk)

History

8-17-2016 Alexandra Mikityuk (talk) created


UC-Session-2: Cloud Browser Client logs out from session

Extends

Description

The Cloud Browser Client wants to close the session.
The Cloud Browser Client ...
  1. Connects to the Cloud Browser environment
  2. Requests the Cloud Browser environment to close the session with the specified session id
Possible implementations would be
  1. HTTP GET or better HTTPS GET
  2. A kind of RPC (eg. JSON-RPC)
Both must send the session id.

Actors

  1. Cloud Browser Client
  2. Cloud Browser environment

Dependencies

We need a session id, see UC-Session-1 and UC-session-4.

Gaps

Notes

It is recommended to use a secure communication protocol (eg. HTTPS, TLS, ..).
Open questions
Should the Cloud Browser environment
  1. free up associated resources (eg. memory) when the session is closed?
  2. close a session after some time of interactivity? (days or months?)

Requirements

Author

Eugen Osiptschuk (talk)

History

8-17-2016 Alexandra Mikityuk (talk) created

UC-Session-3: Cloud Browser Client starts streaming the UI

Extends

Description

The Cloud Browser Client begins the streaming of the UI associated with a session id.
The Cloud Browser Client ...
  1. Connects to the Cloud Browser environment
  2. Requests the UI stream associated with the specified session id
Possible implementations would be
  1. HTTP GET or better HTTPS GET long polling
  2. UDP stream
  3. WebSocket

Actors

  1. Cloud Browser Client
  2. Cloud Browser environment

Dependencies

We need a session id, see UC-Session-1 and UC-session-4.

Gaps

The UI encoding is not specified.

Notes

Open question
  1. What about secure communication? This would increase latency, still required?
  2. Should we specify UI encoding?

Requirements

The UI stream MUST be as low latency as possible.

Author

Eugen Osiptschuk (talk)

History

8-17-2016 Alexandra Mikityuk (talk) created


UC-Session-4: Trusted 3rd-party creates a session with the Cloud Browser environment

Extends

UC-Session-1

Description

A trusted 3rd-party (eg. custom user management site) wants to manage user and sessions.
Therefore it acts as a proxy between the Cloud Browser environment and Cloud Browser client.
Workflow
  1. The Cloud Browser Client would connect itself to the trusted 3rd-party
  2. The trusted 3rd-party can now process the connection of the client in any way it wants
  3. At some point the trusted 3rd-party will establish a connection to the cloud browser environment
  4. Now it can request a session id for the Cloud Browser Client
  5. Afterwards it forwards the received session id to the Cloud Browser Client
  6. The client is now able to request a control channel and the UI stream.
Possible implementations would be
  1. HTTP GET or better HTTPS GET long polling
  2. A kind of RPC (eg. JSON-RPC)

Actors

  1. Cloud Browser Client
  2. Cloud Browser environment

Dependencies

Gaps

Notes

It is recommended to use a secure communication protocol (eg. HTTPS, TLS, ..).

Requirements

Author

Eugen Osiptschuk (talk)

History

8-17-2016 Alexandra Mikityuk (talk) created