计算机网络概述 LeeRinji

什么是计算机网络

计算机网络(computer network)是自主计算机的互连集合。(ANDREW S. TANENBAUM)

计算机网络是利用通信设备和线路将地理位置不同的、功 能独立的多个计算机系统***连接***起来,以功能完善的网络软件实现网络的硬件、软件及资源共享和信息传递的系统。 简单来说就是连接两台或多台计算机进行通信的系统。(维基百科)

直接连接的网络

点到点网络 (point-to-point network)

多路访问网络 (multiple access network)

点到点网络: 1

多路访问网络: 2

3 四个,ABE 共享链路为一个直连网,BC 点到点连接为一个直连网,CDF 共享链路为一个,FG 点到点连接为一个,共四个直连网。

间接连接的网络

网络互连

用路由器(或网关)连接起来构成的网络称为互连网络(internetwork 或 internet)。因特网 (Internet) 是一种互连网络。

graph TB
路由器---网络1
路由器---网络2
路由器---网络3

什么是因特网

ISP ( Internet Service Provider),即因特网服务提供商。顶层 ISP 也称为主干网。第 2 层 ISP 是更小的 ISP(常常是区域 ISP),是顶层 ISP 的客户,可 以连到顶层 ISP 或其它第 2 层 ISP。终端系统可以通过第 2 层 ISP 或本地 ISP 网络(接入网络)连 入互联网。

网络提供的服务

数据链路层一般都提供 3 种基本服务,即无确认的无连接服务、有确认的无连接服务、有确认的面向连接的服务。

可靠的服务包括:

不可靠的服务包括:

面向连接的服务,无连接的服务

有确认的服务,无确认的服务 在有确认的服务中,作为对请求原语的反应,接收方要发出一个明确的响应原语。

数据报服务:无连接无确认

请求响应和消息流服务

下面的电信模式分别使用的服务类型:

普通邮件:无连接无确认的服务(尽力服务) 电话:面向连接的服务 快件:无连接有确认的服务

因特网体系结构

4 5 6

ISO/OSI 参考模型

一般网络体系结构(OSI 参考模型)将网络协议分为七层;TCP/IP 体系结构将网络协议分为五层。因特网没有这两层,如果需要,可以在应用程序中实现。

网络性能分析:延迟和丢包

7

当一个包到达时如果有空闲缓存则排队等待转发,产生延迟(delay)。如果没有空闲缓存,则丢弃该包,造成丢失 (loss)

包交换(packet-switching)中的延迟

节点延迟:d(nodal) = d(proc) + d(queue) + d(trans) + d(prop)

  1. 处理延迟(processing)
    • 检查比特错
    • 确定输出链路
  2. 排队延迟(queueing)
    • 在输出链路队列等待发送
    • 依赖于路由器的拥塞程度
  3. 传输延迟(transmission delay)
    • 包长(bits)/链路带宽(bps),也称为发送延迟
  4. 传播延迟(propagation delay)
    • 物理链路长度/信号传播速度(~2*10^8m/sec)9

带宽和吞吐量

注:一条链路的带宽(bandwidth)一定大于等于其吞吐量(throughput)

例题

一条点到点链路长 200 公里,传播速度为 2×10^8 米/秒。如果发送一个 100 字节的包, 以多少带宽(bps)它的传播延迟(propagation delay)会等于其传输延迟(transmit delay)?(只 写最后结果,单位为 Kbps)

8 * 100 / X(bps) = 200*1000/(2×10^8)= 1 / 1000
X = 800000bps = 800Kbps

一条点到点链路长 200 公里,传播速度为 2×10^8 米/秒,带宽为 100Mbps。发送一个 20000 比特的包通过该链路需要多长时间(ms)?  考虑从第一位发送到收到最后一位的时间。

200000/200000000+20000/100000000=1ms+0.2ms = 1.2ms

如果一个长度为 3000 字节的文件用一个数据包从源主机通过一段链路传给了一个交换 机(采用 store-and-forward 方式),然后再通过第二段链路到达目的主机。如果在包交换 机的延迟为 2ms,  两条链路上的传播延迟都是 2×10^8 米/秒,带宽都是 1Mbps,  长度都是 6,000 公里。问这个文件在这两台主机之间的总延迟是多少?

在源主机发出和交换机发出之后,均包括传输延迟和传播延迟,所以需要*2,结果为 110ms。

(存储转发方式:收到整个包再发送)

假定 12 个包同时到达包交换机的输出接口,此时并没有任何包在此输出接口处发送或 排队。如果每个数据包的长度都是 300 字节,该接口的带宽为 1Mbps。这些数据包的平 均排队延迟是多少?

每个包的发送时间为 300bytes/1Mbps,即 2.4ms。

第一个排队时间为 0,第二个包的排队时间为 12.4ms,…,第 12 包的排 队时间为 112.4ms。

因此,平均排队时间为: (0+……+11)2.4/12 =662.4ms/12=13.2ms