导图社区 计算机网络
内带考研408专业课考纲 计算机网络全书,适合考研期末考试等复习 参考的是比较流行的课本--谢希仁版 历时一个月精心制作如有错误或不当之处请谅解 包含原书中的所有研究生考试的知识点 感谢你的使用考研加油
编辑于2020-07-19 15:39:26内带考研408专业课考纲 计算机网络全书,适合考研期末考试等复习 参考的是比较流行的课本--谢希仁版 历时一个月精心制作如有错误或不当之处请谅解 包含原书中的所有研究生考试的知识点 感谢你的使用考研加油
计算机网络运输层对应课本谢希仁 包含运输层的所有知识点。OSI七层模型中的物理层、数据链路层和网络层,它们是面向网络通信的低三层协议。运输层负责端到端的通信,既是七层模型中负责数据通信的最高层,又是面向网络通信的低三层和面向信息处理的最高三层之间的中间层。干货满满,赶快收藏学起来吧!
包含常见的递归分治算法,动态规划,贪心算法常见的算法,典型的算法配有代码.
社区模板帮助中心,点此进入>>
内带考研408专业课考纲 计算机网络全书,适合考研期末考试等复习 参考的是比较流行的课本--谢希仁版 历时一个月精心制作如有错误或不当之处请谅解 包含原书中的所有研究生考试的知识点 感谢你的使用考研加油
计算机网络运输层对应课本谢希仁 包含运输层的所有知识点。OSI七层模型中的物理层、数据链路层和网络层,它们是面向网络通信的低三层协议。运输层负责端到端的通信,既是七层模型中负责数据通信的最高层,又是面向网络通信的低三层和面向信息处理的最高三层之间的中间层。干货满满,赶快收藏学起来吧!
包含常见的递归分治算法,动态规划,贪心算法常见的算法,典型的算法配有代码.
计算机网络
物理层
基本概念
物理层的作用
尽可能的屏蔽掉传输媒体和通讯手段上的差异 使上一层(数据链路层感受不到这些差异)
物理层的一些特性
机械特性
电器特性
功能特性
过程特性
注意
数据在计算机中多采用并行传输但是在传输媒介中一般都是串行传输
物理层的协议很多,因为物理连接方式很多
数据通信系统模型
通信系统
源系统/发送端/发送方
传输系统/传输网络
目的系统/接受端/接受方
信号
模拟信号/连续信号
数字信号/离散信号
信道
通讯的双方信息交互方式
单向通信/单工通信
一条通道
双向交替通讯/半双工
一条或两条
双向同时通信/全双工通信
调制
背景
来自信源的信号成为基带信号 基带信号往往带有较多的低频甚至直流分量,信道一般不能传输这些。
分类
基带调制
编码
将数字信号转换成另一种数字信号
输出
另一种形式的数字信号
常用的编码方式

不归0制
正电平--1 负电平--0
归0制
正脉冲--1 负脉冲--0
曼切斯特编码
从信号波形中可以看出,曼彻斯特(Manchester)编码产生的信号频率比不归零制高。从自同步能力来看,不归零制不能从信号波形本身中提取信号时钟频率(这叫做没有自同步能力),而曼彻斯特编码具有自同步能力。
周期中心上跳为0
差分曼切斯特编码
周期开始时跳变为0
带通调制
载波
将基带信号的频率范围搬到较高的频段,并转换为模拟信号
输出
模拟信号/带通信号
调制方法

基本的
调幅AM
有载波为1
调频
01用不同的频率
调相
01使用不同的初始相位
更复杂的
正交振幅调制
信道的极限容量
两种调制各自优点
数字信号
在接受端只要我们能从失真的波形中识别出来原来的信号,那么失真就没有影响
子主题
限制码元在信道上的传输速率的因素
信道能够通过的频率范围
在任何信道中,码元传输的速率是有上限的,传输速率超过此上限,就会出现严重的码间串扰的问题,使接收端对码元的判决(即识别)成为不可能。 过快容易出现码元串扰
信噪比
信号的平均功率和噪声平均功率之比 S/N 单位db
香农公式
信道的极限传输速率C  W是带宽 S是信号的平均功率 N是噪声功率
传输媒体
传输介质 传输媒介
分类
导引型传输媒体
有线传输
双绞线
最古老最常用价格低而且效果好
绞合度越高铜线越粗传播越远效果越好价格越高
两根绝缘铜线绞合
屏蔽双绞线
外面加上一层用金属丝编织成的屏蔽网
同轴电缆
光缆
有光脉冲为1
组成
发送端
发光二极管/半导体激光器
光纤
材料
透明石英玻璃细丝
利用光的全反射
分类
多模光纤
近距离
单模光纤
远距离 成本高 必须使用半导体激光器
接受端
光电二极管
优点
传输损耗小,中继距离长
抗雷电和电磁干扰性能好
无串音干扰,保密性好
体积小,重量轻
非导引型传输媒体
无线传输/自由传输
优点
没有地形限制
种类
短波通信(高频)
依靠电离层反射
无线电微波
直线传播--能穿透电离层
方式
地面微波接力通信
卫星通信
具有较大延迟
其他
红外 部分自由使用的电磁波 如无线局域网 激光
信道的复用
分类
频分复用
所有用户在同样的时间占用不同的频率宽带资源
时分复用
所有用户在不同时间占用相同的频率带宽
统计时分复用
在线的用户分配时间
同步时分复用
异步时分复用
波分复用/光复用
码分复用
各用户使用经过特殊挑选的不同码型,因此各用户之间不会造成干扰 有很强的抗干扰能力,其频谱类似于白噪声,不易被敌人发现
数字传输系统
问题
速率不统一
不是同步传输
宽带接入
光纤同轴混合网
HCF网
FTTX
光纤到XXX
网络层
数据丢失,以后补充4.1到4.22...........................................
IP地址
作用
给因特网上所有的主机或者路由器的每个接口分配一个全球范围类的32位标识符
分配机构
因特网名字和数字分配机构ICANN
阶段
分类 的IP地址
组成
网络号
标识主机所在的网络--全球唯一
主机号
标识该主机--本网络唯一
所以IP地址是整个因特网唯一
ip地址不仅仅指明一个主机,还有主机所在的网络
分类

单播地址
A类
8(网络号)+24(主机号)
首部:0
能标识126(2^7-2)个网络
网络号全是0
标识这个(本网络)--属于保留地址没有实际作用
剩下7个网络号全是1
127.0.0.1
环回测试
B类
16+16
10
网络号不可能全是0或者1了
但是128.0.0.0不可指派
最小地址128.1.0.0
C类
24+8
110
多播地址
D类
1110
E类
保留后用
1111
指派范围
不使用的特殊地址
子网的划分
构造超网
点分十进制
每8位加一个空格
IP地址的特点
分等级的地址结构
组成
网络号
主机号
好处
方便管理
路由器仅根据目的主机所连接的网络号来转发分组
减少了路由表所占用的存储空间以及查找路由表的时间
多归属主机(如路由器)
一个主机连接多个网络,将拥有两个IP地址其网络号必定不同
用转发器或网桥连接起来的若干局域网仍然是一个网络
所有分配到网络号的网络都是平等的
与MAC地址
IP地址是一个逻辑地址(供网络层及以上使用) 物理地址是物理层和数据链路层使用的地址
MAC帧的数据就是IP的数据报

注意
在IP层抽象的互联网上只能看到IP数据报
路由器只根据目的站的IP地址的网络号进行路由选择
链路层只能看到MAC帧
地址解析协议ARP
作用
子主题
从网络层使用的IP地址解析出在数据链路层使用的硬件地址。
工作方式
在主机ARP高数缓冲区中存放一个从IP地址到硬件地址的映射表并不断更新
一个主机一个ARP
过程
A向B发送数据时先查看有无B主机有的话就将B的MAC地址写入MAC帧
如果没有运行ARP找出B的硬件地址
ARP进程在局域网上广播发送一个ARP请求分组
携带自己的IP-MAC信息和要找的IP信息
B收到后记下A的信息并发送响应分组
A收到后将B的信息加入ARP缓冲中
注意:过程中其他主机均不理睬A和B的ARP分组
缓存生存时间
10-20M
如果需要找的主机不在同一个局域网将交给路由器来查找
IP数据报格式

首部
固定长度--20字节--必须
版本--4位
4
6
首部长度--4位
5--15
区分服务--8位
没有使用过...
总长度--16位
表示数据和首部的总长,单位是字节--Max=2^16
数据链路层的MTU的最大值是1500字节
如果数据过大,数据链路层将进行分片
分片后需要片偏移见下文
标识--16位
每产生一个数据报计数器加一
不是序号,用于分片操作
标志--3位
目前只有前两位有意义
最低位记为MF
1表示后面还有分片
中间位是DF
0表示不能分片
片偏移--13位
某片在原分组中的相对位置
单位是8个字节
生存时间TTL--8位
表明数据报在网络中的寿命
每一跳减去1
当变成0的时候丢弃
协议--8位
协议字段指出此数据报携带的数据是使用何种协议,以便使目的主机的IP层知道应将数据部分上交给哪个处理过程。
首部检验和--16位
只检查首部,不检查数据
保证首部没有差错
源地址--32位
目的地址--32位
可选字段
略
数据
IP分组转发
路由表的信息
IP数据报最终一定可以找到目的主机所在的路由器 只有到达最后一个路由器时才试图直接交付
目的地址
下一跳地址
基于目的主机所在的网络
特定路由
指定目的地址要传给的下一跳地址
默认路由
减少路由表所占用的空间和搜索路由表所占用的时间
指定如果无法找到合适的下一跳的时候将数据传给谁
分组转发算法
从数据包的首部提取主机IP地址D,网络地址N
N就是路由器连接的某个网络,直接交付否则继续
将D转换成MAC地址
如果D为特定主机路由,直接交给对应的下一跳路由否则继续
路由表中有到达网络N的路由,将数据传送给下一跳路由否则继续
有默认路由,交给默认路由
err
算法比较
本地交付>特定主机路由>路由表>默认路由
子网划分
问题
IP地址空间利用率有时很低
A类一个1000万台,很少有这种庞大的网络
一个网络分一个网络号会使路由表变得庞大
两级IP不够灵活
基本思路
划分子网是内部的事情,对外看来还是一个网络
从主机号借用若干位作为子网号
IP地址::=<网络号><子网号><主机号>
从其他网络发送到本单位主机的IP数据报仍然是根据IP数据报找到本单位网络 再根据IP数据报找到子网最后交付给主机
子网掩码
问题
假定有一个数据报如何知道目的地址是否进行了子网划分
构成
对应网络号和地址号的位置为1主机号为0
工作机理
IP地址和子网掩码按位与就能得出网络地址
还能使用路由的分组转发算法
进入网络后从子网掩码和Ip地址按位与的结果中得出子网
默认的子网掩码

A类
255.0.0.0
B类

255.255.0.0
C类
255.255.255.0
注意
全是0或者1的子网号也能用了
增加了灵活性,但较少了能够在网络上主机的数量
分组转发
路由表 的信息
目的地址
网络地址
子网掩码
算法
从收到的数据报的首部提取目的IP的地址D
判断能不能直接交付不能则继续
使用各网络的子网掩码D逐位与看结果能不能匹配上
特定路由
查找路由表
用D与表中的子网掩码逐位与看看能否匹配
使用默认路由如果不可用继续
出错
算法相对于没有子网的分组转发每次仅仅增加了一个子网掩码计算
构造超网/无分类编址(CIDR)
问题
B类的地址1992年分配了近一半
主干网上的路由表急剧增加
IPV4耗尽
特点
消除了传统ABC类地址以及子网的概念
将网络前缀相同的连续地址组成一个CIDR地址块
路由聚合
CIDR有很多地址,所以在路由表中就利用CIDR地址块来查找目的网络,这种地址聚合方式叫做路由聚合
又名构造超网
地址

网络前缀
主机号
斜线计法/CIDR计法
在IP地址后面加上"/",写上网络前缀的位数
地址掩码
等同子网掩码,虽然CIDR不使用子网但是沿用子网掩码的方式来标记网络前缀
构造超网使前缀变短,子网划分使前缀变长
最长前缀匹配/最长匹配/最佳匹配
问题
查找路由表的时候可能有不止一个的匹配结果
从匹配结果中选择具有最长网络前缀的路由
网络号越长地址块越小,就越具体
网际控制报文协议ICMP
作用
更加有效的转发IP数据报和提高交付成功的机会
允许主机或者路由报告差错情况和提供有关异常的报告
报文种类

ICMP差错报告报文
分类
终点不可达
源点抑制
路由器或者主机发生用赛时
使源点知道应该把数据报的发送速率变慢
时间超过
接收到生存时间为0的数据
参数问题
收到的数据报的首部有字段不正确
改变路由(重定向)
让主机知道有更好的路由来传递数据报
格式

不发送的几种情况
对ICMP差错报文不再发送
第一个分片的数据报片的所有后续数据报片
对具有多播地址的数据报
特殊地址的127.0.0.0/0.0.0.0
ICMP询问报文
分类
回送请求和回答
时间戳请求和回答
相关应用
分组网间探寻PING
用来测试两个主机之间的连通性
ping是应用层直接使用ICMP没有通过运输层的TCP/UDP
tracert/跟踪一个分组
发送一连串的报文 是无法交付的UDP数据报
第一个的数据报的TTL设置为1
收到ICMP时间超过差错报文
继续发送TTL为2的...依次类推
直到目标主机发送ICMP终点不可达差错报文
路由选选择协议
理想的路由算法
算法必须是准确的
算法在计算上应该简单
算法能适应通讯量和网络拓扑的变化
自适应性
稳健性
具有稳定性
当网络拓扑相对稳定的情况下,路由算法应该收敛于一个可以接受的解,而不是不停的变化
算法应是公平的
算法应该是最佳的
分类
从能否随着网络的通讯量或者拓扑数量自适应调整变化划分
静态路由选择策略/非自适应路由选择
动态路由选择策略/自适应路由选择
分层次的路由选择协议
使用原因
因特网的规模非常大,路由表非常大
许多单位不愿意外界了解自己单位网络的布局的细节和本部门采用的路由选择协议
自治系统AS
由于上述原因因特网将互联网划分为很多小的自治系统
分类
内部网关协议IGP
域间路由选择
典型协议
RIP
路由信息协议
基于向量的路由选择协议
原理
每一个路由都维护从自己到其他每一个目的的距离记录
距离
路由器到直接相连的距离定义是1(也有是0的说法),经过一个路由器就加一
又名跳数
max=16故只适合小型互联网
特点
仅和相邻的路由器交换信息
路由器交换的信息是当前本路由器所知道的全部信息(自己的路由表)
按固定的时间间隔交换路由信息
距离向量算法
对每一个路由器发送的RIP报文
先修改报文中的所有项目
将下一跳字段的地址都改成X,并将距离加一
如果原路由表没有到达网络N的信息,将该项目加入路由表否则继续
对比数据:如果原数据的下一跳路由器地址恰好是X,直接替换否则继续
如果原距离大于通过X的距离就更新否则继续
什么也不做
如果超过3分钟还没有收到相邻的路由器的更新路由表
记为不可达的路由器---距离改为16
目的
使每一个路由器到每一个目的网络的路由都是最短的
报文格式
首部--4字节
路由部分
问题
当网络出现故障的时候,要经过较长的时间才能将这个信息送到所有路由器
特点
好消息传播的快,坏消息传播得慢
优点
实现简单,开销较小
OSPF/开放最短路径优先
与RIP主要的不同
洪泛法
向本自治系统的所有路由发送信息
RIP仅仅是相邻得
发送的信息是本路由器相邻的所有路由器的链路状态
相邻路由器以及该链路的度量(代价)
只有链路发生变化时才会使用洪泛
特点
使用分布式得链路状态协议
路由器交换数据使所有路由器都能建立一个链路状态数据库
链路状态数据库其实就是全网的拓扑结构图
全网范围内是一致的
RIP仅仅知道下一跳.....
更新迅速且快速收敛
OSPF使用层次结构的区域划分
区域
目的
为了使OSPF能适应规模较大的网络
分类
主干区域
标识符0.0.0
用来连通其他在下层的区域
来自其他区域的信息都要由区域边界路由器进行概括
自治系统边界路由器
主干区域内专门和本自治系统(AS)外的其他自治系统交换路由信息
优缺
OSPF协议变得复杂
交换信息的种类增加
大大减少通讯量
使用IP数据报传送
格式
版本
2
类型
分类
问候分组
发现和维持可达性--10s一次
数据库描述
自己数据库的所有链路的状态信息
链路状态请求
请求获取对方某些链路状态项目的详细信息
链路状态更新
洪泛法对全网路由器进行更新
链路状态确认
对链路状态更新分组的确认
分组长度
路由器标识符
发送该分组的路由器的接口的IP地址
区域标识符
检验和
检测差错
鉴别类型
0不用
1口令
鉴别
特点
对不同类型的业务可以设计算法不同的路由
代价的算法不同
负载平衡
同一个目的网络有多条相同代价的路径,那么就将通讯年分配给这几条路径
所有路由器都能鉴别交换的分
支持子网划分和构造超网(无分类编址CIDR)
外部网关协议EGP
域内路由选择
典型协议
BGP/边界网关协议
原因
因特网规模太大,AS之间的路由选择非常困难
AS之间的路由选择必须考虑有关策略
不能仅仅是最短路径(跳数)
代价,质量,付费服务等
采用路径向量路由选择协议
BGP发言人
往往是BGP边界路由器
发言人之间建立TCP连接交换路由数据
建立TCP连接的两个BGP发言人叫做邻站或对等站
报文种类
打开OPEN
用来与相邻的另一个发言人建立关系
更新UPDATE
增删路由器信息
保活KEEPALIVE
周期性的检测相邻站的连通性
通知NOTIFICATION
发送检测到的差错
报文格式
版本
1字节--4
本自治系统号
2字节
保持时间
2字节--单位s--计算与邻站保持关系的时间
BGP标识符
4字节--通常为该路由器的地址
可选参数长度
1字节
可选参数
UPDATE报文
不可行路由长度
2字节--指明下一个字段的长度
撤销的路由
路径属性总长度
2字节--指明下一个字段的长度
路径属性
增加的路径的属性
网络层可达性信息NLRI
KEEPALIVE报文
只有BGP的19字节的通用首部
NOTIFICATION报文
差错代码--1字节
差错子代码-1字节
差错数据--1字节
路由器的构成
一种具有多个输入端口和多个输出端口的专用计算机
任务
路由选择
多个路由器协调进行
分组转发
交换结构/交换组织
根据转发表对分组进行处理
输入端口
输出端口
将分组从路由器的某个合适的输出端口转发给下一跳路由器
所属层次
物理层
数据链路层
网络层
IP多播/组播
优点
对于一对多的应用来说能解决很多资源(相对于单播)
单播路由器需要复制N份,分别发送
多播就直接发送即可
多播路由器
支持多播协议的路由器
使用D类IP地址
显然D类IP地址只适用于目的地址,不能用于源地址
协议
网际组管理协议IGMP
目的
让连接在本地局域网上的多播路由器知道本地局域网上 是否有主机参加或退出了某个多播组
工作机理
第一阶段
新的主机加入新的多播组时,该主机应该向多播组的多播地址发送一个IGMP报文 声称自己将要成为本组成员
本地多播路由器收到后,还要利用多播路由选择协议把这种组关系告诉其他的多播路由器
第二阶段
组成员关系是动态的
本地多播路由器要周期性的探询本地局域网上的主机,以便知道这些主机是否还是住的成员
只要有一个主机对某个组响应,那么多播路由就认为他是有效的 如果几次探询都没有回应就不再把该组的成员关系转发出去了
减少开销
(1)在主机和多播路由器之间的所有通信都是使用IP多播。只要有可能,携带IGMP报文的数据报都用硬件多播来传送。因此在支持硬件多播的网络上,没有参加IP多播的主机不会收到IGMP报文。 (2) 多播路由器在探询组成员关系时,只需要对所有的组发送一个请求信息的询问报文,而不需要对每一个组发送一个询问报文(虽然也允许对一个特定组发送询问报文)。默认的询问速率是每125秒发送一次(通信量并不太大)。 (3) 当同一个网络上连接有几个多播路由器时,它们能够迅速和有效地选择其中的一个来探询主机的成员关系。因此,网络上多个多播路由器并不会引起IGMP通信量的增大。 (4) 在IGMP的询问报文中有一个数值 N,它指明一个最长响应时间(默认值为10秒)。当收到询问时,主机在0到N之间随机选择发送响应所需经过的时延。因此,若一个主机同时参加了几个多播组,则主机对每一个多播组选择不同的随机数。对应于最小时延的响应最先发送。 (5) 同一个组内的每一个主机都要监听响应,只要有本组的其他主机先发送了响应,自己就可以不再发送响应了。这样就抑制了不必要的通信量。
多播路由选择协议
要求
与因特网上的其他多播路由器协同工作,使用最小代价传递数据
非常像单播的路由选择协议,但是多播的更加复杂.
多播转发必须动态的使用多播组成员的变化(这个时候网络拓扑并发生变化)
多播路由器在转发多播数据报时,不仅仅根据数据报的目的地址,还要考虑从什地方来
多播组的发送者可能不是任何多播组
就是要找出以源主机为根节点的多播转发树
方法
洪泛与剪除
用于小的多播组
洪泛
反向路径广播RPB
为了避免兜圈子
隧道技术
适用于多播组的位置在地理上分散的情况
将多播封装成单播传递到目的网络,再由目标网络的路由转换成多播
eg:
网络A,B都支持多播
A,B之间的网络不支持多播
A先将多播封装成单播,发送给B
B收到后去点首部使他变回多播
基于核心的发现技术
适用于多播组的大小在较大范围内变化时
核心路由器
给出他的单播地址,按照上面的方法构造多播的转发树---对内
R2是核心路由器管理的成员
R1向G(核心路由器)发出多播数据报,R2接收到且还位于组中,则处理
R1向G(核心路由器)发出多播数据报,R2接收到且不在该组,则转发给G
R1向G(核心路由器)请求加入G的组播,R2接收到后记录到自己的路由,并用隧道技术向R1转发每一个多播数据报的副本
建议使用的多播路由选择协议
距离向量多播路由选择协议DVNRP
基于核心的转发树CBT
开放最短通路优先的多播扩展MOSPF
协议无关多播--稀疏方式PIM-SM
协议无关多播--密集方式PIM-DM
虚拟专用网VPN
背景
IP地址紧缺,一个机构能够申请的IP远远小于本机构的主机数
如果本地也采用TCP/IP协议,就可以自行分配IP地址
这类地址称为本地址
问题
出现二义性
本地址分配的IP地址与因特网的重复
RFC规定一些专用地址用于内部通讯
使用这样的专用IP地址的互联网称为专用互联网/本地互联网/专用网
概念
使用公网作为本机构的各个专用网之间的通讯载体
有可能公司的专用网分布非常零散或者距离较远
数据需要加密
远程接入VPN
使用VPN软件建立隧道
网络地址转换NAT
使专用网络内部主机与因特网上的主机通信(并且不需要加密)
装有NAT软件的路由器是NAT路由器
所有使用本地地址的主机和外界通讯的时候都要在NAT转换成全球地址
应用层
任务
通讯服务如何提供给这些进程的
应用层协议
背景
应用层协议是为了解决某一类应用问题,而问题的解决又必须通过位于主机中的多个应用进程之间的通信和协同工作来完成
所以需要定义这些通信规则
应用层应该定义
应用进程交换的报文类型
各种报文类型的语法
字段的定义
进程何时如何发送报文,以及对报文进行响应的规则
应用层协议都是基于客户--服务器方式
指的是进程而不是具体主机
域名系统DNS
任务
将机器名称(域名)转换成IP地址
是一个联机分布式数据库系统
仅有少量需要在因特网上通信,绝大多数存储在本地
分布式使即便一个出现问题,不妨碍整个DNS系统工作
解析过程
当一个应用进程需要解析时,调用解析程序
将解析的域名放到DNS请求报文中,以UDP的方式发送给给本地域名服务器
UDP是为了减小开销
找到域名后将IP地址放到回答报文中返回
如果找不到,该服务器将变成其他DNS服务器的客户进行查询
域名构造
命名方式
采用层次树状结构
域
名字空间中一个可被管理的划分
标号
域名都是由标号加点构成
每一个标号不超过63个字符
不区分大小写
多标号构成的完整域名不能超过255个字符
注意
域名只是一个逻辑概念,不代表计算机所在的物理地点
顶级域名要向ICANN申请,二级域名可以由国家或企业分配
域名服务器
区
一个服务器所负责管辖的范围叫做区
区内的结点必须能连通
一个区设置相应的权限域名服务器
用来保存该区中所有主机的域名到IP地址的映射
区小于等于域
种类
根域名服务器
知道顶级域名服务器的域名和IP
所有本地服务器无法查找到就会请求顶级域名服务器
所有的根服务器瘫痪,因特网就瘫痪了
共有13个
不等于13个机器,采用分散的形式,是位于全球不同地区的服务器构成的
采用任播技术
DNS客户向某个根域名服务器查询时,因特网上的路由器就能找到距离这个DNS客户最近的一个根域名服务器
顶级域名服务器
负责管理该顶级域名服务器注册的二级域名
权限域名服务器
负责一个区的域名服务器
本地域名服务器
在电脑中设置的DNS就是本地域名服务器,也称为默认域名服务器
为了提高服务器的可靠性,DNS将数据复制到几个域名服务器,其中一个是主域名服务器,其他的叫做辅助域名服务器
域名解析过程
递归查询
主机向本地域名服务器
本地收到查询请求,如果自己没有记录,将不让主机自己查而是帮助主机去查
所以返回情况是
IP地址
报错
迭代查询
本地域名服务器向根域名服务器查询
如果根域名没有找到将不帮助本地域名服务器找而是告诉它区拿找
返回情况
IP地址
下一步要去查找的域名服务器地址
文件传输协议
种类
FTP
基于TCP
TFTP
基于UDP
文件共享协议/复制整个文件
FTP原理
使用客户服务器方式
服务器
一个主进程
任务
接收新请求
步骤
打开熟知端口21
等待客户进程发出连接请求
启动从属进程处理客户进程发来的请求
处理完毕后就终止
回到等待状态
一个从属进程
处理单个请求
服务器与客户机的连接
控制连接
数据连接
TFTP(简单文件传送协议)
使用UDP
需要有自己的差错改正措施
只支持文件传输,不支持交互
优点
可以使用UDP
代码占用内存小
特点
每次传送到的数据报有512字节数据,最后一个小于等于512字节
数据报序号有编号,从1开始
支持ASCLL码或二进制
可以对文件进行读或者写
使用简单的首部
工作形式类似停止等待协议,只能一个一个发送,接收后才能继续
网络文件系统NFS
允许应用进程远程打开一个远程文件,并能在该文件的某一个特定位置上开始读写数据
用户可以复制修改文件的一部分,不需要完全下载
网络上传送的只是少量的修改数据
远程终端协议TELNET/终端仿真协议
远程登陆控制
万维网web
是一个大规模的,联机的信息储藏所
是一个分布式的超媒体系统是超文本系统的扩充
超文本
包含指向文档的连接的文本
是web的基础
超媒体
还包含图形、图像、声音、动画,甚至活动视频图像等
特点
能方便的从一个站点访问另外的一个站点
统一资源定位符URL
用来标志web上的各种文档,并且使文档在整个web中是唯一的
相当于文件名在网络中的扩展
格式
协议://主机:端口/路径
常用协议
http
ftp
端口和路径可省略
超文本传送协议
HTTP
默认端口号是80
主页
一般只有域名
www服务器的最高级别的页面
面向事务的应用层协议
使用TCP作为运输层协议保证数据的可靠性,但是本身是无连接的不会重传
报文格式
请求报文

响应报文

请求行不同
开始行
区分是请求还是响应报文
首部行
实际主体
请求报文中不用这个字段, 响应报文也可以没有
状态码
1XXX
请求收到正在处理
2XXX
成功
3XXX
重定向
4XXX
请求中有语法错误或不能完成
5XXX
服务器差错
存放用户信息
cookie
代理服务器
是一种网络实体,又称为万维网告诉缓存
将最近的一些请求和响应存储在本地,如果新的请求与以前缓存的相同就返回暂存的响应
超文本标记语言
HTML
制作万维网页面的标准语言
消除计算机之间的信息交流障碍
不是应用层的协议只是浏览器使用的一种语言
运输层
概述
进程之间的通信
运输层向它上面的应用层提供通信服务
属于面向通信部分的最高层,用户功能的最底层
主机之间的通信
两个主机中的应用进程相互通信
端点不是主机而是主机的进程
网络层是主机到主机的
两个协议

用户数据报协议UDP
不需要建立连接
传输控制协议TCP
面向连接的服务
复用
应用层所有的应用进程都可以通过运输层再传送到IP层
分用
运输层从IP层收到数据后必须交付给指明的应用进程
协议端口号/端口
虽然通信终点是应用进程,但是进程是动态的所以使用端口
报文送到端口就行剩余的交给TCP
是抽象的软件端口
只有本地意义,与其他计算机无关
端口分类
服务器端
熟知端口/系统端口
0--1023
FTP
21
TELNET
23
SMTP
25
DNS
53
TFTP
69
HTTP
80
SNMP
161
SNMP(trap)
162
登记端口
1024--49151
需要在IANA按照手续登记
客户端
短暂端口
49152-65535
由客户端自行分配,客户端进程短暂使用
UDP
特点
无连接
尽最大努力交付
不保证可靠交付,不需要维护复杂的连接状态
面向报文
UDP对应用层交下来的报文添加首部之后就交给IP层,不合并不拆分,保留报文边界
没有拥塞控制
网络拥塞不会导致源主机的发送速率降低
源主机的发送速度可以是恒定的----IP电话视频会议
支持1对1,一对多,多对1,多对多
首部开销小
8个字节
首部格式
源端口
需要对方回信的时候选用,不需要的时候可以置为0
目的端口
长度
min=8(只有首部)
检验和
首部长度
每个字段都是2个字节
TCP
特点
面向连接的运输层协议
只能两个端点1对1
可靠交付
数据无差错,不丢失,不重复,不失序
全双工通信
面向字节流
TCP将数据看成无结构的字节流
端点
套接字/插口
IP地址+端口号
可靠传输的工作原理
理想的环境
信道不产生差错
不管发送方的速度多快,接收方总能来的及处理收到的数据
停止等待协议
无差错
一个分组发送完就暂停收到确认回复后继续发送
有差错/自动重传请求ARQ
B检测到差错就直接丢弃
超时重传
B在经历过一段时间后还未收到确认,就认为分组丢失,重新发送
一个分组一个超时计时器
注意
A在发送一个分组后应该保留这个分组的副本只有收到确认后才清除这个副本
分组和确认分组都必须进行编号
超时计时器设置的重传时间应该比数据在分组传输的平均往返时间更长一些
由于会产生时延且为不确定因素
确认丢失和确认迟到
如果分组正常送到,但是确认分组丢失,A仍然在超时后重传
这个时候B如果又收到了那个分组,丢弃这个分组并向A发送确认
信道利用率
低

需要等待上一个分组的成功信息
连续ARQ协议
使用发送窗口
发送方每收到一个确认就向前移动一个
接收方一般使用累计确认的方式,接受分组后,对按序到达的最后一个分组发送确认
优点
容易实现,即使确认丢失也不用重传
缺点
不能向发送方反映出接收方已经正确收到的所有分组的信息
比如发送五个分组,第三个没有收到,对于345的状态则是未知的,要重新发送三个分组哪怕只有一个没收到....
容易受线路质量的影响
首部
TCP的所有功能都体现在首部中
格式

源端口
目的端口
2个字节
序号
4字节
本报文段所发送的数据的第一个字节的序号
上一个序号是301长度为100,那么这次的就是401
确认号
4字节
期望收到对方下一个报文段的第一个数据字节的序号
数据偏移
4位
TCP报文段的数据起始位置距离TCP报文段的起始位置有多远
其实就是首部长度
保留
6位
目前为0
控制位
分类
紧急URG
紧急指针有效
这个报文含有紧急数据,应该尽快传送 优先级很高,不再按照原来的排队方式了插入到最前面
确认ACK
为1的时候确认号才有效
在连接建立后所有传送的数据报都必须把ACK置为1
推送PSH
加快传输,希望对方能快速回应
不再等待缓存区填满,立即写出和读入
复位RST
出现严重差错必须释放连接并重新建立
有时还用于拒绝会话报文或者建立连接
同步SYN
连接建立时用来同步序号,下文会具体解释
终止FIN
用来释放连接
长度
各占1位---1有效0无效
窗口
2字节
指的是发送本报文的一方的接受窗口---不是自己的发送窗口
目的
告诉对方,从本报文段的确认号算起,接收方目前允许对方发送的数据量
窗口值作为接收方让发送方设置其发送窗口的依据。
值是经常发生变化的,这与接收方有关
紧急指针
2字节
仅在URG=1时才有效
表示本报文段中的紧急数据的字节数
紧急数据结束后就是普通数据
选项
长度可变
MAX=40字节
为0的时候TCP的首部长度是20
内容
最大报文长度MSS
过小
每次发送数据的长度远远小于首部长度--使运输层和数据链路层开销增大网络利用率降低
过大
每次发送数据远远大于运输层的最大分组长度---需要分片(网络层开销增大)
尽可能大但是尽量不使IP层产生分片
窗口扩大
3字节
见下文
移位值S
1字节
MAX=14
新的窗口值等于TCP首部中的窗口位数从16增大到(16 + S)。移位值允许使用的最大值是14,相当于窗口最大值增大到2(16 + 14) - 1 = 230 -1
时间戳
10字节
时间戳值
4字节
时间戳回送回答字段
4字节
功能
计算往返时间RTT
处理TCP序号超过2^32的情况
防止序号绕回
选择确认
见下文
长度
20字节加选项(0--40)
滑动窗口
单位:字节
发送窗口确定
根据B发过来的确认报文得知窗口值(20),确认号30
31之前的都已经收到
表明A的发送窗口大小是20,起始值是31
在A收到B的确认之前A可以连续把窗口内的数据发送出去
确认之前的数据都要暂时保留,以便超时重传使用
状态
不变
没有收到确认
收到确认但是恰好通知窗口变小使得发送窗口不变
前移
收到新的确认
窗口不允许向后
发送方的分组构成
已发送已接收
已发送未确认
允许发送还未发送
位于滑动窗口内
不允许发送
与缓存的关系
缓存空间和序号空间是有限的
实际上缓存或者窗口中的字节数是非常之大的
发送方的缓存
发送应用程序传给TCP准备发送的数据
TCP已经发送但是还未确认的数据
接收方缓存
按序到达的,但是未被接收应用程序读取的数据
未按序到达的数据
注意
A的窗口大小由B决定
A的窗口不一定和B的一样大
由于时延造成滞后
未按序到达的数据不应丢弃临时存储下来放在接收窗口中,按序交付给上层
具有累计确认的功能
接收方可以将确认信息放在自己需要发送的数据上捎带去
接收方不能过分的推迟发送确认
捎带不会经常发生
超时重传的时间(ROT)选择
TCP中最复杂的问题
自适应算法/Karn算法
记录发送时间和确认时间将这个时间认为是RTT
平滑往返时间TCP保留RTT的加权平均往返时间RTTs

RTO应该略微大于加权平均往返时间
RTTD是偏差的加权平均值

问题:如何判断当前的确认报文是对发送报文还是重传报文进行确认
如果重传就不再参与计算RTTs
问题:上述问题解决方案带来新问题:时延突然增加,超时重传的时间将得不到更新
报文每重传一次就将RTO增大一些
选择确认SACK
只传送缺少的数据不重新传已经到达接收方的数据
原理
将未收到的部分的序号发给发送主机
发送主机只重发接收方没有接收到的数据
流量控制
让发送方的速率不要太快,让接收方能来得及接收
当窗口值是0的时候表示不再让发送主机发送数据
当窗口值为0的时候TCP为每一个连接设置一个持续计时器,时间到期的时候就发送一个0窗口探测报文(只携带1字节数据),对方将给出现在的窗口值
控制传输效率
三种机制
TCP维持一个变量,等于最大报文段长度MSS。当数据达到MSS字节时,就组装成一个TCP报文发送出去
由发送方的应用进程指明要求发送报文段
TCP支持的推送操作
计时器的期限到了就将已有的缓存装入报文段发送出去(小于MSS)
Nagle算法
内容
若发送应用程序要将数据逐个字节的送到TCP的发送缓存,则发送方就将第一个数据字节先发送出去,
后面的数据先缓存起来
第一个数据字符收到确认后将缓存中的所有数据组装成一个报文段发送出去
继续缓存随后的数据
只有收到上一个报文的确认时才继续发送
使用场景
网络速率较慢,数据到达速度较快(RTT短)的网络
问题
糊涂窗口综合征
接收方缓存已经满了,数据来临的时候应用进程读取一个字节,并返回确认--窗口值是1,发送方立即发送一个字节数据,这样反复下去
解决
让接收方等待一段时间
等到就收缓存已经有一半空闲的空间
满足一个即可
避免出现大量小数据报文
拥塞控制
拥塞
一段时间内对网络中的某一资源需求超过了该资源能提供的可用部分
网络性能将变坏
产生因素
某个结点的缓存太小
大量数据因为无法缓存而丢弃
处理机的处理速度太慢
目的
防止过多的数据注入网络,这样可以使网络中的路由器或者链路不过载
前提
网络能承受现有的网络负荷
是一个全局性的过程,设计所有主机所有路由器等
概念区分
拥塞控制是全局问题,流量控制是点到点通讯量的控制(端到端)
作用

具体方法
分类
开环控制
考虑很周到,提前设置好一旦运行就不能再修改了
闭环控制
基于反馈环路
检测网络系统以便检测到拥塞在何处何时发生
将拥塞发生的信息传送到可采取行动的地方
调整网络系统的运行来解决出现的问题
几种常见的方法
慢开始和拥塞控制
拥塞控制
发送方维持一个叫做拥塞窗口的状态变量
大小取决于网络的拥塞程度
发送方让自己的发送窗口等于拥塞窗口(发送方主动的)
接收方调整窗口的值不大于发送方的拥塞窗口
慢开始
开始发送数据的时候由小到大逐渐增大发送窗口
即增大拥塞窗口
每个传输轮次拥塞窗口加倍
拥塞避免
拥塞窗口缓慢增大,每次加一而不是加倍
综合使用
初始化的时候拥塞窗口cwnd设置为1门限值(ssthresh)为16
执行慢开始算法
直到cwnd==ssthresh后改用拥塞避免
执行拥塞避免
使窗口值线性增长
发生拥塞,ssthresh也可能发生改变
执行拥塞避免
乘法减小,加法增大
出现拥塞时ssthresh减半
快重传和快恢复
快重传
要求接收方每收到一个失序的报文段就立即发出重复确认
如:重复确认M2让发送方知道M3还没到
快恢复
当发送方收到3个重复确认的时候,执行乘法减小算法,门限值ssthresh减半
接下来为了预防网络发生拥塞,不执行慢开始
发送方认为网络很有可能没有发生拥塞
因为有好几个报文已经成功送达了
这时慢开始的cwnd值设置为ssthresh的一半再进行加法增大
注意:实际上发送窗口的值要大于接收窗口
随机早期检测RED
尾部丢弃策略
内容
路由器的队列是按照先进先出FIFO的规则处理来的分组
当分组已经满的时候再到达的分组都将丢弃
影响
由于丢失的分组是一连串的所以发送方出现超时重传,使TCP进入拥塞控制的慢开始状态
有可能使全局许多TCP都进入慢开始造成全局同步
效率变得极低
RED
使路由器的队列维持两个参数,即队列长度的最小门限THmin和最大门限THmax。 每到一个分组就计算平均长度Lan
算法内容
如果Lan小于THmin,就把新到来的分组放入队列进行排队
Lan大于THmax,就把新到来的分组丢弃
lan位于THmax和THmin之间,就按照一定的概率随机丢弃分组
目的
提前检测出来拥塞,让一部分TCP进行拥塞控制,避免全局性的拥塞控制
连接管理
存在的问题
要使每一方能够知道对方的存在
允许双方协商一些参数
能够对运输实体资源进行分配
运输连接的三个阶段
连接建立
三次握手
A是主动打开连接B被动打开
过程
B的TCP服务器进程先创建传输模块TCB,准备接收客户进程的连接请求
A的TCP也是先创建TCB,然后向B发送连接请求报文段进入SYN-SENT状态
首部的同步位SYN=1,初始序号seq=x
TCP规定SYN=1时不带任何数据但是要消耗一个序号
B收到报文后,如果同意建立连接,向A发送确认同时进入SYN-RCVD状态
SYN=1,ACK=1,确认号ack=x+1同时自己为自己选择一个序号seq=y
A收到B的确认后向B发送确认A进入ESTABLISHED(已经建立连接)状态
ACK=1,确认号ack=y+1,seq=x+1
可以携带数据,如果不带数据就不消耗序号即下一个还是x+1
第二次确认的原因
为了防止已经失效的报文突然传送给B
已经失效的报文
A的第一个请求没有丢失只是延迟了,当B发送确认报文后又到达了,B会误认为A又请求建立一个新连接,B就再次确认,A如果不理睬B的确认报文那么这个多出来的连接将一直存在消耗资源
数据传送
连接释放/四次握手
过程
A的应用进程先向TCP发出连接释放报文段,并停止发送数据,主动关闭TCP连接
FIN=1,seq=u,终止报文消耗一个序号(不一定带数据)
当前处于半关闭状态即A已经停止发送,但是还能接收
A收到B的确认后进入终止等待2状态
B如果没有什么发送的了就向A发送连接释放报文
FIN=1
B进入最后确认状态,等待A的确认
A收到B的释放请求后必须发出确认进入时间等待状态
ACK=1,ack=w+1,seq=u+1
经过时间等待计时器设置的2MSL后A才关闭
为什么A要等到2MSL后才释放呢?
保证A最后的ACK成功送达
如果期间再次收到B的FIN+ACK报文,A就再次发送一次确认,接着再次等待2MSL
保证所有失效的请求报文段完全失效,使下一个TCP不能收到旧的TCP请求报文
保活计时器
如果双方一个出现故障没有正确退出,将在每个保活计时器周期内(两个小时)确认一下对方的在线情况,如果一连10个探测报文段都没有响应就关闭这个连接
TCP的有限自动机
数据链路层
链路
一个结点到相邻结点的物理线路
中间不存在交换结点
数据链路
链路
实现协议来控制这些数据的传输的硬件和软件
最常用的是网络适配器
任务
将网络层的(数据报/分组/包)转换成帧并发送到链路上 将收到的帧中的数据取出并交给网络层
信道
点对点信道
通讯步骤
封装成帧
结点A的数据链路层把网络层交下来的IP数据报添加到首部和尾部
发送
结点A把封装好的帧发送到结点B的数据链路层
差错检查
如果有差错B就丢弃 如果没有就交给上一层
不考虑物理层细节可以看作两个数据链路层之间的水平方向传输
广播信道
数据单元
帧
长度
数据
长度上限---最大传送单元MTU
首部和尾部
三个基本问题
封装成帧
在数据的前后增加首部和尾部
用于区分帧的界限
定界符
首部开始SOH
尾部(帧)结束EOT
透明传输
透明
某一个实际存在的东西看起来却好像不存在一样
背景
例如尾部标识符ETO在数据中也存在
实现方式
字节填充/字符填充

在数据中的SOH和ETO前面增加转义字符ESC
如果转义字符也冲突的话再增加一个转义字符
差错检测
比特差错
比特在传输过程中可能产生差错(0--->1/1-->0)
误码率
误码率BER=传输错误的比特所占所有比特的比率
主要与信噪比有关
循环冗余检查CRC
原理
将数据分组一组K比特假设数据M=101001(k=6)
在M后面添加n位冗余码(FCS)构成一个帧
计算冗余码
用二进制的模 2 运算[插图]进行2n乘M 的运算,这相当于在M后面添加n个0。得到的(k + n)位的数除以收发双方事先商定的长度为(n + 1)位的除数P,得出商是Q而余数是R(n 位,比P少一位)。关于除数P下面还要介绍。在图3-8所示的例子中,M = 101001(即k = 6)。假定除数P = 1101(即n =3)。经模2除法运算后的结果是:商Q = 110101(这个商并没有什么用处),而余数R = 001。这个余数R就作为冗余码拼接在数据 M的后面发送出去。
接受端再进行计算如果冗余码一致就证明正确
概念区分
CRC是检测方法
FCS是添加到数据后面的冗余码
数据链路层不向网络层提供可靠的传输
发送端发送什么接受端接受什么
数据链路层的其他错误(传输错误)
帧丢失
帧重复
帧失序
将这个任务交给网络层能有效的提高通讯效率
点对点协议PPP协议
满足的需求
1简单
2封装成帧
3透明性
4多种网络协议
5多种类型链路
6差错检测
7连接状态检测
8最大传送单元
9网络层地址协商
10数据压缩协商
组成
一个将IP数据报封装到串行链路的方法
PPP既支持异步链路(无奇偶检验的8比特数据),也支持面向比特的同步链路。IP数据报在PPP帧中就是其信息部分。这个信息部分的长度受最大传送单元MTU的限制。
一个用来建立,配置和测试数据链路连接的链路控制协议LCP
一套网络控制协议NCP
帧格式

首部
标志字段F
0X7E
地址字段A
0XFF
控制字段C
0X03
协议字段
IP数据报--0X0021
PPP链路控制协议--0XC021
网络层控制数据--0X8021
数据字段
最大长度是1500字节
尾部
帧检验序列FCS
标志字段F
字节填充
异步传输时,将转义符定为0X7D
将数据中出现的每一个0X7E转成(0X7D,0X5E)
0X7D--->(0X7D,0X5D)
出现Ascii控制符(<0X20)前面添加0X7D
零比特填充
同步传输时
发送端:发现5个连续的1就立即添加一个0
接受端:删除5个连续的1后面的0
工作状态

广播信道
局域网
特点
网络为一个单位所拥有且地理范围和站点数目均有限
工作层次
数据链路层和物理层
优点
具有广播功能
便于系统的扩展和逐渐的演变
提高系统的可靠性,可用性和生存性
分类
星型网
环形网
总线网
信道划分技术
静态划分信道
使用时分复用,波分复用,码分复用等
没有用户冲突,代价太高.不适合局域网
动态媒体接入控制/多点接入
随机接入
用户可以随机发送信息
会产生碰撞
受控接入
使用很少
用户不能随机发送,要服从一定的控制
控制类型
分散控制
令牌环局域网
集中控制
多点线路探询/轮询
以太网
适配器
别名
网络接口卡 网卡
由于集成度提高适配器包含数据链路层和物理层
CSMA/CD协议
总线特点
一台计算机发送数据时,总线上的所有计算机都能检测到这个数据
具有广播特性
两种措施
无连接
特点
不用先建立连接就可以发送数据 适配器对发送的帧不编号,不要求对方发文确认 以太网提供的服务是尽最大努力的交互---即不可靠交互
错误处理
收到错误的帧时仅丢去
是否重传由高层决定,本层什么都不做
以太网不知道是不是重传帧,都当做新的数据帧
同一时间仅能一台计算机发送数据(可能有多个接受)
使用曼切斯特编码的信号
要点
多点接入
说明这是总线型网络,计算机以多点接入的方式连接到一根总线
载波监听
检测信道
不管是发送前还是发送中,每个站都必须不停的检测信道
碰撞检测/冲突检测
边发送边检测
碰撞
由于电磁波传播有时延
传播时延
单程端到端记为T
所以最长需要2T才能知道有没有发送碰撞
这里的2T成为争用期
争用期/碰撞窗口
只有经过争用期后还未检测到碰撞,才能肯定这次发送不会产生碰撞
重传时机
以太网每发送完一帧,一定要把已发送的帧暂时保留一下。如果在争用期内检测出发生了碰撞,那么还要在推迟一段时间后再把这个暂时保留的帧重传一次
截断二进制指数退避(动态退避)
目的
降低重传再次碰撞的概率
算法
基本退避时间为争用期2T
从离散的整数集合[0,1,....(2^k-1)]中随机选出一个数记为R重传应推后2rT
k=Min[重传次数,10]
一般重传16次还不成功就丢弃该帧,向高层汇报
同时打算发送数据的站太多
无效帧
长度小于64字节的帧
由于冲突而异常终止发送
强化碰撞
碰撞发生时还要继续发送人为干扰信号
目的
让所有用户都知道发生了碰撞
仅支持半双工通讯,不存在一个边发一个边接受
集线器
特点
系统仍然像传统以太网,仍然使用CSMA/CD
位于物理层
类似多接口转发器
信道利用率

使a尽可能小
以太网的连线不能过长
以太网帧长不能过短
MAC层
硬件地址/物理地址/MAC地址
这种地址用在MAC帧中
标识系统
名字指出我们所要寻找的那个资源, 地址指出那个资源在何处, 路由告诉我们如何到达该处
名字与地址无关
地址指的是局域网上每一台计算机中固化在适配器的ROM中的地址
地址管理
由IEEE的注册管理机构RA来负责分配
地址组成
前三个字节是组织唯一标识符
也叫做公司标识符
适配器参加购买
后三个是厂家自行指派
扩展标识符
帧的类别
单播帧
一对一
广播帧
一对全体
多播帧
一对多
适配器非必须支持
适配器的混杂方式
只要有数据就偷偷记录下来
嗅探器
MAC帧的格式
以太网V2
组成
目的地址
源地址
类型
数据
帧检验序列FCS
实际中还有的字段
前同步码
使接受者接受帧的时候能迅速调整时钟周期
帧开始定界符
让适配器做好准备接受帧信息
IEEE的802.3
与V2的区别
第一,IEEE 802.3规定的MAC帧的第三个字段是“长度/类型”。当这个字段值大于0x0600时(相当于十进制的1 536),就表示“类型”。这样的帧和以太网V2 MAC帧完全一样。只有当这个字段值小于0x0600时才表示“长度”,即MAC帧的数据部分长度。显然,在这种情况下,若数据字段的长度与长度字段的值不一致时,则该帧为无效的MAC帧。实际上,前面我们已经讲过,由于以太网采用了曼彻斯特编码,长度字段并无实际意义。第二,当“长度/类型”字段值小于0x0600时,数据字段必须装入上面的逻辑链路控制LLC子层的LLC帧。
扩展以太网
物理层
集线器
数据链路层
网桥
作用
对帧进行转发和过滤
内部结构
多个接口
转发表
好处
过滤通讯量,增大吞吐量
扩大了物理范围
提高了可靠性
可以互连不同物理层,不同MAC子层和不同速率的网络
缺点
增加了时延
没有流量控制
容易产生广播风暴
用户数量不易过大
透明网桥
以太网上的站点将不知道通过几个网桥
即插即用设备
自学习算法
范围
网桥中
内容
从接口接受帧就把这个帧的源地址和进入网桥的接口记录下来
下次发送的时候就根据目的地址在记录的地址中寻找要转发的接口
如果没有找到将发送到所有接口
生成树算法
即互连在一起的网桥在进行彼此通信后,就能找出原来的网络拓扑的一个子集。在这个子集里,整个连通的网络中不存在回路,即在任何两个站之间只有一条路径
范围
多个网桥之间
目的
避免帧在网桥中兜圈子
多接口网桥--以太网交换机
概述
计算机网络的作用
21世纪的一些重要特征
数字化,网络化,信息化 是以网络为核心的信息时代
两个重要的功能
连通
共享
资源共享: 信息共享,软件共享,硬件共享。
网络
网络
网络由若干结点和连接这些结点的链路组成。
结点
计算机 集线器 交换机 路由器
链路
互联网
又叫做互连网 是网络的网络
因特网
世界上最大的互连网络(计算机网络)
发展阶段
第一阶段
主要内容
单个网络ARPANET向互联网发展的过程。
时间
1969年开始
70年代中期形成因特网的雏形
1983年TCP/IP
1990关闭
概念区分
intent
是一个通用名词,泛指由多个计算机网络互连而成的网络。
Intent
装有名词指的是当前全球最大的,开放的,由众多网络相互连接而形成的特定计算机网络
第二阶段
特点
形成了三级结构的因特网。
时间
1985年起
三级网络
主干网
地区网
校园网/企业网
第三阶段
特点
形成多层次ISP结构的因特网
ISP
因特网服务提供者
标准化工作
因特网协会
因特网体系结构委员会IAB
因特网工程部IETF
因特网研究部IRTF
正式标准的是个阶段
因特网草案
有效期
6个月
建议标准
这个阶段开始成为RFC文档
草案标准
因特网标准
组成
边缘部分
由所有连接在因特网上的主机组成,这些主机又叫做端系统 这部分由用户直接使用 用来进行通讯和资源共享
计算机之间的通讯
主机A的某一个进程和主机B上的另一个进程进行通讯
类型
客户服务器(C/S)
客户程序
主动请求服务并向服务器发起通讯 必须知道服务器地址 系统环境简单
服务器程序
专门用来提供某种服务的程序,可以同时处理多个远地或本地客户的请求
对等方式(P2P)
peer-to-peer,简称P2P 指的是两个主机在通讯时并不区分哪一个时服务请求饭还是服务提供方。 都使用了对等连接软件
核心部分
为边缘部分提供服务 提供连通性和交换
路由器
是一种专用计算机
作用
实现分组交换
任务
转发收到的分组
这是网络核心部分最重要的功能
电路交换
交换
按照某种方式动态的分配传输线路的资源
步骤
满足这三个步骤的叫做电路交换
建立连接
通话
释放资源
重要特征
通话的全部时间内,通话的两个用户始终占用端到端的通讯资源
分组交换
技术
存储转发
报文
要发送的数据块成为一个报文
分组/包
在数据段前面加上必要的控制信息作为首部
首部可以称为包头
是因特网中传输的数据单元
优点
高效
灵活
为每一个分组独立选择转发的路由。
迅速
以分组作为传送单位,不用提前建立连接就可以发送分组。
可靠
缺点
时延
分组转发需要排队
开销较大
分组必须携带控制信息
三种数据通讯的比较
电路交换
整个报文的比特流连续的从源点直达终点,好像在一个管道中传送。
报文交换
整个报文先传送到相邻结点,全部存储后再查找转发
分组交换
单个分组(是报文的一部分)传送到相邻结点,存储 后查找转发表
计算机网络的定义
一些相互连接的,自治的计算机的集合 自治:独立的计算机,拥有自己的硬件和软件,可以单独运行使用。
分类
按照网络作用范围
广域网WAN
又叫做远程网
城域网MAN
局域网LAN
个人区域网
按照网络的使用者
公用网
专用网
性能指标
速率
又叫做 数据率 比特率
比特
是计算机中数据量的单位意思是一个二进制数字 bit
定义
主机在数字信道上传送数据的速率
单位
速率的单位是b/s(比特每秒)(或bit/s,有时也写为bps,即bit per second)。当数据率较高时,就可以用kb/s(k = 103 =千)、Mb/s(M = 106 = 兆)、Gb/s(G = 109 = 吉)或Tb/s(T = 1012 =太)
带宽
信号具有的频带宽度
单位
赫 千赫 兆赫 吉赫
通讯线路传送数据的能力
最高数据传输能力
单位
比特每秒 b/s
吞吐量
定义
单位时间内通过某个网络的数据量
时延
组成
发送时延
定义
是主机或者路由器发送数据帧所需要的时间
计算

传播时延
定义
电磁波在信道中传播一定的距离花费的时间
计算

注意:电磁波传输速度是光速
处理时延
定义
主机或者路由器收到分组时要花费一定时间进行处理
排队时延
定义
分组经过网络传输时,要经过很多路由器。在分组进入和离开路由器的时候要在输入/输出队列中排队等待处理
总时延
所有时延之和 总时延=发送时延+传播时延+处理时延+排队时延
决定因素
一般是发送时延决定的 电磁波在介质中传播速度很快
时延带宽积
计算

又叫做以比特为单位的链路长度
对于一条正在传输数据的链路,只有嗲表链路的管道都充满比特时,链路才得到了充分的你用
往返时间RTT
定义
从发送方发送数据开始到发送方收到来自接收方的确认所经历的时间
利用率
分类
信道利用率
指的是信道有百分之几的时间是被利用的。 完全空闲的利用率为0 并非越高越好,会引起时延过大
网络利用率
全网络的信道利用率的加权平均值
说明
信道或网络利用率过高会产生非常大的时延 
非性能指标
费用
质量
标准化
可靠性
可扩展性和可升级性
易于管理和维护
协议与层次划分
协议
定义
这些为进行网络中的数据交换而建立的规则,标准或约定
作用
明确规定了所交换的数据的格式以及有关的同步问题
网络协议三要素
语法
数据与控制信息的结构或格式
语义
即需要发出何种控制信息,完成何种动作以及何种响应
同步
事件实现顺序的详细说明
分层
优点
各层之间是独立的
灵活性好
结构上可分开
易于实现和维护
能促进标准化工作
各层完成的任务有(每层一个或几个)
差错控制
使对等端的相应层次的通信更加可靠。
流量控制
使发送端的发送速度不太快,要让接受端来得急接受
分段和重载
发送端将数据划分成更小的单位,在接收端还原
复用和分用
发送端的几个高层会话复用一条低层的连接,在接收端再进行分用。
连接建立和释放
交换数据前建立一条逻辑连接,数据传送后释放连接
体系结构
计算机网络的各层及其协议的集合 使这个计算机网络及其构件所应该完成的功能的精确定义
体系结构是抽象的,而实现规则是具体的,是真正在运行的计算机硬件和软件
OSI的7层协议体系结构
特点
概念清除,理论完整 复杂不实用
组成
7.应用层
6.表示层
5.会话层
五层中称为应用层
4.运输层
3.网络层
2.数据链路层
1.物理层
Tcp/IP的4层体系结构
4.应用层
对应OSI的567(应用表示会话)
3.运输层
2.网际层IP
对应OSI的3网络层
1.网络接口层
对应OSI的21数据链路层物理层
五层协议的体系结构
不过从实质上讲,TCP/IP只有最上面的三层,因为最下面的网络接口层基本上和一般的通信链路在功能上没有多大差别,对于计算机网络来说,这一层并没有什么特别新的具体内容。因此在学习计算机网络的原理时往往采取折中的办法,即综合OSI和TCP/IP的优点,采用一种只有五层协议的体系结构(图1-18(c)),这样既简洁又能将概念阐述清楚
5.应用层
任务
通过应用进程间的交互来完成特定的网络应用
定义
应用进程通讯和交互的规则
数据单元
报文
4.运输层
任务
负责两个主机中进程之间的通讯,提供通用的数据传输服务
主要协议
传输控制协议TCP
用户数据报协议UDP
3.网络层
任务
负责为分组交换网上的不同主机提供通信服务
发送数据时将运输层产生的报文段或数据报封装成分组或者包进行传送
由于网络层使用IP协议,故分组也叫做IP数据报
数据报==分组
数据单元
分组/包
网际层/IP层
因特网是一个很大的互联网,它由大量的异构(heterogeneous)网络通过路由器(router)相互连接起来。因特网主要的网络层协议是无连接的网际协议IP (Internet Protocol)和许多种路由选择协议,因此因特网的网络层也叫做网际层或IP层。在本书中,网络层、网际层和IP层都是同义语。
2.数据链路层
数据单元
帧
控制信息
同步信息
地址信息
差错控制
差错出现就丢弃帧
尝试修复
数据
1.物理层
数据单元
比特数据流
任务
模拟信号(电/光)转换成数字信号
名词比较
实体
抽象名词 任何可发送或者接收信息的硬件或软件进程
只能看见服务无法看见下面得协议
下面得协议对上面的实体是透明的
服务
在协议控制下,两个对等实体间的通讯使得本层能够向上一层提供服务。 要实现本层协议,还需要使用下面一层所提供得服务。
服务是垂直的
协议
控制两个对等实体(或多个实体)进行通讯的规则的集合。
协议是水平的
服务访问点
相邻两层的实体进行数据交互的地方
其他
三网
电信网,有线电视网络和计算机网络
考试大纲
计算机网络 【考查目标】 1.掌握计算机网络的基本概念、基本原理和基本方法。 2.掌握计算机网络的体系结构和典型网络协议,了解典型网络设备的组成和特点,理解典型网络设备的工作原理。 3.能够运用计算机网络的基本概念、基本原理和基本方法进行网络系统的分析、设计和应用。 一、计算机网络体系结构 (一)计算机网络概述 1.计算机网络的概念、组成与功能 2.计算机网络的分类 3.计算机网络的标准化工作及相关组织 (二)计算机网络体系结构与参考模型 1.计算机网络分层结构 2.计算机网络协议、接口、服务等概念 3.ISO/OSI参考模型和TCP/IP模型 二、物理层 (一)通信基础 1.信道、信号、宽带、码元、波特、速率、信源与信宿等基本概念 2.奈奎斯特定理与香农定理 3.编码与调制 4.电路交换、报文交换与分组交换 5.数据报与虚电路 (二)传输介质 1.双绞线、同轴电缆、光纤与无线传输介质 2.物理层接口的特性 (三)物理层设备 1.中继器 2.集线器 三、数据链路层 (一)数据链路层的功能 (二)组帧 (三)差错控制 1.检错编码 2.纠错编码 (四)流量控制与可靠传输机制 1.流量控制、可靠传输与滑轮窗口机制 2.停止-等待协议 3.后退N帧协议(GBN) 4.选择重传协议(SR) (五)介质访问控制 1.信道划分 频分多路复用、时分多路复用、波分多路复用、码分多路复用的概念和基本原理。 2.随即访问 ALOHA协议;CSMA协议;CSMA/CD协议;CSMA/CA协议。 3.轮询访问 令牌传递协议 (六)局域网 1.局域网的基本概念与体系结构 2.以太网与IEEE 802.3 3.IEEE 802.11 4.令牌环网的基本原理 (七)广域网 1.广域网的基本概念 2.PPP协议 3.HDLC协议 (八)数据链路层设备 1.网桥的概念和基本原理 2.局域网交换机及其工作原理。 四、网络层 (一)网络层的功能 1.异构网络互联 2.路由与转发 3.拥塞控制 (二)路由算法 1.静态路由与动态路由 2.距离-向量路由算法 3.链路状态路由算法 4.层次路由 (三)IPv4 1.IPv4分组 2.IPv4地址与NAT 3.子网划分与子网掩码、CIDR 4.ARP协议、DHCP协议与ICMP协议 (四)IPv6 1.IPv6的主要特点 2.IPv6地址 (五)路由协议 1.自治系统 2.域内路由与域间路由 3.RIP路由协议 4.OSPF路由协议 5.BGP路由协议 (六)IP组播 1.组播的概念 2.IP组播地址 (七)移动IP 1.移动IP的概念 2.移动IP的通信过程 (八)网络层设备 1.路由器的组成和功能 2.路由表与路由转发 五、传输层 (一)传输层提供的服务 1.传输层的功能 2.传输层寻址与端口 3.无连接服务与面向连接服务 (二)UDP协议 1.UDP数据报 2.UDP校验 (三)TCP协议 1.TCP段 2.TCP连接管理 3.TCP可靠传输 4.TCP流量控制与拥塞控制 六、应用层 (一)网络应用模型 1.客户/服务器模型 2.P2P模型 (二)DNS系统 1.层次域名空间 2.域名服务器 3.域名解析过程 (三)FTP 1.FTP协议的工作原理 2.控制连接与数据连接 (四)电子邮件 1.电子邮件系统的组成结构 2.电子邮件格式与MIME 3.SMTP协议与POP3协议 (五)WWW 1.WWW的概念与组成结构 2.HTTP协议