CSMA/CD协议
为了通信的简便,以太网采取了两种重要的措施:
第一:采用较为灵活的无连接的工作方式,即不必先建立连接就可以直接发送数据;
第二:以太网对发送的数据帧不进行编号,也不要求对方发回确认。
因此,以太网提供的服务是不可靠的交付,即尽最大努力的交付。但是当目的站收到有差错的数据帧时,就丢弃此帧,其他什么也不做。对有差错帧的重传则有高层来决定。例如,如果高层使用TCP协议,那么TCP就会发现丢失了一些数据,于是经过一定的时间后,TCP就会把这些数据重新传递给以太网进行重传。但是以太网并不知道这是重传帧,而是当做新的数据帧来传送。
重要问题:如何协调总线上各计算机的工作?在同一时间只能允许一台计算机发送消息。
解决方法:CSMA/CD 载波监听多点介入/碰撞检测
“多点接入”:许多计算机以多点接入的方式连接在一根总线上。协议的实质是“载波监听”和“碰撞检测”。
“载波监听”:每一个站在发送数据之前先要检测总线上是否有其他计算机在发送数据,如果有,暂时不发送;
”碰撞检测“:计算机边发送数据边检测信道上的信号电压大小。当几个站同时同时在总线上发送数据时,总线上的信号电压摆动值将会增大(互相叠加)。一旦发现出现了碰撞,就要立即停止发送,免得继续浪费网络资源,然后等待一段随机时间后再次发送。
CSMA/CD协议的更多相关文章
- 2016.6.20 计算机网络复习要点第三章之CSMA/CD协议
1.最早的以太网是将许多计算机都连接到一根总线上: (1)总线的特点是:当一台计算机发送数据时,总线上的所有计算机都检测到这个数据,这种就是广播通信方式: (2)为了实现在总线上的一对一通信,可以使每 ...
- CSMA/CD协议——学习笔记
CSMA/CD协议要点: 1)适配器从网络层获得一个分组,加上以太网的首部和尾部,组成以太网帧,放入适配器的缓存中,准备发送. 2)若适配器检测到信道空闲(即在96比特时间内没有检测到信道上有信号), ...
- 计算机网络【2】—— CSMA/CD协议
参考文献: https://blog.csdn.net/loveCC_orange/article/details/79177129 一.认识以太网 最早的以太网是将许多计算机都连接到一根总线上. 使 ...
- 10.秋招复习简单整理之CSMA/CD协议
我们知道,总线上只要有一台计算机在发送数据,总线的传输资源就被占用.因此,在同一时间只能允许一台计算机发送数据,否则各计算机之间就会相互干扰,使得所发送的数据被破坏.因此,如何协调总线上各计算机的工作 ...
- 使用CSMA/CD协议一个计算题
题干: 首先计算一下A这个以太网所容许的最短的帧它的发送帧的长度时间为: (8(前同步码为8)+64(最短帧长))*8(单位转换b到B)=576比特 有关于单位转换: B是Byte的缩写,B就是Byt ...
- CSMA/CD协议(载波侦听多路访问/碰撞检测) 最小帧长理解
以下的帧长有的是指帧的时间长度,帧的时间长度= 帧长/传输时延
- 计算机网络之介质访问控制(静态划分信道、FDM、TDM、STDM、WDM、CDM)、(动态划分信道、ALOHA、CSMA、CSMA/CD、CSMA/CA)、令牌传递协议
文章转自:https://blog.csdn.net/weixin_43914604/article/details/104935912 学习课程:<2019王道考研计算机网络> 学习目的 ...
- [计算机网络-数据链路层] CSMA、CSMA/CA、CSMA/CD详解
1.CSMA(载波侦听多路访问协议) CSMA 当其他节点检测到信道被占用时不发送数据.但是当数据发送完后其他节点同时检测到信道为空闲,之后又在同一时刻发送数据,可能再次产生冲突. 2.CSMA/CD ...
- 重学 以太网的mac协议的CSMA/CD
之前上课一直模糊的CSMA/CD进行系统性整理. CSMA/CD (Carrier Sense Multiple Acess/Collision Detect)应用在OSI的 数据链路层 在以太网中, ...
随机推荐
- Android 基于Netty的消息推送方案之对象的传递(四)
在上一篇文章中<Android 基于Netty的消息推送方案之字符串的接收和发送(三)>我们介绍了Netty的字符串传递,我们知道了Netty的消息传递都是基于流,通过ChannelBuf ...
- Python购物车的实现课程
需求: 1.用户输入工资收入 2.打印商品列表 3.用户选择商品,不断的加入购物车 4.检测用户余额,直接捐款,不足提示余额不足 5.允许主动退出,退出时,打印已购商品列表 重点方法: 打印列表下标的 ...
- AngularJs练习Demo17 ngRoute
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...
- jQuery Alert Dialogs (Alert, Confirm, & Prompt代替方案)
基本范例--原文:http://keleyi.com/keleyi/phtml/jqplug/ Alert jAlert('自定义对话框', 'Alert对话框'); Confirm jConfirm ...
- C#中的TCP通讯与UDP通讯
最近做了一个项目,主要是给Unity3D和实时数据库做通讯接口.虽然方案一直在变:从开始的UDP通讯变为TCP通讯,然后再变化为UDP通讯;然后通讯的对象又发生改变,由与数据库的驱动进行通讯(主动推送 ...
- C++拾遗(二)关于变量
符号常量——预处理方式 例如: #define ZERO 0 会替换程序中所有的ZERO为0,在那些设计为用于C和C++的头文件中,必须使用#define来定义符号常量. 无符号类型 unsigned ...
- angularjs——module
1.创建module //第一个参数是模块的名称 var head=angular.module('headApp',[]); head.controller("User",[&q ...
- 工作中遇到的浏览器差别(就不叫IE6bug了)
1.根据ie版本写css <!--[if lt IE 8]> <style> .cntContainer{margin-top: -1px;} </style> & ...
- 面试题:获取大量数据中某一条的index
提问: 群里分享了一个面试题:页面里有很多条数据,怎么知道这条数据的index,并且不使用循环? 分析: 如果在数组里,直接用indexOf,但对于对象会比较麻烦. 在页面上,不使用循环的话,可以用定 ...
- python生成html文件浏览器中文显示乱码问题
近来在网上采集数据,想把采集下来的数据整合成html的形式保存.以便其他的平台产品可以直接读取html显示或者根据html标签提取数据. def output_html(self): try: fou ...