网路知识总结(session&&Cookie&&三次握手&&请求头)
1. 请说明Session和Cookie的作用和区别
1) Cookie 存在前端 前端需要拿着cookie访问后端,Session在服务器上(文件,数据库,如Redis)
2) web访问Server端-->server端对web信息加密生成Cookie返给web端,server端同时生成sessionId-->web带着cookie访问server端,server端进行验证
区别1:
1) cookie在客户端的头信息中
2) session在服务端存储,文件,数据库等都可以
区别2:
1) 一般来说session的验证需要cookie带一个字段来,表示这个用户是哪一个session,所以当客户端禁用cookie时,session失效
Cookie的总结:
1) cookie就是一小段的文本信息
2) 格式为key:value
3) cookie的值由服务端生成,客户端保存
2. 网路协议相关
网络协议分层-osi模型:
1) 应用层 :为应用程序提供服务
2) 表示层 :数据格式转化及机密操作
3) 会话层 :建立,管理和维护会话
4) 传输层 :建立,管理和维护端到端的连接
5) 网络层 :IP地址及路由选择
6) 数据链路层 :提供介质访问和链路管理
7) 物理层 :物理层,即物理设备
举例说明:
1) 老张向老王提供了一份货物及价格清单
2) 怕竞争对手公司看到给清单做了加密
3) 市场部整理后将报价清单放到收发室
4) 收发室将报价清单送到快递公司
5) 快递公司分发到不同的集散中心
6) 运输路线的规划及各集散中心访问方式
7) 通过汽车,火车,飞机等设备进行运输
osi五层协议及对应网络协议
1) 应用层(包括表示层,会话层):HTTP,HTTPS,FTP,SMTP
2) 传输层:TCP/UDP
3) 网络层: IP/ICMP
4) 数据链路层 : ARP/RARP
5) 物理层:MLT-3/PAM5
3.Http协议如何保证数据在传输过程中不丢失
Http三次握手
1) 客户端-->SYN=1(建立连接),Seq=x(随机产生的顺序号码)-->服务端
2) 服务端-->SYN=1,ACK=x+1(确认码),Seq=X(随机产生)-->客户端
3) 客户端-->SYN=1,ACK=Y+1(确认信息),Seq=z--->服务端
4) 建立连接,数据传输
Http四次挥手机制
1) 客户端 -->FIN=1(结束标语数据传完了可以关闭了),Seq=u-->服务端
2) 服务端 -->ack=u+1,Seq=v,ACK=1 --->客户端
3) 服务端 -->FIN=1,ack=u+1,Seq=w,ACK=1 -->客户端
4) 客户端 -->ack=w+1,Seq=u+1,ACK=1 -->服务端
5) 连接断开
4. 简要说明请求头中Accept\Accept-Encoding\Accept-language都代表了什么意思
HTTP协议信息头:常用请求头
1) Accept:这个头表示,浏览器告诉服务器它所支持的数据类型
2) Accept-Charset:这个头表示,浏览器告诉服务器它采用的字符集
3) Accept-Encoding:这个头表示,浏览器告诉服务器它所支持的压缩格式
4) Accept-language:这个头表示,浏览器告诉服务器它所采用的语言
5) Host:这个头便是,浏览器告诉服务器我想访问服务器哪台主机
6) If-Modified-Since:这个头表示,浏览器告诉服务器它缓存数据时间是多少
7) Referer:这个头表示,浏览器告诉服务器我是从哪个网页点过来的(防盗链)
8) User-Agent:这个头表示,浏览器告诉服务器我所使用的浏览器类型,版本等信息
9) Date : 这个头表示,浏览器告诉服务器我什么时间访问的
HTTP协议信息头:常用响应头
1) Location:告诉浏览器你去找谁,配合302状态码使用(转其他路径)
2) server :告诉浏览器服务器类型
3) Content-Encoding:告诉浏览器回送的数据采用的压缩格式
4) Content-Type:告诉浏览器回送的数据类型
5) Last-Modified:告诉浏览器数据的最后修改时间
6) Refresh:控制浏览器定时刷新
7) content-Disposition:告诉浏览器需要一下载方式打开回送的数据
8) Transfer-Encoding:告诉浏览器的数据是以分块形式回送的
网路知识总结(session&&Cookie&&三次握手&&请求头)的更多相关文章
- TCP基础知识(二)三次握手与四次挥手
TCP详解(2):三次握手与四次挥手 TCP(Transmission Control Protocol,传输控制协议)是基于连接的协议,也就是说,在正式收发数据前,必须和对方建立可靠的连接,就好像你 ...
- 获取客户端IP地址的三个HTTP请求头的区别
一.没有使用代理服务器的情况: REMOTE_ADDR = 您的 IP HTTP_VIA = 没数值或不显示 HTTP_X_FORWARDED_FOR = 没数值或不显示 二.使用透明代理服务器的情况 ...
- 认证 协议 JWT OAuth Session Cookie
本文翻译自Auth-Boss. 如果有翻译的不恰当或不对的地方, 欢迎指出. 成为一个认证老司机, 了解网络上不同的身份认证方法. 本文档的目的是记录和编目Web上的身份验证方法.认证指的是创建一个系 ...
- session,cookie,sessionStorage,localStorage的相关设置以及获取删除
一.cookie 什么是 Cookie? "cookie 是存储于访问者的计算机中的变量.每当同一台计算机通过浏览器请求某个页面时,就会发送这个 cookie.你可以使用 JavaScrip ...
- TCP三次握手与防火墙规则
一个(tct)socket连接需要在客户端与服务端开启一个隧道,客户端提供一个端口(new时可指定,也可不指定,随机),服务端的端口和地址一定要指定.在win下,服务端创建监听端口时,防火墙会提示阻止 ...
- 【python爬虫】加密代理IP的使用与设置一套session请求头
1:代理ip请求,存于redis: # 请求ip代理连接,更新redis的代理ip def proxy_redis(): sr = redis.Redis(connection_pool=Pool) ...
- 知识记录——Session与Cookie
Session: Session是“会话”的意思,然而,因为http协议是无状态的,那么每次客户端请求服务器端,服务器端都会以“崭新”的页面展示给客户端,这在静态的html页面中是不会存在任何影响,但 ...
- {Django基础八之cookie和session}一 会话跟踪 二 cookie 三 django中操作cookie 四 session 五 django中操作session
Django基础八之cookie和session 本节目录 一 会话跟踪 二 cookie 三 django中操作cookie 四 session 五 django中操作session 六 xxx 七 ...
- C#基础知识之理解Cookie和Session机制
会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话.常用的会话跟踪技术是Cookie与Session.Cookie通过在客户端记录信息确定用户身份,Session通过在服务器端 ...
随机推荐
- 把list集合的内容写入到Xml中,通过XmlDocument方式写入Xml文件中
List<Person> list = new List<Person> { new Person{Name="张三",Age=20,Email=" ...
- 学JAVA第十二天,今天写java控制台输入流及String的类型转换
今天老师讲了一天狗跳楼的问题,昨天解开始说了,今天都没讲新课, 所以,今天自学了Scanner类及String的类型转换 先来Scanner类实现键盘输入功能: 代码: package pkg1; i ...
- linux下nginx【反向代理】配置【负载均衡】配置
nginx 可以配置多个端口: 1.10088端口 配置反向代理,消除跨域问题. 2.10087端口 配置ip_hash模式的负载均衡,ip_hash可以绕开解决session共享的问题. nginx ...
- alias,data,系统定时开关机的基本操作
1.修改命令提示符的格式,及每个字母所代表的功能,显示提示符格式输入echo $PS1PS1="[\u@\h \W]\$"\e 或\033启用颜色 \u当前用户 \h主机名简称 \ ...
- log4net使用封装,无缝切换 dotnet 和 dotnetcore
log4net使用封装,无缝切换 dotnet 和 dotnetcore Intro 自己有几个自己的小项目,有许多公用的方法/扩展/工具类等等,于是封装了一些常用的工具类/扩展方法 WeihanLi ...
- ASP.Net Core开发(踩坑)指南
ASP.NET与ASP.NET Core很类似,但它们之间存在一些细微区别以及ASP.NET Core中新增特性的使用方法,在此之前也写过一篇简单的对比文章ASP.NET MVC应用迁移到ASP.NE ...
- DataPipeline创始人&CEO 陈诚:沃森与AI
引言:本文来自infoQ架构师电子月刊对DataPipeline创始人&CEO陈诚的约稿.陈诚,毕业于上海交大,留学于美国密西根大学,前Yelp大数据研发工程师,曾就职于美国Google.Ye ...
- 基于 libevent 开源框架实现的 web 服务器
/* 原创文章 转载请附上原链接: https://www.cnblogs.com/jiujue/p/10707153.html */ 自己实现的如有缺漏欢迎提出 直接代码 一切皆在代码中 首先是 ...
- 芒果绿的blog
--------------------------------------------------------------这是芒果绿的blog!!-------------------------- ...
- Java基础系列--08_集合1
---恢复内容开始--- 集合当中有很多都是应用到泛型的技术,所以在讲集合之前,应该先将泛型的概念普及一下. 泛型: (1)泛型是一种类型,但是这种类型是在编译或者调用方法时才确定. (2 ...