zoukankan      html  css  js  c++  java
  • 计算机网络

    百度中输入www.xiaodianying.com.cn,到页面展示过程中发生了什么不可告人的事情?

    1.通过DNS域名服务器对网址进行解析,解析ip+port

    2.建立连接---tcp三次握手

    3.发送请求---http的get与post

    4.接受响应---http的get与post

    5.加载---渲染

    6.断开连接---tcp四次挥手

    为什么Android手机总是要比ios更容易卡?

    内存管理机制

    HTTP:超文本传输协议

    HTTP1.0 与 HTTP1.1的区别?

    Http1.1引入长连接机制keep-alive

    HTTP与HTTPS的区别?

    HTTP+S(ssl)==HTTPS

    ssl:加密文件

      验证服务器身份

      传输数据加密:防止传输数据被篡改/截取

    认证CA。。。。》收费

    后者更安全

    前者免费

    传输速度前者更快

    HTTP中get与post的区别?

    get:URL

    1.从服务器获取资源-----拿

    2.参数存在于URL中,以?形式连接

    3.大小限制为1024字节

    4.相对不安全

    5.相对较快

    post:

    1.往服务器递交数据-----给

    2.参数存在于包体中

    3.无大小限制

    4.相对安全

    5.相对较慢

    tcp的三次握手与四次挥手

    mark ---在不在?---老王     (第一次握手)

    老王 ---我在+叫我干嘛?---mark   (第二次握手)

    mark ---隔壁小红找你---老王    (第三次握手)

    客户端---SYN数据包---服务器

    服务器---ACK数据包+SYN数据包---客户端

    客户端---ACK数据包---服务器

    为什么是三次握手?而不是2次或4次?

    三次握手保障数据的双向传递ok,2次握手不能保障双向传递

    四次握手存在冗余

    为什么要四次挥手?(断开连接)

    服务器向客户端发送的SYN+ACK数据包需要分别断开

    TCP与UDP的区别?

    iso七层模型,亦称OSI(Open System Interconnection)参考模型,是参考模型是国际标准化组织(ISO)制定的一个用于计算机或通信系统间互联的标准体系。它是一个七层的、抽象的模型,不仅包括一系列抽象的术语或概念,也包括具体的协议。

    第七层:应用层 数据 用户接口,提供用户程序“接口”。
    第六层:表示层 数据 数据的表现形式,特定功能的实现,如数据加密。
    第五层:会话层 数据 允许不同机器上的用户之间建立会话关系,如WINDOWS
    第四层:传输层 段 实现网络不同主机上用户进程之间的数据通信,可靠
    与不可靠的传输,传输层的错误检测,流量控制等。
    第三层:网络层 包 提供逻辑地址(IP)、选路,数据从源端到目的端的
    传输
    第二层:数据链路层 帧 将上层数据封装成帧,用MAC地址访问媒介,错误检测
    与修正。
    第一层:物理层 比特流 设备之间比特流的传输,物理接口,电气特性等

    HTTP --应用层
    tcp --传输层
    udp --传输层
    ip --互联网层

    TCP:传输控制协议

    1.传输前需要建立连接

    2.具有超时重发机制

    3.传输数据不带有目标地址

    4.传输相对较慢

    5.具有过滤机制(数据去重和校验)

    UDP:用户数据报协议

    1.传输前无需建立连接

    2.传输数据带有目标地址

    3.传输相对较快

    4.传输不稳定

    状态码:显示请求状态

    https://yq.aliyun.com/ziliao/249117

    1xx:临时响应

    2xx:200,ok请求成功

    3xx:重定向、302/304(呼叫转移)

    4xx:客服端问题

    5xx:服务器问题  500(服务器宕机)502(网关问题)

    HTTP报文格式内容

    请求报文:(行、头、体)

      请求行:

        请求方法(get/post)、请求地址(url)、协议版本(http1.1)

      请求头:

        user_agent:浏览器类型

        accept:接收类型(*/*:所有)

        accept_language:语言

        accept_encoding:编码压缩格式

        accept_charset:字符集

        host:localhost

        cookie:本地缓存

        connection:连接keep-aive/断开close

      请求体:

        请求参数(入参)

    响应报文:(行、头、体)

      响应行(状态行):

        状态码、reason(对状态码的解释)、协议版本(http1.1)

      响应头:

         date(日期)、type(类型)、length(长度)

      响应体:

        响应正文(出参)

    cookie与session的区别?

    1、cookie数据存放在客户的浏览器上,session数据存放在服务器上

    2、cookie不是很安全,别人可以分析存放在本地的cookie并进行cookie欺骗、考虑到安全应当使用session

    3、session会在一定时间内保存在服务器上,当访问增多,会比较占用你的服务器性能、考虑到减轻服务器性能方面,应当使用cookie

    4、单个cookie在客户端的限制是3k,就是说一个站点在客户端存放的cookie不能3k,同一个站点限制20个

    如果信息需要考虑安全性则用session

    否则建议使用cookie

    fidder:抓包(数据包)工具

    还有HTTPwatch、wiresark

    fiddler:web端、APP、弱网测试

    httpwatch:web端、测试前端性能

    抓包工具原理:

      通过代理服务器---转发客户端请求---接受了服务器的响应

    抓包工具操作:

      打开即可,监听浏览器中的所有请求与响应

      浏览器打不开,重新打开fiddler,正常关闭fiddler

      清屏----》Ctrl+X

  • 相关阅读:
    看所访问网站的IP
    FLEX是什么及与FLASH的关系的介绍
    [设计模式]Head First Design Patterns[转]
    ASP.NET 2.0移动开发入门之使用模拟器
    在一篇文章的基础上总结了一下(接口,组合,继承,组件)
    抽象类与接口的区别 Java描述(转)
    C#:代表(delegate)和事件(event) (转)
    C#分页控件(自己做的)
    一个站点控制另一个站点的文件(添加,删除)用Webservices
    .net remoting程序开发入门篇
  • 原文地址:https://www.cnblogs.com/it-xian/p/10176542.html
Copyright © 2011-2022 走看看