计算机网络和因特网
一、什么是因特网
可以从两个角度来看:
-
具体构成
-
数以亿计的互联的计算设备:
主机hosts (也叫端系统end systems,能运行各种的网络应用)
-
端系统通过通信链路(communication link)和分组交换机(packet switch)连接到一起:
-
通信链路
由不同类型的物理媒体组成,包括:fiber,copper,radio,satellite。
链路的传输速率以bps度量。
-
分组交换机
分组(packet):发送端系统将数据分段,并为每段加上首部字节形成的信息包
分组交换机从它的一条入通信链路接收到达的分组,并从它的一条出通信链路转发该分组。
两种最著名的类型:路由器(route,通常用于网络核心中)和链路层交换机(link-layer switch,通常用于接入网中)
-
-
端系统通过因特网服务提供商(ISP)接入因特网
每个ISP是一个由多个分组交换机和多段通信链路组成的网络
-
端系统、分组交换机和其他因特网部件都要运行一系列协议(protocol),它们控制因特网中信息的接收和发送
eg,TCP,IP,HTTP,Skype,802.11
因特网标准由IETF研发,IETF的标准文档称为请求评论(RFC)
掌握计算机网络领域知识的过程就是理解网络协议的构成、原理和工作方式的过程。
-
-
提供的服务
因特网从另一个角度也可以看做是为应用程序提供服务的基础设施
这些应用程序称为分布式应用程序(distributed application)
编写分布式应用时,通过实现端系统上的套接字接口,运行该应用的不同端系统之间就可以相互之间发送、接收数据。
二、网络边缘
与因特网相连的计算机和其他设备因为位于因特网的边缘,故而被称为端系统。
-
接入网(access network)
是指将端系统连接到其边缘路由器(edge router)的物理链路,
而边缘路由器是端系统到任何其他远程端系统的路径上的第一台路由器
下面是使用接入网的几种环境:
-
家庭接入:DSL,电缆,FTTH,拨号和卫星
-
DSL——数字用户线
从提供本地电话接入的本地电话公司处获得DSL因特网接入
- 在DSL上的数字信号送往因特网
- 在DSL上的电话信号送往电话网
-
电缆因特网接入
利用了有线电视公司现有的有线电视基础设施
-
FTTH光纤到户
-
-
企业(和家庭)接入:以太网和WIFI
-
广域无线接入:3G(4G、5G)和LTE
-
-
物理媒体
划分为两类:
导引型媒体——沿着固体媒体前行
- 双绞铜线 twisted pair
- 同轴电缆 coax
- 光纤 fiber
非导引型媒体——电波在空气或外层空间传播
- 陆地无线电信道
- 卫星无线电信道
三、网络核心
由互联因特网端系统的分组交换机和链路构成的网状网络
通过网络链路和交换机移动数据有两种基本方法:
-
分组交换——“问路”
-
存储转发传输(store-and-forward transmission)
交换机转发分组之前需要将分组存储下来。
转发(传输)分组会产生[传输时延](# 分组的四种时延)
-
排队时延和分组丢失
分组交换机在每条相连的链路有一个输出缓存(输出队列),
如果链路的比特到达速率在一段时间内超过传输速率:
- 分组将会进行排队,等候传输——产生[排队时延](# 分组的四种时延)
- 如果内存或缓存满了,将出现分组丢失
-
转发表和路由选择协议
转发表:路由器中用于将目的地址(或目的地址的一部分)映射为输出链路
路由选择协议:因特网中用于自动地设置转发表
-
-
电路交换——“预定餐桌”
在电路交换网络中,在端系统间通信会话期间,预留了端系统间通信沿路径所需要的资源(缓存,链路传输速率)。
电路交换网络中的复用:频分复用FDM 或 时分复用TDM
四、分组交换网中的时延、丢包和吞吐量
分组的四种时延
-
结点处理时延
查错、查转发表
-
排队时延
难预估
-
传输时延:将分组的比特推向链路所需的时间
L比特表示分组的长度,R bps表示链路带宽(链路传输速率)
d t r a n s = L R d_{trans} = \frac{L}{R} dtrans=RL -
传播时延:一长串的比特信号沿链路向目的地传播
d表示物理链路的长度,s表示该链路的传播速率
d p r o p = d s d_{prop} = \frac{d}{s} dprop=sd
区分传输时延和传播时延
排队时延与丢包
R:链路带宽(bps)
L:分组的长度(bits)
a:分组到达队列的平均速率
流量强度
=
L
a
R
流量强度 = \frac{La}{R}
流量强度=RLa
La/R ~ 0: 平均排队时延小
La/R -> 1: 平均排队时延大
La/R > 1: 丢包
吞吐量
-
瞬间吞吐量
-
平均吞吐量
-
瓶颈链路的传输速率
五、协议层次及其服务模型
协议栈
-
应用层:支持网络应用程序
FTP、SMTP、HTTP
-
运输层:process-process data transfer
TCP、UDP
-
网络层:将数据报(datagram)的网络层分组从一台主机移动到另一台
IP、routing protocols
-
链路层:data tranfer between neighboring network elements
Ethernet、802.111(WIFI)、PPP
-
物理层:bits “on the wire”
ISO/OSI 参考模型
七层:应用层、表示层、会话层、运输层、网络层、数据链路层、物理层