Session

From MgmtWiki
Jump to: navigation, search

Meme

A session is an enduring connection between two or more entities.

Context

There are multiple contexts for a Session which leads to different views so the context must be clear before a meaningful discussion can occur. Here are some examples:

  1. User Authentication: A session is established between a user and a system to maintain authentication status. This could involve session tokens or cookies to track the user's login state.
  2. Client-Server Communication: In web applications, sessions manage interactions between a client (browser) and a server. They can be activity-based (extended with user actions) or time-based (expire after a set duration).
  3. Database Transactions: Sessions in databases manage a series of operations that must be executed as a single unit. This ensures data consistency and integrity, especially in multi-user environments.
  4. API Interactions: When two systems communicate via APIs, sessions can track the state of the interaction, such as ongoing data exchanges or authentication.
  5. IoT Devices: Sessions between IoT devices and their control systems ensure secure and continuous communication, often involving encryption and periodic re-authentication.
  6. Distributed Systems: In systems with multiple components, sessions help coordinate interactions between different services or nodes, ensuring smooth operation.
  7. Gaming: Multiplayer games use sessions to manage player interactions, game state, and server communication during game-play.

A long lived session can sometime be called a relationship, as between a customer and a service provider. As a rule the session is created first and then formalized into a relationship.

In networking a session could be at different levels, the ISO laying is a 7 levels, we will consider only these here:

  1. Connection
  2. Network
  3. Application

A session at a higher might continue while a session at a lower level may come and go.

Each context has unique requirements for session management, such as security, scalability, and performance.

References