TCP connect与session术语解析

本文讨论了技术入门者在理解TCP连接和session时的常见误区,以及它们在实际工作中的区别和关联,特别关注了TCP连接的三次握手/四次挥手,服务器端session的保存,以及如何与HTTPcookie结合使用以实现负载均衡中的会话保持。
摘要由CSDN通过智能技术生成

圈里很多童鞋开始技术入门时的方向不同,对于术语理解也存在差异,诸如:开发,网络,应用,系统等,术语理解不统一会造成交流上困惑,本篇随笔记录TCP 连接和session两个术语,解释、对比和剖析。

很多技术工程师在TCP/IP卷:(一)已经看到厌烦;TCP  connect常说的TCP连接,三次握手,四次挥手这个术语其实理解起来不难; 

session是服务器端用于保存用户的状态标识;

目前很多厂家产品对于术语表示方式的不同而造成了很多误解:

  1. 类似防火墙的产品“session”,这里的session不等于服务器上保存用户状态的标识而是TCP连接;所以有时网络工程师(防火墙一般网络工程师作为管理员),在与开发或应用部门交流、排障的时说session,这个时候双方对于这个术语的理解存在差异,其实就会造成一些困难。
  2. 类似应用交付负载均衡会话保持功能,这里的会话保持,需要保持的会话等于保持服务器上的session,但是开发或应用部门的人员要理解,本身这类产品不会类似服务器端,是不存在session这个标识只是一种策略,用于给服务器保持session。

展开思考;

TCP connect、session、负载均衡会话保持、HTTP协议的cookie之间的关联;在应用交付的领域强调OSI参考模型,OSI的参考模型相比TCP/IP模型出现了表示和会话层;

基于业务量增加会选择增加服务器数量来解决业务过载的问题,就会引进负载均衡的技术(软件负载LVS,硬件负载均衡设备等等),负载均衡技术多数是基于TCP短连接(TCP长短连接会在之后的文章进行分析)进行标识,存活于模型的传输层,负载的过程中一个标准的连接传输数据完毕之后会关闭。

引入实际场景:

比如大家在登录网银、购物网站等,当点击转账,购买按钮时,由于HTTP协议是无状态的协议,它并不知道是哪个用户操作的,服务器端需要通过每个用户的session ID来保持和记录用户的状态,这就是上面说的session机制。配合负载均衡技术,基于TCP标准短连接的负载算法实现业务访问,在这种状态下并不会解码应用层的session ID,这个时候就会出现一种场景,当你在购物或者转账的时候,网页会出现不断的登出,引入会话保持的技术来保持用于的状态(常见的保持技术,主要是基于IP层面或者cookie应用层面实现),在

HTTP协议中Cookie是浏览器保存信息的一种方式,服务器可以通过浏览器set-cookie来设置cookie进行标识,同时在服务器端设置对应的session ID,这样就避免的不断登出的情况。负载均衡cookie会话保持机制其类似。

PS:

Session 是服务器保存用户状态的一种机制;HTTP协议中cookie是session保持用户状态具体的实现方式;

TCP connect是存活于OSI或者TCP/IP模型的一种连接表现形式。

附:

服务器端session不复制的机制,现在阶段的NGINX可以通过开启session粘连实现。

  • 5
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值