zoukankan      html  css  js  c++  java
  • CSMA/CD协议

    协议要点:

    1.多点接入

    许多计算机已多点接入的方式连接在一条线上。即总线型网络。

    协议的实质是 载波监听 和 碰撞检测

    2.载波监听 3.碰撞检测

    其实总线中不存在什么载波 只是借用一下“载波”这个名词而已,载波监听就是信道的检测看信道是否空闲

    无论是发送前还是发送中,每个站都在不停的检测,其中为什么在发送中还要检测呢?

    是为了及时发现有没有其他站的发送和本站发送产生碰撞,这称为碰撞检测,即“边发送边监听”

    碰撞检测也称冲突检测,若信号碰撞,则总线上传输的信号会发生严重的失真,且无法恢复出有用的信息,需要

    立即停止发送,免得造成网络资源浪费,等待一段时间重新发送。

    这里其实有一个疑问 我不是监听了信道吗 没有空闲我才发的呀 怎么会产生碰撞?

    同时发送信号(即同时监测到信道空闲) 或 电磁波的传播时延过长时会发生碰撞

    (因为网卡只有在接收到电压幅度不正常的信号以后才能判断是否产生了冲突,

    所以它在接收到信号之前会认为信道是空闲的。但是信号传播会有延迟,延迟过长就容易发生碰撞)

    把总线上端到端传播延时记为a最迟在2a时发现信号发生了 碰撞

    显然 使用该协议 一个站不可能同时进行发送和接受(是因为会发生碰撞?) 但必须边发送 边监听信道 使用该协议的以太网只能进行半双工通信

    区别:

    全双工(Full Duplex)是指在发送数据的同时也能够接收数据,两者同步进行,这好像我们平时打电话一样,说话的同时也能够听到对方的声音。目前的网卡一般都支持全双工。
    半双工(Half Duplex),所谓半双工就是指一个时间段内只有一个动作发生,举个简单例子,一条窄窄的马路,同时只能有一辆车通过,当目前有两辆车对开,这种情况下就只能一辆先过,等到头儿后另一辆再开,这个例子就形象的说明了半双工的原理。早期的对讲机、以及早期集线器等设备都是基于半双工的产品。随着技术的不断进步,半双工会逐渐退出历史舞台。
    1、半双工传输模式采用载波侦听多路访问/冲突检测。传统的共享型LAN以半双工模式运行,线路上容易发生传输冲突。与集线器相连的节点(即多个节点共享一条到交换机端口的连接)必须以半双工模式运行。因为这种节点必须能够冲突检测。类似于单车道桥梁
    2、全双工传输模式可以用于点到点以太网连接和快速以太网连接,同时不会发生冲突,因为他们使用双绞线中两条不同线路。类似于双车道桥梁。
    3、一般在网卡的高级属性里可以修改网卡的双工类型,默认是自动协商。交换机上有Duplex灯,如果亮表示工作在全双工方式。目前绝大多数的交换机均能自动识别与支持双工方式,无需手工设置。
    来自百度百科
     
    总结为先听后发,边发边听,冲突停发,随机延迟后重发
    重传算法(待续)
  • 相关阅读:
    boost::asio在VS2008下的编译错误
    Java集合框架——接口
    ACM POJ 3981 字符串替换(简单题)
    ACM HDU 1042 N!(高精度计算阶乘)
    OneTwoThree (Uva)
    ACM POJ 3979 分数加减法(水题)
    ACM HDU 4004 The Frog's Games(2011ACM大连赛区第四题)
    Hexadecimal View (2011ACM亚洲大连赛区现场赛D题)
    ACM HDU 4002 Find the maximum(2011年大连赛区网络赛第二题)
    ACM HDU 4001 To Miss Our Children Time (2011ACM大连赛区网络赛)
  • 原文地址:https://www.cnblogs.com/junkdog/p/10651512.html
Copyright © 2011-2022 走看看