计算机网络
TCP/IP五层协议的体系结构,自顶向下依次为:应用层、传输层、网络层、数据链路层、物滚斗理层。
不使用两次握手和四次握手的原因
为什么TIME_WAIT等待的时间是2MSL
MSL,Maximum Segment Lifetime英文的缩写, 报文最大生存时间 ,它是任何报文在网络上存在的最长时间,超过这个时间将被丢弃。
概述
区别 :
区别(表形式)
概念
超时时间应该设置为多少呢
8、快速重传
概念
SACK(Selective Acknowledgment 选择性确认),这种方式需要在 TCP 头部选项字段里加一个 叫SACK 的东西,它可以将 缓存的地图发送给发送方 ,这样发送方就可以知道哪些数据收到了,哪些数据没收到,知道了这些信息,就可以 只重传丢失的数据 。
D-SACK,其主要使用了 SACK 来 告诉发送方有哪些数据被重复接收了 。
下面以两个例子,来说明D-SACK的作用。
D-SACK有这么几个好处 :
引入滑动窗口的原因
窗口的实现
窗口的大小
窗口应用示例
窗口的大小由哪一方决定?
TCP 利用滑动窗⼝实现流量控制。流量控制是为了控制发送方发送速率,保证接收方来得及接收(让发送方根据接收方的实际接收能力控制发送的数据量)。 接收方发送的确认报文中的窗口字段可以用来控制发送方窗口大小,从而影响发送方的发送速率。将窗口字段设置为 0,则发送方不能发送数据。
HTTP协议的⻓连接和短连接,实质上是TCP协议的⻓连接和短连接。大丛磨
HTTP 是⼀种不保存状态的协议,即无状态(stateless)协议。也就是说 HTTP 协议⾃身不对请求和响应之间的通信状态进⾏保存。
无状态的利弊:
对于无状态的问题,解法方案有很多种,其中比较简单的方式用 Cookie 技术 。Cookie的工作原理如下:
(1)浏览器端第一次发送请求到服务器端
(2)服务器端创建Cookie,该Cookie中包含用户的信息,然后将该Cookie发送到浏览器端
(3)浏览器端再次访问服务器端时会携带服务器端创建的Cookie
(4)服务器端通过Cookie中携带的数据区分不同的用户
此外,还有 Session 机制来解决这一问题。Session的工作原理如下:
(1)浏览器郑薯端第一次发送请求到服务器端,服务器端创建一个Session,同时会创建一个 特殊 的Cookie(name为JSESSIONID的固定值,value为session对象的ID),然后将该Cookie发送至浏览器端
(2)浏览器端发送第N(N>1)次请求到服务器端,浏览器端访问服务器端时就会携带该name为JSESSIONID的Cookie对象
(3)服务器端根据name为JSESSIONID的Cookie的value(sessionId),去查询Session对象,从而区分不同用户。
Cookie 和 Session都是⽤来跟踪浏览器⽤户身份的会话⽅式,但是两者的应⽤场景不太⼀样。
Cookie ⼀般⽤来保存⽤户信息。比如①我们在 Cookie 中保存已经登录过得⽤户信息,下次访问⽹站的时候⻚⾯可以⾃动帮你登录的⼀些基本信息给填了;②⼀般的⽹站都会有保持登录也就是说下次你再访问⽹站的时候就不需要重新登录了,这是因为⽤户登录的时候我们可以存放了⼀个Token 在 Cookie 中,下次登录的时候只需要根据 Token 值来查找⽤户即可(为了安全考虑,重新登录⼀般要将 Token 重写);③登录⼀次⽹站后访问⽹站其他⻚⾯不需要重新登录。
Session 的主要作⽤就是通过服务端记录⽤户的状态。 典型的场景是购物⻋,当你要添加商品到购物⻋的时候,系统不知道是哪个⽤户操作的,因为 HTTP 协议是⽆状态的。服务端给特定的⽤户创建特定的 Session 之后就可以标识这个⽤户并且跟踪这个⽤户了。
Cookie数据存储在客户端(浏览器)中,⽽Session数据保存在服务器上,相对来说 Session 安全性更⾼。如果要在Cookie 中存储⼀些敏感信息,不要直接写⼊ Cookie 中,最好能将 Cookie 信息加密然后使⽤到的时候再去服务器端解密。
HTTP1.0最早在⽹⻚中使⽤是在1996年,那个时候只是使⽤⼀些较为为简单的⽹⻚上和⽹络请求上,⽽HTTP1.1则在1999年才开始⼴泛应⽤于现在的各⼤浏览器⽹络请求中,同时HTTP1.1也是当前使⽤最为⼴泛的HTTP协议。 主要区别主要体现在:
URI的作⽤像身份证号⼀样,URL的作⽤更像家庭住址⼀样。URL是⼀种具体的URI,它不仅唯⼀标识资源,⽽且还提供了定位该资源的信息。
2023-07-27 广告