数据链路层,给两个相邻节点传输数据。

数据链路:物理链路+通信协议。

数据链路层使用的信道主要有点对点信道和广播信道两种。

一、点对点信道的PPP协议:

  用三层模型来研究数据链路层,不管在哪一链路上的通信(主机对路由,路由对路由)

  点对点信道的数据链路层的通信时主要步骤如下:

    1.A的数据链路层,把网络层传下来的IP数据包,加上头尾信息封装成framing

    2.A把封装好的framing发给B的数据链路层

    3.如果B收到的framing无差错,就拆掉头尾,提取出IP数据包交给网络层;反之就丢弃

  数据链路层协议需要解决的三个问题:

    1.封装成帧:分组交换的特点就是在因特网上以packet为单位传输,首尾的数据加在IP数据包上,用来标识数据的首尾并添加一些控制信息。帧的数据部分需要小于MTU maximum transfer unit.

  2.透明传输:"透明的"(transparent)表示实际上存在的东西对我们却好像看不见一样或好象不存在一样.对于普通的电话通信,由于输入和输出的波形是有差异的,故可以说普通的电话通信不是透明传输。

        帧的头尾数据的标记,可能与帧的数据包内的数据产生重复,导致接收方讲数据包的数据解读为 SOH,EOH而错误解读帧,解决办法是在帧内的数据包中,出现SOH,EOH的数据时,在前部加上转义字符ESC标记。

  3.差错检测:物理链路传输时,0差错是理想状态。非理想状态时,需要用差错检测来保证传输的正确性。

   差错有两种,一种是比特差错,即物理传输的1001之类的出现差错,另一种是传输差错,比如帧丢失,帧重复,帧顺序错误;

      数据链路层的比特差错检测目前用的方法是循环冗余检测CRC cyclic redundancy check,用于检验比特差错,使用的方法有FCS,即传输帧+余数(传输帧的N位模2运算➗N+1位的设置的协议数取得的余数)

      OSI要求是说数据链路层提供可靠传输,即在CRC的基础上,再对帧增加编号,确认和重传机制。但是现在的因特网上大多数使用的数据链路层协议都不支持确认和重传机制,说不支持可以提高通信效率,传输差错的检测交给运输层的TCP来做。

  PPP协议

    以前通信线路质量差,用得是HDLC协议,在数据链路层实现可靠传输。

    现在大多数都改为PPP point-to-point protocol协议,不可靠的数据链路协议。

    PPP协议应满足的需求:简单,封装成帧,透明性,多种网络层协议,多种类型链路,差错检测,检测连接状态,最大传送单元,网络层地址协商,数据压缩协商。

    PPP协议的工作状态:

二、使用广播信道的数据链路层

  广播信道可以进行一对多的通信。

  局域网优点:具有广播功能,便于系统的扩展和逐渐演变,提高了系统的可靠性,可用性和生存性

  局域网按照网络拓扑分类:环形网,星型网,总线网。

  网络共享信道需要考虑的问题是如何共享通信媒体:静态划分信道,动态媒体接入控制(随机接入/受控接入)

  属于随机接入的以太网被重点讨论:以太网的IEEE802.3标准将数据链路层拆成了逻辑链路控制LLC和媒体接入控制MAC,不过后来商业淘汰了LLC,大部分以太网只考虑MAC。

  适配器的作用:

  以太网为了传输数据,并且在传输失败时实现重传,采用的是CSMA/CD协议。

    CSMA/CD 实现在信号中途发生碰撞时,重传的机制。

    CSMA/CD的要点:准备发送,检测信道,发送中检测信道(适配器要边发边听)

  MAC协议的帧组成:

  扩展以太网的方法:

    -物理层拓展:用大集线器管理小集线器,小集线器管理主机,通过一个大的集线器网络,将各个以太网连接起来。

    -数据链路层拓展:以太网交换机(网桥被淘汰),以太网交换机就是多接口的网桥,每个接口都与一个主机或者另一个交换机相连,独占传输媒体,无碰撞传输数据。

  

疑问:

1.集线器原理是用一堆线将每个主机都互联起来传输数据吗?

2.以太网的那些帧长度设置,时间设置的原理不清楚

3.集线器扩展以太网,为什么网速要拉在一个水平线上呢?

4.网桥和适配器有什么差别?不都是分析帧的目的地址然后发送吗?适配器是都转发,然后接受的人发现自己不是接收人就遗弃?

5.以太网交换机为什么不会碰撞呢???交换机和主机只有一条线,不是也可以碰撞吗?数据从单独的这条线进出的时候不是会碰撞吗?

6.以太网的实例是什么?局域网可以是公司网,校园网。以太网呢????网吗????

7.后面那一大堆以太网,交换机,网桥,和”给两个相邻节点传输数据“有什么关系???感觉很像网络层啊???

计算机基础:计算机网络-chapter3的更多相关文章

  1. Java学习之计算机基础(一)

    阅读本文大概需要 4 分钟 想要开始学习Java开发,需要掌握一些必要的计算机基础.如果你是计算机专业的人或者已经学过类似的课程,可以跳过这篇文章的阅读.计算机基础课程有很多,小编在大学里学过的课程就 ...

  2. day01<计算机基础知识&Java语言基础>

    计算机基础知识(计算机概述) 计算机基础知识(软件开发和计算机语言概述) 计算机基础知识(人机交互) 计算机基础知识(键盘功能键和快捷键) 计算机基础知识(如何打开DOS控制台) 计算机基础知识(常见 ...

  3. [Java 教程 00] 计算机基础

    前言 我想,来到这的朋友肯定是想学习JAVA或者想要进入IT这个行业的.考虑到大家的基础可能不一样,有些人可能还是用着新买的电脑,为了让大家在后续的学习中更加顺畅.在学习一门全新的计算机语言之前,我需 ...

  4. 【java基础】01 计算机基础知识

    一.计算机基础知识 1. 计算机 1. 什么是计算机? 计算机在生活中的应用举例 计算机(Computer)全称:电子计算机,俗称电脑.是一种能够按照程序运行,自动.高速处理海量数据的现代化智能电子设 ...

  5. Java学习1——计算机基础知识

    本文包含了一些计算机基础知识:计算机组成:Windows常用快捷键:DOS常用命令:计算机语言发展史.

  6. 计算机基础--Java中int char byte的关系

    计算机基础--Java中int char byte的关系 重要:一个汉字占用2byte,Java中用char(0-65535 Unicode16)型字符来存字(直接打印输出的话是字而非数字),当然要用 ...

  7. 计算机基础-Day1

    计算机基础-Day1 一.计算机基础 首先Python是一门编程语言 语言: 那什么是语言?语言就是一种事物与另一种事物沟通的介质. 所以说编程语言是程序员跟计算机沟通的介质,那么为什么要跟计算机沟通 ...

  8. python计算机基础-Day1

    计算机基础-Day1 一.计算机基础 首先Python是一门编程语言 语言: 那什么是语言?语言就是一种事物与另一种事物沟通的介质. 所以说编程语言是程序员跟计算机沟通的介质,那么为什么要跟计算机沟通 ...

  9. Python之旅_计算机基础入门

    一.计算机基础 1.Python是编程语言 语言:一种事物与另一种事物沟通的介质. 编程语言:程序员与计算机沟通的介质. 什么是编程:程序员用编程语言把自己的逻辑思想下来,编程的结果就是一堆文件. 为 ...

  10. 计算机基础,Python基础--变量以及简单的循环

    一.计算机基础 1.CPU 相当于人体的大脑,用于计算处理数据. 2.内存  用于存储数据,CPU从内存调用数据处理计算,运算速度很快. PS:问:既然在内存里的数据CPU运算速度快,为什么计算机不全 ...

随机推荐

  1. 剖析插件 DataTable 自定义列表列get请求如何书写传递的参数

    重点代码Demo 已用 斜体标注 后端flask: @task_mgm.route('/taskinfo_editID=<int:num>', methods=['GET', 'POST' ...

  2. vscode運行vue和html

    html 选中html文件,右键选择view in broswer.

  3. (转载)C#使用MemoryStream类读写内存

    MemoryStream和BufferedStream都派生自基类Stream,因此它们有很多共同的属性和方法,但是每一个类都有自己独特的用法.这两个类都是实现对内存进行数据读写的功能,而不是对持久性 ...

  4. C-LODOP设置同一页面 手机电脑都打印

    C-Lodop有四种角色,1:客户端本地打印方式客户端访问web,调用客户端本地的打印机进行打印,这时候调用的安装在客户端本地的c-lodop服务,实际调用的是http://Localhost:800 ...

  5. poj-1236(强连通分量)

    题意:给你n个点,每个点可能有指向其他点的单向边,代表这个点可以把软件传给他指向的点,然后解决两个问题, 1.问你最少需要给几个点,才能使所有点都能拿到软件: 2.问你还需要增加几条单向边,才能使任意 ...

  6. Civil 3D 二次开发 事务

    事务,一般是指要做的或所做的事情.在计算机术语中是指访问并可能更新数据库中各种数据项的一个程序执行单元(unit). 对于初学者来说,从字面上难以理解什么是事务.下面我试着通过讲述事务的作用及特性来帮 ...

  7. P1020 导弹拦截

    思路:贪心思路 拿比飞来的导弹高并且高度和飞来的导弹最相近的拦截系统去接, 如果全部都比导弹矮,那就新开一个拦截系统 #include<cstdio> #include<string ...

  8. UOJ273 [清华集训2016] 你的生命已如风中残烛 【数学】

    题目分析: 把$0$卡牌看成$-1$.题目要求前缀和始终大于等于$1$. 最后添加一个$-1$,这样除了最后一位之外大于等于1,最后一位等于0. 构造圆排列.这样的话一个圆排列只有一个满足的情况,然后 ...

  9. 洛谷3704 [SDOI2017] 数字表格 【莫比乌斯反演】

    题目分析: 比较有意思,但是套路的数学题. 题目要求$ \prod_{i=1}^{n} \prod_{j=1}^{m}Fib(gcd(i,j)) $. 注意到$ gcd(i,j) $有大量重复,采用莫 ...

  10. FPGA笔试题集锦(血的教训)

    1.名词解释: FPGA:现场可编程门阵列,一般工艺SRAM(易失性),所以要外挂配置芯片. CPLD:复杂可编程逻辑器件,一般工艺Flash(不易失). ASIC:专用集成电路 SOC:片上系统 S ...