计算机网络之开篇知识

计算机网络之开篇知识

从短期看来,对于后台开发来说,计算机网络是必不可少的,在各大公司的笔试和面试中也时常出现,屡试不爽;从长期看来,从服务器调优到web架构都需要相当牢固的计算机网络基础。因此掌握基础的计算机网络知识是十分必要的。

而入门计算机网络需要从基本的前提知识说起。

  • 端系统的通信方式:客户-服务器方式(C/S方式)和对等方式

    每一个主机都可以称为端,网络中由端组成的系统即为端系统。

    • 客户-服务器方式(C/S方式)

      最常见的通信方式,日常生活中的例子便是使用浏览器访问目标网站,浏览器是发起请求并等待响应的客户端,而访问目标网站实则是访问目标网站所在的服务器,服务器提供服务给请求的客户

    • 对等方式(P2P方式)

      于C/S方式不同,对等方式中无所谓客户还是服务器,或者说参与的主机是客户亦是服务器,既能发起请求,又能响应请求。最经典的例子便是文件共享程序。

  • 连通性的保证:分组交换

    了解分组交换需从电路交换和报文交换说起。

    • 电路交换指的是电话机连接方式:建立连接-通话-释放连接,比特流连续地从源点直达终点
    • 报文交换指的是电报通信方式:整个报文传到相邻节点,全部存储后再查找转发到下一个节点直到终点
    • 分组交换便是计算机网络数据传输方式:将整个报文(借用电报喻指网络数据报)分成单个分组后逐个传递到相邻节点,存储下来再查找转发给下一个节点直到终点。

    • 典型例题

      解答:解题重点在于总时延=发送时延+传输时延,而分组交换的流水线式传输相对特别,发送的同时也有分组在信道中传输,因此比较难以界定两种时延;并且还需要考虑到每个节点都会发生发送动作。切入点在:在最后一个分组发送完成前,传输时延与发送时延重叠在一块,只需计算一种即可,因此在最后一个分组这里开始一刀切,将发送时延和传播时延分开。

      答案:

      电路交换总时延:s+x/d+kd; 分组交换总时延:(x/p)(p/b)+(k-1)(p/b)+kd;

      s+x/b+kd>(x/p)(p/b)+(k-1)(p/b)+kd => s>(k-1)*(p/b)

  • 计算机网络性能

    • 速率:数据的传递速率,也称数据率,单位为bit/s.
      需要注意的是数据大小使用的单位是B(字节,8位二进制数),因此应当按二进制计算:千=K=210=1024,兆=M=220,吉=G=2^30,而数据率使用的单位是bit/s,因此应当使用十进制计算: 千=K=103=1000,兆=M=106,吉=G=10^9,在计算时需要特别注意。

      • 典型例题

    • 带宽和吞吐量

      带宽指的是某信道能达到的最高速度,而吞吐量则是信道的实际速度

    • 时延:数据从端到端传输所需要的时间,一般有发送时延、传播时延、处理时延和排队时延。

      • 发送时延:主机发送数据所需要的时间=数据帧长度/发送速率

      • 传播时延:数据在信道传播所需的时间=信道长度/电磁波在信道上的传播速率

      • 处理实验:主机或路由器处理收到分组的时间

      • 排队时延:数据经过网络进入路由器中等待处理排队的时间

        总时延=发送时延+传播时延+处理时延+排队时延

    • 时延带宽积:表示信道传播的比特量=传播时延*带宽

    • 往返时间RTT:许多情况下,网络上的信息是双向交互的,因此需要知道一次双向交互所需时间,一次双向交互所需时间即为往返时间。

  • 计算机网络体系结构

    计算机网络从物理链路到网络应用之间会经过很多协议,因此产生了多层结构,每层结构都有专门的协议以做到有条不紊地交换信息。著名的结构有OSI(Open Systems Interconnection)的七层机构、TCP/IP四层结构和折中的五层体系结构。

    在笔试中用到的以七层结构居多。

写在最后:

  • 本文只是总结,只包含重要的知识点,具体的知识请仔细研究谢希仁老师的《计算机网络》一书。
  • 之后的知识总结会与依次按照五层结构自下而上逐层介绍。

你可能感兴趣的:(Computer,Network)