Magento have main 3 session which are listed below :
1) Customer Session
2) Checkout Session
3) Core Session
– Customer sessions stores data related to customer.
– Checkout session stores data related to quote and order.
– They are actually under one session in an array. So first name in customer/session will be $_SESSION[‘customer’][‘firstname’] and cart items count in checkout/session will be $_SESSION[‘checkout’][‘items_count’].
Reason reason why we store data in different session types:
The reason Magento uses session types separately is because once the order gets placed, the checkout session data information should get flushed which can be easily done by just unsetting $_SESSION[‘checkout’] session variable. So that the session is not cleared, just session data containing checkout information is cleared and reset all the session types are still intact.