以太网MAC帧格式有两种标准:一种是IEEE的802.3标准,另一种是DIX Ethernet V2标准。现在最常见的是V2格式,它较为简单,由6个字段构成。
图2.1 以太网帧格式
最前面的是帧同步码,7个字节,其功能是使接收器建立比特同步。编码形式为多个"1"或"0"交替的二进制序列,最后一个比特为"0",即"55-55-55-55-55-55-55",在这种编码形式下,经过曼彻斯特编码后为一周期性方波。
帧首定界符为一字节,其编码形式为"10101011"序列,即"D5",该字段功能是指示一帧的开始。
目的地址字段为6字节,该字段用来指出帧要发往的工作站。
源地址字段为6字节,该字段的功能是指示发送该帧的工作站地址。
长度/类型指示字段为2字节,用来指示紧随其后的数据字节的长度(如果其值小于等于1518)或类型(如果其值大于1518)。如0x0800(IP协议),0x0806(ARP协议)等。
数据字段是帧要发送的用户数据,该数据由高层提供或接收。
填充字段紧接在数据字段之后,用来对数据进行填充,以保证帧有足够的长度,以适应碰撞检测的需要。
帧校验序列字段处于帧的最后,其长度为32bit,用于校验帧在传送过程中有无差错。
2.2 TCP/IP协议
TCP/IP(Transmission Control Protocol/Internet Protocol)即传输控制协议/因特网互联协议,又名网络通讯协议,是Internet最基本的协议、Internet国际互联网络的基础。TCP/IP 定义了电子设备如何连入因特网,以及数据如何在它们之间传输的标准。TCP/IP协议是一个真正的开放式通信协议标准,其开放性意着在不同的计算机之间,不管这些机器的物理特性有什么差别或者可能运行不同的操作系统,都可以通过TCP/IP协议进行网络通信。
2.2.1 TCP/IP协议参考模型
从协议分层模型方面来讲,TCP/IP由四个层次组成:数据链路层、网络层、传输层和应用层。TCP/IP模型结构如图2.2所示
图2.2 TCP/IP协议模型
1) 数据链路层又称为网络接口层,是实际网络硬件的接口,包括操作系统中的网络设备驱动程序和计算机中对应的网络接口卡。网络接口层定义了将数据组成正确帧的规范和在网络中传输帧的规范。
2) 网络层主要负责相邻计算机之间的通信,处理来自传输层的分组发送请求以及底层接收到的数据包,同时还具有处理路径、流量控制和拥塞等功能。常见工作于网络层的协议主要有IP(网际协议)、ICMP(网际控制报文协议)、ARP(地址解析协议)和RARP(逆向地址解析协议)等。
3) 传输层提供应用程序间端至端的通信服务。TCP/IP协议族中定义了两种不同的传输协议:TCP(传输控制协议)和UDP(用户数据报协议),TCP协议是面向连接的(终端之间必须要建立TCP连接),因此可以提供可靠的数据传输服务,而UDP协议是无连接的传输协议,不能提供可靠的传输服务,但具有速度快等优点,适用于数据批量传输等场合。
4) 应用层处于协议的最顶层,向用户提供了网络应用程序的规范,如FTP(文件传输协议)、SMTP(简单邮件传输协议)、Telnet(用户远程登录服务)和DNS(域名解析服务)等。
2.2.2 TCP/IP协议通信过程
TCP/IP协议通信过程如图2.3所示 千兆以太网图像采集卡设计+文献综述(4):http://www.youerw.com/tongxin/lunwen_6605.html