A. 计算机专业考研基础内容
计算机专业硕士研究生国家统考科目:
政治+英语+数学+计算机专业课考研大纲:数学考数学一的,数学一,是报考理工科的学生考(学硕),考试内容包括高等数学,线性代数和概率论与数理统计,考试的内容是最多的。
计算机学科专业基础综合考试涵盖数据机构、计算机组成原理、操作系统和计算机网络等学科专业基础课程。要求考生比较系统地掌握上述专业基础课程的概念、基本原理和方法,能够运用所学的基本原理和基本方法分析、判断和解决有关理论问题和实际问题。
(一)计算机专业课
Ⅰ考查目标
计算机学科专业基础综合考试涵盖数据机构、计算机组成原理、操作系统和计算机网络等学科专业基础课程。要求考生比较系统地掌握上述专业基础课程的概念、基本原理和方法,能够运用所学的基本原理和基本方法分析、判断和解决有关理论问题和实际问题。
Ⅱ考试形式和试卷结构
一、 试卷满分及考试时间
本试卷满分为150分,考试时间为180分钟
二、 答题方式
答题方式为闭卷、笔试
三、 试卷内容结构
数据结构 45分
计算机组成原理 45分
操作系统 35分
计算机网络25分
四、 试卷题型结构
单项选择题 80分(40小题,每小题2分)
综合应用题 70分
Ⅲ考查范围
数据结构
【考查目标】
1.理解数据结构的基本概念;掌握数据的逻辑结构、存储结构及其差异,以及各种基本操作的实现。
2.掌握基本的数据处理原理和方法的基础上,能够对算法进行设计与分析。
3.能够选择合适的数据结构和方法进行问题求解。
一、线性表
(一)线性表的定义和基本操作
(二)线性表的实现
1.顺序存储结构
2.链式存储结构
3.线性表的应用
二、栈、队列和数组
(一)栈和队列的基本概念
(二)栈和队列的顺序存储结构
(三)栈和队列的链式存储结构
(四)栈和队列的应用
(五)特殊矩阵的压缩存储
三、树与二叉树
(一)树的概念
(二)二叉树
1.二叉树的定义及其主要特征
2.二叉树的顺序存储结构和链式存储结构
3.二叉树的遍历
4.线索二叉树的基本概念和构造
5.二叉排序树
6.平衡二叉树
(三)树、森林
1.书的存储结构
2.森林与二叉树的转换
3.树和森林的遍历
(四)树的应用
1.等价类问题
2.哈夫曼(Huffman)树和哈夫曼编码
四、 图
(一) 图的概念
(二) 图的存储及基本操作
1. 邻接矩阵法
2. 邻接表法
(三) 图的遍历
1. 深度优先搜索
2. 广度优先搜索
(四) 图的基本应用及其复杂度分析
1. 最小(代价)生成树
2. 最短路径
3. 拓扑排序
4. 关键路径
五、 查找
(一) 查找的基本概念
(二) 顺序查找法
(三) 折半查找法
(四) B-树
(五) 散列(Hash)表及其查找
(六) 查找算法的分析及应用
六、 内部排序
(一) 排序的基本概念
(二) 插入排序
1. 直接插入排序
2. 折半插入排序
(三) 气泡排序(bubble sort)
(四) 简单选择排序
(五) 希尔排序(shell sort)
(六) 快速排序
(七) 堆排序
(八) 二路归并排序(merge sort)
(九) 基数排序
(十) 各种内部排序算法的比较
(十一) 内部排序算法的应用
计算机组成原理
【考查目标】
1. 理解单处理器计算机系统中各部件的内部工作原理、组成结构以及相互连接方式,具有完整的计算机系统的整机概念。
2. 理解计算机系统层次化结构概念,熟悉硬件与软件之间的界面,掌握指令集体系结构的基本知识和基本实现方法。
3. 能够运用计算机组成的基本原理和基本方法,对有关计算机硬件系统中的理论和实际问题进行计算、分析,并能对一些基本部件进行简单设计。
一、 计算机系统概述
(一) 计算机发展历程
(二) 计算机系统层次结构
1. 计算机硬件的基本组成
2. 计算机软件的分类
3. 计算机的工作过程
(三) 计算机性能指标
吞吐量、响应时间;CPU时钟周期、主频、CPI、CPU执行时间;MIPS、MFLOPS。
二、 数据的表示和运算
(一) 数制与编码
1. 进位计数制及其相互转换
2. 真值和机器数
3. BCD码
4. 字符与字符串
5. 校验码
(二) 定点数的表示和运算
1. 定点数的表示
无符号数的表示;有符号数的表示。
2. 定点数的运算
定点数的位移运算;原码定点数的加/减运算;补码定点数的加/减运算;定点数的乘/除运算;溢出概念和判别方法。
(三) 浮点数的表示和运算
1. 浮点数的表示
浮点数的表示范围;IEEE754标准
2. 浮点数的加/减运算
(四) 算术逻辑单元ALU
1. 串行加法器和并行加法器
2. 算术逻辑单元ALU的功能和机构
三、 存储器层次机构
(一) 存储器的分类
(二) 存储器的层次化结构
(三) 半导体随机存取存储器
1. SRAM存储器的工作原理
2. DRAM存储器的工作原理
(四) 只读存储器
(五) 主存储器与CPU的连接
(六) 双口RAM和多模块存储器
(七) 高速缓冲存储器(Cache)
1. 程序访问的局部
2. Cache的基本工作原理
3. Cache和主存之间的映射方式
4. Cache中主存块的替换算法
5. Cache写策略
(八) 虚拟存储器
1. 虚拟存储器的基本概念
2. 页式虚拟存储器
3. 段式虚拟存储器
4. 段页式虚拟存储器
5. TLB(快表)
四、 指令系统
(一) 指令格式
1. 指令的基本格式
2. 定长操作码指令格式
3. 扩展操作码指令格式
(二) 指令的寻址方式
1. 有效地址的概念
2. 数据寻址和指令寻址
3. 常见寻址方式
(三) CISC和RISC的基本概念
五、 中央处理器(CPU)
(一) CPU的功能和基本结构
(二) 指令执行过程
(三) 数据通路的功能和基本结构
(四) 控制器的功能和工作原理
1. 硬布线控制器
2. 微程序控制器
微程序、微指令和微命令;微指令的编码方式;微地址的形式方式。
(五) 指令流水线
1. 指令流水线的基本概念
2. 超标量和动态流水线的基本概念
六、 总线
(一) 总线概述
1. 总线的基本概念
2. 总线的分类
3. 总线的组成及性能指标
(二) 总线仲裁
1. 集中仲裁方式
2. 分布仲裁方式
(三) 总线操作和定时
1. 同步定时方式
2. 异步定时方式
(四) 总线标准
七、 输入输出(I/O)系统
(一) I/O系统基本概念
(二) 外部设备
1. 输入设备:键盘、鼠标
2. 输出设备:显示器、打印机
3. 外存储器:硬盘存储器、磁盘阵列、光盘存储器
(三) I/O接口(I/O控制器)
1. I/O接口的功能和基本结构
2. I/O端口及其编址
(四) I/O方式
1. 程序查询方式
2. 程序中断方式
中断的基本概念;中断响应过程;中断处理过程;多重中断和中断屏蔽的概念。
3. DMA方式
DMA控制器的组成;DMA传送过程。
4. 通道方式
操作系统
【考查目标】
1. 了解操作系统在计算机系统中的作用、地位、发展和特点。
2. 理解操作系统的基本概念、原理,掌握操作系统设计方法与实现技术。
3. 能够运用所学的操作系统原理、方法与技术分析问题和解决问题。
一、 操作系统概述
(一) 操作系统的概念、特征、功能和提供的服务
(二) 操作系统的发展与分类
(三) 操作系统的运行环境
二、 进程管理
(一) 进程与线程
1. 进程概念
2. 进程的状态与转换
3. 进程控制
4. 进程组织
5. 进程通信
共享存储系统;消息传递系统;管道通信。
6.线程概念与多线程模型
(二)处理机调度
1.调度的基本概念
2.调度时机、切换与过程
3.调度的基本准则
4.调度方式
5.典型调度算法
先来先服务调度算法;短作业(短任务、短进程、短线程)优先调度算法;时间片轮转调度算法;优先级调度算法;高响应比优先调度算法;多级反馈队列调度算法。
(三)进程同步
1. 进程同步的基本概念
2. 实现临界区互斥的基本方法
软件实现方法;硬件实现方法。
3. 信号量
4. 管程
5. 经典同步问题
生产者-消费者问题;读者-写者问题;哲学家进餐问题。
(四) 死锁
1. 死锁的概念
2. 死锁处理策略
3. 死锁预防
4. 死锁避免
系统安全状态:银行家算法。
5. 死锁检测和解除
三、 内存管理
(一) 内存管理基础
1. 内存管理概念
程序装入与链接;逻辑地址与物理地址空间;内存保护。
2. 交换与覆盖
3. 连续分配管理方式
单一连续分配;分区分配。
4. 非连续分配管理方式
分页管理方式;分段管理方式;段页式管理方式。
(二) 虚拟内存管理
1. 虚拟内存基本概念
2. 请求分页管理方式
3. 页面置换算法
最佳置换算法(OPT);先进先出置换算法(FIFO);最近最少使用置换算法(LRU);时钟置换算法(CLOCK)。
4. 页面分配策略
5. 抖动
抖动现象;工作集。
6. 请求分段管理方式
7. 请求段页式管理方式
四、 文件管理
(一) 文件系统基础
1. 文件概念
2. 文件结构
顺序文件;索引文件;索引顺序文件。
3. 目录结构
文件控制块和索引节点;单级目录结构和两级目录结构;树形目录结构;图形目录结构。
4. 文件共享
共享动机;共享方式;共享语义。
5. 文件保护
访问类型;访问控制。
(二) 文件系统实现
1. 文件系统层次结构
2. 目录实现
3. 文件实现
(三) 磁盘组织与管理
1. 磁盘的结构
2. 磁盘调度算法
3. 磁盘的管理
五、 输入输出(I/O)管理
(一) I/O管理概述
1. I/O设备
2. I/O管理目标
3. I/O管理功能
4. I/O应用接口
5. I/O控制方式
(二) I/O核心子系统
1. I/O调度概念
2. 高速缓存与缓冲区
3. 设备分配与回收
4. 假脱机技术(SPOOLing)
5. 出错处理
计算机网络
【考查目标】
1. 掌握计算机网络的基本概念、基本原理和基本方法。
2. 掌握计算机网络的体系结构和典型网络协议,了解典型网络设备的组成和特点,理解典型网络设备的工作原理
3. 能够运用计算机网络的基本概念、基本原理和基本方法进行网络系统的分析、设计和应用
一、 计算机网络体系结构
(一) 计算机网络概述
1. 计算机网络的概念、组成与功能
2. 计算机网络的分类
3. 计算机网络与互联网的发展历史
4. 计算机网络的标准化工作及相关组织
(二) 计算机网络体系结构与参考模型
1. 计算机网络分层结构
2. 计算机网络协议、接口、服务等概念
3. ISO/OSI参考模型和TCP/IP模型
二、 物理层
(一) 通信基础
1. 信道、信号、宽带、码元、波特、速率等基本概念
2. 奈奎斯特定理与香农定理
3. 信源与信宿
4. 编码与调制
5. 电路交换、报文交换与分组交换
6. 数据报与虚电路
(二) 传输介质
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. IEEE802.11
4. 令牌环网的基本原理
(七) 广域网
1. 广域网的基本概念
2. PPP协议
3. HDLC协议
4. ATM网络基本原理
(八) 数据链路层设备
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组播地址
3. 组播路由算法
(七) 移动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协议
(1)计算机网络gbn扩展阅读:
考研公共课统考
编辑
从2010年开始,全国硕士研究生入学考试的英语试卷分为了英语(一)和英语(二)。
英语(一)即原统考“英语”。英语(二)主要是为高等院校和科研院所招收专业学位硕士研究生而设置的具有选拔性质的统考科目。
根据工学、经济学、管理学各学科、专业对硕士研究生入学所应具备数学知识和能力的不同要求,硕士研究生入学统考数学试卷分为3种,其中针对工学门类的为数学一、数学二,针对经济学和管理学门类的为数学三。招生专业须使用的试卷种类规定如下:
一、须使用数学一的招生专业
1.工学门类中的力学、机械工程、光学工程、仪器科学与技术、冶金工程、动力工程及工程热物理、电气工程、电子科学与技术、信息与通信工程、控制科学与工程、计算机科学与技术、土木工程、测绘科学与技术、交通运输工程、船舶与海洋工程、航空宇航科学与技术、兵器科学与技术、核科学与技术、生物医学工程等20个一级学科中所有的二级学科、专业。
2.授工学学位的管理科学与工程一级学科。
二、须使用数学二的招生专业
工学门类中的弦科学与工程、轻工技术与工程、农业工程、林业工程、仪器科学与工程等5个一级学科中所有的二级学科、专业。
三、须选用数学一或数学二的招生专业(由招生单位自定)
工学门类中提材料科学与工程、化学工程与技术、地质资源与地质工程、磁盘业工程、石油与天然气工程、环境科学与工程等一级学科中对数学要求较高的二级学科、专业选用数学一,对数学要求较低的选用数学二。
四、须使用数学三的招生专业
1.经济学门类的各一级学科。
2.管理学门类中的工商管理、农林经济管理一级学科。
3.授管理学学位的管理科学与工程一级学科。
B. tcp与gbn有哪些区别
中继器可以用来连接不同的物理介质,并在各种物理介质中传输数据包。某些多端口的中继器很像多端口的集线器,它可以连接不同类型的介质。
中继器是扩展网络的最廉价的方法。当扩展网络的目的是要突破距离和结点的限制时,并且连接的网络分支都不会产生太多的数据流量,成本又不能太高时,就可以考虑选择中继器。采用中继器连接网络分支的数目要受具体的网络体系结构限制。
中继器没有隔离和过滤功能,它不能阻挡含有异常的数据包从一个分支传到另一个分支。这意味着,一个分支出现故障可能影响到其它的每一个网络分支
TCP:Transmission Control Protocol 传输控制协议
首先,TCP建立连接之后,通信双方都同时可以进行数据的传输,其次,他是全双工的;在保证可靠性上,采用超时重传和捎带确认机制。
在流量控制上,采用滑动窗口协议,协议中规定,对于窗口内未经确认的分组需要重传。
在拥塞控制上,采用慢启动算法。
词条指正 - Google 搜索中文释义:(RFC-793)传输控制协议
注解:该协议主要用于在主机间建立一个虚拟连接,以实现高可靠性的数据包交换。IP协议可以进行IP数据包的分割和组装,但是通过IP协议并不能清楚地了解到数据包是否顺利地发送给目标计算机。而使用TCP协议就不同了,在该协议传输模式中在将数据包成功发送给目标计算机后,TCP会要求发送一个确认;如果在某个时限内没有收到确认,那么TCP将重新发送数据包。另外,在传输的过程中,如果接收到无序、丢失以及被破坏的数据包,TCP还可以负责恢复。
传输控制协议(Transmission Control Protocol,TCP)是一种面向连接的、可靠的、基于字节流的运输层通信协议,通常由IETF的RFC 793说明。在简化的计算机网络OSI模型中,它完成运输层所指定的功能。
C. 计算机网络、计算机操作系统这两个“兄弟”是需要“结拜”的
计算机网络、计算机操作系统这两个“兄弟”是所有开发岗位都须要“结拜”的。
不管你是 Java、C++还是测试。对于后端开发的童鞋来说,计算机网络的重要性不亚于语言根底,毕竟平时开发经常会和网络打交道,假如:抓个包等等。所以对这一块知识点的准备还是要抱着敬畏之心,不要放过任何一个漏网之题。下面分享下我的进修过程:
看书:对于计算机比较根底的模块,我都是比较举荐找一本典型的书籍来好好进修下,不能够光看面经就去面试了。我一共看了两本书:汤小丹的《计算机操作系统》和《图解HTTP》。《计算机操作系统》是教科书,所以知识点相比照较根底,笼罩范围也比较广,非科班的学生还是很有必要看一看的。《图解HTTP》这本书用很多插图将一些知识点讲的通俗易懂,看起来也很快,还是比较举荐的。
做笔记:计算机网络的知识点还是比较多的,须要看书的时候做好笔记,方便温习。而且做笔记的时候能够就这个知识点去网络下,看看有没有自己遗漏的点,再给补充进来。在这里说下,我为什么一直强调做笔记?益处 1:做笔记是第 1 次你对书中的知识点的回顾,加深记忆;益处 2:而且假如你是发表在公关社区的肯定要保证最大限度的正确性,就须要再去看看这个知识点,核对下自己是否有了解偏差和遗漏等,这样就完成了知识点的深挖;益处3:正在到面试温习的时候,你是不太可能重新看一本书的,那么笔记就显得很重要了,自己做的笔记,温习起来很快,而且最好在笔记里能有一些自己差别于面经的了解。
看面经:经常刷一刷牛客,看看对于计算机网络,面试官们都是怎么问的?很多问题你可能会,但是不懂面试官的问法,也会答复不上来;问到的题目自己是否准备了?而且对于计算机网络和计算机操作系统会由于公司和岗位的不同而有所侧重的,多看看面经就会发现还是有一点规律的,但是这都不是绝对的,最后还要看面你的面试官的喜好
计算机网络体系构造
定义:计算机网络是互联的自治的计算机系统的汇合。
组成:硬件、软件和协议,包含资源子网和通信子网。
局域网和广域网:局域网根本采用广告式网络,广域网根本属于点对点网络。
因特网常见规范:RFC文档,ISO制定的OSI参照模型,IEEE:802规范
常用网络参数
带宽:通信线路所能传送数据的才能。
协议作用:控制两个对等实体进行通信。包含语法、语义和同步。
OSI各层作用和协议
物理层
串行传输和并行传输
串行传输:数据在一条信道上依次传输
并行传输:数据在多条并行信道上同时进行传输
同步传输和异步传输
同步传输:运用同步信号,使发送端和接管端的时钟同步后进行数据传输
异步传输:运用初始位和完毕位标记数据的起始和完毕
通信方式
单工通信:一条单方面的信道
半双工通信:两条单方向的信道
全双工通信:一条双方向的信道
码元速率:波特表示每秒传输1个码元
比特率:单位时长传输的比特数,比 特 率 = 码 元 速 率*每 个 码 元 所 含 的 比 特
奈奎斯特定理
理想数据传输速率=2Wlog2V
香农定理
数据传输速率=Wlog2(1+S/N)
编码方式
以太网:曼切斯特编码
局域网:差分曼切斯特编码
模拟信号编码的步骤:采样、量化、编码
交换方式
报文替换和分组替换都采用存储转发的方式。
多模光纤和单模光纤:多模光纤利用全反射原理;单模光纤直径位一个波长,光源为激光。
数据链路层
组帧方法
字符计数法:在帧头部运用一个计数字段来标明帧内字符数
字符填充法:运用特定字符定界帧的初始和完毕
比特填充法:01111110标志一帧的初始和完毕,在信息中遇到5个不间断的“1”时,自动在其后面插入一个“0”
违规填充法:运用冗余编码违规使拿来对帧定界
差错控制:奇偶校验码,循环冗余码
流量控制
停下-等待协议:发送的帧得到确认后发送下一帧
GBN协议:发送窗口内均可发送,接管方只按顺序接管,累积确认
SR协议:发送窗口内均可发送,接管方没序接管,逐个确认,选择重传
介质访问控制
静态分配信道:
频分、时分、波分、码分
动态分配信道:
ALOHA:效率18%
时隙ALOHA:效率36%
CSMA/CD:具有碰撞检测的载波侦听多路访问协议;为了确保能够有效检测碰撞,以太网规定最短帧长为64B。若检测到碰撞,则延迟一个随机时长重传,重传16次仍不能成功,摈弃该帧。
CSMA/CA:碰撞避免的载波侦听多路访问协议,用于没线局域网
以太网:逻辑拓扑为总线型,采用曼切斯特编码。
局部设备和作用
网络层功能:路由选择、分组转发、拥塞控制
路由算法
距离矢量算法
BGP BGP发言人运行BGP和AS内部协议(AS:自治系统)
链路状态算法
OSPF network 19二.16八.一.0 0.0.0.255
OSPF划分若干Area,路由器只知道本区域的细节,没需知道其他区域,只须要把分组交付给对应的边界路由器
IPv4首部长度:20B
分类:
A类(一.0.0.0-12六.25五.25五.255)
B类(12八.0.0.0-19一.25五.25五.255)
C类(19二.0.0.0-22三.25五.25五.255)
D类(22四.0.0.0-23九.25五.25五.255)
E类(240.0.0.0-25五.25五.25五.255)
IPv6首部长度:40B
网络地址转换:网络地址转换(NAT)是指通过将专用网络地址转换为公用地址,从而对外隐藏内部管理的IP地址。它使得整个专用网只须要一个全球IP地址就能够与因特网连通,大大节约了IP地址的耗费。
DHCP:中文名称为动态主机配置协议,用于自动配置IP地址,是一个应用层的协议。
网络层常用协议
传输层功能:为不同主机的进程之间提供逻辑通信
常用端口
主要协议
UDP
没连接
首部8B
常用于网络电话、实时视频会议、流媒体(边看边传输)
TCP
面向连接
保证有序、可靠交付
点对点
首部20B
建设TCP连接
释放TCP连接
TCP可靠传输机制
序号
确认
重传(超时、冗余ACK)
流量控制:在确认报文中设置接管窗口rwnd的值来限制发送速率
拥塞控制
应用层
网络应用架构
C/S 客户机、效劳器模式
B/S 浏览器、效劳器模式
P2P 对等方互相通信
DNS
传输层运用UDP,端口53
查询方式:
递归查询(比较少用)
迭代+递归查询(常用)
HTTP
HTTP一.1默认运用持久连接,一个TCP连接能够传输多个资源
URL:统一资源定位符,负责标识万维网上各种文档
常用应用层协议
对单片机感兴趣的朋友可以找我,我录制了一些关于单片机的入门教程,有需要的童鞋找我拿就行,免费的,私信我“林老师”就可以拿 点击打开我的头像就能领取
D. 计算机网络的问题,麻烦知道的呃详细解答一下
很惭愧,我也不会。。
第一题,我的课本是谢希仁的计算机网络第六版,怎么没见到GBN在哪一层,你给我说一下,我们共同研究
第二题,没告诉数据传输率啊,怎么求Td呢?
第三题,这个我倒是懂,肯定是900才对。第一段数据应该是100-399,共300B,第一段确认号为400,第二段肯定是900啊,确认号就是说“900之前的都收到了”
E. 计算机网络的定义,分类和主要功能是什么
计算机网络的定义:将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统。
计算机网络的分类:局域网、城域网、广域网、无线网。
计算机网络的主要功能:将大量独立的、但相互连接起来的计算机来共同完成计算机任务。
(5)计算机网络gbn扩展阅读:
计算机网络的性能有:
1、速率
计算机发送出的信号都是数字形式的。比特是计算机中数据量的单位,也是信息论中使用的信息量的单位。英文字bit来源于binarydigit,意思是一个“二进制数字”,因此一个比特就是二进制数字中的一个1或0。
2、带宽
在计算机网络中,带宽用来表示网络的通信线路所能传送数据的能力,因此网络带宽表示在单位时间内从网络中的某一点到另一点所能通过的“最高数据率”。这里一般说到的“带宽”就是指这个意思。这种意义的带宽的单位是“比特每秒”,记为bit/s。
3、吞吐量
吞吐量表示在单位时间内通过某个网络(或信道、接口)的数据量。吞吐量更经常地用于对现实世界中的网络的一种测量,以便知道实际上到底有多少数据量能够通过网络。
参考资料来源:网络—计算机网络
F. 计算机网络名词解释知识点简答题整理
基带传输:比特流直接向电缆发送,无需调制到不同频段;
基带信号:信源发出的没有经过调制的原始电信号;
URL :统一资源定位符,标识万维网上的各种文档,全网范围唯一;
传输时延:将分组的所有比特推向链路所需要的时间;
协议:协议是通信设备通信前约定好的必须遵守的规则与约定,包括语法、语义、定时等。
网络协议:对等层中对等实体间制定的规则和约定的集合;
MODEM :调制解调器;
起始(原始)服务器:对象最初存放并始终保持其拷贝的服务器;
计算机网络:是用通信设备和线路将分散在不同地点的有独立功能的多个计算机系统互相连接起来,并通过网络协议进行数据通信,实现资源共享的计算机集合;
解调:将模拟信号转换成数字信号;
多路复用:在一条传输链路上同时建立多条连接,分别传输数据;
默认路由器:与主机直接相连的一台路由器;
LAN :局域网,是一个地理范围小的计算机网络;
DNS :域名系统,完成主机名与 IP 地址的转换;
ATM :异步传输模式,是建立在电路交换和分组交换基础上的一种面向连接的快速分组交换技术;
Torrent :洪流,参与一个特定文件分发的所有对等方的集合;
Cookie :为了辨别用户、用于 session 跟踪等而储存在用户本地终端的数据;
SAP :服务访问点;
n PDU : PDU 为协议数据单元,指对等层之间的数据传输单位;第 n 层的协议数据单元;
PPP :点对点传输协议;
Web caching :网页缓存技术;
Web 缓存:代替起始服务器来满足 HTTP 请求的网络实体。
Proxy server :代理服务器;
Go-back-n :回退 n 流水线协议;允许发送方连续发送分组,无需等待确认,若出错,从出错的分组开始重发;接收方接收数据分组,若正确,发 ACK ,若出错,丢弃出错分组及其后面的分组,不发任何应答;
Packet switching :分组交换技术;
CDMA :码分多路复用技术;各站点使用不同的编码,然后可以混合发送,接收方可正确提取所需信息;
TDM :时分多路复用,将链路的传输时间划分为若干时隙,每个连接轮流使用不同时隙进行传输;
FDM :频分多路复用,将链路传输频段分成多个小的频段,分别用于不同连接信息的传送;
OSI :开放系统互连模型,是计算机广域网体系结构的国际标准,把网络分为 7 层;
CRC :循环冗余检测法,事先双方约定好生成多项式,发送节点在发送数据后附上冗余码,使得整个数据可以整除生成多项式,接收节点收到后,若能整除,则认为数据正确,否则,认为数据错误;
RIP :路由信息协议;
Socket (套接字):同一台主机内应用层和运输层的接口;
转发表:交换设备内,从入端口到出端口建立起来的对应表,主要用来转发数据帧或 IP 分组;
路由表:路由设备内,从源地址到目的地址建立起来的最佳路径表,主要用来转发 IP 分组;
存储转发:分组先接收存储后,再转发出去;
虚电路网络:能支持实现虚电路通信的网络;
数据报网络:能支持实现数据报通信的网络;
虚电路:源和目的主机之间建立的一条逻辑连接,创建这条逻辑连接时,将指派一个虚电路标识符 VC.ID ,相关设备为它运行中的连接维护状态信息;
毒性逆转技术: DV 算法中,解决计数到无穷的技术,即告知从相邻路由器获得最短路径信息的相邻路由器到目的网络的距离为无穷大;
加权公平排队 WFQ :排队策略为根据权值大小不同,将超出队列的数据包丢弃;
服务原语:服务的实现形式,在相邻层通过服务原语建立交互关系,完服务与被服务的过程;
透明传输:在无需用户干涉的情况下,可以传输任何数据的技术;
自治系统 AS :由一组通常在相同管理者控制下的路由器组成,在相同的 AS 中,路由器可全部选用同样的选路算法,且拥有相互之间的信息;
分组丢失:分组在传输过程中因为种种原因未能到达接收方的现象;
隧道技术:在链路层或网络层通过对等协议建立起来的逻辑通信信道;
移动接入:也称无线接入,是指那些常常是移动的端系统与网络的连接;
面向连接服务:客户机程序和服务器程序发送实际数据的分组前,要彼此发送控制分组建立连接;
无连接服务:客户机程序和服务器程序发送实际数据的分组前,无需彼此发送控制分组建立连接;
MAC 地址:网卡或网络设备端口的物理地址;
拥塞控制:当网络发生拥塞时,用响应的算法使网络恢复到正常工作的状态;
流量控制:控制发送方发送数据的速率,使收发双方协调一致;
Ad Hoc 网络:自主网络,无基站;
往返时延:发送方发送数据分组到收到接收方应答所需要的时间;
电路交换:通信节点之间采用面向连接方式,使用专用电路进行传输;
ADSL :异步数字用户专线,采用不对称的上行与下行传输速率,常用于用户宽带接入。
多播:组播,一对多通信;
路由器的组成包括:输入端口、输出端口、交换结构、选路处理器;
网络应用程序体系结构:客户机 / 服务器结构、对等共享、混合;
集线器是物理层设备,交换机是数据链路层设备,网卡是数据链路层设备,路由器是网络层设备;
双绞线连接设备的两种方法:直连线和交叉线,同种设备相连和计算机与路由器相连都使用交叉线;不同设备相连用直连线;
MAC 地址 6 字节, IPv4 地址 4 字节, IPv6 地址 16 字节;
有多种方法对载波波形进行调制,调频,调幅,调相;
IEEE802.3 以太网采用的多路访问协议是 CSMA/CD ;
自治系统 AS 内部的选路协议是 RIP 、 OSPF ;自治系统间的选路协议是 BGP ;
多路访问协议:分三大类:信道划分协议、随机访问协议、轮流协议;
信道划分协议包括:频分 FDM 、时分 TDM 、码分 CDMA ;
随机访问协议包括: ALOHA 、 CSMA 、 CSMA/CD(802.3) 、 CSMA/CA(802.11) ;
轮流协议包括:轮询协议、令牌传递协议
ISO 和 OSI 分别是什么单词的缩写,中文意思是什么?用自己的理解写出 OSI 分成哪七层?每层要解决的问题和主要功能是什么?
答:ISO:international standard organization 国际标准化组织;OSI:open system interconnection reference model 开放系统互连模型;
OSI分为 应用层、表示层、会话层、传输层、网络层、数据链路层、物理层;
层名称解决的问题主要功能
应用层实现特定应用选择特定协议;针对特定应用规定协议、时序、表示等,进行封装。在端系统中用软件来实现,如HTTP;
表示层压缩、加密等表示问题;规定数据的格式化表示,数据格式的转换等;
会话层会话关系建立,会话时序控制等问题;规定通信的时序;数据交换的定界、同步、建立检查点等;
传输层源端口到目的端口的传输问题;所有传输遗留问题:复用、流量、可靠;
网络层路由、拥塞控制等网络问题;IP寻址,拥塞控制;
数据链路层相邻节点无差错传输问题;实现检错与纠错,多路访问,寻址;
物理层物理上可达;定义机械特性,电气特性,功能特性等;
因特网协议栈分层模型及每层的功能。
分层的优点:使复杂系统简化,易于维护和更新;
分层的缺点:有些功能可能在不同层重复出现;
假设一个用户 ( 邮箱为: [email protected]) 使用 outlook 软件发送邮件到另一个用户 ( 邮箱为: [email protected]) ,且接收用户使用 IMAP 协议收取邮件,请给出此邮件的三个传输阶段,并给出每个阶段可能使用的应用层协议。
用户 [email protected] 使用outlook软件发送邮件到 163 邮件服务器
163邮件服务器将邮件发送给用户 [email protected] 的yahoo邮件服务器
用户 [email protected] 使用IMAP协议从yahoo邮件服务器上拉取邮件
第1、2阶段可以使用SMTP协议或者扩展的SMTP协议:MIME协议,第3阶段可以使用IMAP、POP3、HTTP协议
三次握手的目的是什么?为什么要三次(二次为什么不行)?
为了实现可靠数据传输,TCP协议的通信双方,都必须维护一个序列号,以标识发送出去的数据包中,哪些是已经被对方收到的。三次握手的过程即是通信双方相互告知序列号起始值,并确认对方已经收到了序列号起始值的必经步骤。
如果只是两次握手,至多只有连接发起方的起始序列号能被确认,另一方选择的序列号则得不到确认。
选择性重传 (SR) 协议中发送方窗口和接收方窗口何时移动?分别如何移动?
发送方:当收到ACK确认分组后,若该分组的序号等于发送基序号时窗口发生移动;向前移动到未确认的最小序号的分组处;
接收方:当收到分组的序号等于接收基序号时窗口移动;窗口按交付的分组数量向前移动;
简述可靠传输协议 rdt1.0, rdt2.0, rdt2.1, rdt2.2 和 rdt3.0 在功能上的区别。
rdt1.0:经可靠信道上的可靠数据传输,数据传送不出错不丢失,不需要反馈。
rdt2.0(停等协议):比特差错信道上的可靠数据传输,认为信道传输的数据可能有比特差错,但不会丢包。接收方能进行差错检验,若数据出错,发送方接收到NAK之后进行重传。
rdt2.1:在rdt2.0的基础上增加了处理重复分组的功能,收到重复分组后,再次发送ACK;
rdt2.2:实现无NAK的可靠数据传输,接收方回发带确认号的ACK0/1,
收到出错分组时,不发NAK,发送接收到的上一个分组的ACK;
rdt3.0:实现了超时重发功能,由发送方检测丢包和恢复;
电路交换和虚电路交换的区别?哪些网络使用电路交换、报文交换、虚电路交换和数据报交换?请各举一个例子。
电路交换时整个物理线路由通讯双方独占;
虚电路交换是在电路交换的基础上增加了分组机制,在一条物理线路上虚拟出多条通讯线路。
电路交换:电话通信网
报文交换:公用电报网
虚电路交换:ATM
数据报交换:Internet
电路交换:面向连接,线路由通信双方独占;
虚电路交换:面向连接,分组交换,各分组走统一路径,非独占链路;
数据报交换:无连接,分组交换,各分组走不同路径;
交换机逆向扩散式路径学习法的基本原理:
交换表初始为空;
当收到一个帧的目的地址不在交换表中时,将该帧发送到所有其他接口(除接收接口),并在表中记录下发送节点的信息,包括源MAC地址、发送到的接口,当前时间;
如果每个节点都发送了一帧,每个节点的地址都会记录在表中;
收到一个目的地址在表中的帧,将该帧发送到对应的接口;
表自动更新:一段时间后,没有收到以表中某个地址为源地址的帧,从表中删除该地址;
非持久 HTTP 连接和持久 HTTP 连接的不同:
非持久HTTP连接:每个TCP连接只传输一个web对象,只传送一个请求/响应对,HTTP1.0使用;
持久HTTP连接:每个TCP连接可以传送多个web对象,传送多个请求/响应对,HTTP1.1使用;
Web 缓存的作用是什么?简述其工作过程:
作用:代理原始服务器满足HTTP请求的网络实体;
工作过程:
浏览器:与web缓存建立一个TCP连接,向缓存发送一个该对象的HTTP请求;
Web缓存:检查本地是否有该对象的拷贝;
若有,就用HTTP响应报文向浏览器转发该对象;
若没有,缓存与原始服务器建立TCP连接,向原始服务器发送一个该对象的HTTP请求,原始服务器收到请求后,用HTTP响应报文向web缓存发送该对象,web缓存收到响应,在本地存储一份,并通过HTTP响应报文向浏览器发送该对象;
简要说明无线网络为什么要用 CSMA/CA 而不用 CSMA/CD ?
无线网络用无线信号实施传输,现在的技术还无法检测冲突,因此无法使用带冲突检测的载波侦听多路访问协议CSMA/CD,而使用冲突避免的载波侦听多路访问协议CSMA/CA;
简述各种交换结构优缺点,并解释线头 HOL 阻塞现象。
内存交换结构:以内存为交换中心;
优点:实现简单,成本低;
缺点:不能并行,速度慢;
总线交换结构:以共享总线为交换中心;
优点:实现相对简单,成本低;
缺点:不能并行,速度慢,不过比memory快;
纵横制:以交叉阵列为交换中心;
优点:能并行,速度快,比memory和总线都快;
缺点:实现复杂,成本高;
线头HOL阻塞:输入队列中后面的分组被位于线头的一个分组阻塞(即使输出端口是空闲的),等待交换结构发送;
CSMA/CD 协议的中文全称,简述其工作原理。
带冲突检测的载波侦听多路访问协议;
在共享信道网络中,发送节点发送数据之前,先侦听链路是否空闲,若空闲,立即发送,否则随机推迟一段时间再侦听,在传输过程中,边传输边侦听,若发生冲突,以最快速度结束发送,并随机推迟一段时间再侦听;
奇偶校验、二维奇偶校验、 CRC 校验三者比较:
奇偶校验能检测出奇数个差错;
二维奇偶校验能够检测出两个比特的错误,能够纠正一个比特的差错;
CRC校验能检测小于等于r位的差错和任何奇数个差错;
GBN 方法和 SR 方法的差异:
GBN:一个定时器,超时,重发所有已发送未确认接收的分组,发送窗口不超过2的k次方-1,接收窗口大小为1,采用累计确认,接收方返回最后一个正确接受的分组的ACK;
SR:多个定时器,超时,只重发超时定时器对应的分组,发送窗口和接收窗口大小都不超过2的k-1次方,非累计确认,接收方收到当前窗口或前一窗口内正确分组时返回对应的ACK;
G. 计算机网络第三章(数据链路层)
3.1、数据链路层概述
概述
链路 是从一个结点到相邻结点的一段物理线路, 数据链路 则是在链路的基础上增加了一些必要的硬件(如网络适配器)和软件(如协议的实现)
网络中的主机、路由器等都必须实现数据链路层
局域网中的主机、交换机等都必须实现数据链路层
从层次上来看数据的流动
仅从数据链路层观察帧的流动
主机H1 到主机H2 所经过的网络可以是多种不同类型的
注意:不同的链路层可能采用不同的数据链路层协议
数据链路层使用的信道
数据链路层属于计算机网路的低层。 数据链路层使用的信道主要有以下两种类型:
点对点信道
广播信道
局域网属于数据链路层
局域网虽然是个网络。但我们并不把局域网放在网络层中讨论。这是因为在网络层要讨论的是多个网络互连的问题,是讨论分组怎么从一个网络,通过路由器,转发到另一个网络。
而在同一个局域网中,分组怎么从一台主机传送到另一台主机,但并不经过路由器转发。从整个互联网来看, 局域网仍属于数据链路层 的范围
三个重要问题
数据链路层传送的协议数据单元是 帧
封装成帧
封装成帧 (framing) 就是在一段数据的前后分别添加首部和尾部,然后就构成了一个帧。
首部和尾部的一个重要作用就是进行 帧定界 。
差错控制
在传输过程中可能会产生 比特差错 :1 可能会变成 0, 而 0 也可能变成 1。
可靠传输
接收方主机收到有误码的帧后,是不会接受该帧的,会将它丢弃
如果数据链路层向其上层提供的是不可靠服务,那么丢弃就丢弃了,不会再有更多措施
如果数据链路层向其上层提供的是可靠服务,那就还需要其他措施,来确保接收方主机还可以重新收到被丢弃的这个帧的正确副本
以上三个问题都是使用 点对点信道的数据链路层 来举例的
如果使用广播信道的数据链路层除了包含上面三个问题外,还有一些问题要解决
如图所示,主机A,B,C,D,E通过一根总线进行互连,主机A要给主机C发送数据,代表帧的信号会通过总线传输到总线上的其他各主机,那么主机B,D,E如何知道所收到的帧不是发送给她们的,主机C如何知道发送的帧是发送给自己的
可以用编址(地址)的来解决
将帧的目的地址添加在帧中一起传输
还有数据碰撞问题
随着技术的发展,交换技术的成熟,
在 有线(局域网)领域 使用 点对点链路 和 链路层交换机 的 交换式局域网 取代了 共享式局域网
在无线局域网中仍然使用的是共享信道技术
3.2、封装成帧
介绍
封装成帧是指数据链路层给上层交付的协议数据单元添加帧头和帧尾使之成为帧
帧头和帧尾中包含有重要的控制信息
发送方的数据链路层将上层交付下来的协议数据单元封装成帧后,还要通过物理层,将构成帧的各比特,转换成电信号交给传输媒体,那么接收方的数据链路层如何从物理层交付的比特流中提取出一个个的帧?
答:需要帧头和帧尾来做 帧定界
但比不是每一种数据链路层协议的帧都包含有帧定界标志,例如下面例子
前导码
前同步码:作用是使接收方的时钟同步
帧开始定界符:表明其后面紧跟着的就是MAC帧
另外以太网还规定了帧间间隔为96比特时间,因此,MAC帧不需要帧结束定界符
透明传输
透明
指某一个实际存在的事物看起来却好像不存在一样。
透明传输是指 数据链路层对上层交付的传输数据没有任何限制 ,好像数据链路层不存在一样
帧界定标志也就是个特定数据值,如果在上层交付的协议数据单元中, 恰好也包含这个特定数值,接收方就不能正确接收
所以数据链路层应该对上层交付的数据有限制,其内容不能包含帧定界符的值
解决透明传输问题
解决方法 :面向字节的物理链路使用 字节填充 (byte stuffing) 或 字符填充 (character stuffing),面向比特的物理链路使用比特填充的方法实现透明传输
发送端的数据链路层在数据中出现控制字符“SOH”或“EOT”的前面 插入一个转义字符“ESC” (其十六进制编码是1B)。
接收端的数据链路层在将数据送往网络层之前删除插入的转义字符。
如果转义字符也出现在数据当中,那么应在转义字符前面插入一个转义字符 ESC。当接收端收到连续的两个转义字符时,就删除其中前面的一个。
帧的数据部分长度
总结
3.3、差错检测
介绍
奇偶校验
循环冗余校验CRC(Cyclic Rendancy Check)
例题
总结
循环冗余校验 CRC 是一种检错方法,而帧校验序列 FCS 是添加在数据后面的冗余码
3.4、可靠传输
基本概念
下面是比特差错
其他传输差错
分组丢失
路由器输入队列快满了,主动丢弃收到的分组
分组失序
数据并未按照发送顺序依次到达接收端
分组重复
由于某些原因,有些分组在网络中滞留了,没有及时到达接收端,这可能会造成发送端对该分组的重发,重发的分组到达接收端,但一段时间后,滞留在网络的分组也到达了接收端,这就造成 分组重复 的传输差错
三种可靠协议
停止-等待协议SW
回退N帧协议GBN
选择重传协议SR
这三种可靠传输实现机制的基本原理并不仅限于数据链路层,可以应用到计算机网络体系结构的各层协议中
停止-等待协议
停止-等待协议可能遇到的四个问题
确认与否认
超时重传
确认丢失
既然数据分组需要编号,确认分组是否需要编号?
要。如下图所示
确认迟到
注意,图中最下面那个数据分组与之前序号为0的那个数据分组不是同一个数据分组
注意事项
停止-等待协议的信道利用率
假设收发双方之间是一条直通的信道
TD :是发送方发送数据分组所耗费的发送时延
RTT :是收发双方之间的往返时间
TA :是接收方发送确认分组所耗费的发送时延
TA一般都远小于TD,可以忽略,当RTT远大于TD时,信道利用率会非常低
像停止-等待协议这样通过确认和重传机制实现的可靠传输协议,常称为自动请求重传协议ARQ( A utomatic R epeat re Q uest),意思是重传的请求是自动进行,因为不需要接收方显式地请求,发送方重传某个发送的分组
回退N帧协议GBN
为什么用回退N帧协议
在相同的时间内,使用停止-等待协议的发送方只能发送一个数据分组,而采用流水线传输的发送方,可以发送多个数据分组
回退N帧协议在流水线传输的基础上,利用发送窗口来限制发送方可连续发送数据分组的个数
无差错情况流程
发送方将序号落在发送窗口内的0~4号数据分组,依次连续发送出去
他们经过互联网传输正确到达接收方,就是没有乱序和误码,接收方按序接收它们,每接收一个,接收窗口就向前滑动一个位置,并给发送方发送针对所接收分组的确认分组,在通过互联网的传输正确到达了发送方
发送方每接收一个、发送窗口就向前滑动一个位置,这样就有新的序号落入发送窗口,发送方可以将收到确认的数据分组从缓存中删除了,而接收方可以择机将已接收的数据分组交付上层处理
累计确认
累计确认
优点:
即使确认分组丢失,发送方也可能不必重传
减小接收方的开销
减小对网络资源的占用
缺点:
不能向发送方及时反映出接收方已经正确接收的数据分组信息
有差错情况
例如
在传输数据分组时,5号数据分组出现误码,接收方通过数据分组中的检错码发现了错误
于是丢弃该分组,而后续到达的这剩下四个分组与接收窗口的序号不匹配
接收同样也不能接收它们,讲它们丢弃,并对之前按序接收的最后一个数据分组进行确认,发送ACK4, 每丢弃一个数据分组,就发送一个ACK4
当收到重复的ACK4时,就知道之前所发送的数据分组出现了差错,于是可以不等超时计时器超时就立刻开始重传,具体收到几个重复确认就立刻重传,根据具体实现决定
如果收到这4个重复的确认并不会触发发送立刻重传,一段时间后。超时计时器超时,也会将发送窗口内以发送过的这些数据分组全部重传
若WT超过取值范围,例如WT=8,会出现什么情况?
习题
总结
回退N帧协议在流水线传输的基础上利用发送窗口来限制发送方连续发送数据分组的数量,是一种连续ARQ协议
在协议的工作过程中发送窗口和接收窗口不断向前滑动,因此这类协议又称为滑动窗口协议
由于回退N帧协议的特性,当通信线路质量不好时,其信道利用率并不比停止-等待协议高
选择重传协议SR
具体流程请看视频
习题
总结
3.5、点对点协议PPP
点对点协议PPP(Point-to-Point Protocol)是目前使用最广泛的点对点数据链路层协议
PPP协议是因特网工程任务组IEIF在1992年制定的。经过1993年和1994年的修订,现在的PPP协议已成为因特网的正式标准[RFC1661,RFC1662]
数据链路层使用的一种协议,它的特点是:简单;只检测差错,而不是纠正差错;不使用序号,也不进行流量控制;可同时支持多种网络层协议
PPPoE 是为宽带上网的主机使用的链路层协议
帧格式
必须规定特殊的字符作为帧定界符
透明传输
必须保证数据传输的透明性
实现透明传输的方法
面向字节的异步链路:字节填充法(插入“转义字符”)
面向比特的同步链路:比特填充法(插入“比特0”)
差错检测
能够对接收端收到的帧进行检测,并立即丢弃有差错的帧。
工作状态
当用户拨号接入 ISP 时,路由器的调制解调器对拨号做出确认,并建立一条物理连接。
PC 机向路由器发送一系列的 LCP 分组(封装成多个 PPP 帧)。
这些分组及其响应选择一些 PPP 参数,并进行网络层配置,NCP 给新接入的 PC 机
分配一个临时的 IP 地址,使 PC 机成为因特网上的一个主机。
通信完毕时,NCP 释放网络层连接,收回原来分配出去的 IP 地址。接着,LCP 释放数据链路层连接。最后释放的是物理层的连接。
可见,PPP 协议已不是纯粹的数据链路层的协议,它还包含了物理层和网络层的内容。
3.6、媒体接入控制(介质访问控制)——广播信道
媒体接入控制(介质访问控制)使用一对多的广播通信方式
Medium Access Control 翻译成媒体接入控制,有些翻译成介质访问控制
局域网的数据链路层
局域网最主要的 特点 是:
网络为一个单位所拥有;
地理范围和站点数目均有限。
局域网具有如下 主要优点 :
具有广播功能,从一个站点可很方便地访问全网。局域网上的主机可共享连接在局域网上的各种硬件和软件资源。
便于系统的扩展和逐渐地演变,各设备的位置可灵活调整和改变。
提高了系统的可靠性、可用性和残存性。
数据链路层的两个子层
为了使数据链路层能更好地适应多种局域网标准,IEEE 802 委员会就将局域网的数据链路层拆成 两个子层 :
逻辑链路控制 LLC (Logical Link Control)子层;
媒体接入控制 MAC (Medium Access Control)子层。
与接入到传输媒体有关的内容都放在 MAC子层,而 LLC 子层则与传输媒体无关。 不管采用何种协议的局域网,对 LLC 子层来说都是透明的。
基本概念
为什么要媒体接入控制(介质访问控制)?
共享信道带来的问题
若多个设备在共享信道上同时发送数据,则会造成彼此干扰,导致发送失败。
随着技术的发展,交换技术的成熟和成本的降低,具有更高性能的使用点对点链路和链路层交换机的交换式局域网在有线领域已完全取代了共享式局域网,但由于无线信道的广播天性,无线局域网仍然使用的是共享媒体技术
静态划分信道
信道复用
频分复用FDM (Frequency Division Multiplexing)
将整个带宽分为多份,用户在分配到一定的频带后,在通信过程中自始至终都占用这个频带。
频分复用 的所有用户在同样的时间 占用不同的带宽资源 (请注意,这里的“带宽”是频率带宽而不是数据的发送速率)。
H. 计算机网络笔记——数据链路层(停等协议、GBN、SR)
流量控制:防止发送端发送和接收端接收速度不匹配造成传输错误
传输层和数据链路层均有流量控制,但是控制手法不一样
传输层:端到端,接收端向发送端发送一个窗口公告。告诉发送端目前我能接收多少
数据链路层:点到点,接收端接收不下的就不回复确认(ack),让发送端自己重传
涉及协议较多分批写
优点 :最简单的控制协议
缺点 :但是性能较弱,信道利用率低
控制方法 :
发送方:发送一个帧
接收方:接收到帧后返回改帧的ack
发送方:接收到ack后发送下一个帧
差错控制 :
注意 :
滑动窗口协议是基于停止等待协议的优化版本
停止等待协议性能是因为需要等待ack之后才能发送下一个帧,在传送的很长时间内信道一直在等待状态
滑动窗口则利用缓冲思想,允许连续发送(未收到ack之前)多个帧,以加强信道利用
窗口 :其实就是缓冲帧的一个容器,将处理好的帧发送到缓冲到窗口,可以发送时就可以直接发送,借此优化性能。一个帧对应一个窗口。
GBN是滑动窗口中的一种,其中 发送窗口 > 1 , 接收窗口=1 因发送错误后需要退回到最后正确连续帧位置开始重发,故而得名。
控制方法 :
发送端:在将发送窗口内的数据连续发送
接收端:收到一个之后向接收端发送累计确认的ack
发送端:收到ack后窗口后移发送后面的数据
累计确认 :累计确认允许接收端一段时间内发送一次ack而不是每一个帧都需要发送ack。该确认方式确认代表其前面的帧都以正确接收到
eg:发送端发送了编号 0,1,2,3,4,5 的帧,等待一段时间后(超过3的超时计时器)累计收到的ack对应 0,2 帧,则证明已经成功 0,1,2 均已经成功接收, 3 传输错误。并且哪怕 4,5 两个帧接收成功后也不会返回 4,5 的ack会一直等待从 3 开始重传
差错控制 :
发送帧丢失、ack丢失、ack迟到 等处理方法基本和停等协议相同,不同的是采用累计确认恢复的方式,当前面的帧出错之后后面帧无论是否发送成功都要重传
优点:信道利用率高(利用窗口有增加发送端占用,并且减少ack回复次数)
缺点:累计确认使得该方法只接收正确顺序的帧,而不接受乱序的帧,错误重传浪费严重
发送窗口大小问题
窗口理论上是越多性能越好,但是窗口不能无限大,n比特编码最大只能2^(n-1)个窗口,否则会造成帧无法区分(本质就是留了一个比特区分两组帧)
SR协议可以说是GBN的plus版本,在GBN的基础上改回每一个帧都要确认的机制,解决了累计确认只接收顺序帧的弊端只需要重发错误帧。
其中 发送窗口 > 1 , 接收窗口 > 1 , 接收窗口 > 发送窗口 (建议接 收窗口 = 发送窗口 接收窗口少了溢出多了浪费).
控制方法 :
发送端:将窗口内的数据连续发送
接收端:收到一个帧就将该帧缓存到窗口中并回复一个ack
接收端:接收到顺序帧后将数据提交给上层并接收窗口后移(若接收到的帧不是连续的顺序帧时接收窗口不移动)
发送端:接收到顺序帧的ack后发送窗口后移(同理发送窗口接收到的ack不连续也不移动)
差错控制 :
发送帧丢失、ack丢失、ack迟到 三类处理方式仍然和停等协议相同,不同的是SR向上层提交的是多个连续帧,停等只提交一个帧(不连续的帧要等接收或重传完成后才会提交)
发送窗口大小问题
同GBN一样,发送窗口和接收窗口都不能无限多,且不说缓存容量问题,当两组帧同时发送时会造成无法区分,大小上限仍然是2^(n-1)个窗口(本质就是留了一个比特写组号)
窗口大小这里留一张截图,方便理解
假设窗口大小都为3(图中编号到了3是借4窗口的图,正常应编号到2,但是不妨碍理解)
左边是错误重发,第一组的0帧ack丢失了
右边是正常收发
三种协议对比:
停等协议:单线程的傻子,简单不易出错,但是效率极其低下
GBN:假的多线程(接收端太坑啦),接收端是情种,只等待自己哪一个帧,丢弃了后来的帧
SR:多线程,接收端有收藏癖,等待集齐一套召唤神龙(提交给上层这只神龙……)
I. 计算机网络传输层
端到端的连接
网络层:提供主机之间的逻辑通信
传输层:提供应用进程之间的逻辑通信
位于网络层之上、依赖网络层服务、对网络层服务进行可能的增强
接收端:多路分用
相同目的地址目的端口号的UDP会被导向同一个socket
每个srcIp srcPort DestIp DestPort 导向自己独有的socket(创建多个socket)
(服务器也可以让一个进程创建多个线程与tcp连接绑定)
发送端:多路复用
什么是可靠? 不错、不乱、不丢
可靠数据传输协议
GBN
1.发送方 分组头部包含k-bit序列号
窗口尺寸为N,最多允许N个分组未确认
序列号 :表示本报文段所发送数据的第一个字节的编号。而不是报文段的编号(这里防止被攻击混入其他的段难以检测的问题)。
建立TCP连接时,双方随即选择序列号
ACKs 表示接收方期望收到发送方下一个报文段的第一个字节数据的编号。
累计确认:该序列号之前所有的字节均已被正确接收到(GBN)
TCP在IP层提供的不可靠服务基础上实现可靠数据传输服务
流水线机制
累积确认
TCP使用单一重传定时器
触发重传的事件
超时
收到重复ACK
渐进式
暂不考虑重复ACK
暂不考虑流量控制
暂不考虑拥塞控制
1.点对点 一个sender 一个 reciever
2.可靠的、按序的字节流
3.流水线机制
案例:
何时应该指数性增长切换为线性增长(拥塞避免)?
当CongWin达到Loss事件前值的1/2时.
实现方法:利用一个变量 Threshold, Loss事件发生时, Threshold被设为Loss事件前CongWin值的1/2。
Loss事件处理办法
3个重复ACKs:CongWin切到一半然后线性增长
Timeout事件:CongWin直接设为1个MSS,然后指数增长,达到threshold后, 再线性增长(拥塞更严重了)
TCP拥塞控制算法
4.接收方/发送方缓存
5.全双工:同一连接中能传输双数据流
6.面向连接(连接管理)
TCP连接包括:两台主机上的缓存、连接状态变量、socket等
客户端初始化的序列号是随机的
7.流量控制机制:发送方不会传输的太多、太快以至于淹没接收方(buffer溢出)
8.复用/分用
1.基于“尽力而为”的网络层,没有做(可靠性)
丢失
非按序到达
2.基于Internet IP协议
复用/分用
简单的错误校验
3.无连接
UDP发送方和接收方之间不需要握手
每个UDP段的处理独立于其他段
UPD优点:
1.无需建立连接(减少延迟)-DNS
2.实现简单,无需维护连接状态
3.头部开销小(8byte)
4.没有拥塞控制:应用可更好的控制发送时间和速率
常用于流媒体应用
1.容忍丢失
2.速率敏感
DNS/SNMP
在UDP上实现可靠数据传输
UDP校验和:检测UDP段在传输过程中是否发生错误
J. 计算机网络(三)数据链路层
结点:主机、路由器
链路:网络中两个结点之间的物理通道,链路的传输介质主要有双绞线、光纤和微波。分为有线链路、无线链路。
数据链路:网络中两个结点之间的逻辑通道,把实现控制数据传输协议的硬件和软件加到链路上就构成数据链路。
帧:链路层的协议数据单元,封装网络层数据报。
数据链路层负责通过一条链路从一个结点向另一个物理链路直接相连的相邻结点传送数据报。
数据链路层在物理层提供服务的基础上向网络层提供服务,其最基本的服务是将源自网络层来的数据可靠地传输到相邻节点的目标机网络层。其主要作用是加强物理层传输原始比特流的功能,将物理层提供的可能出错的物理连接改造成为 逻辑上无差错的数据链路 ,使之对网络层表现为一条无差错的链路。
封装成帧就是在一段数据的前后部分添加首部和尾部,这样就构成了一个帧。接收端在收到物理层上交的比特流后,就能根据首部和尾部的标记,从收到的比特流中识别帧的开始和结束。首部和尾部包含许多的控制信息,他们的一个重要作用:帧定界(确定帧的界限)。
帧同步:接收方应当能从接收到的二进制比特流中区分出帧的起始和终止。
组帧的四种方法:
透明传输是指不管所传数据是什么样的比特组合,都应当能够在链路上传送。因此,链路层就“看不见”有什么妨碍数据传输的东西。
当所传数据中的比特组合恰巧与某一个控制信息完全一样时,就必须采取适当的措施,使收方不会将这样的数据误认为是某种控制信息。这样才能保证数据链路层的传输是透明的。
概括来说,传输中的差错都是由于噪声引起的。
数据链路层编码和物理层的数据编码与调制不同。物理层编码针对的是单个比特,解决传输过程中比特的同步等问题,如曼彻斯特编码。而数据链路层的编码针对的是一组比特,它通过冗余码的技术实现一组二进制比特串在传输过程是否出现了差错。
较高的发送速度和较低的接收能力的不匹配,会造成传输出错,因此流量控制也是数据链路层的一项重要工作。数据链路层的流量控制是点对点的,而传输层的流量控制是端到端的。
滑动窗口有以下重要特性:
若采用n个比特对帧编号,那么发送窗口的尺寸W T 应满足: 。因为发送窗口尺寸过大,就会使得接收方无法区别新帧和旧帧。
每发送完一个帧就停止发送,等待对方的确认,在收到确认后再发送下一个帧。
除了比特出差错,底层信道还会出现丢包 [1] 问题
“停止-等待”就是每发送完一个分组就停止发送,等待对方确认,在收到确认后再发送下一个分组。其操作简单,但信道利用率较低
信道利用率是指发送方在一个发送周期内,有效地发送数据所需要的时间占整个发送周期的比率。即
GBN发送方:
GBN接收方:
因连续发送数据帧而提高了信道利用率,重传时必须把原来已经正确传送的数据帧重传,是传送效率降低。
设置单个确认,同时加大接收窗口,设置接收缓存,缓存乱序到达的帧。
SR发送方:
SR接收方:
发送窗口最好等于接收窗口。(大了会溢出,小了没意义),即
传输数据使用的两种链路
信道划分介质访问控制将使用介质的每个设备与来自同一通信信道上的其他设备的通信隔离开来,把时域和频域资源合理地分配给网络上的设备。
当传输介质的带宽超过传输单个信号所需的带宽时,人们就通过在一条介质上同时携带多个传输信号的方法来提高传输系统的利用率,这就是所谓的多路复用,也是实现信道划分介质访问控制的途径。多路复用技术把多个信号组合在一条物理信道上进行传输,使多个计算机或终端设备共享信道资源,提高了信道的利用率。信道划分的实质就是通过分时、分频、分码等方法把原来的一条广播信道,逻辑上分为几条用于两个结点之间通信的互不干扰的子信道,实际上就是把广播信道转变为点对点信道。
频分多路复用是一种将多路基带信号调制到不同频率载波上,再叠加形成一个复合信号的多路复用技术。在物理信道的可用带宽超过单个原始信号所需带宽的情况下,可将该物理信道的总带宽分割成若千与传输单个信号带宽相同(或略宽)的子信道,每个子信道传输一种信号,这就是频分多路复用。
每个子信道分配的带宽可不相同,但它们的总和必须不超过信道的总带宽。在实际应用中,为了防止子信道之间的千扰,相邻信道之间需要加入“保护频带”。频分多路复用的优点在于充分利用了传输介质的带宽,系统效率较高;由于技术比较成熟,实现也较容易。
时分多路复用是将一条物理信道按时间分成若干时间片,轮流地分配给多个信号使用。每个时间片由复用的一个信号占用,而不像FDM那样,同一时间同时发送多路信号。这样,利用每个信号在时间上的交叉,就可以在一条物理信道上传输多个信号。
就某个时刻来看,时分多路复用信道上传送的仅是某一对设备之间的信号:就某段时间而言,传送的是按时间分割的多路复用信号。但由于计算机数据的突发性,一个用户对已经分配到的子信道的利用率一般不高。统计时分多路复用(STDM,又称异步时分多路复用)是TDM 的一种改进,它采用STDM帧,STDM帧并不固定分配时隙,面按需动态地分配时隙,当终端有数据要传送时,才会分配到时间片,因此可以提高线路的利用率。例如,线路传输速率为8000b/s,4个用户的平均速率都为2000b/s,当采用TDM方式时,每个用户的最高速率为2000b/s.而在STDM方式下,每个用户的最高速率可达8000b/s.
波分多路复用即光的频分多路复用,它在一根光纤中传输多种不同波长(频率)的光信号,由于波长(频率)不同,各路光信号互不干扰,最后再用波长分解复用器将各路波长分解出来。由于光波处于频谱的高频段,有很高的带宽,因而可以实现多路的波分复用
码分多路复用是采用不同的编码来区分各路原始信号的一种复用方式。与FDM和 TDM不同,它既共享信道的频率,又共享时间。下面举一个直观的例子来理解码分复用。
实际上,更常用的名词是码分多址(Code Division Multiple Access.CDMA),1个比特分为多个码片/芯片( chip),每一个站点被指定一个唯一的m位的芯片序列,发送1时发送芯片序列(通常把o写成-1) 。发送1时站点发送芯片序列,发送o时发送芯片序列反码。
纯ALOHA协议思想:不监听信道,不按时间槽发送,随机重发。想发就发
如果发生冲突,接收方在就会检测出差错,然后不予确认,发送方在一定时间内收不到就判断发生冲突。超时后等一随机时间再重传。
时隙ALOHA协议的思想:把时间分成若干个相同的时间片,所有用户在时间片开始时刻同步接入网络信道,若发生冲突,则必须等到下一个时间片开始时刻再发送。
载波监听多路访问协议CSMA(carrier sense multiple access)协议思想:发送帧之前,监听信道。
坚持指的是对于监听信道忙之后的坚持。
1-坚持CSMA思想:如果一个主机要发送消息,那么它先监听信道。
优点:只要媒体空闲,站点就马上发送,避免了媒体利用率的损失。
缺点:假如有两个或两个以上的站点有数据要发送,冲突就不可避免。
非坚持指的是对于监听信道忙之后就不继续监听。
非坚持CSMA思想:如果一个主机要发送消息,那么它先监听信道。
优点:采用随机的重发延迟时间可以减少冲突发生的可能性。
缺点:可能存在大家都在延迟等待过程中,使得媒体仍可能处于空闲状态,媒体使用率降低。
p-坚持指的是对于监听信道空闲的处理。
p-坚持CSMA思想:如果一个主机要发送消息,那么它先监听信道。
优点:既能像非坚持算法那样减少冲突,又能像1-坚持算法那样减少媒体空闲时间的这种方案。
缺点:发生冲突后还是要坚持把数据帧发送完,造成了浪费。
载波监听多点接入/碰撞检测CSMA/CD(carrier sense multiple access with collision detection)
CSMA/CD的工作流程:
由图可知,至多在发送帧后经过时间 就能知道所发送的帧有没有发生碰撞。因此把以太网端到端往返时间为 称为争周期(也称冲突窗口或碰撞窗口)。
截断二进制指数规避算法:
最小帧长问题:帧的传输时延至少要两倍于信号在总线中的传播时延。
载波监听多点接入/碰撞避免CSMA/CA(carrier sense multiple access with collision avoidance)其工作原理如下
CSMA/CD与CSMA/CA的异同点:
相同点:CSMA/CD与CSMA/CA机制都从属于CSMA的思路,其核心是先听再说。换言之,两个在接入信道之前都须要进行监听。当发现信道空闲后,才能进行接入。
不同点:
轮询协议:主结点轮流“邀请”从属结点发送数据。
令牌:一个特殊格式的MAC控制帧,不含任何信息。控制信道的使用,确保同一时刻只有一个结点独占信道。每个结点都可以在一定的时间内(令牌持有时间)获得发送数据的权利,并不是无限制地持有令牌。应用于令牌环网(物理星型拓扑,逻辑环形拓扑)。采用令牌传送方式的网络常用于负载较重、通信量较大的网络中。
轮询访问MAC协议/轮流协议/轮转访问MAC协议:基于多路复用技术划分资源。
随机访问MAC协议: 用户根据意愿随机发送信息,发送信息时可独占信道带宽。 会发生冲突
信道划分介质访问控制(MAC Multiple Access Control )协议:既要不产生冲突,又要发送时占全部带宽。
局域网(Local Area Network):简称LAN,是指在某一区域内由多台计算机互联成的计算机组,使用广播信道。其特点有
决定局域网的主要要素为:网络拓扑,传输介质与介质访问控制方法。
局域网的分类
IEEE 802标准所描述的局域网参考模型只对应OSI参考模型的数据链路层与物理层,它将数据链路层划分为逻辑链路层LLC子层和介质访问控制MAC子层。
以太网(Ethernet)指的是由Xerox公司创建并由Xerox、Intel和DEC公司联合开发的基带总线局域网规范,是当今现有局域网采用的最通用的通信协议标准。以太网络使用CSMA/CD(载波监听多路访问及冲突检测)技术。 以太网只实现无差错接收,不实现可靠传输。
以太网两个标准:
以太网提供无连接、不可靠的服务
10BASE-T是传送基带信号的双绞线以太网,T表示采用双绞线,现10BASE-T 采用的是无屏蔽双绞线(UTP),传输速率是10Mb/s。
计算机与外界有局域网的连接是通过通信适配器的。
在局域网中,硬件地址又称为物理地址,或MAC地址。MAC地址:每个适配器有一个全球唯一的48位二进制地址,前24位代表厂家(由IEEE规定),后24位厂家自己指定。常用6个十六进制数表示,如02-60-8c-e4-b1-21。
最常用的MAC帧是以太网V2的格式。
IEEE 802.11是无线局域网通用的标准,它是由IEEE所定义的无线网络通信的标准。
广域网(WAN,Wide Area Network),通常跨接很大的物理范围,所覆盖的范围从几十公里到几千公里,它能连接多个城市或国家,或横跨几个洲并能提供远距离通信,形成国际性的远程网络。
广域网的通信子网主要使用分组交换技术。广域网的通信子网可以利用公用分组交换网、卫星通信网和无线分组交换网,它将分布在不同地区的局域网或计算机系统互连起来,达到资源共享的目的。如因特网(Internet)是世界范围内最大的广域网。
点对点协议PPP(Point-to-Point Protocol)是目前使用最广泛的数据链路层协议,用户使用拨号电话接入因特网时一般都使用PPP协议。 只支持全双工链路。
PPP协议应满足的要求
PPP协议的三个组成部分
以太网交换机
冲突域:在同一个冲突域中的每一个节点都能收到所有被发送的帧。简单的说就是同一时间内只能有一台设备发送信息的范围。
广播域:网络中能接收任一设备发出的广播帧的所有设备的集合。简单的说如果站点发出一个广播信号,所有能接收收到这个信号的设备范围称为一个广播域。
以太网交换机的两种交换方式:
直通式交换机:查完目的地址(6B)就立刻转发。延迟小,可靠性低,无法支持具有不同速率的端口的交换。
存储转发式交换机:将帧放入高速缓存,并检查否正确,正确则转发,错误则丢弃。延迟大,可靠性高,可以支持具有不同速率的端口的交换。