网络

作者: Michael_1615 | 来源:发表于2017-12-03 16:00 被阅读0次

    可靠安全 -> 7层架构

       数据链路层 

                   解决两个节点传输,最小传输单位,数据包,可以通过基础验证检查这个包是否安全和正确

        网络层 

                  为了解决数据在网络上的传递,加上了路由的概念,通过路由传到指定的地址。为了标记在网络层上的地址,加上了IP协议

        传输层 

                 为了保证传输的数据包可靠,增加了出错重传机制 TCP基于链接/UDP

        应用层 

                为了解决这个数据是为哪个应用服务的,SMTP/HTTP。。。

    网络传输的问题

    不可靠: 丢包,重复包,出错,乱序

    不安全: 中间人攻击,窃取,篡改

    TCP怎么解决网络不可靠问题

    滑动窗口协议,TCP协议中使用,通过维持发送方/接收方缓冲区解决。如果没有滑动窗口协议会一个一个传递导致吞吐量问题。滑动窗口协议,有超时重传机制和按顺序发ACK。图片

    Wireshark教程

    有关TCP协议及滑动窗口常见的问题

    TCP协议要达到的目的?基于链接的一个协议,基于TCP协议达到一个可靠的传输。可靠传输是只,包是按序收到,不出错,流量控制(滑动窗口),拥塞控制

    滑动窗口是怎么运行的?解决了什么问题?

    解决吞吐量问题,流量控制,保证收发顺序一致

    TCP协议如何做到流量控制?如何做到拥塞控制?

    TCP协议建立连接三次握手,断开连接四次挥手

    建立三次握手

    1. CLIENT(SYS_SENT) -> SYN -> SERVER (LISTEN)

    2. CLIENT(ESTABLSIHED) <- SYN,ACK <- SERVER(SYS_RECEIVED)

    3.  CLIENT(ESTABLSIHED) -> ACK -> SERVER(ESTABLSIHED)

    C -> 数据 -> S

    四次挥手

    1. SENDER (FIN_WAIT_1) -> FIN -> RECEIVER(ESTABISHED)

    2. SENDER(FIN_WAIT_2) <- ACK <- RECEIVER(CLOSE_WAIT)

    3. SENDER(TIME_WAIT) <- FIN<- RECEIVER(LAST_ACK)

    4. SENDER(TIME_WAIT) -> ACK -> RECEIVER(CLOSED)

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

    因为接收方可能不能立马进行断开,所以先发一个ACK确认收到FIN请求。只有在准备好以后接收方才会发送一个FIN请求给接收方

    相关文章

      网友评论

          本文标题:网络

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