zoukankan      html  css  js  c++  java
  • 网络协议面试

    • TCP的三次握手和四次挥手
      •   http://www.cnblogs.com/Kobe10/p/5770585.html

    • Tcp和Udp的区别
      •   TCP:TCP是面向连接的,进行的是全双工通信(两个方向同时进行通信),提供可靠的服务,面向字节流的
      •   UDP:UDP不是面向连接的,提供不可靠的交付,它传输的是报文段,首部开销较小没有拥塞控制

    • TCP怎样提供可靠传输的?
      •   ARQ(超时重传协议),流量控制,数据校检,拥塞控制
      •   超时重传:三种情况(传送丢失,接收丢失,重复传输)。当一个TCP发出一个请求的时候,会设置一个定时器,如果过了一段时间没有接收到确认信息,就会重新发送一个请求出去。
        •   三种情况:收到重复的丢弃,有差错的丢弃,超时的重传
      •   数据校检:当一个客户端收到另一端的数据,它会过一会再发送一个确认信息给另一端(因为过一会是需要进行数据检测的)
      •   流量控制:滑动窗口机制。
      •   拥塞控制:

    • 协议
        •   物理层:没啥协议,但是
        •   数据链路层:局域网(封装成帧,透明传输,差错检测),CMSA/CD协议,ARP,RARP
          •   封装成帧:将网络层传下来的数据报加上桢首部和桢尾部,封装成桢,加上桢界定符
          •   透明传输,差错检测。冗余检测算法。
          •   CMSA/CD:多点接入载波监听碰撞检测。载波监听是指:不管在发送前还是发送中,每一个站都要不停的检测信道。如果有其他存在的话,就不准发送信道。碰撞检测是指:发送中检测信道,及时检测以免发生碰撞。
          •   ARP地址解析协议:实现,广播发送一组ARP请求,所有用户接收,如果找到返回确认信息,没有不返回信息。
        •   网络层
          •   ip协议,ICMP协议,igmp协议,NAT,
          •   ICMP协议:主要是用于在路由器和用户主机之间的协议,用来报告错误,交换信息,状态等。(比如PING命令就用到了ICMP协议)
        •   运输层
          •   TCP和UDP
        •   会话层和表示层没有协议,
        •   应用层HTTP,FTP,SMTP,DNS,Telente

        •   DNS:通过主机名,得到该主机的IP地址的协议。采用的是客户服务器方式(域名解析协议)
        •   FTP:文件传输协议。FTP使用的也是客户服务器模式,它是利用了TCP的可靠连接。一个FTP服务器可以对应多个客户端。进行文件传输的时候,FTP和客户端会建立两个TCP链接,一个是用于控制连接,一个数用于传输连接(文件传输)(21)
        •   HTTP:超文本传输协议。它使用的是TCP的可靠连接。它是一个标准的客户端服务器端的应答。(TCP)(端口80)
        •   SMTP:简单邮件传输协议。它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式(25)


      •   TCP/IP协议的内容
        •   网际层:
        •   网路层:
        •   传输层:
        •   应用层:


    • 网络层有什么协议
      •   ARP:根据ip地址找到对方的物理地址。ARP协议原理:①每一个主机都有一个ARP缓冲,用来存放ip地址和物理地址。当主机要发送一个ARP请求时,首先查找自己的ARP缓冲中有没有这样的ip地址,如果有直接发送到对应的硬件地址,如果没有主机广播发出一个ip地址,每一个目的主机都会去判断是不是自己的ip地址,如果是就返回一个信息,里面包含它的物理地址,如果没有就不做出回应。
      •   RARP
      •   ICMP:网际控制协议。
        •   作用:当转发IP数据报出现错误时,给出原因。(Ping命令:用来对两个主机之间进行连通检测的。)
        • 怎么发送数据:以IP数据报为载体发送。
      •   IGMP

    • TCP怎么保证错误重传(超时重传)?
      •   接收方收到错误的报文段,直接丢弃,不做任何措施(TCP会自动重传)
      •   发送方在规定的时间内没有收到确认信息,就自动重传。为了知道是哪个分组出了问题,给分组进行编号。

    • TCP确认丢失和确认迟到保证
      •   确认丢失:当发送一个请求,然后很久没收到确认信息,确认丢失了;丢掉这个发送的请求分组,重新发送一个请求
      •   确认迟到:确认迟到了之后丢弃重复的确认即可。

    • IP协议,UDP协议,TCP协议的检测
      •   IP
        •   检测数据报的首部,不检测数据部分,每经过一个路由器检测一次,错误直接丢弃。
      •   UDP
        •   检测首部加上数据部分,由目的主机检测,发现错误直接丢弃
      •   TCP
        •   检测首部加上数据部分,由目的主机检测,发现错误直接丢弃
  • 相关阅读:
    python基础学习-day13==课后作业练习(函数的基本使用)
    python基础学习-函数的基本使用
    python基础学习-day12==课后作业练习(文件指针的控制操作)
    python基础学习-文件其他操作模式(补充)
    python基础学习-day11==课后作业练习(文件操作)
    python基础学习-文件处理
    简单页面设计
    前端.浮动.定位框
    css属性and盒模型
    用html搭建一个注册页面
  • 原文地址:https://www.cnblogs.com/Kobe10/p/5795103.html
Copyright © 2011-2022 走看看