因特网的具体构成
-
终端(host)也称端系统(end system):运行应用程序
-
通信链路:光纤,铜线,电磁波,
- 主要指标为传输速率,也称带宽(bandwidth)
-
交换设备:转发分组(packet),路由器和交换机
-
网络服务提供商(Internet Service Provider)
- ISP是由交换设备和通信链路组成的网络,为终端提供因特网接入服务
- 不同层次的ISP:本地ISP,地区ISP,全球ISP
- 每个ISP是自治的
-
协议:规定了设备之间通信需要遵循的规则
- 终端与终端之间
- 终端与交换设备之间
- 换设备与交换设备之间
-
因特网协议标准:
- 由IETF组织统一管理,以RFC xxx文档的形式发布
- 因特网中最核心的两个协议是TCP和IP,因特网协议统称为TCP/IP协议族
-
因特网定义:
- 由一群遵循TCP/IP协议的ISP,按照松散的层次结构组织而成的网络的网络
- 特点:
- 因特网是“网络的网络
- 因特网不存在严格的层次结构
- 因特网没有统一的管理机构
- 因特网是为分布式应用提供通信服务的基础设施
- 因特网提供给应用程序的服务接口:一组用于在因特网上发送和接收数据的应用编程接口API
网络边缘
网络结构:端系统、接入网、网络核心
- end systems:终端
- access networks:将终端连接到其边缘路由器的物理链路
- network core:路由器和通信链路组成的网络
接入网
- 住宅接入:数字用户线(DSL)
- 由电话公司提供,使用已有的数字电话线(每户一条线):
- SLmodem:转换模拟信号和数字信号
- Splitter:合并/分离话音和数据(用户侧)
- DSLAM:汇聚/分离多条DSL线路(ISP侧)
- 上行速率<2.5 Mbps (典型地<1Mbps)
- 下行速率<24 Mbps (典型地<I0Mbps)
- 住宅接入:电缆网
- 有线电视公司提供,使用已有的有线电视基础设施
- 数据和电视信号在同一条电缆中传输
- 混合光纤同轴电缆HFC:hybrid fiber coax
- 有线电视网由光纤网+电缆网组成
- cable modem、Splitter、电缆、光纤、CMTs构成接入网
- 下行速率最高 30Mbps,上行速率最高 2 Mbps
- 几百~几千户家庭共用一条电缆
-
企业接入网:以太网(Ethernet )
用于公司、学校及有较多终端的家庭:
- 以太网交换机及链路构成接入网
- 传输速率:10 Mbps,100Mbps,1Gbps,10Gbps
- 无线接入网:无线局域网(Wifi)
公司或个人提供基站(接入点),将移动终端连接到有线网络- 终端与基站相距几十米内
- 基站通常位于有线网络上
- 无线传输速率:11 Mbps,54Mbps,450Mbps
- 无线局域网是共享的
- 无线接入网:广域无线接入
- 由移动通信公司提供,使用现有的蜂窝电话网络
- 基站可为数万米半径内的用户提供无线接入服务
- 传输速率(共享信道
- 3G:最大(静止)2Mbps
- 4G:下行100Mbps,上行20Mbps
5G:sub-6GHZ上行1.2Gbps,下行>2Gbps
物理媒体(传输媒体,传输介质)
设备之间通过物理媒体相连,物理媒体两端各需要一对收/发设备
在一条路径上,每对设备之间的物理媒体可以不同
- 导引型媒体:信号沿固体媒体传播,如铜线,光纤
- 非导引型媒体:信号在空间自由传播,如电磁波
- 双绞线:两条绝缘的铜导线:
- 3类线: 10 Mbps
- 5类线: 100Mbps~1Gbps
- 6类线:10Gbps
- 电话线,网线
- 同轴电缆:
- 铜芯和网状屏蔽层组成一 对同心导电体
- 有线电视电缆
- 光纤:
- 能引导光脉冲的玻璃纤维
- 传输速率:几十 ~ 几百Gbps
- 低误码率,长距离传输, 抗电磁干扰
- 电磁波
- 蓝牙:2.4GHz,10米左右
- Wifi:2.4GHz,几十米
- 红外:室内短距离
网络核心
网络核心:由路由器和链路形成的网状网络
任务:将数据包从发送侧的边缘路由器,传送到接收侧的边缘路由器
基本问题:数据包如何在网络核心中高效地传递?
-
分组传输延迟小
-
网络吞吐量高
通信网络中移动数据的两种基本方法:
- 电路交换(独占信道):电话网使用
- 分组交换(复用信道):计算机网络使用
分组交换的过程
- 主机将要传输的数据分段,并组装成一系列分组
- 交换:在传输路径上,交换设备从一条链路上接收分组,将其发送到另一条链路上
- 存储转发:交换设备在接收到完整的分组后,才可以开始转发
分组转发为什么不边收边发?
- 完整性保障:在收到完整的分组之前,无法确认分组是否丢失或损坏。边收边发会导致在收到部分数据时就开始发送,这可能会导致发送的分组出现错误或不完整。
- 顺序问题:分组可能经过不同的路径传输,导致到达顺序不一致。如果边收边发,接收到的分组可能需要重新排序,增加了处理的复杂性。
- 缓冲区需求:为了确保数据的正确转发,需要先在缓冲区中存储完整的分组,进行必要的校验和处理。边收边发不利于这种存储和处理,因为可能在数据还没有完全接收时就开始转发。
- 协议要求:某些网络协议(例如TCP)要求对数据进行完整的接收和确认,才能继续处理和转发。而边收边发可能无法满足这些协议的要求。
存储转发引入序列化延迟
在存储转发中,网络设备必须等待一个分组的完整接收后,才能开始处理和转发。这种方式相对于边收边发(即收到部分数据就开始转发)来说,带来了延迟,尤其是当分组较大时。每个分组的传输时间较长时,存储转发的延迟就更加明显。
将一个分组全部推送到一条链路上,耗时L/R 秒
将一个分组从源发送到目的, 总耗时= 2 L/R(不考虑信号传播时间)
3个分组从源终端发送到目的终端,总耗时= 4L/R
P个分组经过N条链路的总耗时是(P+N-1) L/R
其中
- 等待:(P-1)L/R
- 发送:NL/R
当P远大于N时,存储转发不会引入过多的延迟!
存储转发引入排队延迟和丢包
- 排队延迟:分组在输出链路的缓存中排队,引入延迟
- 丢包:若输出链路的缓存满,溢出的分组被丢弃
- 当大量分组集中到达时,排队延迟和丢包较严重
网络的两大核心功能
- 选路(routing)交换设备确定不同目的地的转发端口,生成转发表
- 转发(forwarding)交换设备按照转发表,将分组移动到相应的输出链路
电路交换
电话网采用电路交换:通话前完成两部电话机之间的电路接续,通话结束后释放整条电路
本质是预留资源和独占资源
概念区分:链路和电路
- 链路(link) 物理媒体,也称信道(channel) , 可以通过某种方式划分为若干条独立的子信道
- 电路(circuit) 物理媒体中的一条子信道
复用
- 频分复用FDM
- 时分复用TDM
为什么采用分组交换?
- 同样的链路容量,分组交换允许支持更多的用户!
- 轻负载时,分组交换可以更快地服务用户!
分组交换vs电路交换
分组交换的优点:
资源利用率高,简单(不需要建立电路)
分组交换的缺点
可能产生延迟、丢包,需要设计相应的协议解决
为什么因特网采用分组交换?
- 分组交换适合突发流量
- 传统因特网应用(如电子邮件、文件传输)具有突发通信的
特点
网络的网络
因特网生态系统
- 接入ISP
- 地区ISP
- 第一层ISP
- 对等链路
- 因特网交换点IXP:多个ISP共同对等的地方
- 存在点PoP(Point of Presence):低层ISP接入高层ISP的地方
- 多宿(multi-home):一个低层ISP可以接入多个高层ISP
- 内容提供商网络
衡量网络性能的主要指标
- 延迟:分组从源终端到达目的终端的时间
- 丢包率:未成功交付到目的终端的分组比例
- 吞吐量:单位时间内网络成功交付的数据量
分组延迟的来源
- 节点处理
- 检查错误
- 确定输出链路
- 排队
- 在输出缓存等待传输
- 时间长短取决于链路负载的大小
- 传输延迟
- R=链路带宽(bps)
- L=分组长度(bits)
- 将分组发送到链路上时间=L/R
- 存储转发延时
- 传播延迟
- d=物理链路的长度
- S=在媒体上的传播速度(~2x10^8m/sec)
- 传播延时=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
在以上四种延迟中,不确定性最大的是排队延迟,对网络运行影响最大的也是排队延迟
排队与丢包
输出队列的容量是有限的;队列满时,新来的分组被丢弃
队列长度是一个重要的参数:
- 队列太短:丢包率增大
- 队列太长:排队延迟增大(也会造成间接丢包!)
端到端延迟
分组传输路径上所有节点的节点延迟之和
对端到端延迟敏感的应用:
- 高度敏感:实时交互应用,如网络电话、视频会议
- 中度敏感:在线交互应用,如网页浏览
端到端吞吐量
单位时间内向接收端成功交付的数据量
- 瞬时吞吐量:给定时刻的传输速率
- 平均吞吐量:较长时间内的传输速率
瓶颈链路的带宽限制了端到端吞吐量
协议
协议的要素
- 通信实体之间交换的报文的格式和次序
- 在发送/接收报文、或其它事件后采取的动作
系统分层:将系统按功能划分成一系列水平的层次每一层实现一个功能(服务)
层次间关系:每一层的功能实现都要依赖其下各层提供的服务、
分层的好处
- 易于处理复杂的系统
- 易于确定系统的各个部分及其相互关系
模块化简化了系统的维护和升级
- 改变某层服务的实现方式,对于其它层次是透明的
小结
- 网络按功能划分层次,每层实现一个功能
- 在不同系统的同一层上:
- 对等实体执行该层的协议
- 相同系统的上下层:
- 调用服务/提供服务
- 封装/解封装分组
- 不同系统的不同层:
- 不直接通信
网络安全
拒绝服务(DoS)攻击:攻击者通过耗尽主机或网络带宽资源,使得合法用户得不到所需的服务
嗅探: 监听网络中传输的数据包,获取数据包中携带的信息,如密码
IP欺骗: 发送虚假地址的数据包
重放攻击: 嗅探敏感信息(比如,某用户的口令),之后重新注入网络(以假冒该用户)