TCP、UDP、HTTPS、HTTP

打印 上一主题 下一主题

主题 527|帖子 527|积分 1581

媒介

                                                                OSI七层网络
名称解释协议
应用层定义了各种应用协议的数据规范 HTTP、HTTPS、SSL
FTP、DNS
TFTP、SMTP
表示层差别体系之间通信
会话层断点续传
传输层 一个电脑有很多端口,根据端口找到发送方与吸收方
确保数据包完备性
TCP、UDP
网络层 ARP协议:通过IP地点获取对方的MAC地点
IP协议:逻辑寻址 和 路由
静态路由 与 动态路由 协议
ARP

IP

动态:RIP,OSPF,BGP

数据链路层 帧:将比特流8位一组发送
MAC地点:盘算机的唯一标识ID
物理层传输比特流(01串)
一、TCP协议

        TCP报文 = 报文头 + 数据部分
   
     TCP报文头格式     ACK :确认位(这条消息是一条复兴确认消息,确认号是有意义的)
 RST :重置位(TCP毗连中出现了错误,主机服务器瓦解,要求释放本毗连
 SYN :同部位(表示这条消息是一条 1.发起毗连 2.确认接受毗连 的消息)
 FIN : 停止位(表示本次报文发送竣事了,要释放这个毗连,TCP四次挥手时)
ack确认号:告知对方,希望下次收到的包的序列号是多少
1.1 三次握手

        客户端和服务器基于TCP协议的毗连过程为 三次握手。

 
1.2 四次挥手


1.3 特点

        TCP协议是建立毗连的,是一种可靠的毗连。
        一段时间内假如没有收到精确的回执信息和确认号,则会重传。
        相比于UDP协议,它可以包管数据传输拥有更好的安全性和完备性。
        相比于UDP协议,他的开销更大,速度更慢。
        HTTP、HTTPS就是基于TCP的。
 二、UDP协议

        UDP报文 = 报文头 + 数据部分
UDP报文头  长度名称解释16位源端口号
表示发送端的端口号。

假如发送端不需要源端口号,这个字段可以设置为0

16位目标端口号表示吸收端的端口号16位UDP报文长度
包括头部和数据部分的总长度

最小值为8字节(仅头部)

16位UDP校验和
用于检验UDP头部和数据部分是否在传输过程中发生了错误

检验和字段是可选的,但在IPv6中是强制要求

  2.1 特点

        UDP协议是不建立毗连的,因此尝尝出现丢包的现象,是不可靠的。
        相比于TCP协议,它的发送速度更快。(流媒体、游戏、IP电话、流量大的需求)
        相比于TCP协议,它的资源斲丧小。
        DNS域名解析协议就是基于UDP的。
三、HTTP协议

        HTTP(Hyper Text Transfor Protocol)为超文本传输协议
3.1 特点

        HTTP协议基于TCP协议,默认端口为 80可靠协议
        HTTP协议用于规定客户端和服务器的数据传输格式
        HTTP协议是一个基于请求与响应模式的、无状态的、无毗连的应用层协议
        HTTP协议发送的报文都是明文(未加密)的

3.2 请求

请求报文:客户端 向 服务器 发送的请求信息
常见的请求方法

格式:(分为四部分)
        <1> 请求行:请求方法 + URL(统一资源定位符) + HTTP协议版本号
  1. GET /teams HTTP/1.1
复制代码
        <2> 请求头部:名称 :
 
常 用 需 要 掌 握 的 请 求  User-Agent客户端类型Accept客户端可以辨认的内容类型Host
请求的主机名

(不一定是IP地点,也可以是域名)

Cookie
与服务器做交互,用于保持会话

(用户名 + 密码)

Content-type请求体的内容格式Connection
值一般为keep-alive,保持TCP毗连不关闭

(但不会长久保持毗连)

           <3> 空一行:就是空出一行,表示请求头部竣事了。
         <4> 请求体:请求消息的正文内容。
                        留意:不是每个请求都有请求体,好比 GET请求一般没有请求体。
3.3 响应

响应报文:服务器 向 客户端 发送的响应信息 
响应格式
        <1> 响应行:HTTP版本号 + 状态码 + 解释状态码
  1. HTTP/1.1 200 OK
复制代码
常用状态码解释
1XX请求正在处理中
2XX 请求成功处理完毕
200:请求成功
3XX 重定向(转移到别的一个url上)
302:重定向
304:缓存(未改动)
4XX 客户端导致的错误
5XX服务器导致的错误
        <2> 相应头部:名称 : 值  (竣事后也要额外空一行,表示头部竣事)

常 用 需 要 掌 握  Server服务器软件信息Data报文的响应时间Expires缓存的过期时间Set-Cookies通过服务器返回的文本设置cookiesConnection
值一般为keep-alive,保持TCP毗连不关闭

(但不会长久保持毗连)

(服务器可设置 --无毗连)

Location重定向的新URL          <3> 响应体:响应的正文内容
3.4 无毗连

HTTP协议是一种无毗连应用协议
       1. 限制每次毗连只处理一个请求
       2. 服务器处理完客户端的请求,并受到客户端的应答后,立刻断开毗连 
计划缘故原由:最早是为了应对单个用户请求间歇性大的问题,但随着网页越来越复杂,因此添加
                  了connection字段(设置connection : keep-alive)。
使用方法:1.开启:在请求中设置 connection : keep-alive 请求保持长毗连 (HTTP1.1默认打开
                  2.关闭:在请求头中设置 connection : close  关闭长毗连
                  3.设置毗连时间:
                            在请求头中设置 Keep-Alive : timeout = 5, max = 1000
                                        timeout:超时时间(秒),凌驾这个时间断开毗连
                                        max:最多毗连次数,凌驾这个次数断开毗连
3.5 无状态

HTTP是一种无状态应用协议
        1. 服务器不知道客户端是什么状态
        2.每个请求都是独立的,服务器回应后不会留下记载(假如要用之前的请求信息,需重传)
计划缘故原由:随着动态交互越来越多,重传严重浪费资源,因此计划了CookiesSession
使用方法
        Cookies:将前面请求的信息保存成一个临时文件cookies值,存放在欣赏器中。
        Session:相称于一个永久Cookies,关闭客户端仍旧存在。
                         退出客户端后,信息将会以Session的情势保存在服务器,并返回一个Session ID
                         给客户端。客户端会将Session ID保存在内存中。后续每次请求,都会
                         加上Session ID,服务器会将Session响应给客户端。
                         克制Session太多浪费资源:设置 timeout
四、HTTPS协议

        HTTPS(Hypertext Transfor Protocol Secure)超文本传输安全协议,是HTTP协议安全版。
由于HTTP是明文的,并且服务器和客户端都无法核对身份,HTTP不安全。
4.1 特点

        HTTPS协议的报文是密文。
        HTTPS协议可以对服务器和客户端举行身份认证。
        HTTPS协议可以防止信息被篡改,包管信息完备性。
        HTTPS协议比HTTP协议多一个SSL层。

 4.2 SSL

                                                        SSL默认是 443 端口

1. 客户端请求建立SSL毗连,并将自己支持的一套加密规则发给服务器
2. 服务器在此中选出一组加密算法与HASH算法,并将自己的身份证书发送给客户端
        (身份证书包括:网址、加密公钥、证书颁发机构等)
3. 客户端吸收到证书后:
        <1> 验证证书正当性。假如正当,则天生一串随机数密码,用公钥对密码加密。
        <2> 将加密密码发给服务器,告知服务器以后报文都加密。(握手竣事)
4. 服务器吸收到加密密码信息后:
        <1> 用私钥举行解锁,得到密码
        <2> 告知客户端以后报文都加密。(握手竣事)
4.2.1 解释

HTTPS是非对称性加密(双方不是通过统一钥匙加密的)
                客户端通过自己天生的密码加密,用公钥解密
                服务器通过私钥解密,用客户端发送过来的密码解密
4.2.2 SSL版本

        常用的有:SSLv3,TLS1.0,TLS1.2

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

老婆出轨

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表