第1章 概述
-
两种通信方式
- C/S 客户-服务器方式(Client/Server)
- P2P 对等方式 (Peer-to-Peer)
-
数字化、网络化和信息化
-
网络是指“三网”,即电信网络、有线电视网络和计算机网络
-
计算机网络向用户提供的最重要的功能
- 连通性
- 共享性
-
网络(network):由若干 结点(node) 和连接这些结点的 链路(link) 组成
-
互联网:是“网络的网络”(network of networks)
-
连接在因特网上的计算机都称为主机(host)
-
互联网>因特网>网络>计算机(或结点)
-
因特网服务提供者 ISP(Internet Service Provider)
-
internet 和 Internet 的区别
- 以小写字母 i 开始的 internet(互联网或互连网)是一个通用名词,它泛指由多个计算机网络互连而成的网络。
- 以大写字母I开始的的 Internet(因特网)则是一个专用名词,它指当前全球最大的、开放的、由众多网络相互连接而成的特定计算机网络,它采用 TCP/IP 协议族作为通信的规则,且其前身是美国的 ARPANET。
-
因特网的组成
①边缘部分 由所有连接在因特网上的主机组成。这部分是用户直接使用的,用来进行通信(传送数据、音频或视频)和资源共享。
②核心部分 由大量网络和连接这些网络的路由器组成。这部分是为边缘部分提供服务的(提供连通性和交换)。 -
三种交换的比较:
-
电路交换的特点
- 必定是面向连接的
- 电路交换的三个阶段:建立连接、通信、释放连接
-
分组交换的特点
- 在发送端,先把较长的报文划分成较短的、固定长度的数据段
-
计算机网络的性能指标
- 速率
- 带宽 [兆比每秒,即 Mb/s(106 b/s)]
- 吞吐量
- 时延
- 时延带宽积(传播时延*带宽)
- 利用率(信道利用率并非越高越好)
-
计算机网络的非性能指标
- 费用、质量、标准化、可靠性、可扩展性和可升级性、易于管理和维护
-
网络协议(network protocol)简称为协议,是为进行网络中的数据交换而建立的规则、标准或约定。
- 语法:数据与控制信息的结构或格式
- 语义:需要发出何种控制信息,完成何种动作以及作出何种响应
- 同步:事件实现顺序的详细说明
-
实体(entity) 表示任何可发送或接收信息的硬件或软件进程。
-
协议是控制两个对等实体进行通信的规则的集合,水平的、很复杂的。
-
服务是“垂直的”,即服务是由下层向上层通过层间接口提供的。
-
同一系统相邻两层的实体进行交互的地方,称为服务访问点 SAP (Service Access Point)。
第2章 物理层
-
单向通信(单工通信)
- 只能一个方向的通信而没有反方向的交互
-
双向交替通信(半双工通信)
- 通信的双方都可以发送消息,但不能双方同时发送
-
双向同时通信(全双工通信)
- 通信的双方可以同时发送和接收信息
-
香农公式
-
导引型传输媒体
- 双绞线(STP、UTP)
- 同轴电缆
- 光缆
-
非引导性传输媒体
- 无线传输
- 短波通信
- 微波
-
信道复用技术
- 频分复用FDM、时分复用TDM、统计时分复用STDM
- 波分复用WDM
- 码分复用CDM
-
宽带接入技术
- ADSL技术非对称数字用户线 。ADSL 技术就把 0~4 kHz 低端频谱留给传统电话使用,而把原来没有被利用的高端频谱留给用户上网使用。
- 光纤同轴混合网
- FTTx 技术
第3层 数据链路层
- 数据链路(data link) 除了物理线路外,还必须有通信协议来控制这些数据的传输。若把实现这些协议的硬件和软件加到链路上,就构成了数据链路(又称之为逻辑链路)。
- 数据链路层使用的信道
- 点对点信道
- 广播信道
三个基本问题
-
封装成帧
- framing就是在一段数据的前后分别添加首部和尾部(帧定界)
-
透明传输
- 发送端的数据链路层在数据中出现控制字符“SOH”或“EOT”的前面插入一个转义字符“ESC”(其十六进制编码是 1B)
- 发送端的数据链路层在数据中出现控制字符“SOH”或“EOT”的前面插入一个转义字符“ESC”(其十六进制编码是 1B)
-
差错检测
- 循环冗余检验 | 冗余码的计算
- 帧检验序列 FCS 、接收端对收到的每一帧进行 CRC 检验
-
点对点协议PPP(Point-to-Point Protocol)的帧格式
- 零比特填充——>>同步式
- 字符填充——>>异步式
- 不提供使用序号和确认的可靠传输的原因
- 1.在数据链路层出现差错的概率不大时,使用比较简单的 PPP 协议较为合理。
- 2.在因特网环境下,PPP 的信息字段放入的数据是 IP 数据报。数据链路层的可靠传输并不能够保证网络层的传输也是可靠的。
- 3.帧检验序列 FCS 字段可保证无差错接受。
- 数据链路层的两个子层[逻辑链路控制 LLC (Logical Link Control)子层 | 媒体接入控制 MAC(Medium Access Control)子层。
]
-
适配器的重要功能
- 进行串行/并行转换。
- 对数据进行缓存。
- 在计算机的操作系统安装设备驱动程序。
- 实现以太网协议。
-
以太网的两个标准{DIX Ethernet V2 | IEEEde 802.3标准}
CSMA/CD (Carrier Sense Multiple Access with Collision Detection)协议
- “多点接入”表示许多计算机以多点接入的方式连接在一根总线上。
- “载波监听”是指每一个站在发送数据之前先要检测一下总线上是否有其他计算机在发送数据,如果有,则暂时不要发送数据,以免发生碰撞。
- 总线上并没有 “载波”。因此 “载波监听”,就是用电子技术检测总线上有没有其他计算机发送的数据信号。(“多点接入”式的“载波监听”)
- 碰撞检测
- 集线器,共享逻辑上的总线,像一个多接口的转发器,工作在物理层。
以太网的信道利用率
-
最大值
-
以太网参数
- 要求1.当数据率一定时,以太网的连线的长度受到限制,否则π的数值会太大。
- 要求2:以太网的帧长不能太短,否则 T0 的值会太小,使 a 值太大。
以太网的MAC层
- 在局域网中,硬件地址又称为物理地址,或 MAC 地址
- 最常用的 MAC 帧是以太网 V2 的格式
在物理层扩展局域网
- 用集线器扩展局域网
- 优点:进行跨碰撞域的通信 | 扩大了局域网覆盖的地理范围
- 缺点:总的吞吐量并未提高 | 最低的兼容性
在数据链路层扩展局域网
-
在数据链路层扩展局域网是使用网桥
-
网桥具有过滤帧的功能
- 优点:过滤通信量 | 扩大了物理范围 | 提高了可靠性 | 可互连不同物理层、不同 MAC 子层和不同速率(如10 Mb/s 和 100 Mb/s 以太网)的局域网
-
透明网桥
- “透明”是指局域网上的站点并不知道所发送的帧将经过哪几个网桥,因为网桥对各站来说是看不见的。
- 即插即用,标准是IEEE802.1D
- 自学习算法
- 容易安装,但是网络资源的利用不充分
-
源路由网桥
- 在发送帧时将详细的路由信息放在帧的首部中
- 源站以广播方式向欲通信的目的站发送一个发现帧,每个发现帧都记录所经过的路由
- 发现帧到达目的站时就沿着各自的路由返回源站。源站在得知这些路由后,从所有可能的路由选择出一个最佳路由。凡从该源站向目的站发送的帧的首部,都必须携带源站所确定的这一路由信息。
-
多接口网桥——以太网交换机
- 工作在数据链路层
- 每个接口都直接与主机相连,并且一般都工作在全双工方式
- 无碰撞地传输数据
- 交换速率较高
- 最大优点:独占传输媒体的带宽
-
速率达到或超过 100 Mb/s 的以太网称为高速以太网
第4层 网络层
虚电路服务与数据报服务的对比
对比的方面 | 虚电路服务 | 数据报服务 |
---|---|---|
思路 | 可靠通信应当由网络来保证 | 可靠通信由用户主机来保证 |
连接的建立 | 必须有 | 不需要 |
终点地址 | 仅在连接建立阶段使用,每个分组使用短的虚电路号 | 每个分组都有终点的完整地址 |
分组的转发 | 属于同一条虚电路的分组均按照同一路由进行转发 | 每个分组独立选择路由进行转发 |
当结点出故障 | 每个分组独立选择路由进行转发 | 出故障的结点可能会丢失分组,一些路由可能会发生变化 |
分组的顺序 | 总是按发送顺序到达终点 | 不一定按发送顺序 |
端到端的差错处理和流量控制 | 可以由网络负责,也可以由用户主机负责 | 由用户主机负责 |
网际协议IP
- 与IP协议配套使用的三个协议
- 地址解析协议ARP(Address Resolution Protocol)
- 网际控制报文协议ICMP(Internet Control Message Protocol)
- 网际组管理协议IGMP(Internet Group Management Protocol)
分组转发算法
- 从数据报的首部提取目的主机的 IP 地址 D, 得出目的网络地址为 N。
- 若网络 N 与此路由器直接相连,则把数据报直接交付目的主机 D;否则是间接交付,执行(3)。
- 若路由表中有目的地址为 D 的特定主机路由,则把数据报传送给路由表中所指明的下一跳路由器;否则,执行(4)。
- 若路由表中有到达网络 N 的路由,则把数据报传送给路由表指明的下一跳路由器;否则,执行(5)。
- 若路由表中有一个默认路由,则把数据报传送给路由表中所指明的默认路由器;否则,执行(6)。
- 报告转发分组出错。
在划分子网的情况下路由器转发分组的算法
- 从收到的分组的首部,提取目的 IP 地址 D。
- 先用各网络的子网掩码和 D 逐位相“与”,看是否和相应的网络地址匹配。若匹配,则将分组直接交付。否则就是间接交付,执行(3)。
- 若路由表中有目的地址为 D 的特定主机路由,则将分组传送给指明的下一跳路由器;否则,执行(4)。
- 对路由表中的每一行的子网掩码和 D 逐位相“与”,若其结果与该行的目的网络地址匹配,则将分组传送给该行指明的下一跳路由器;否则,执行(5)。
- 若路由表中有一个默认路由,则将分组传送给路由表中所指明的默认路由器;否则,执行(6)。
- 报告转发分组出错。
- 有关路由选择协议的几个基本概念
- 可到达
- 开销小
- 鲁棒性
- 稳定性
- 不存在特权节点
- 在一定前提下
内部网关协议
- RIP(Routing Information Protocol)
- 仅和相邻路由器交换信息。
- 交换的信息是当前本路由器所知道的全部信息,即自己的路由表。(经过若干次更新后,所有的路由器最终都会知道到达任何一个网络的最短距离和下一跳路由器的地址,称为收敛(convergence)过程)
- 按固定的时间间隔交换路由信息,例如,每隔 30 秒。
- OSPF (Open Shortest Path First)
- 向本自治系统中所有路由器发送信息,这里使用的方法是洪泛法。
- 发送的信息就是与本路由器相邻的所有路由器的链路状态,但这只是路由器所知道的部分信息。“链路状态”就是说明本路由器都和哪些路由器相邻,以及该链路的“度量”(metric)。
- 只要链路状态发生变化,路由器就用洪泛法向所有路由器发送此信息。
外部网关协议
-
外部网关协议 BGP是不同自治系统的路由器之间,交换路由信息的协议。
- BGP 协议交换路由信息的结点数量级是自治系统数的量级,这要比这些自治系统中的网络数少很多。
- 每一个自治系统中 BGP 发言人(或边界路由器)的数目是很少的。这样就使得自治系统之间的路由选择不致过分复杂。
- BGP 支持 CIDR,因此 BGP 的路由表也就应当包括目的网络前缀、下一跳路由器,以及到达该目的网络所要经过的各个自治系统序列。
- 在BGP 刚刚运行时,BGP 的邻站是交换整个的 BGP 路由表。但以后只需要在发生变化时更新有变化的部分。这样做对节省网络带宽和减少路由器的处理开销方面都有好处。
-
转发(forwarding)就是路由器,根据转发表将用户的 IP 数据报从合适的端口转发出去。
-
路由选择(routing)则是按照分布式算法,根据从各相邻路由器得到的关于网络拓扑的变化情况,动态地改变所选择的路由。
第5层 运输层
功能一:运输层为应用进程之间提供端到端的逻辑通信(但网络层是为主机之间提供逻辑通信)。
功能二:运输层还要对收到的报文进行差错检测。
功能三:运输层需要有两种不同的运输协议,即面向连接的 TCP(双工的可靠信道) 和无连接的 UDP(不可靠信道)。
用户数据报协议 UDP
User Datagram Protocol
- UDP 传送的数据单位, 是 UDP 报文或用户数据报
- UDP 在传送数据之前不需要先建立连接
- 特点:
- UDP 是无连接的,即发送数据之前不需要建立连接。
- UDP 使用尽最大努力交付,即不保证可靠交付,同时也不使用拥塞控制。
- UDP 是面向报文的。UDP 没有拥塞控制,很适合多媒体通信的要求。
- UDP 支持一对一、一对多、多对一和多对多的交互通信。
- UDP 的首部开销小,只有 8 个字节。
传输控制协议 TCP
Transmission Control Protocol
- TCP 传送的数据单位, 是 TCP 报文段(segment)
- TCP 则提供面向连接的服务
- 特点:
- TCP 是面向连接的运输层协议。
- 每一条 TCP 连接只能有两个端点(endpoint),每一条 TCP 连接只能是点对点的(一对一)。
- TCP 提供可靠交付的服务。
- TCP 提供全双工通信。
- 面向字节流。
TCP 的连接方式
- 建立模式:C/S方式
- TCP,把连接作为最基本的抽象。
- 每一条 TCP 连接,有两个端点。
- TCP 连接的端点不是主机,不是主机的IP 地址,不是应用进程,也不是运输层的协议端口。TCP 连接的端点,叫做套接字(socket)或插口。
- 端口号拼接到(contatenated with) IP 地址,即构成了套接字。
套接字
- 套接字 socket = (IP地址: 端口号)
TCP 连接 ::= {socket1, socket2}
= {(IP1: port1), (IP2: port2)}
TCP 可靠通信的具体实现
- TCP 连接的每一端都必须设有两个窗口——一个发送窗口和一个接收窗口。
- TCP 的可靠传输机制用字节的序号进行控制。TCP 所有的确认都是基于序号而不是基于报文段。
- TCP 两端的四个窗口经常处于动态变化之中。TCP连接的往返时间 RTT 也不是固定不变的。需要使用特定的算法估算较为合理的重传时间。
- 停止等待协议
- 无差错情况
- 出现差错,超时重传
- 确认丢失和确认迟到
- 信道利用率
- 连续ARQ协议
- TCP报文段的首部格式
6个控制位:
紧急 URG
确认 ACK
推送 PSH (PuSH)
复位 RST (ReSeT)
同步 SYN
终止 FIN (FINis)
- 发送缓存与接收缓存的作用
- 发送缓存用来暂时存放:
(1)发送应用程序传送给发送方 TCP 准备发送的数据;
(2)TCP 已发送出但尚未收到确认的数据 - 接收缓存用来暂时存放:
(1)按序到达的、但尚未被接收应用程序读取的数据;
(2)不按序到达的数据。
- 发送缓存用来暂时存放:
TCP 的流量控制的方法
- 利用滑动窗口实现流量控制
- 必须考虑传输效率
TCP的拥塞控制
- 出现资源拥塞的条件:
对资源需求的总和 > 可用资源 - 拥塞控制与流量控制的关系 :
拥塞控制所要做的都有一个前提,就是网络能够承受现有的网络负荷。
拥塞控制是一个全局性的过程,涉及到所有的主机、所有的路由器,以及与降低网络传输性能有关的所有因素。
流量控制往往指在给定的发送端和接收端之间的点对点通信量的控制。
流量控制所要做的就是抑制发送端发送数据的速率,以便使接收端来得及接收。
- 拥塞控制所起的作用:
- 拥塞控制方法
- 慢开始和拥塞避免
- 快重传和快恢复
三次握手
- 运输连接就有三个阶段,即:连接建立、数据传送和连接释放。
四次再见
第6层 应用层
- 应用层协议的基本特点
- 应用层的具体内容就是规定应用进程在通信时所遵循的协议。
- 应用层的许多协议都是基于客户服务器方式 | C/S方式。
- 任何一个连接在因特网上的主机或路由器,都有一个唯一的层次结构的名字,即域名
- 域名服务器
- 根域名服务器
- 顶级域名服务器
- 权限域名服务器
- 本地域名服务器
- 主机向本地域名服务器的查询,一般都是采用递归查询。
- 本地域名服务器向根域名服务器的查询,通常是采用迭代查询。
文件传送协议
-
文件传送协议 FTP File Transfer Protocol
- FTP 屏蔽了各计算机系统的细节,因而适合于在异构网络中任意计算机之间传送文件。
-
简单文件传送协议 TFTP Trivial File Transfer Protocol
-
远程终端协议 TELNET
- 网络虚拟终端 NVT 格式
-
万维网 WWW World Wide Web
- 万维网的工作方式B/S模式
-
统一资源定位符 URL
-
超文本传送协议 HTTP
-
超文本标记语言 HTML
万维网的信息检索系统
- 全文检索搜索
- 用户在查询时只要输入关键词,就从已经建立的索引数据库上进行查询(并不是实时地在因特网上检索到的信息)。
- 分类目录搜索
- 利用各网站向搜索引擎提交的网站信息时填写的关键词和网站描述等信息,经过人工审核编辑后,如果认为符合网站登录的条件,则输入到分类目录的数据库中,供网上用户查询 。