节点
边:通信链路
协议
互联网:是网络的网络
* 网络与网络之间通过一系列的网络交换节点进行互联互通
* 使用通信设施进行通信的分布式应用
* 通信基础设施为apps提供编程接口(通信服务)
目标:在端系统之间传输数据
1、TCP–传输控制协议(Transmission Control Protocol)
2、UDP - 用户数据报协议 (User Datagram Protocol)
无连接 不可靠数据传输 无流量控制 无拥塞控制
其数据传输的单位是用户数据报
UDP适合于实时多媒体
为呼叫预留端-端资源
链路带宽、交换能力
专用资源:不共享
保证性能
要求建立呼叫连接
计算举例
在一个电路交换网络上,从主机A到主机B发送一个640,000比特的文件需要多长时间?
所有的链路速率为1.536 Mbps
每条链路使用时隙数为24的TDM·建立端-端的电路需500 ms
每条链路的速率(一个时间片): 1.536Mbps/24 =64kbps
传输时间:640kb/64kps = 10s
共用时间:传输时间+建立链路时间=10s + 500ms = 10.5s
电路交换不适合计算机之间的通信
以分组为单位存储-转发方式
1)网络带宽资源不再分分为一个个片,传输时使用全部带宽
2)主机之间传输的数据被分为一个个分组
资源共享,按需使用:
相当于多个电路交换,延迟更大(排队延迟,存储/转发延迟),而来换取了共享性
1、存储-转发
2、排队和延迟
如果到达速率>链路的输出速率:
分组将会排队,等待传输
如果路由器的缓存用完了,分组将会被抛弃
3、网络核心的关键功能
路由:决定分组采用的源到目标的路径
转发: 将分组从路由器的输入链路转移到输出链路
4、统计多路复用
划分时间片的方式,划分是随机的
同样的网络资源,分组交换允许更多用户使用网络
分组交换的特点:
1、适合于对突发式数据传输
* 资源共享
* 简单,不必建立呼叫
2、过度使用会造成网络拥塞:分组延时和丢失
* 对可靠地数据传输需要协议来约束:拥塞控制
1、数据包网络
按ISP划分互联网
互联网结构:网络的网络
问题: 给定数百万接入ISPs,如何将它们互联到一起
选项: 将每个接入ISP都连接到全局ISP(全局范围内覆盖)? 客户ISPs和提供者ISPs有经济合约
1、分组丢失和延时是怎么发生的?
2、四种分组延时
1)节点处理延时
2)排队延时
3)传输延时
4)传播延时
3、分组丢失
4、吞吐量
吞吐量:在源端和目标端之间传输的速率(数据量/单位时间)
1、网络是一个复杂的系统!
网络功能繁杂:数字信号的物理信 号承载、点到点、路由、rdt、进 程区分、应用等
现实来看,网络的许多构成元素和设备:
主机
路由器
各种媒体的链路
应用
协议
硬件, 软件
2、层次化方式实现复杂网络功能:
将网络复杂的功能分成功能明确的层次,每一层实现了其中一个或一 组功能,功能中有其上层可以使用的功能:服务(垂直关系)
本层协议实体相互交互执行本层的协议动作(水平关系),目的是实现本层功能, 通过接口为上层提供更好的服务
在实现本层协议的时候,直接利用了下层所提供的服务
本层的服务:借助下层服务实现的本层协议实体之间交互带来的 新功能(上层可以利用的)+更下层所提供的服务
3、服务和协议
1)服务与协议的区别
* 服务:低层实体向上层实体提供他们之间的通信的能力,是通过原语(primitive)来操作的,上下层服务是垂直结构
* 协议(protocol): 对等层实体之间在相互通信的过程中,需要遵循的规则的结合,是水平关系
2)服务与协议的联系
* 本层协议的实现要靠下层提供的服务来实现
* 本层实体通过协议为上层提供更高级的服务
4、数据单元(DU)
上层的PDU对于本层是SDU,封装后对于本层是PDU
两者的封装关系:一对一、一个SDU分成多个再进行封装成多个PDU(一对多)、多个SDU封装成一个PDU(多对一)
5、分层处理和实现复杂系统的好处?
对付复杂的系统
概念化:结构清晰,便于标示网络组件,以及描述其 相互关系
分层参考模型
结构化:模块化更易于维护和系统升级
改变某一层服务的实现不影响系统中的其他层次
对于其他层次而言是透明的
如改变登机程序并不影响系统的其它部分
改变2个秘书使用的通信方式不影响2个翻译的工作
改变2个翻译使用的语言也不影响上下2个层次的工作
分层思想被认为有害的地方?
效率相对较低
6、Internet协议栈
1)应用层:网络应用
为人类用户或者其他应用进程提供网络应用服务
FTP,SMTP,HTTP,DNS
2)传输层:主机之间的数据传输(区分进程,把不可靠变为可靠)
在网络层提供的端到端通信基础上,细分为进程到进程,完成应用报文与应用报文之间的交互,将不可靠的通信变成可靠地通信
TCP , UDP
3)网络层:为数据报从源到目的选择路由(转发、路由)
在链路层提供的节点到节点通信基础上,网络层提供主机主机之间的通信,以分组为单位在端到端通信传输,不可靠
IP,路由协议
网络层的另一个任务就是要选择合适的路由,使源主机运输层所传下来的分组,能够通过网络中的路由器找到目标主机
4)链路层:相邻网络节点间的数据传输(p2p关系)(相邻两点间,以帧位单位的传输)
2个相邻2点的通信,点到点通信,可靠或不可靠
点对对协议PPP,802.11(wifi),Ethernet
5)物理层:在线路上传送bit(相邻两点间电磁波的承载,以bit的传输)
数据在各层之间的传递过程
7、ISO/OSI参考模型
表示层: 允许应用解释传输的数据, e.g., 加密,压缩,机器相关的表示转换
会话层: 数据交换的同步,检查点,恢复
互联网协议栈没有这两层! (在Internet协议栈在应用层实现)
这些服务,如果需要的话,必须被应用实现
需要吗?
8、封装与解封装
9、各层次的协议数据单元
应用层:报文(message)
传输层:报文段(segment):TCP段,UDP数据报
网络层:分组packet(如果无连接方式:数据报 datagram)
数据链路层:帧(frame)
物理层:位(bit)