计算机网络:自顶向下方法 第一章笔记

Posted mayunfei233

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了计算机网络:自顶向下方法 第一章笔记相关的知识,希望对你有一定的参考价值。

1.7分组交换网络中的延迟、丢包、吞吐量

提问:
假设两条链路的传输速率分别为10Mb和100Mb,谁传输1bit要快一些?

1.7.1计算机网络性能

  • Data rate(数据传输率):计算机网络上的主机在数字信道上的传送数据的速率,例如:百兆以太网
  • Bandwidth(带宽):频率(Frequency)、传输速度(Transmission rate)
  • Throughput(吞吐量):发送方/接收方之间传输的比特数(比特/时间单位),受限于额定速率(rated speed)

1.7.2通信信道

可以是物理传输介质(如电线),也可以是通过多路传输介质(如无线电信道)的逻辑连接

  • 将信息信号从一个或多个发送者(或发送端)传递到一个或多个接收者
  • 传输信息的能力——以赫兹为单位的带宽或以每秒比特为单位的数据速率
  • 单向通信(One-way communication)同时从一点传到另一点或同时传到许多点的、在发射点没有接收到信息,也没有从接收点发送信息
  • 半双工传输(Half-duplex)双向交流,但一次只能向一个方向
  • 全双工传输(Full-duplex)允许双向交流

1.7.3时延和丢包是如何发生的?

数据包在路由器缓冲区中排队:

  • 到链路的数据包到达率超过了输出链路容量
  • 包排队,等待轮到自己

数据包延迟的四种来源:

  • 处理时延 dproc
    检查位错误
    确定输出链接
  • 排队时延 dqueue
    在输出链路等待传输的时间
    取决于路由器的拥塞级别(缓存)
  • 传输时延 dtrans
    R =链路带宽(bps)
    L =包长度(bits)
    发送比特到链路= L/R的时间
  • 传播时延 dprop
    D =物理链路长度
    S =在介质中的传播速度(~2x108米/秒)
    传播延迟= d/s

在这里插入图片描述
数字示例:
两个主机A、B相距L=10000Km,由一条直接的带宽R=1Mbps(220)的链路相连接,假定跨越该链路的传播速度V=2.5×108mps

  • 传播时延Tp是多少?
  • 在这段时间里,主机A向链路中发送了多少个bit?
  • Bit与Bit之间的间距l有多长?
    Tp=L÷V=0.04s
    Numb=Tp× R=41943
    l=L÷ Numb=238m
  • L÷V×R是什么含义?
    (时延带宽积)

总时延:

在这里插入图片描述

  • dproc =处理延迟---------------通常是几微秒或更少
  • dqueue =排队延迟-------------取决于流量强度
  • dtrans =传输延迟---------------= L/R,低速链路显著
  • dprop=传播延迟----------------几微秒到几百毫秒

1.7.4排队时延(详细)

对不同分组情况不同:
比如10个分组,第1个无排队时延,最后一个要等待前面9个,有相对较大排队时延。
所以用统计量衡量,如:平均排队时延,排队时延方差,排队时延超过某一特定值的概率。

  • R =链路带宽(bps)
  • L =包长度(比特)
  • a=平均分组到达率(分组/秒 pkt/s)

流量强度= La/R

  • La/R ~ 0:平均排队延迟小
  • La/R -> 1:延迟变大
  • La/R > 1:到达的“工作”比可以服务的多,平均延迟无限!

注意:
如果分组周期性到达,即每L/R秒到达一个分组,则每个分组都将到达一个空队列,即无排队时延
如果分组以突发形式到达,即每(L/R)xN 秒同时到达N个分组,则第一个到达分组无排队时延,第二个分组有L/R秒排队时延,第n个分组有**(n-1)x(L/R)秒**排队时延

在这里插入图片描述

1.7.5丢包

在1.7.4中我们假设队列能容纳无线分组(缓存足够大),但实际上并不会这样。当流量强度接近于1时,排队时延并不会趋于无穷大,相反,新到的分组由于队列已满(没有地方储存新来的分组)会被路由器丢弃(drop) 我们称这种情况为丢包,所以,一个节点的性能不仅要看时延,也要看丢包率。

1.7.6真正的端到端时延

Traceroute

假设:

  • A、B之间有N-1台路由器
  • 源A向网络发送N个分组,地址指向B
  • N个分组标为1~N
  • 当第i台路由器接收到标识为i的第i个分组时,不向目的地转发该分组,而是向源A发送一个报文
  • B收到分组后同上
  • 源A记录每个报文从发送到接收的往返时延,以及每个报文对应的路由器的名字和IP地址
  • 以上过程重复3次,即发送3N个分组

在这里插入图片描述

1.7.7吞吐量

瞬时吞吐量:每一时刻接收到文件的速率(bps)
平均吞吐量:F比特的文件接收用了T秒,平均吞吐量:F/T

多段链路的吞吐量:
在这里插入图片描述
取决于 瓶颈链路(bottleneck link) 的传输速率,类似水管

			min{R1,R2,R3,……,Rn}

例如:
下载一个F=32x10^6比特的文件,服务器有Rs=2Mbps的传输速率,接入链路有Rc=1Mbps的传输速率。则传输文件所需要的时间为:

   			F/min{Rs,Rc}=32x10^6/1Mbps=32s

当然这只是近似的,并没有考虑到储存转发、处理时延和协议等问题
在现在因特网中对吞吐量的限制因素通常是接入网 ,网络核心通常超量配置高速率链路。
在这里插入图片描述
R通常非常大

假如:

  • 公共链路R的速率与Rs,Rc为同一量级
  • Rs=2Mbps Rc=1Mbps R=5Mbps
  • 10个用户公用一个R

此时下载瓶颈不再位于接入网当中,而是位于核心中的共享链路,每个下载的端到端吞吐量减少到5Mbps/10=500kbps

1.8协议层次及其服务模型

什么是协议?
协议定义了网络实体之间发送和接收消息的格式、顺序以及消息发送和接收时的动作

协议三要素

  • 语法
  • 语义
  • 同步

1.8.1协议分层

为什么要分层?
为了保证准确传递,有很多事情需要处理:

  • 发送指令使链路活跃起来
  • 告诉网络去找到接收端
  • 检查接收端是否准备好了
  • 处理不同格式的数据和信息
  • 传输时还要检查是否有错误
  • 处理时延和丢包
  • 等等等

分层体系结构:
在这里插入图片描述
分层:每层通过以下方式提供服务

  • 在本层中执行了一些动作
  • 依赖使用下层提供的服务

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
为什么要分层?
在这里插入图片描述

1.8.2 ISO:OSI vs. TCP/IP

ISO: OSI/RM ( Open System Interconnection Reference Model, 开放系统互联基本参考模型)

  • 为了连接不同的网络
  • 1977-1984: ISO 7489
  • 7层
  • 理论上的标准
  • 没有广泛使用

在这里插入图片描述
TCP/IP

  • 行业引导
  • 从1970年到现在:互联网的核心
  • 5层
    在这里插入图片描述

1.8.3网络协议栈

  • 应用层:网络应用程序
    FTP, SMTP, HTTP,POP3
    应用层分组:报文

  • 运输层:在应用程序端点之间传送应用层报文
    TCP(面向链接服务), UDP(无连接服务)
    运输层分组:报文段

  • 网络层:将数据报从源主机发送到目的主机
    IP, 路由选择协议,ICMP,IGMP,RIP
    网络层分组:数据报

  • 链路层:为网络层提供服务,网络层将数据报下传到链路层,链路层沿路径传送到下一个节点并上传网络层,将帧从一个网络元素移动到邻近的网络元素
    PPP, Ethernet
    数据报会受到不同链路层协议的不同服务,如:一个数据报可能被一段链路上的以太网和下一段链路上的PPP所处理。
    链路层分组:

  • 物理层:将帧的一个个比特从一个节点移动到下一个节点
    协议与链路层协议相关,也与传输媒介相关

在这里插入图片描述

1.8.4封装

在这里插入图片描述

1.8.5TCP / IP协议套件

在这里插入图片描述

1.8.6实体、协议、服务和服务访问点

  • 实体(entity) 表示任何可发送或接收信息的硬件或软件进程
  • 协议是控制两个对等实体进行通信的规则的集合
  • 在协议的控制下,两个对等实体间的通信使得本层能够向上一层提供服务
  • 要实现本层协议,还需要使用下层所提供的服务
  • 本层的服务用户只能看见服务而无法看见下面的协议
  • 下面的协议对上面的服务用户是透明的
  • 协议是“水平的”,即协议是控制对等实体之间通信的规则
  • 服务是“垂直的”,即服务是由下层向上层通过层间接口提供的
  • 同一系统相邻两层的实体进行交互的地方,称为服务访问点 SAP (Service Access Point)
    在这里插入图片描述

1.9网络安全

网络安全领域是关于:

  • 坏人如何攻击计算机网络
  • 我们如何保护网络免受攻击
  • 如何设计对攻击免疫的体系结构

互联网最初设计时并没有考虑到(很多)安全性:

  • 最初的愿景:“一群互相信任的用户依附一个透明的网络”
  • 互联网协议设计者在“追赶”
  • 所有层的安全考虑!

1.9.1坏人可以通过互联网将恶意软件植入主机

  • 恶意软件可以通过病毒、蠕虫或木马进入主机
  • 恶意间谍软件可以记录击键,访问的网站,上传信息到收集网站
  • 受感染的主机可能被加入僵尸网络,用于垃圾邮件和DoS攻击(拒绝服务攻击)
  • 恶意软件通常是自我复制:从受感染的主机,寻求进入其他主机

木马(trojan horse)
蠕虫(worm)
病毒(virus)

1.9.2坏人可以攻击服务器和网络基础设施

DoS (Denial of service):攻击者通过伪造流量使资源(服务器、带宽)过载,使合法流量无法访问

  • 选择目标
  • 闯入网络周围的主机(见僵尸网络)
  • 从被破坏的主机向目标发送数据包
    在这里插入图片描述

1.9.3坏人可以嗅探分组

数据包监测:

  • 广播媒体(共享以太网、无线)
  • 混杂的网络接口读取/记录所有经过的数据包,例如密码!

Wireshark软件用于章节结尾的实验室是一个(免费的)包嗅探器
在这里插入图片描述

1.9.3坏人可以使用虚假的源地址

IP欺骗:发送虚假源地址的报文
在这里插入图片描述

1.9.4坏人可以记录和回放

记录和回放:嗅探敏感信息(如密码),稍后使用
从系统的角度来看,密码持有者就是用户
在这里插入图片描述

以上是关于计算机网络:自顶向下方法 第一章笔记的主要内容,如果未能解决你的问题,请参考以下文章

计算机网络:自顶向下方法 第一章笔记

计算机网络自顶向下方法第六版笔记(第一章计算机网络和因特网)

计算机网络自顶向下方法第六版笔记(目录)

《计算机网络自顶向下方法-第七版》第一章总结

4.6万字长文总结计算机网络 &&《计算机网络·自顶向下方法》学习笔记(1-6章)

计算机网络:自顶向下 第一章1.6 网络安全