导论
一、什么是因特网
因特网是全球最大的互联网络
组成角度
- 互联的计算设备集合
主机 = 端系统
通过**网卡(网络适配器)**接入网络 - 通信链路
光纤、铜缆、无线电、卫星
光纤一般使用于网络核心 - 分组交换:转发分组(数据包)
路由器和交换机
服务角度
- 为网络应用提供提供通信服务的通信基础设施
· Web、VoIP、email、网络游戏、电子商务、社交网络 - 为网络应用提供应用编程接口(API)
· 支持应用程序连接Internet,发送/接收数据
· 提供类似于邮政系统的数据传输服务
二、什么是计算机网络
计算机网络就是互联的、自治的计算机集合,其中互联指的是互联互通(通信链路)、自治指的是无主从关系。计算机网络实质上是一种通信网络,结合了通信技术和计算机技术。
三、什么是网络协议
网络通讯并不通过协议完成,网络通信过程是凭借着主机、链路、路由器等硬件设施,遵循着网络协议完成的。
网络通信
- 通信主体是机器而不是人
- 交换“电子化”或“数字化”信息
- 计算机网络的所有通信过程都必须遵循某种规则——协议
网络协议
简称协议,是为进行网络中的数据交换而建立的规则、标准或约定。
协议规定了通信实体之间所交换的消息的格式、意义、顺序以及针对收到的消息或发生的事件所采取的“动作”
简言之,协议是对等体之间的规约。
协议三要素
- 语法:
数据与控制信息的结构或格式
数字电平 - 语义:
需要发出何种控制信息
完成何种动作以及做出何种响应
差错控制 - 时序:
事件顺序
速度控制 - 规则
响应消息的时间
如何响应消息
协议的意义
- 规范了网络中所有信息发送和接收过程,TCP、HTTP、IP、Skype
- 学习网络的重要内容之一
- 网络创新的重要形式之一
- Internet协议标准
RFC(Request for Comments)
IETF(互联网工程任务组)
四、计算机网络结构
网络边缘
- 主机(端系统)
位于网络边缘
运行网络应用程序,如email、Web
通过**网卡(网络适配器)**接入网络 - 客户/服务器(C/S)应用模型
客户发送请求,接收服务器响应,如Web应用、文件传输、FTP应用
服务器的带宽以及计算能力会是其提供的服务的瓶颈。 - 对等(P2P)应用模型
无(或不仅依赖)专用服务器
通信在对等实体之间直接进行,如BT、Skype、QQ
接入网络
网络边缘通过接入网络接入核心网
-
数字用户线路(DSL)
利用已有的电话线连接中心局的DSLAM(DSL接入多路复用器)
1) 数据通信通过DSL电话线连接到Internet
2) 语音(电话)通过DSL电话线连接到电话网a) DSL标准定义了12Mbps下行和1.8Mbps上行传输速率,以及24Mbps下行和2.5Mbps上行传输速率。因为上行速率和下行速率是不同的,所以这种接入被称为不对称的。
b) FDM:频分多路复用
在不同频带(载波)上传输不同频道
· >50kHz-1MHz用于下行
· 4kHz-50kHz用于上行
· 0kHz-4kHz用于传统电话 -
电缆网络
数据、电视信号在共享线缆分布式网络上利用不同频率传输速率
电缆英特网接入的一个重要特征是共享广播媒体
HFC:混合光纤同轴电缆
· 下行高达30Mbps传输速率,上行为2Mbps传输速率
1)各家庭(设备)通过电缆网络——光纤接入路由器
各家庭共享家庭至电缆头端的接入网络
不同于DSL的独占至中心局的接入
2)机构(企业)接入网络(Ethernet)
主要用于公司、高校、企业等
典型传输速率:10Mbps、100Mbps、1Gbps、10Gbps
目前,端系统通常直接连接以太网交换机 -
无线接入网
通过共享的无线接入网络连接端系统与路由器,通过基站或称为“接入点”
1) 无线局域网(LANs)同一建筑物内(30m)
802.11 b/g(WIFI)
传输速率:11Mbps、54Mbps
2)广域无线接入
通过电信运营商(蜂窝网)
接入范围在几十公里
带宽:1Mbps、10Mbps、100Mbps
3G、4G:LTE
移动互联网
物理媒体
实现网络互连的传输媒介(如光纤、双绞线、微波等)称为链路 。
物理媒体分为导引型媒体和非导引型媒体。对于导引型媒体,电波沿着固体媒体前行,如光缆、双绞铜线和同轴电缆。对于非导引型媒体,电波在空气或外层空间中传播,例如在无线局域网或数字卫星频道中。
- 双绞铜线
双绞线由两根隔离的铜线组成,每根大约1mm粗,以规则的螺旋形式排列着。这两根线被绞合起来,以减少来自邻近类似的双绞线的电气干扰。通常许多双绞线捆扎在一起形成一根电缆,并在这些双绞线外面覆盖上保护性防护层。一对电线构成了一个通信链路。无屏蔽双绞线(UTP)常用在建筑物内的计算机网络中,即用于局域网(LAN)中。目前局域网中的双绞线的数据速率从10Mbps到10Gbps。所能达到的数据传输速率取决于线的粗细以及传输方和接收方之间的距离 - 同轴电缆
与双绞线类似,同轴电缆由两个铜导体组成,但是这两个导体是同心的而不是并行的。同轴电缆能被用作导引型共享媒体 - 光纤
光纤是一种细而柔软、能够导引光脉冲的媒体,每个脉冲表示一个比特。它们不受电磁干扰,长达100km的光缆信号衰减极低,并且很难窃听。这些特征使得光纤成为长途引导型传输媒体,特别是跨海链路。由于成本较高,所以在短途传输中应用少。 - 陆地无线电信道
无线电信道承载电磁频谱中的信号。它不需要安装物理线路,并具有穿透墙壁、提供与移动用户的连接以及长距离承载信号的能力,因而成为一种有吸引力的媒体。无线电信道的特性极大地依赖于传播环境和传输信号地距离,环境上的考虑取决于路径损耗和遮挡衰落、多径衰落以及干扰。
陆地无线电信道大致分为三类:一类运行在很短距离(1~2m);另一类运行在居于,通常跨越数十到几百米;第三类运行在广域,跨越数万米。 - 卫星无线电信道
一颗通信卫星连接两个或多个位于地球的微波发射方/接收方,它们成为地面站。该卫星在一个频段上接收传输,使用一个转发器再生信号,并在另一个频率上传输信号。通信中常使用两类卫星:同步卫星和近地轨道卫星。同步卫星永久地停留在地球上方的相同点上;近地轨道卫星放置得非常靠近地球,并且不是永久地停留在地球上方的一个点。
网络核心
网络核心的关键功能:路由+转发
网络核心解决的基本问题:通过数据交换是现实数据从源主机通过网络核心送达目的主机
路由:确定分组从源到目的传输路径
转发:将分组从路由器的输入端口交换至正确的输出端口
五、Internet结构:网络之网络
目前,无人能够给出当前Internet的精确描述
六、数据交换
交换设备具有动态转接功能
交换网络具有动态分配传输资源的功能
电路交换
最典型的就是电话网
三个阶段:
- 建立连接(呼叫/电路建立)
- 通信
- 释放连接(拆除电路)
独占资源表示信道在被占用时无法被第三方共享
物理链路:即物理层面的线路,如光纤、电缆、信道(某种意义上同电路一样),代表着信号的通道
一个物理链路可以通过多路复用划分成很多信道
多路复用
链路/网络资源(如带宽)划分为“资源片”
将资源片分配给各路“呼叫”
每路呼叫独占分到到的资源片进行通信
资源片可能“闲置”(无共享)
典型的多路复用方法有:频分多路复用(FDM)和时分多路复用(TDM)
1.频分多路复用的各用户占用不同的带宽资源(这里的带宽是频率带宽Hz,而不是数据的发送速率)
用户在分配到一定的频带后,在通信过程中自始至终都占用这个频带
2. 时分多路复用则是将时间划分为一段段等长的时分复用帧(TDM帧),每个用户在每个TDM中占用固定序号的时隙
时分复用的所有用户是在不同的事件占用相同的频带宽度
分组交换
分组:报文分拆出来的一系列相对较小的数据包
分组交换需要报文的拆分与重组(会产生额外开销)
假设,报文大小为
M
b
i
t
s
M bits
Mbits,链路带宽(数据传输速率)为
R
b
p
s
R bps
Rbps,分组长度(大小)为
L
b
i
t
s
L bits
Lbits,跳步数为
h
h
h,路由器数
n
n
n,其中
n
=
h
−
1
n=h-1
n=h−1
分组传输延迟(时延)
d
e
l
a
y
=
L
(
b
i
t
s
)
R
(
b
p
s
)
delay = \frac{L\left(bits\right)}{R\left(bps\right)}
delay=R(bps)L(bits)
分组交换的交付时间为
T
=
M
/
R
+
(
h
−
1
)
L
/
R
=
M
/
R
+
(
n
)
L
/
R
T=M/R+\left(h-1\right)L/R=M/R+\left(n\right)L/R
T=M/R+(h−1)L/R=M/R+(n)L/R
分组交换允许更多用户同时使用网络——网络资源充分共享
分组交换适用于突发数据传输网络,资源充分共享;简单、无需呼叫建立
分组交换可能产生拥塞:分组延迟和丢失,所以需要协议处理可靠数据传输和拥塞控制
七、计算机网络性能
速率
速率即数据率或称数据传输速率或比特率;是单位时间(sec)传输的信息量(bit)
是计算机网络中最重要的一个性能指标
单位:b/s(或bps)、kb/s、Mb/s、Gb/s
k
=
1
0
3
、
M
=
1
0
3
、
G
=
1
0
9
k=10^3、M=10^3、G=10^9
k=103、M=103、G=109
往往指的是额定速率或标称速率
带宽
原本指信号具有的频带宽度,即最高频率与最低频率之差,单位是赫兹(Hz)
网络的“带宽”通常是数字信道所能传送的最高数据率,单位:b/s(bps)
常用单位:kb/s、Mb/s、Gb/s、Tb/s
延迟/时延
Q:分组交换为什么会发生丢包和时延
A:分组在路由器缓存中排队,当分组到达速率超出输出链路容量时分组排队,等待输出链路可用
四种分组延迟
- 结点处理延迟 d p r o c d_{proc} dproc:差错检测、确定输出链路、通常<msec
- 排队延迟 d q u e u e d_{queue} dqueue:等待输出链路可用、取决于路由器拥塞程度
- 传输延迟 d t r a n s d_{trans} dtrans:由分组长度L和链路带宽R决定, d t r a n s = L / R d_{trans}=L/R dtrans=L/R
- 传播延迟 d p r o p d_{prop} dprop:由物理链路长度d和信号传播速度s(~2x10^8 m/sec), d p r o p = d / s d_{prop}=d/s dprop=d/s
可以将这四种延迟类比车队模型
排队延迟
当表征排队时延时,人们通常使用统计量测度,如平均排队时延、排队时延的方差和排队时延超过某些特定值的概率。
排队时延很大程度取决于流量到达该队列的速率、链路的传输速率和到达流量的性质,即流量时周期性到达还是以突发形式到达。
R:链路带宽(bps)
L:分组长度(bits)
a:平均分组到达速率
流量强度=La/R
当流量强度趋近于0时,平均排队延迟很小;
当流量强度趋近于1时,平均排队延迟很大;
当流量强度大于1时,超出服务能力,平均排队延迟无限大!
时延带宽积=传播时延x带宽=
d
p
r
o
p
×
R
d_{prop}\times R
dprop×R bits
链路的时延带宽积又称为以比特为单位的链路长度
分组丢失(丢包)
队列缓存容量有限,分组到达已满队列将被丢弃(即丢包),丢弃分组可能由前序结点或源重发(也可能不重发)
丢
包
率
=
丢
包
数
已
发
分
组
总
数
丢包率=\frac{丢包数}{已发分组总数}
丢包率=已发分组总数丢包数
吞吐量/率:表示在发送端与接收端之间传送数据速率(b/s)
即时吞吐量:给定时刻的速率
平均吞吐量:一段时间的平均速率
瓶颈链路:端到端路径上,限制端到端吞吐量的链路
两个场景请见书本!
八、计算机网络体系结构
网络体系结构是从功能上描述计算机网络结构;
计算机网络体系结构简称网络体系结构,是分层结构;
每层遵循某个/些网络协议完成本层功能;
计算机网络体系结构是计算机网络的各层及其协议的集合。
体系结构是一个计算机网络的功能层次及其关系的定义;体系结构是抽象的。
Q:为什么采用分层结构?
A:
结构清晰,有利于识别复杂系统的部件及其关系;
模块化的分层易于系统更新、维护;(任何一层服务实现的改变对于系统其他层都是透明的)
有利于标准化。
服务模型:每层通过在该层中执行某些动作,或者使用直接下层的服务来提供它的服务。各层之间通过服务进行交互。每一层都包含了协议、服务和接口。
分层网络体系结构基本概念
实体表示任何可发送或接受信息的硬件或软件进程。
协议是控制两个对等实体进行通信的规则的集合,协议是“水平的”。
任一层实体需要使用下层服务,遵循本层协议,实现本层功能,向上层提供服务,服务是“垂直的”.
下层协议的实现对上层的服务用户是透明的。
同系统的相邻层实体间通过接口进行交互,通过服务访问点SAP,交换原语,指定请求的特定服务。
服务模型
OSI参考模型
开放系统互联(OSI)参考模型是由国际标准化组织(ISO)于1984年提出的分层网络体系结构模型
目的是支持异构网络系统的互联互通
是异构网络系统互联的国际标准
是理解网络通信的最佳学习工具(理论模型)
具有7层(功能),每层完成特定的网络功能
Q:为什么需要数据封装?
A:
- 增加控制信息,构造协议数据单元(PDU)
- 控制信息主要包括:
地址:标志发送端/接收端
差错检测编码:用于差错检测或纠正
协议控制:实现协议功能的附加信息,如:优先级、服务质量、安全控制等
物理层功能(比特)
- 接口特性:机械特性、电气特性、功能特性、规程特性
- 比特编码
- 数据率
- 比特同步:时钟同步
- 传输模式:单工(只能从一端向另一端发送,而不能相反)、半双工(可以彼此发送数据,但不能同时)、全双工(可以同时向两端发送数据)
数据链路层功能(帧)
端与端之间是一跳一跳进行转发的
提供相邻结点之间的逻辑交互
- 负责结点——结点数据传输
- 组帧
- 物理寻址:在帧头中增加发送端和/或接收端的物理地址标志数据帧的发送端和/或接收端
- 流量控制:避免淹没接收端
- 差错控制:检测并重传损坏或丢失帧,并避免重复帧
- 访问(接入)控制:在任一给定时刻决定哪个设备拥有链路(物理介质)控制使用权
网络层功能(数据报)
提供主机到主机之间的逻辑通信。
网络层分组为数据报
- 负责源主机到目的主机数据分组交付:可能穿越多个网络
- 逻辑寻址:全局唯一逻辑地址,确保数据分组被送达目的主机,如IP地址
- 路由:路由器(或网关)互连网络,并路由分组至最终目的主机;路径选择
- 分组转发
传输层功能(报文段)
进程到进程之间的逻辑交互。
运输层分组为报文段
- 负责源——目的(端——端)(进程间)完整报文传输
- 分段与重组
- SAP寻址:确保将完整报文提交给正确进程,如端口号
- 连接控制
- 流量控制
- 差错控制
会话层功能
- 对话控制:建立、维护
- 同步:在数据流中插入“同步点”
- 是最薄的一层
表示层功能
处理两个系统间交换信息的语法与语义问题
- 数据表示转化:转换为主机独立的编码
- 加密/解密
- 压缩/解压缩
应用层功能(报文)
应用层是网络应用程序及它们的应用层协议存留的地方。
应用层协议分布在多个端系统上,一个端系统中的应用程序使用协议与另一个端系统中的应用程序交换信息的分组。位于应用层的信息分组称为报文
- 支持用户通过用户代理(如浏览器)或网络接口使用网络(服务)
- 典型应用层服务:文件传输(FTP)、电子邮件(SMTP)、Web(HTTP)……
TCP/IP参考模型
应用层:HTTP、SMTP、DNS、RTP
运输层:TCP、UDP
网际层:IP
网络接口层:网络接口1……
五层参考模型
- 综合OSI和TCP/IP的优点
- 应用层:支持各种网络应用,如FTP、SMTP、HTTP;数据形式:报文
- 传输层:进程——进程的数据传输,如TCP、UDP;数据形式:数据段
- 网络层:源主机到目的主机的数据分组路由与转发,如IP协议、路由协议等;数据形式:数据报
- 链路层:相邻网络元素(主机、交换机、路由器等)的数据传输,如以太网(Ethernet)、802.11(WIFI)、PPP;数据形式:帧
- 物理层:比特传输;数据形式:比特
网络安全
- 病毒是一种需要某种形式的用户交互来感染用户设备的恶意软件
- 蠕虫是一种无需任何明显用户交互就能进入设备的恶意软件
大多数因特网Dos(拒绝服务攻击)攻击属于下列三种类型之一:
- 弱点攻击:向一台目标主机上运行的易受攻击的应用程序或操作系统发送制作精细的报文。
- 带宽洪泛:攻击者向目标主机发送大量的分组,分组数量之多使得目标的接入链路变得拥塞,使得合法的分组无法到达服务器。
- 连接洪泛:攻击者在目标主机中创建大量的半开或全开TCP连接。该主机因这些伪造的连接而陷入困境,并停止接收合法的连接。
记录每个流经的分组副本的被动接收机被称为分组嗅探器。
将具有虚假源地址的分组注入因特网的能力被称为IP哄骗,而它只是一个用户能够冒充另一个用户的许多方式的一种。为了解决这个问题,我们需要采用端点鉴别,即一种使我们能够确信一个报文源自我们认为它应当来自的地方的机制。
九、计算机网络与Internet发展历史
1961-1972:早期分组交换原理的提出与应用
1961:Kleinrock——排队论,正式分组交换的有效性
1964:Baran——分组交换应用于军事网络
1967:ARPA(Advanced Research Projects Agency)提出ARPAnet构想
1969:第一个ARPAnet结点运行
1972:ARPAnet公开演示;第一个主机——主机协议NCP(Network Control Protocol);第一个email程序;ARPAnet拥有15个结点
1972-1980:网络互连,大量新型、私有网络的涌现
1970:在夏威夷构建了ALOHAnet卫星网络
1974:Cerf与Kahn——提出网络互连体系结构
ALOHA协议是第一个多路访问协议,允许地理上分布的用户共享单一的广播通信媒体(一个无线电频率)
1976:Xerox设计了以太网
70’s后期:私有网络体系结构:DECnet、SNA、XNA;固定长度分组交换(ATM先驱)
1975:ARPAnet移交给美国国防部通信局管理
1979:ARPAnet拥有200结点
Cerf与Kahn网络互连基本原则:极简、自治——无需改变内部网络实现网络互连;尽力服务模型、无状态路由器、分散控制
——当今Internet体系机构
1980-1990:新型网络协议与网络的激增
1983:部署TCP/IP
1982:定义了smtp电子邮件协议
1983:定义了DNS
1985:定义了FTP协议
1988:TCP拥塞控制
新型国家级网络:CSnet、BITnet、NSFnet、Minitel(法国)
1986:NSFnet初步形成了一个由骨干网、区域网和校园网组成的三级网络
100000台主机连接公共网络
1990,2000’s:商业化、Web、新应用
1990’s早期:ARPAnet退役
1991:NSF解除NSFnet的商业应用限制(1995年退役),由私营企业经营
1992:因特网协会ISOC成立
1990s后期:Web应用
1990’s后期——2000’s:更多极受欢迎的网络应用:即时消息系统(如QQ)、P2P文件共享;网络安全引起重视;网络主机约达50000,网络用户达1亿以上;网络主干链路带宽达到Gbps
2005-今
~7.5亿主机:智能手机和平板电脑
宽带接入的快速部署
无处不在的高速无线接入快速增长
出现在线社交网络
服务提供商(如Google、Microsoft)创建自己的专用网络,绕开Internet,提供即时接入搜索、email等服务;
电子商务、大学、企业等开始在“云”中运行自己的服务(如Amazon EC2)