TCP/IP、HTTP、HTTPS基础知识点

本文知识点:

1.TCP/IP的四层是什么。

2.TCP的三次握手。

3.http的协议方法有哪些以及区别。

4.cookie是什么,如何管理。

5.http的错误码。

6.https的原理

一、TCP/IP分为四层:应用层、传输层、网络层、链路层。

1.应用层

应用层决定了向用户提供应用服务时的通信活动。

FTP(文件传输协议)和DNS(域名系统)域名系统提供域名到ip地址的解析服务、http协议都是处于改层。

2.传输层

传输层对上层应用层、提供处于网络连接中的两台计算机之间的数据传输。

传输层有两个不同的协议:TCP(传输控制协议)和UDP(用户数据报协议)、UDP不能保证数据无误的传输,协议不可靠。

3、网络层(IP)

用来处理网络上的数据包,数据包是网络传输的最小数据单位,该层规定了通过怎么样的路径到达对方计算机,并把数据包传送给对方。

与对方计算机之间通过多台计算机或者网络设备进行传输时,网络层所起的作用就是在众多的选项内选择一条传输路线。

4、链路层(数据链路层、网络接口层)

用来处理连接网络的硬件部分。包括控制操作系统、硬件的设备驱动、网卡,及光纤等物理课件部分。硬件上的范畴均在链路层的作用范围之内。

TCP/IP通信传输流


二、TCP的三次握手

为了将数据准确无误的传递到目标处,TCP进行了三次握手,握手采用TCP的标志 -----SYN(synchronize)和ACK(acknowledgement)。

客户端首先发送一个带SYN标志的数据包给对方。接收端收到后,回传一个带有SYN/ACK标志的数据包以示传达确认信息,最后客户端再回传一个带ACK标志的数据包,代表握手结束。

TCP三次握手

三、URL和URI区别

URL是统一资源定位符,URI是统一资源标识符,URI用字符串标识某一互联网的资源,而URL标识资源的地点(互联网所处的位置)。

URI格式

四、HTTP协议

1.HTTP协议请求报文

请求报文是由请求方法、请求URI、协议版本、可选的请求首部字段和内容实体构成。

请求报文构成

2.HTTP协议响应报文

响应报文是由西一版本、状态码以及结识状态码的短语,可选响应首部字段和实体组成的。

响应报文构成

3.HTTP协议方法

GET:获取资源

用来请求访问已被URI标识的资源。制定的资源经服务器解析后返回响应内容,也就是说请求的资源是文本,那就保持原样返回。

GET请求响应例子

POST:传输实体主体

虽然GET方法也能传输实体主体,但是一般不用GET方法进行传输,而是用POST,POST请求参数在body中,用户不可见,而get传输内容拼接在URL中,用户可见,安全性较差。

POST请求响应例子

PUT:传输文件

用来传输文件,就像FTP协议的文件上传一样,要求在请求报文中主体重包含文件内容,然后保存到URI指定的位置。

但是PUT不带验证机制,存在安全问题,web网站一般不使用。

HEAD:获取报文首部

HEAD和GET一样,只是不返回报文主体,用于确认URI的有效性及资源更新的日期时间等。

DELETE:删除文件

与PUT相反的方法,用来按请求URI删除制定文件。

与PUT一样不带验证机制,存在安全问题,web网站一般不使用,使用必须配合程序验证机制一起使用。

OPTIONS:询问支持的方法

OPTIONS方法用来查询针对请求URI指定资源的支持方法。

OPTIONS响应例子

TRACE:追踪路径

让web服务器端将之前的请求通信环会给客户端的方法。

CONNECT:要求用隧道协议连接代理

要求和代理服务器通信时建立隧道,实现隧道协议进行TCP通信,主要使用SSL(安全套接字)和TSL(传输层安全)协议把通信内容加密后经网络隧道传输。

CONNECT响应例子

HTTP1.0和HTTP1.1支持方法:

HTTP支持方法表

4、Cookie的状态管理

HTTP是无状态协议,他不对之前发审过的请求和响应的状态进行管理,也就是说,无法根据之前的状态进行本次的请求,比如登录态,为了解决这个问题,引入Coookie技术,Cookie技术通过在请求和响应报文中写入Cookie信息来控制客户端的状态。

Cookie会根据从服务端发送的响应报文内的一个叫Set-Cookie的首部字段信息,通知客户端保存Cookie,当下次客户端再往服务器发送请求时,客户端会自动在请求报文中假如Cookie值发送出去。

服务端发现客户端的Cookie后,会根据服务器记录,检查哪一个客户端发来的请求,最后得到之前的状态信息。

没有Cookie状态的请求
存有Cookie的请求

客户端和服务端Cookie交互流程:

交互流程

5.HTTP状态码

状态码是当客户端向服务端发送请求时,描述返回请求结果,借助状态吗,用户可以知道服务端是否出错。

状态码类别

2XX 成功

1)200 OK   

2)204 No Content 请求处理成功,但是没资源返回 

 3)206 Partial Content 请求部分资源返回成功。

3XX 重定向

3XX结果表明浏览器需要执行某些特殊处理以正确请求

1)301 Moved PerManently 永久性重定向,表示资源被分配新的URI,要用新的URI访问。

2)302 found  临时性重定向,表示资源被分配新的URI,希望用户本次用新的URI访问,只是临时性的,已移动的资源对应的URL,捡来还有可能改变。

3)303 See Other 改状态码表示,请求的URI存在着另一个URI,应使用GET方法定向获取请求资源。

4)304 Not Modified 表示客户端发送附带条件的请求时,服务端允许请求访问资源,但是未满足条件的情况

4XX 客户端错误

1)400 Bad Request 表示报文中有语法错误。

2)401 Unauthorized  表示需要认证(BASIC认证或者DIGEST认证)

3)403 ForBidden 服务器资源禁止访问。

4)404 Not Found 服务器找不到资源。

5XX 服务器错误

1)500 Internal Server Error 表示服务器端在执行请求时发生了错误。

2)503 Service Unavailable 服务器超负载或者停机维护无法处理请求。

6.HTTP缺点

1)通信使用明文,没有加密,可能被窃听。(通过加密解决)

2)不验通信方的身份,因此可能遭遇伪装。(通过证书解决)

3)无法证明报文完整性,可能已经遭篡改。(通信时会发送内容和内容的hash值用来验证完整性)

7.HTTPS诞生

因为HTTP协议存在上面的三个问题,存在安全隐患,所以通过SSL(安全套接字)和HTTP协议组合使用,加密HTTP的通信内容,这被称为HTTPS(HTTP sercure 超文本传输安全协议)。

HTTP+加密+认证+完整性保护 = HTTPS

HTTP和TCP通信,变成HTTP和SSL通信,SSL和TCP通信。

HTTP和HTTPS结构对比

1)HTTPS混合加密机制

非对称加密:一个公钥和一个私钥,不需要传输私钥,安全性较高看,但是处理速度慢。(RSA、Elgamal)

对称加密:一个私钥,双方持有,需要传输私钥,容易被窃取,安全性低,处理速度快。(DES算法3DES算法)

混合加密利用两者优点:采用非对称加密算法的公钥,加密对称加密的私钥,传输数据使用对称加密的私钥加密数据,既保证数据传输安全,也能保证秘钥安全。

混合加密机制

2)证明公开密钥正确性的证书

为了证明公钥的真实性,引入数字证书机构的认证机构的公开密钥证书。

服务端向证书机构申请证书-》机构验证身份并利用公钥做数字签名,将公开密钥和证书绑定一起-》服务端将证书发送给客户端-》客户端利用证书的公开密钥(注意不是服务端的公开密钥),对证书进行验证,为了保证证书公钥安全传给客户端,一般浏览器会内置常用机构的公开密钥,这样就保证了公开密钥的真实性。

公开密钥证书申请和证明过程

3)HTTPS的安全通信机制

通信机制的主要过程:

1.客户端通过发送Client Hello报文开始SSL通信。报文中包含客户端支持的SSL的指定版本、加密组件列表(算法及密钥长度)

2.服务器发送Certificate报文。报文中包含公开密钥证书。

3.客户端利用服务端下发的证书,加密随机数,也就是私钥,发给服务端。

4.服务端收到私钥,用证书私钥解密,获取客户端发送私钥。

5.两端利用客户端私钥进行通信。

HTTPS通信机制示意图

引用:

https://item.jd.com/11449491.html  图解HTTP书籍

http://www.wxtlife.com/2016/03/27/详解https是如何确保安全的?/

https://blog.csdn.net/xiaopang_yan/article/details/78709574

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,294评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,493评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,790评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,595评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,718评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,906评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,053评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,797评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,250评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,570评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,711评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,388评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,018评论 3 316
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,796评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,023评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,461评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,595评论 2 350

推荐阅读更多精彩内容