zoukankan      html  css  js  c++  java
  • 计网知识随手记(一)

    参考书籍:计算机网络(第7版)-谢希仁

    用途:记录自己学习过程中觉得比较有用或者比较难以理解的知识点(只针对个人)

    1.概论

    1.1.计算机网络的性能

    1.1.1.单位

    1Byte = 8 bit Byte字节 bit位

    带宽的单位如果是bit/s或(b/s和bps) 则需要除以8才是 B/s

    例如1MB/s = 8Mb/s = 8Mbps 即B = Byte,b = bit

    1.1.2.带宽

    带宽本来是指某个信号具有的频率宽度,在计算机网络中,带宽表示某通道传送数据的能力,因此网络带宽表示在单位时间内网络中某信道所能通过的“最高数据率”

    因此数据的发送速率一定小于等于带宽

    1.1.3.时延

    时延是指数据(一个报文或分组,甚至比特)从网络(或链路)的一端到另一端的时间。时延是个很重要的指标,它有时也称延迟或迟延。

    发送时延:发送时延是主机或路由器发送数据帧所需要的时间,也就是从发送数据真的第一个比特算起,到该帧的最后一个比特发送完毕所需要的时间。

    [发送时延 = 数据帧长度(bit) / 发送速率(bit/s) ]

    传播时延:传播时延是电磁波在信道中传播一定的距离需要耗费的时间。

    [传播时延 = 信道长度(m) / 电磁波在信道上的传播速率(m/s) ]

    处理时延:主机或路由器在收到分组时要花费一定的时间进行处理,例如分析分组的首部、从分组提取数据部分、进行差错检验或查找适当的路由等,这就产生了处理时延。

    排队时延:分组在进行网络传输时,要经过许多路由器。但分组在进入路由器后要现在输入队列中排队等待处理。在路由器确定了转发接口后,还要在输出队列中排队等待转发。这就产生了排队时延。排队时延往往取决于网络当时的通信量。当网络的通信量很大时会发生队列溢出,使分组丢失,这相当于排队时延无穷大。

    总时延 = 发送时延 + 传播时延 + 处理时延 + 排队时延,因此时延是由发送速率、信道介质等多个因素共同决定的。

    时延带宽积 = 传播时延 * 带宽,时延带宽积又称为以比特为单位的链路长度

    1.1.4.往返时间RTT

    关于往返时间(往返时延)RTT,网上有很多版本的算法,以下是我比较能接受的一种:

    数据的发送分为以下几个阶段:

    t1:发送方发送的分组的第一个比特被传输

    t2:发送方发送的分组最后一个比特被传输

    t3:接收方接收到分组的第一个比特

    t4:接收方接收到最后分组的第一个比特,发送ACK

    t5:发送方接收到ACK

    往返时间RTT = t5-t2

    因此有效数据率 = 数据长度 / (发送时间 + RTT)

    1.1.5.利用率

    利用率分为信道利用率和网络利用率两种。

    信道利用率是以时间为单位即某信道有百分之几的时间是被利用的,只要有数据通过就算是被利用。

    网络利用率是全网络的信道利用率的加权平均。

    信道利用率并非越高越好,根据排队论的理论,当某信道的利用率增大时,该信道引起的时延也就迅速增加。

    D表示当前网络的时延,D0表示空闲网络的时延,U表示信道利用率,则它们之间的简单关系为:

    D = D0 / (1 - U)

    因此信道或网络的利用率过高会产生非常大的时延。

    1.2.计算机网络体系结构

    OSI(开放系统互连基本参考模型OSI/RM)只获得了一些理论研究的成果,在市场化方面事与愿违地失败了(基于TCP/IP的互联网抢先在全球相当大的范围内运行)。

    法律上的国际标准:OSI,事实上的国际标准:TCP/IP

    • 应用层:通过应用进程间的交互来完成特定网络应用,应用层协议定义的是应用进程间通信和交互的规则。常用协议:域名系统DNS、支持万维网应用的HTTP协议、电子邮件SMTP协议等。应用层交互的数据单元称为报文。

    • 运输层:负责向两台主机中进程之间的通信提供通用的数据传输服务。主要用到以下两种协议:

      • 传输控制协议TCP:提供面向连接的、可靠的数据传输服务,其数据传输的单位是报文段。
      • 用户数据报协议UDP:提供无连接的、尽最大努力的数据传输服务(不保证数据传输的可靠性),其数据传输单位是用户数据报。
    • 网络层:负责为分组交换网上的不同主机提供通信服务。在发送数据时,网络层把运输层产生的报文段或用户数据报封装成分组或包传送。在TCP/IP体系中,由于网络层使用IP协议,因此分组也叫做IP数据报,简称数据报。

    • 数据链路层:在两个相邻节点之间传送数据时,数据链路层将网络层交下来的IP数据报组装成帧,在两个相邻结点间的链路上传送帧。每一帧包含数据和必要的控制信息。

    • 物理层:物理层上所传输的单位是比特

    实体表示任何可发送或接收信息的硬件或软件进程

    协议是两个(或多个)对等实体进行通信的规则的集合,因此它是水平的,对上层实体无任何影响。

    服务是由下层向上层通过层间接口提供的,因此它是垂直的,只有能被高一层实体识别到的功能才能称之为服务。

    同一系统、相邻两层的实体进行交互的地方称为服务访问站点SAP,OSI把层与层之间交换的数据的单位称为服务数据单元SDU

  • 相关阅读:
    shell 网络状态查询 ping curl telnet
    shell 命令 rz sz
    shell 命令之 jps
    Python 之 threading
    根据 MySQL 状态优化 ---- 4. 临时表
    根据 MySQL 状态优化 ---- 3. key_buffer_size
    根据 MySQL 状态优化 ---- 2. 连接数
    根据 MySQL 状态优化 ---- 1. 慢查询
    Linux 服务器的网络配置
    Linux 服务器的网络配置
  • 原文地址:https://www.cnblogs.com/ys1109/p/14404231.html
Copyright © 2011-2022 走看看