什么是计算机网络
什么是计算机网络? 计算机网络就是互连(互联互通)的、自治(无主从关系)的计算机集合。
那么,距离远、数据大如何保证互连?通过交换网络互连主机。
什么 是 Internet ?
- 组成:计算机设备、通信链路、分组交换(数据包转发分组)。
- 服务:提供通信服务的通信基础设施、提供应用编程接口(API)。
问题:仅有硬件(主机、链路、路由器…)连接,Internet能否顺畅运行?能保证应用数据有序交付吗? NO!还需要网络协议。
计算机网络中的数据交换必须遵守实现约定好的规则。
什么是网络协议? 网络协议是为进行网络中的数据交换而建立的规则、标准或约定。协议规定了通信实体之间所交换的消息的格式、意义、顺序以及针对收到信息或发生的事件所采取的“动作”(actions)。
协议的三要素:
- 语法(Syntax):数据与控制信息的结构或格式。
- 语义(Semantics):需要发出何种控制信息,完成何种动作以及做出何种响应,差错控制。
- 时序(Timing):事件顺序、速度匹配。
协议规范了网络中所有信息发送和接受过程。
网络边缘:
- 主机(端系统):位于网络边缘。
- 客户端/服务器应用模型:客户发送请求,接受服务器响应。如Web应用,FTP应用。
- P2P(peer-peer)应用模型:通信在对等实体之间直接进行。如BT、QQ。
接入网络:
- Q:如何将网络边缘接入核心网(边缘路由器)?
- 利用已有的电话线连接中心局的DSLAM。独占式传输,使用频分多路复用技术:不用频段的载波进行传输FDM:>50kHz-1MHz用于下行,4kHz-50kHz用于上行,0kHz-4kHz用于传统电话。
- HFC:混合光纤同轴电缆(hybrid fiber coax):共享式接入,非独占,各家庭通过电缆网络->光纤接入ISP路由器。总的带宽大于电话线接入,但是共享的用户越多,平均接入的网络带宽就越低。
- 利用以太网交换机接入。
- 无线接入:通过共享的无线接入网络连接端系统与路由器。
网络核心:路由+转发
- 路由:通过路由算法,确定分组由源到目的地传输路径。
- 转发:将分组从路由器的输入端口交换至正确的输出端口。
端系统通过接入ISP(access ISPs) 连接到 Internet,接入ISP必须进一步互连,构成复杂的网络互连的网络。
电路交换
电路交换的三个阶段:
- 建立连接(电路建立)
- 通信
- 释放连接(拆除电路)
电路交换要独占资源,直到释放。那么电路交换网络中,如何被多路设备进行共享中继线呢? 多路复用技术(Multiplexing)可以将链路/网络资源(如带宽)划分为”资源片“,将资源片分配给各路”呼叫“(call),每路呼叫独占分配到的资源片进行通信。资源片可能”闲置“(idle)无共享。
典型的多路复用方法:
-
频分多路复用(frequency division multiplexing - FDM)
-
时分多路复用(time division multiplexing - TDM)
-
波分多路复用(wavelength division multiplexing - WDM)
-
码分多路复用(code division multiplexing - CDM)
报文交换和分组交换
报文:源(应用)发送信息整体。比如:一个文件。
分组:报文分拆出来的一系列相对较小的数据包(将ABCDEF分为 AB CD EF三段分发)。
分组交换需要报文的拆分与重组,将产生额外的开销。
报文转发与分组转发均采用"存储=转发 "交换方式,不同的是报文交换需要以完整报文进行"存储=转发 ",分组交换以较小的分组进行“存储-转发”。
优劣:
- 报文交换需要中间路由器具有完整数据包大小的缓存能力,而分组交换只需要缓存每个分组包大小的缓存能力。
- 分组交换在每一个路由节点大部分时间可以并行转发,而报文交换是串行的。
- 电路交换不能共享,需要"建立链路-拆除链路",相同带宽情况下,同时使用用户数少。分组交换允许更多用户同时使用网络,适用于突发数据传输网络,但是可能产生拥塞(congestion):分组延时和丢失(如果中间路由缓存满了,后面到达的分组将被丢弃造成丢包loss)。
四种分组延时:
- 结点处理延迟(nodal processing delay):差错检测、确定输出链路,通常小于毫秒级。
- 排队延迟(queueing delay):等待输出链路可用、取决于路由器拥塞程度。
- 传输延迟(transmission delay):分组长度、链路带宽,决定通过路由的时间。
- 传播延时(propagation delay):物理介质链路长度、信号传播速度,决定路由之间的时间。
时延带宽积 = 传播时延 x 带宽