互联网概述
网络的网络
概念区分
- 计算机网络 (computer networking)
计算机网络(简称 网络):由若干结点(node)和连接这些结点的链路(link)组成。
ps:结点可以是计算机、集线器、交换机、路由器等。链路可以是有限链路、无线链路。 - 互连网 (internet)
- 多个计算机网络互连而成的计算机网络
- 可使用任意协议
- 互联网 (或因特网,Internet)
- 起源于美国,前生是ARPANET
- 采用TCP/IP协议族
- 由各大ISP和国际机构组建的,覆盖全球范围的互连网(internet)
ISP: Internet Service Provider,即互联网服务提供商
什么是计算机网络?
计算机网络(Computer networking)是一个将众多分散的、自治的计算机系统,通过通信设备与线路连接起来,由功能完善的软件实现资源共享和信息传递的系统。
计算机网络的特点
- 连通性 (Connectivity)
- 共享 (Sharing)
互联网基础结构发展的三个阶段
- 从单个网络ARPANET向互连网发展的过程
- 建成了三级结构的互联网
- 逐渐形成了全球范围的多层次ISP结构的互联网
互联网的组成
从工作方式上看,可以划分为:
- 边缘部分
由所有连接在互联网上的主机组成的。 - 核心部分
由大量网络和连接这些网络的 组成。
互联网的边缘部分
处在互联网边缘的部分就是连接在互联网上的所有主机。这些主机又称为端系统。
端系统之间的通信方式可以划分为
- 客户-服务器方式(C/S方式)
- 最主要特征:客户是服务请求方,服务器是服务提供方
- 对等连接方式(peer-to-peer方式,P2P方式)
互联网的核心部分
- 网络核心部分是互联网中最复杂的部分。
- 网络中的核心部分要向网络边缘中的大量主机提供连通性,使边缘部分中的任何一个主机都能够向其他主机通信(即传送或接收各种形式的数据)。
- 在网络核心部分起特殊作用的是路由器 (router)。
- 路由器是实现分组交换(packet switching)的关键构件,其任务是转发收到的分组,这是网络核心部分最重要的功能。
电路交换的主要特点
- 电路交换是面向连接的。
- 电路交换的三个阶段:
- 建立连接(尝试占用通信资源):建立一条专用的物理通路,以保证双方通话时所需的通信资源在通信时不会被其他用户占用;
- 通信(一直占用通信资源):主叫和被叫双方就能互相通电话;
- 释放连接(归还通信资源):释放刚才使用的这条专用的物理通路(释放刚才占用的所有通信资源)。
电路交换更适用于:低频次,大量地传输数据。计算机之间的数据往往是高频次、少量地传输数据。
三种交换的比较
电路交换 | 报文交换 | 分组交换 | |
---|---|---|---|
完成传输所需时间 | 😎最少(排除建立/释放连接耗时) | 😭最多 | 😊较少 |
存储转发时延 | 😎无 | 😭较高 | 😊较低 |
通信前是否需要建立连接 | 😭是 | 😎否 | 😎否 |
缓存开销 | 😎无 | 😭高 | 😊低 |
是否支持差错控制 | 😭不支持 | 😎支持 | 😎支持 |
报文数据有序到达? | 😎是 | 😎是 | 😭否 |
是否需要额外的控制信息 | 😎否 | 😊是 | 😭是(控制信息占比最大) |
线路分配灵活性 | 😭不灵活 | 😎灵活 | 😎非常灵活 |
线路利用率 | 😭低 | 😎高 | 😎非常高 |
计算机网络的分类
按分布范围分类
- 广域网(WAN,Wide Area Network)
- 城域网(MAN,Metropolitan Area Network)
- 局域网(LAN,Local Area Network)
- 个域网(PAN,Personal Area Network)
按传输技术分类
- 广播式网络——当一台计算机发送数据分组时,广播范围内所有计算机都会收到该分组,并通过检查分组的目的地址决定是否接收该分组
- 点对点网络——数据只会从发送方“点对点”发到接收方,精准送达
按拓扑结构分类
- 总线型结构:数据“广播式”传输,存在“总线争用”问题。
- 环型结构:数据“广播式”传输,通过“令牌”解决总线争用问题,令牌顺环依次连接,拿到令牌者可使用总线。
- 星型结构:由中央设备实现数据的“点对点“传输;不存在总线争用问题。
- 网状结构:网状结构:数据通过各中间节点逐一存储转发;属于“点到点”传输。
计算机网络的性能
计算机网络的性能指标
- 速率(Speed)
- 指连接到网络上的节点在信道上传输数据的速率。也称数据率或比特率、数据传输速率。
- 单位:bit/s,b/s,bps。
有时也会用 B/s(1B= 8b,B=Byte 字节,b=bit 比特) - K(103),M(106),G(109),T(1012)
ps:在计组和操作系统中,K(210),M(220),G(230),T(240)
- 带宽(bandwidth)
- 某信道所能传送的最高数据率。
- 吞吐量(Throughput)
- 单位时间内通过某个网络(或信道、接口)的实际数据量。
- 受带宽限制、受复杂的网络负载情况影响。
- 时延(Delay)
- 指数据(一个报文或分组,甚至比特)从网络(或链路)的一段传送到另一段所需的时间。有时也成为延迟或迟延。
- 总时延=发送时延+传播时延+处理时延+排队时延
- 发送时延:$\frac{数据长度(bit)}{发送速率(bit/s)}$
- 传播时延:$\frac{信道长度(m)}{电磁波在信道中的传播速度(m/s)}$
- 处理时延+排队时延:受网络负载,路由器性能等诸多因素影响。
- 处理时延:被路由器处理所花的时间(如分析首部,查找存储转发表)
- 排队时延:数据排队进入,排队发出路由器所花的时间
- 时延带宽积
- $传播时延\times带宽$
- 含义:一条链路中,已从发送端输出但尚未到达接收端的最大比特数。
- 往返时间RTT(Round-trip Time)
- 表示从发送方发送完数据,到发送方收到来自接受方的确认总共经历的时间
- 信道利用率
- 某个信道有百分之多少的时间是有数据通过的
- $信道利用率= \frac{有数据通过的时间}{有数据通过的时间+ 没有数据通过的时间}$
- 利用率低会浪费带宽资源,利用率高可能造成网络拥塞
非性能指标(了解)
- 费用
- 质量
- 标准化
- 可靠性
- 可扩展和可升级性
- 易于管理和维护
计算机网络体系结构
层
- 使用了模块化、信息隐藏的方法
- 每一层本质上是计算机网络的一个组成模块
- 每一层的目的是向上层提供服务;上层可以使用其提供的服务,但其内部的实现对于上层是不可见的
- 每一次为了向上层提供服务,需要特定的协议
分层的好处
- 各层之间是独立的
- 灵活性好
- 结构上可分割开
- 易于实现和维护
- 能促进标准化工作
对等实体
- 同一层内,发送端和接收端的两个实体
- 为了向上一层提供服务,对等实体遵循特定协议完成数据交换
- 一台实体的第n层实体与另一台机器的第n层实体进行数据交换
- 对等层次之间的传送的数据单位称为该层的协议数据单元(PDU)
服务
- 同一主机内,下层(n-1层)向上层(n层)实体提供的功能
- 低层通过接口向上层提供服务
协议
- 对等实体间关于如何通信的一种规则约定
网络协议的重要组成要素
- 语法:数据与控制信息的结构或格式
- 语义:实现服务需要发出何种控制信息,完成何种动作以做出何种响应
- 同步:事件实现顺序的详细说明
概念总结:
- 实体(entity)表示任何可发送或接收的信息的硬件或软件进程
- 协议是控制两个对等实体进行通信的规则的集合
- 在协议的控制下,两个对等实体间的通信使得本层的服务能够向上层服务
- 本层的服务只能看见服务而无法看见下面的协议
- 协议是水平的,及协议是控制对等实体之间通信的规则。
- 服务时垂直的,服务是由下层向上层通过层间接口提供的
计算机体系结构概念的抽象性
- 计算机网络的体系结构(architecture)是计算机网络的各层及其协议的集合,是计算机网络及其部件所应完成的功能的精确定义。
- 实现(implementation)是遵循这种体系结构的前提下用何种硬件或软件完成这些功能的问题。
- 体系结构是抽象的,而实现则是具体的,是真正在运行的计算机硬件和软件。