一 概述
1.1 网络、互连网(互联网)和因特网
网络: 网络(Network)由若干结点(Node)和连接这些结点的链路(Link)组成。
互连网(互联网): 多个网络通过路由器互连起来,这样就构成了一个覆盖范围更大的网络,即互连网(互联网)。因此,互联网又称为“网络的网络(Network of Networks)”。
因特网: 因特网(Internet)是世界上最大的互连网络(用户数以亿计,互连的网络数以百万计)。
internet 与 Internet 的区别
internet(互联网或互连网)是一个通用名词,它泛指多个计算机网络互连而成的网络。在这些网络之间的通信协议可以是任意的。
Internet(因特网)是一个专用名词,它指当前全球最大的、开放的、由众多网络互连而成的特定计算机网络,它采用TCP/IP协议族作为通信的规则,其前身是美国的ARPANET。
任意把几个计算机网络互连起来(不管采用什么协议),并能够相互通信,这样构成的是一个互连网(internet) ,而不是因特网(Internet)。
端系统之间通信的含义
主机 A 、B进行通信是指主机 A 的某个进程和主机 B 上的另一个进程进行通信,简称为计算机之间通信。
端系统之间的通信方式通常可划分为两大类:
1.2 三种交换方式
1.2.1 电路交换(Circuit Switching)
传统两两相连的方式,当电话数量很多时,电话线也很多,很不方便。
所以要使每一部电话能很方便地和另一部电话进行通信,应使用一个中间设备将这些电话连接起来,这个中间设备就是电话交换机 。
电话交换机接通电话线的方式称为电路交换。
电路交换的三个步骤:
1、建立连接(分配通信资源)
2、通话(一直占用通信资源)
3、释放连接(归还通信资源)
1.2.2 分组交换(Packet Switching)(主要使用)
- 通常我们把表示该消息的整块数据成为一个报文。
- 在发送报文之前,先把较长的报文划分成一个个更小的等长数据段,在每一个数据段前面,加上一些由必要的控制信息组成的首部后,就构成一个分组,也可简称为包,相应地,首部也可称为包头。
- 首部包含了分组的目的地址
- 分组从源主机到目的主机,可走不同的路径。
发送方: 构造分组、发送分组
路由器: 缓存分组、转发分组(简称为 分组转发 )
在路由器中的输入和输出端口之间没有直接连线。
路由器处理分组的过程:
1、把收到的分组先放入缓存(暂时存储);
2、查找转发表,找出到某个目的地址应从哪个端口转发;
3、把分组送到适当的端口转发出去。
接收方: 接收分组、还原报文
1.2.3 报文交换(Message Switching)
报文交换中的交换结点也采用存储转发方式,但报文交换对报文的大小没有限制,这就要求交换结点需要较大的缓存空间。
报文交换主要用于早期的电报通信网,现在较少使用,通常被较先进的分组交换方式所取代。
1.2.4 三种交换方式的对比
假设A,B,C,D是分组传输路径所要经过的4个结点交换机,纵坐标为时间
1.3 计算机网络的定义和分类
1.3.1 定义
计算机网络的精确定义并未统一
计算机网络的最简单的定义是:一些互相连接的、自治的计算机的集合。
互连: 是指计算机之间可以通过有线或无线的方式进行数据通信;
自治: 是指独立的计算机,他有自己的硬件和软件,可以单独运行使用;
集合: 是指至少需要两台计算机;
计算机网络的较好的定义是:计算机网络主要是由一些通用的,可编程的硬件(一定包含有中央处理机CPU)互连而成的,而这些硬件并非专门用来实现某一特定目的(例如,传送数据或视频信号)。这些可编程的硬件能够用来传送多种不同类型的数据,并能支持广泛的和日益增长的应用。
计算机网络所连接的硬件,并不限于一般的计算机,而是包括了智能手机等智能硬件。
计算机网络并非专门用来传送数据,而是能够支持很多种的应用(包括今后可能出现的各种应用)。
1.3.2 分类
按交换技术分类: 电路交换网络、报文交换网络、分组交换网络
按使用者分类: 公用网、专用网
按传输介质分类: 有线网络、无线网络
按覆盖范围分类:
- 广域网WAN(Wide Area Network)
作用范围通常为几十到几千公里,因而有时也称为远程网(long haul network)。广域网是互联网的核心部分,其任务是通过长距离(例如,跨越不同的国家)运送主机所发送的数据。 - 城域网MAN
作用范围一般是一个城市,可跨越几个街区甚至整个城市 - 局域网LAN
一般用微型计算机或工作站通过高速通信线路相连(速率通常在 10 Mbit/s 以上),但地理上范围较小(1 km 左右) - 个域网PAN
就是在个人工作的地方把个人使用的电子设备用无线技术连接起来的网络。
按拓扑结构分类:
-
总线型网络
-
星型网络
-
环形网络
-
网状型网络
1.4 计算机网络的性能指标
1.4.1 速率
比特 :计算机中数据量的单位,也是信息论中信息量的单位。一个比特就是二进制数字中的一个1或0。
常用数据量单位
速率:连接在计算机网络上的主机在数字信道上传送比特的速率,也称为比特率或数据率。
常用数据率单位
1.4.2 带宽
一条通信线路的频带宽度越宽,其传输数据的最高数据率也越高。
1.4.3 吞吐量
带宽1 Gb/s的以太网,代表其额定速率是1 Gb/s,这个数值也是该以太网的吞吐量的绝对上限值。因此,对于带宽1 Gb/s的以太网,可能实际吞吐量只有 700 Mb/s,甚至更低。
注意: 吞吐量还可以用每秒传送的字节数或帧数表示
1.4.4 时延
时延:数据(一个报文或分组,甚至比特)从网络(或链路)的一端传送到另一端所需的时间。
网络时延由几部分组成:
发送时延:主机或路由器发送数据帧所需要的时间,也就是从发送数据帧的第一个比特算起,到该帧的最后一个比特发送完毕所需的时间。
传播时延:电磁波在信道中传播一定的距离需要花费的时间。
处理时延:主机或路由器在收到分组时要花费一定时间进行处理
排队时延:分组在进过网络传输时,要经过许多路由器。但分组在进入路由器后要先在输入队列中排队等待处理。
有时会把排队时延看成处理时延 一部分
总时延
= 发送时延 + 传播时延 + 处理时延 (处理时延 + 排队时延)
发送速率由最慢的一个决定
例题
发送时延和传播时延哪个占主导视具体问题而定
1.4.5 时延带宽积
时延带宽积
= 传播时延 * 带宽
1.4.6 往返时间
往返时间 :双向交互一次所需的时间
1.4.7 利用率
利用率 有信道利用率和网络利用率两种。
1.4.8 丢包率
1.5 计算机网络体系结构
1.5.1 OSI体系结构
法律上的国际标准
1.5.2 TCP/IP体系结构
事实上的国际标准
1.5.3 原理体系结构
用于教学
1.6 分层思想举例
1、发送方发送
-
应用层按照HTTP协议的规定构建一个HTTP请求报文,并交付给运输层处理
-
运输层给HTTP请求报文添加一个TCP首部,使之成为TCP报文段,并交付给网络层处理
-
TCP报文段的首部格式作用是区分应用进程以及实现可靠传输
-
网络层给TCP报文段添加一个IP首部,使之成为IP数据报,并交付给数据链路层处理
-
IP数据报的首部格式作用是使IP数据报可以在互联网传输,也就是被路由器转发
-
数据链路层给IP数据报添加一个首部和一个尾部,使之成为帧 (图示右边为首部,左边为尾部),并将帧交付给物理层
-
该首部的作用主要是为了让帧能够在一段链路上或一个网络上传输,能够被相应的目的主机接收
-
该尾部的作用是让目的主机检查所接收到的帧是否有误码
数据链路层 -
物理层先将帧看做是比特流,这里的网络N1假设是以太网,所以物理层还会给该比特流前面添加前导码
-
前导码的作用是为了让目的主机做好接收帧的准备
-
物理层将装有前导码的比特流变换成相应的信号发送给传输媒体
-
信号通过传输媒体到达路由器
2、路由器转发
在路由器中
-
物理层将信号变为比特流,然后去掉前导码后,将其交付给数据链路层
-
数据链路层将帧的首部和尾部去掉后,将其交付给网络层,这实际交付的是IP数据报
-
网络层解析IP数据报的首部,从中提取目的网络地址
-
提取目的网络地址后查找自身路由表。确定转发端口, 以便进行转发
- 网络层将IP数据报交付给数据链路层
- 数据链路层给IP数据报添加一个首部和一个尾部,使之成为帧
- 数据链路层将帧交付给物理层
- 物理层先将帧看成比特流,这里的网络N2假设是以太网,所
- 以物理层还会给该比特流前面添加前导码
物理层将装有前导码的比特流变换成相应的信号发送给传输媒体,信号通过传输媒体到达Web服务器
3、接收方接收
和发送方(主机)发送过程的封装正好是反着来
在Web 服务器上
- 物理层将信号变换为比特流,然后去掉前导码后成为帧,交付给数据链路层
- 数据链路层将帧的首部和尾部去掉后成为IP数据报,将其交付给网络层
- 网络层将IP数据报的首部去掉后成为TCP报文段,将其交付给运输层
- 运输层将TCP报文段的首部去掉后成为HTTP请求报文,将其交付给应用层
- 应用层对HTTP请求报文进行解析,然后给主机发回响应报文
发回响应报文的步骤和之前过程类似
1.6 计算机网络体系结构中的专用术语
实体
协议
控制两个对等实体进行逻辑通信的规则的集合
协议三要素
语法:定义所交换信息的格式
语义:定义收发双方所要完成的操作
同步:定义收发双发的时序关系
服务