CSDN的markdown格式的编写简直是垃圾,有空我会整理把笔记整理到云盘
Internet
网络的网络
具体构成角度
节点
- 主机及其上面运行的 APP(主机=端系统)
- 路由器,交换机等网络交换设备(分组交换设备:转发分组)
边:通信链路
(光纤,同轴电缆,无线电,卫星…)
(传输速率=带宽 bps) - 接入网链路:主机连接到互联网的链路
- 主干链路:路由器间的链路
协议
协议定义了两个或者多个通信实体之间交换的报文格式和次序,以及在报文传输/接受或其他事件方面所采取的动作。
简单而言,就是报文格式,次序,动作
协议控制发送,接受消息
服务角度 - 使用通信设施进行通信的分布式应用
- 通信基础设施为 apps 提供编程接口(通信服务)
- UDP:无连接的不可靠服务
- TCP:面向连接的可靠服务
网络结构
网络结构由网络核心,网络边缘和接入网,物理媒体构成
网络边缘 - 端系统:应用程序,WEB
- 客户/服务器模式
- 对等模式(peer2peer)
采用网络设施的面向连接的服务
目标:在端系统之间传输数据
TCP 服务
采用基础设施的无连接服务
目标:在端系统之间传输数据
UDP 服务
网络核心
网络核心:路由器的网状结构
基本问题:数据通过什么样的网络进行传输 - 电路交换
- 分组交换
电路交换
端到端的资源被分配给从源端到目标端的呼叫
特点: - 独享资源:不共享,每个呼叫建立起来后,能够保证性能
- 如果呼叫没有数据发送,则分配的资源浪费
网络资源(如带宽)被分成片: - 为呼叫分配片
- 如果某个呼叫没有数据,则其资源片属于空闲状态
将带宽分为片:
- 频分(FDM)
- 时分(TDM)
- 波分(WDM)
计算例题:
通过电路交换网络,从主机 A 发送一个 64 万比特的文件到主机 B 需要多长时间?
所有链路的带宽为 1.536 Mbps
每条链路使用 24slots/sec 的时分复用(TDM)
500 毫秒建立端到端电路
解答:
首先先建立端到端电路,花费 0.5s
然后传输数据,由 TDM 可知,主机 A 与主机 B 在 1s 内能使用链路 1/24s,即实际链路带宽 1.536Mbps/24
传输数据所需时间为(640kbit)/(1.536Mbps/24) = (640kb)/(64kbps) = 10s
综上,一共 0.5s+10s = 10.5s
缺点:
- 连接建立时间长
- 通信具有突发性,线路交换导致资源浪费
分组交换
以分组为单位存储-转发方式
特点: - 网络带宽资源不再分为一个一个的片,传输时使用全部带宽
- 传输的数据被分为一个个分组
- 资源共享,按需使用
- 存储-转发:分组每次移动一跳(延迟比电路交换大)
存储-转发
被传输到下一个链路之前,整个分组必须到达路由器
R:链路带宽
L:分组长度
三次存储-转发的时间为:3 * L/R
排队延迟和丢失
排队延迟:到达速率 > 链路的输出速率
丢失:路由器的缓存消耗殆尽,分组将被抛弃
下面详细讲解分组延迟,丢失和吞吐量(计算大题)
4 种分组延时: - 节点处理延时:检查 bit 级差错,检查分组首部和决定将分组导向何处
- 排队延迟:在输出链路上等待传输的时间,依赖于路由器的拥塞程度
- 传输延迟:即上面介绍的存储-转发时间 L/R
- 传播延迟:d=物理链路的长度,s=在媒体上传播速度,t = d/s
综上所述:
节点延迟 = 节点处理延迟+排队延迟+传输延迟+传播延迟
d
n
o
d
a
l
=
d
p
r
o
c
+
d
q
u
e
u
e
+
d
t
r
a
n
s
+
d
p
r
o
p
d_{nodal} = d_{proc} + d_{queue}+d_{trans}+d_{prop}
dnodal=dproc+dqueue+dtrans+dprop
分组丢失:
路由器的缓存消耗殆尽,分组将被抛弃
吞吐量:
在源端和目标端之间传输的速率(数据量/单位时间)
端到端的平均吞吐取决于瓶颈链路 = min(R1,R2,Rn)
接入网&物理媒体
接入网
- DSL : 采用现存的到交换局 DSLAM 的电话线,数据被传到互联网,语音被传到电话网
- 线缆网络:分为上下行
- 家庭网络
- 企业接入网络
- 无线接入网络:无线 LANs,广域无线接入(3G,4G)
物理媒体 - 双绞线
- 同轴电缆
- 光纤,光缆
- 无线链路
Internet 结构&ISP
ISPs: Internet Service Providers
互联网络结构:网络的网络
第一层 ISP
国家/国际覆盖,速率极高
功能: - 直接与其他第一层 ISP 连接
- 与大量第二次 ISP 和其他客户网络连接
第二层 ISP
区域性的
与一个或者多个第一层 ISP,也可能与其他第二层 ISP 连接
第三层 ISP 与本地 ISP
接入网(与端系统最近)
协议层次&服务模型
协议层次
层次化方式实现复杂网络结构:
- 将复杂的功能划分为功能明确的层次,其中每一层实现一组功能,下层为上层提供可用功能(服务)
- 本层协议实体相互交互执行本层的协议动作
- 实现本层协议时,使用下层提供的服务
服务&服务访问点
服务( Service):低层实体向上层实体提供它们之间的 通信的能力
原语(primitive):上层使用下层服务的形式,高层使用 低层提供的服务,以及低层向高层提供服务都是通过 服务访问原语来进行交互的—形式
服务VS协议
服务与协议的区别
- 服务(Service):低层实体向上层实体提供它们之间的 通信的能力,是通过原语(primitive)来操作的,垂直
- 协议(protocol) :对等层实体(peer entity)之间在相互 通信的过程中,需要遵循的规则的集合,水平
服务与协议的联系 - 本层协议的实现要靠下层提供的服务来实现
- 本层实体通过协议为上层提供更高级的服务
Internet协议栈
自上而下
- 应用层:FTP,SMTP,HTTP,DNS(报文)
- 传输层:TCP,UDP(报文段)
- 网络层:IP,路由协议(分组)
- 链路层:PPP,802.11WIFI,Ethernet(帧)
- 物理层:链路上传输bit(位)
ISO/OSI:
多了表示层和会话层