精华内容
下载资源
问答
  • 以太网MAC协议--CSMA/CD协议

    千次阅读 2019-11-27 11:38:55
    以太网MAC协议–CSMA/CD协议 @(计算机网络) 为了通信的方便,以太网采用了两种重要的措施: CSMA/CD协议 采用无连接的工作方式:传输数据之前不用建立连接 对发送的帧不进行编号,也不要求接收方发回确认帧。这样...

    以太网MAC协议–CSMA/CD协议
    @(计算机网络)

    为了通信的方便,以太网采用了两种重要的措施:

    CSMA/CD协议

    采用无连接的工作方式:传输数据之前不用建立连接
    对发送的帧不进行编号,也不要求接收方发回确认帧。这样做的理由:局域网的信道质量非常好,因为信道质量产生的错误的概率非常小。区别于数据链路层协议。
    所以,以太网提供的是无连接不可靠的服务。尽最大努力交付即可。

    关于CSMA/CD协议,我只是单纯的学习了这些协议的特点,没有看到它们就是以太网的具体采用的协议。

    中文名称是:载波监听多路访问/冲突检测协议。

    所以有必要解释一下中文的含义:

    载波监听:站点发送数据前,先检查总线上是不是已经有数据在传输,如果有就暂缓发送,避免冲突。实质是:冲突发生前尽量避免。
    多路访问:即总线型网络。以太网就是总线型网路。
    冲突检测:边发送边对介质上电压信号进行检测,当电压摆动值超过一定门限时就认为发生了冲突。一旦发生冲突就停止发送数据,然后根据协议进行重传。
    退避算法总结:以太网采用截断二进制指数回退算法解决冲突后重发问题。核心思想是:发生冲突后的站点在停止发送数据后,不是立即重发而是推迟一个随机的时间。

    具体做法是:

    确定单位回退时间。通常取冲突窗口的值,即传输512bit数据用时,叫作时槽。
    定义参数k,等于重传次数,不能超过10,即k = min(n,10)
    取r,0≤r<2kr,0≤r<2k,重传的时延就是r倍的单位回退时间。
    重传达到16次仍然不成功,表示当前同时发送数据的站点过多,连续发生冲突,丢弃该帧,向上层报告,任务完不成。。
    这里看出来,重传次数越多,等待时间越长。动态退避,利于系统稳定。


    ————————————————
    版权声明:本文为CSDN博主「DrCrypto」的原创文章,遵循 CC 4.0 BY 版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/u011240016/article/details/53200258

    展开全文
  • 以太网协议

    千次阅读 2018-11-23 15:38:52
    以太网协议中,目的地址分为三种单播地址、广播地址、多播地址,其中单播地址如上面A给B主机发送,其接收者为一个,并且其目的地址的最高字节的低位为0, 以太网多播地址48位中的最高字节的低位为1,如 01:00...

    以太网(Ethernet)

    以太网是一种局域网技术,其规定了访问控制方法、传输控制协议、网络拓扑结构、传输速率等,完成数据链路层和物理层的一些内容,它采用一种称作CSMA/CD的媒体接入方法,其意思是带冲突检测的载波侦听多路接入(Carrier Sense, Multiple Access with Collision Detection),另外的一些局域网技术有令牌环网,无线LAN等。

    以太网协议

    TCP/IP四层模型中,以太网协议采用RFC894格式,如下图:
    在这里插入图片描述

    其中目的地址和源地址指的是MAC地址,即设备的物理地址。MAC地址用于标示网卡,每个网卡都具有唯一的MAC 地址
    在这里插入图片描述

    当在同一个局域网中,主机A需要给主机B发送消息时,主机A将以太网桢发出,此时局域网中所有主机均可收到这个桢,主机中的网卡接收到以太网桢后,会将目的MAC地址和自己的MAC地址进行比较,如果不相同就会丢弃,如果相同则会接收,此时则B主机就收到了A的消息。
    以太网桢中的类型指的是,其内部数据的协议类型,如果中间是IP数据报则协议类型为0800, 如果是ARP请求或者应答,则为0806,类型占两个字节
    其最后面是CRC循环冗余码,用于差错控制,即检验桢的正确性
    最后就是以太网桢为了提供足够快的响应速度具有长度限制,其数据部分的最大长度受到MTU控制, 最小长度不能小于46字节,如ARP请求为28位,为了满足最小长度需要填充到46位(PAD)

    MTU(最大传输单元)

    MTU是根据不同类型的网络给出的最大传输单元的限制,如以太网的MTU为1500字节,16MB/s的令牌环(IBM)的MTU 为17914字节,其作用是为了保证网络有足够快的响应速度,另外MTU 指的是以太网桢数据部分的长度,并非以太网桢的长度。假设需要发送的UDP数据报长度大于MTU减去IP首部长度,此时数据报在IP层就会进行分片。
    在这里插入图片描述

    单播 多播 广播

    在以太网协议中,目的地址分为三种单播地址、广播地址、多播地址,其中单播地址如上面A给B主机发送,其接收者为一个,并且其目的地址的最高字节的低位为0,
    以太网多播地址48位中的最高字节的低位为1,如 01:00:00:00:00:00 ,只要这一位为1均为多播地址,‘
    以太网广播地址可以看作特殊的多播地址其48位全为1 11:11:11:11:11:11,
    当网卡收到一个桢后查看桢检验和,如果桢检验和出错则丢弃,然后进行桢过滤,检验其桢是否具有合法的桢类型,其目的地址是否和自己的物理地址相同,或者是否是多播地址,然后根据帧类型进行分用。
    另外网卡可以设置为混合模式,可以接受每个收到的桢的一个复制,tcpdump采用这种方法。

    参考:《TCP/IP详解卷1:协议》 LawrenceBerkeley

    展开全文
  • 西门子S7以太网通讯协议

    千次阅读 2019-09-22 21:10:48
    S7以太网协议属于TCP/IP协议族的一种,下图为S7以太网协议在ISO-OSI参考模型中的位置。 通过WireShark抓包,可以看出S7以太网协议的模型: ISO-OSI参考模型、TCP/IP模型及S7以太网协议模型对比 ...

    S7以太网协议属于TCP/IP协议族的一种,下图为S7以太网协议在ISO-OSI参考模型中的位置。

     

    通过WireShark抓包,可以看出S7以太网协议的模型:

     

     

    ISO-OSI参考模型、TCP/IP模型及S7以太网协议模型对比

    ISO-OSI参考模型

    TCP/IP模型

    S7以太网协议模型

    7-应用层

    4-应用层

    6-S7  Communication

    6-表示层

    5-  COTP(TSAP)

    RFC1006

    5-会话层

    4-TPKT

    4-传输层

    3-传输层

    3-TCP(102端口)

    3-网络层

    2-网络互连层

    2-IP

    2-数据链路层

    1-网络接口层

    1-工业以太网

    1-物理层

    第5层(相对于ISO-OSI参考模型):TPKT(ISO Transport Service ontop of the TCP/ ISO传输服务通过TCP),介于TCP和COTP协议之间。这是一个传输服务协议,主要用来在COTP和TCP之间建立桥梁,包含了上层协议数据包的长度。

     

    第6层(相对于ISO-OSI参考模型):COTP(Connection OrientedTransport Protocol/面向连接的传输协议),比较TCP与COTP两种协议,因为它们都是用于通过网络可靠地传输用户数据,基于数据流的与基于数据包的:COTP将数据包从一个用户传输到另一个用户,所以接收者将获得与发送者传输完全相同的数据边界。TCP将连续的数据流传输到接收器,因此TCP上的协议通常必须自己添加这样的边界(如TPKT协议)。

    为了复用客户端和服务端之间的几个会话,COTP使用了TSAP(传输服务访问点),TSAP为2个字节,通常使用一个有意义的字符串。TSAP的第2个字节由机架号+插槽号组成,插槽号在0-4Bit机架号在5-7Bit。这些TSAP在连接建立阶段被匹配,并且在数据传输时由2字节(目标/源)参考代替。

    下图示例为SIMATIC NET OPC与S7-200 SMART PLC 通过S7以太网协议通讯的COTP TSAP设置值

    通过WireShark抓包,COTP的连接报文如下:

     

    为什么要使用RFC 1006 协议扩展

    RFCs(Request for Comments) 是一些技术类文档, 内容包括针对-例如以太网结构,协议的设计,email 报文头设计等等进行了详细的描述。 RFC 1006 中的“ISO Transport Service on top of theTCP(TPKT)”(ISO传输服务通过TCP)是TCP协议的一种扩展。这意味着除了TCP数据,在通讯双方之间还可以提供特殊的传输服务(ISO服务)。

    当数据使用TCP协议进行传输时,传输工作聚焦在数据流上。因此没有关于数据长度或者数据起始以及终止的信息。这对于发送方没有问题,因为它知道所要发送的字节数。但对于接收方来讲,它无法知道该信息什么时候开始,什么时候结束,以及下一条信息什么时候被发送。
    在许多自动化应用中,必须要关注工作信息。信息块通过一个连接由发送方发出,其完整性由接收方进行确认。为了进行这样的确认,RFC1006规定了在数据前面必须要加上报文头。RFC1006因此提供了这样一种应用,及根据TCP协议建立数据流,但面向消息进行传输。

    第7层(相对于ISO-OSI参考模型)S7 Communication应用协议(协议ID=0x32),包含三部分:1-Header;2-Parameter;3-Data。根据功能(S7Comm.Parameter.Function )不同,S7 Communication协议的结构会有所不同。例如,请求数据报文只包含前两部分。

    应答数据报文为3部分包括数据Data 段

    S7Communication应用协议中Parameter.Function的取值对应的功能如下表:

    下图为S7以太网通讯客户端从建立TCP连接到读取到服务端数据的整个过程

    1.握手

    当客户端192.168.1.101与服务端192.168.1.200通过Socket建立连接时,会进行“三次握手”,这是标准的TCP连接方式,这个过程会由Socket自动完成;

    2.通讯请求

    在“握手”之后,并不能马上进行数据交换,还需要“通讯请求”过程。

    这个过程包含两次报文交换:

    • 客户端发送COTP报文给服务端,在COTP报文中包含“连接请求”和“Destination TSAP”,以明确CPU的机架号和槽号;服务端应答COTP报文,包含“连接确认”;这样服务端就清楚了客户端需要和哪个CPU来进行数据通讯;

    • 客户端发送S7 Communicaton报文给服务端,在S7Communicaton报文中包含“通讯请求”; 服务端反馈S7 Communicaton报文。

    • 交换数据

    通讯应用就在这个过程内完成,可以组织报文来实现需要的功能。这个过程内的报文是S7 communicaton,具体实现时,需要对S7协议中的第5、6、7层进行编程。

    注意,如果不进行“第2步-通讯请求”而直接发送交换数据报文,则服务端会将连接断开。

    转载于:https://www.cnblogs.com/wllgo/p/11512150.html

    展开全文
  • 以太网数据包协议格式MAC层ARP层IP层ICMPUDPTCP、UDP数据包大小的限制 MAC层 帧格式: 帧介绍: 帧间隙(IFG): 网络设备和组件在接收一个帧之后,需要一段短暂的时间来恢复并为接收下一帧做准备。 不管 10M/100M/...

    MAC层

    帧格式:
    在这里插入图片描述

    帧介绍:
    在这里插入图片描述帧间隙(IFG):
    网络设备和组件在接收一个帧之后,需要一段短暂的时间来恢复并为接收下一帧做准备。
    不管 10M/100M/1000M的以太网,两帧之间最少要有96bit;公式:IFGmin=96bit/speed (单位:s),则:
    10Mmin 是9600 ns
    100Mmin 是960 ns
    1000Mmin 是 96 ns

    ARP层

    功能:
    地址解析协议(Address Resolution Protocol),其基本功能为透过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。

    帧格式:
    在这里插入图片描述
    帧介绍:
    在这里插入图片描述帧传输:
    若当前链路层网络类型为以太网,网络层协议为IP协议,以太网源地址为MAC1,源IP地址为IP1, 以太网目的地址为MAC2,目的IP地址为IP2。
    在这里插入图片描述

    IP层

    帧格式:
    在这里插入图片描述帧介绍:
    在这里插入图片描述

    ICMP

    功能:
    侦测远端主机是否存在,建立及维护路由资料,重导资料传送路径(ICMP重定向),资料流量控制。ICMP在沟通之中,主要是透过不同的类别(Type)与代码(Code) 让机器来识别不同的连线状况。
    帧格式:
    在这里插入图片描述帧介绍:
    在这里插入图片描述

    UDP

    UDP 报头使用两个字节存放端口号,所以端口号的有效范围是从 0 到 65535。一般来说,大于 49151 的端口号都代表动态端口。
    帧格式:
    在这里插入图片描述帧介绍:
    在这里插入图片描述

    TCP、UDP数据包大小的限制

    在这里插入图片描述
    1.在链路层,由以太网的物理特性决定了数据帧的长度为(46+18)-(1500+18),其中的18是数据帧的头和尾,也就是说数据帧的内容最大为1500(不包括帧头和帧尾),即MTU(Maximum Transmission Unit)为1500;  
    2.在网络层,因为IP包的首部要占用20字节,所以这的MTU为1500-20=1480; 
    3.在传输层,对于UDP包的首部要占用8字节,所以这的MTU为1480-8=1472;   
    所以,在应用层,你的Data最大长度为1472。当我们的UDP包中的数据多于MTU(1472)时,发送方的IP层需要分片fragmentation进行传输,而在接收方IP层则需要进行数据报重组,由于UDP是不可靠的传输协议,如果分片丢失导致重组失败,将导致UDP数据包被丢弃。   
    从上面的分析来看,在普通的局域网环境下,UDP的数据最大为1472字节最好(避免分片重组)。   
    但在网络编程中,Internet中的路由器可能有设置成不同的值(小于默认值),Internet上的标准MTU值为576,所以Internet的UDP编程时数据长度最好在576-20-8=548字节以内。

    展开全文
  • ppp协议与以太网协议的异同

    万次阅读 2017-09-26 16:52:48
    大家都知道当ip数据报传到数据链路层时需要封装成帧,ppp协议采用的方式是通过在ip在每个帧的首尾都添加一个帧定界符(soh与eot),但是以太网协议生成的帧却只有头部帧定界符,为什么mac帧不需要尾部定界符呢?...
  • Linux:数据链路层——以太网协议以太网协议以太网帧格式MTU以及MTU对TCP、UDP、IP协议的影响MTU对TCP协议的影响六级标题 以太网协议 数据链路层:数据链路层是OSI参考模型中的第二层,介乎于物理层和网络层之间。...
  • 以太网各种协议详解

    万次阅读 2014-02-13 17:17:38
    板子处于复位状态时,先做好一系列的准备工作。 1、从EEROM中读取板子的MAC...3、等待片刻,使以太网稳定。随后,启动DHCP协议,获取该电路板的IP地址。其中,PC机是服务机,板子是客户机。 4、获得板子的IP地址之后
  • 千兆以太网TCP协议的FPGA实现。

    万次阅读 多人点赞 2017-04-20 17:58:17
    千兆以太网TCP协议的FPGA实现 Lzx 2017/4/20 写在前面,这应该是我大四最后一个工程性的作品了,以后要养成写文档记录的习惯。说明下,本工程为纯verilog实现的硬件TCP收发器,不同于其他的使用MCU构建软件协议栈的...
  • 西门子S7Comm以太网通讯协议解析

    万次阅读 多人点赞 2017-01-09 15:55:42
    通过西门子1500 PLC,对S7Comm以太网通讯协议进行解析。
  • 以太网协议

    千次阅读 2009-04-02 11:11:00
    历史上以太网帧格式有五种:1 Ethernet V1:这是最原始的一种格式,是由Xerox PARC提出的3Mbps CSMA/CD以太网标准的封装格式,后来在1980年由DEC,Intel和Xerox标准化形成Ethernet V1标准;2 Ethernet II即DIX 2.0:...
  • 以太网完整协议(一)

    万次阅读 多人点赞 2017-05-03 15:54:31
    以太网是目前最流行的一种局域网组网技术(其他常见局域网组网技术还有令牌环局域网、无线局域网、ATM局域网),以太网技术的正式标准是IEEE 802.3标准,它规定了在以太网中传输的数据帧结构,如下图所示。...
  • 以太网协议号字段定义

    千次阅读 2018-07-23 12:09:29
    当前使用的以太网协议一般指EthernetII协议,它是Xerox与DEC、Intel等公司在1982年制定的以太网标准帧格式,在当时是一种事实工业标准。到1985年,IEEE又发布了802.3/802.2以太网标准。这两种标准都规定以太网MAC...
  • 以太网网络协议Ethernet II 帧分析

    万次阅读 多人点赞 2019-09-03 13:42:49
    IP、ARP、EAP和QICQ协议使用Ethernet II帧结构,而STP协议则使用IEEE 802.3帧结构。 Ethernet II是由Xerox与DEC、Intel(DIX)在1982年制定的以太网标准帧格式,后来被定义在RFC894中。 IEEE 802.3是IEEE 802委员...
  • 网络协议之以太网协议解析

    千次阅读 2020-04-18 18:03:34
    Ethernet :以太网协议,用于实现链路层的数据传输和地址封装(MAC) 封装原理: 以太网的数据帧格式如下图所示: 它由6个字节的目的MAC地址,6个字节的源MAC地址,2个字节的类型域(用于标示封装在这...
  • 以太网协议-传输介质

    千次阅读 2017-11-12 21:10:02
    以太网协议-传输介质
  • 以太网协议封装格式

    千次阅读 2017-07-01 13:38:43
    一、以太网链路层协议封装格式 以太网数据在网络介质上传输需要遵循一定的机制,其中CSMA/CD介质访问控制机制约定了以太网在传输数据时,两帧之间需要等待一个帧间隙时间(IFG或IPG),为以太网接口提供了帧接收...
  • 以太网MAC层协议

    万次阅读 2018-08-07 17:31:11
     MAC发送模块可将上层协议提供的数据封装之后通过MII接口发送给PHY。发送模块可接收主机接口模块的数据帧开始和数据帧结束标志,并通过 主机接口从外部存储器中读取要发送的数据,然后对数据进行封装,然后通过PHY...
  • 以太网完整协议(二)

    千次阅读 2017-05-05 14:14:51
    三、网际协议(IP) IP是整个TCP/IP协议的核心,传输层协议,如UDP和TCP都需要IP提供服务,...主机上的IP协议需要完成的工作很多,最基本的是数据报发送和递交,在特殊情况下它还要完成数据报的分片和重装的功能,在更
  • 3:以太网协议 4:PING指令测试 1、概述 1.1:以太网是实现LAN的一种技术,它允许嵌入式系统连接到一个LAN中,并可通过使用网关经Internet连接到外部世界,以太网的主要目的是向LAN发送和从LAN接收以太网帧,在TCP...
  • 以太网协议

    2013-07-26 09:08:48
    2>第三个字段是2字节的类型字段,用来标志上一层使用的是什么协议。 l 类型字段的值为0x0800时,表示上层使用的是IP数据报。 l 类型字段的值为0x0806时,表示上层为ARP数据报 l 类型字段的值为0x8137时...
  • 一、车载以太网DHCP协议
  • 以太网协议 变得通俗易懂

    千次阅读 多人点赞 2017-02-14 18:55:39
    容易理解的以太网协议
  • 以太网LWIP协议栈调试记录7.1

    千次阅读 2013-07-12 14:50:45
    下面是测试记录 1、 根据阅读资料的体会,...然后,在板子的以太网口初始化之后,任务栏本地连接图标会变成下图所示。如果是硬件上没连接好,那么就是红叉叉。 开接收中断,可以进入中断服务程序。但是从中
  • 西门子smart200以太网通讯协议

    千次阅读 2017-09-28 21:12:00
    西门子smart200具体的通讯文档在网上或者官网我都没有找到(哪位大仙有请给我留言发个感激不尽),本人是通过监听控制软件分析出其中的通讯协议。 连接是通过TCP/IP协议,我一般喜欢用Java写测试Socket。 通讯是...
  • 以太网和wifi协议

    千次阅读 2015-08-26 16:30:12
    以太网和wifi协议 ...如果你知道”小喇叭开始广播...”,听到这里,收音机前的小朋友就兴奋了起来,准备好听节目了:本次的内容是以太网协议与wifi协议.   以太网和wifi是链接层的两种协议.在链接层,信息以帧为单

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 111,828
精华内容 44,731
关键字:

以太网需要协议