网络

作者: 钎探穗 | 来源:发表于2020-07-29 18:22 被阅读0次

    网络模型:应用层,表示层,会话层,传输层,网络层,数据链路层,物理层。
    网络的通讯其实就是socket间的通讯(通讯的两端都是socket),通过IO传输。需要IP,Port
    Socket:位于传输层,有两个传输协议

    • TCP:传输控制协议。通过3次握手,建立连接(创建socket,connect建立连接,write发送,请求数据,read读取返回的信息,读取完毕的close,结束循环),可大数据传输。案例:下载,保持文件传输的完整性。
    • UDP:用户数据协议,不需要建立连接,有大小限制。不可靠协议。一般流媒体,游戏等,如果网络不好出现卡帧等之类情况就可能使用的UDP。

    http,https协议:是建立socket基础之上的。处于应用层。

    • http:超文本传输协议,明文传输。
    • https:安全的ssl加密传输协议。

    https流程:
    客户端将与服务端协商的数据传递给服务端,服务端进行校验,校验通过,会将数字证书(向CA机构申请,审核通过,发放数字证书,包含公钥,签名等公司信息),公钥传递给客户端,客户端验证证书的有效性。验证通过,将公钥处理成前主秘钥进行非对称加密传输给服务端,自己形成会话秘钥。服务端通过私钥解密获取主秘钥,同样形成会话秘钥。进行数据加密传输。

    Charles作为中间人,对客户端伪装成服务端,对服务端伪装成客户端。简单来说:
    1:截获客户端的HTTPS请求,伪装成中间人客户端去向服务端发送HTTPS请求
    2:接受服务端返回,用自己的证书伪装成中间人服务端向客户端发送数据内容。

    网络请求:常用Get,Post方式的区别

    • Get :参数包含在url中,参数有长度限制。
    • Post:有请求体,通过request Body传递参数,参数没有长度限制。请求头要添加字段content-type:application/json来获取请求中消息主体的编码方式。

    相关文章

      网友评论

        本文标题:网络

        本文链接:https://www.haomeiwen.com/subject/cadkrktx.html