基于DSP的嵌入式TCP/IP协议的研究与实现
发布时间:2008/5/27 0:00:00 访问次数:340
引言
近几年来,我国电力自动化工作取得了很大进展,电力自动化系统的通信方式也不断改进。最早是用rs485总线将各种保护、远动设备联在一起,用主从方式与主机通信,方式简单,技术缺陷也比较多。后来出现的现场总线技术因其组网方便、抗干扰能力强等特点得到广泛的应用。
现场总线标准有多种,电力自动化系统中最常用的是lonworks总线和can总线两种。lonworks总线通信速率为78kbps和1.25mbps,can总线通信速率为1mbps。随着电网的发展,现场总线标准不统一、传输速率低(最大也仅为1mbps左右)的局限性逐渐暴露出来。以太网具有通用性强、技术成熟、带宽迅速增加等特性,工业控制领域出现嵌入式技术,尤其是dsp技术的发展和
dsp在工业控制领域的广泛应用,使得在电力自动化系统设计时可以利用嵌入式技术实现以太网通信,为电力自动化提供开放式、全分布、可互操作性的通信平台。网络传输的实时性是电力自动化系统内部通信网的关键指标。以太网带宽达到10mb/s,可承受的网络负荷很大,加上交换式智能集线器的使用,选择10mb/s以太网作为变电站自动化系统的内部通信网,其网络传输实时性是有保证的。本文将着重讨论嵌入式tcp/ip协议的选择和dsp实现。
嵌入式协议的选择
tcp/ip协议是一组不同层次上的多个协议的组合,通常被认为是一个包含链路层、网络层、传输层和应用层的四层协议系统[2]。嵌入式系统是为完成某种特定的功能而设计的专用系统。嵌入式系统不要求(也不可能)实现所有的tcp/ip协议,所以嵌入式tcp/ip是对tcp/ip协议族进行选择而形成的协议集合。
链路层协议的选择
链路层协议的选择链路层最基本的功能是将物理层提供的原始传送比特流可能出错的物理连接改造为逻辑上无差错的数据连接,为其上层协议发送和接收数据包。以太网遵循ieee802.3所规定的csma/cd(载波监听多路访问及冲突监测)协议,实现该协议可以采用通用的nic(networkinterfacecontroller网络接口控制)芯片。另外,以太网上数据的传输是采用网络的mac地址来进行识别的,这就要求系统有实现ip地址到mac地址的转换功能,即arp(地址解析)协议。arp协议包括arp请求和arp响应两部分,系统要同其他计算机通信,就必须要支持arp响应。arp请求在本地建立了一个ip地址到mac地址的映射,保证了对外通信的有的放矢。rarp(逆地址解析)协议主要用于解决如何从mac地址得到ip地址,主要用于无盘工作站中。在本嵌入式系统中可以把ip地址存储于本地存储器中,不必从其他服务器得到ip地址,这样就无需实现rarp协议。
网络层协议的选择
网络层主要负责处理数据包在网络中的活动。在tcp/ip协议族中,网络层协议包括ip协议(网际协议)、icmp协议(internet控制报文协议)以及igmp协议(internet组管理协议)等。ip协议是tcp/ip族的核心协议,它使异构网络之间的通信成为可能。因此rtu等系统数据跨越不同的网络进行传输就必须要实现ip协议。icmp中规定了多种协议类型和代码,如果完全的实现也要耗费不少的系统资源,本嵌入式系统中,在icmp协议中能够测试网络的连通情况即可,因此只需实现icmp中类型号为0、代码为0的ping应答协议。igmp协议主要用于支持主机和路由器进行组播,在将报文发给多个接收者时,嵌入式tcp/ip作为一种专用系统接入网络的技术,为了降低处理协议的复杂程度,可以直接采用广播方式,不必要采用组播的方式进行通信。因此在设计中不考虑实现igmp协议。
传输层协议的选择
传输层主要在两台主机之间提供端到端的通信。传输层有两种不相同的传输协议:tcp(传输控制协议)和udp(用户数据报协议)。tcp是面向连接的,在不可靠的网络服务上提供端到端的可靠字节流。tcp协议设计了严格的3次建立连接握手过程、4次关闭连接握手过程以及捎带确认信息并通过滑动窗口进行流量控制的数据传输过程。udp协议是用来提供不面向连接的,它只是简单地把数据报从一台主机发送
引言
近几年来,我国电力自动化工作取得了很大进展,电力自动化系统的通信方式也不断改进。最早是用rs485总线将各种保护、远动设备联在一起,用主从方式与主机通信,方式简单,技术缺陷也比较多。后来出现的现场总线技术因其组网方便、抗干扰能力强等特点得到广泛的应用。
现场总线标准有多种,电力自动化系统中最常用的是lonworks总线和can总线两种。lonworks总线通信速率为78kbps和1.25mbps,can总线通信速率为1mbps。随着电网的发展,现场总线标准不统一、传输速率低(最大也仅为1mbps左右)的局限性逐渐暴露出来。以太网具有通用性强、技术成熟、带宽迅速增加等特性,工业控制领域出现嵌入式技术,尤其是dsp技术的发展和
dsp在工业控制领域的广泛应用,使得在电力自动化系统设计时可以利用嵌入式技术实现以太网通信,为电力自动化提供开放式、全分布、可互操作性的通信平台。网络传输的实时性是电力自动化系统内部通信网的关键指标。以太网带宽达到10mb/s,可承受的网络负荷很大,加上交换式智能集线器的使用,选择10mb/s以太网作为变电站自动化系统的内部通信网,其网络传输实时性是有保证的。本文将着重讨论嵌入式tcp/ip协议的选择和dsp实现。
嵌入式协议的选择
tcp/ip协议是一组不同层次上的多个协议的组合,通常被认为是一个包含链路层、网络层、传输层和应用层的四层协议系统[2]。嵌入式系统是为完成某种特定的功能而设计的专用系统。嵌入式系统不要求(也不可能)实现所有的tcp/ip协议,所以嵌入式tcp/ip是对tcp/ip协议族进行选择而形成的协议集合。
链路层协议的选择
链路层协议的选择链路层最基本的功能是将物理层提供的原始传送比特流可能出错的物理连接改造为逻辑上无差错的数据连接,为其上层协议发送和接收数据包。以太网遵循ieee802.3所规定的csma/cd(载波监听多路访问及冲突监测)协议,实现该协议可以采用通用的nic(networkinterfacecontroller网络接口控制)芯片。另外,以太网上数据的传输是采用网络的mac地址来进行识别的,这就要求系统有实现ip地址到mac地址的转换功能,即arp(地址解析)协议。arp协议包括arp请求和arp响应两部分,系统要同其他计算机通信,就必须要支持arp响应。arp请求在本地建立了一个ip地址到mac地址的映射,保证了对外通信的有的放矢。rarp(逆地址解析)协议主要用于解决如何从mac地址得到ip地址,主要用于无盘工作站中。在本嵌入式系统中可以把ip地址存储于本地存储器中,不必从其他服务器得到ip地址,这样就无需实现rarp协议。
网络层协议的选择
网络层主要负责处理数据包在网络中的活动。在tcp/ip协议族中,网络层协议包括ip协议(网际协议)、icmp协议(internet控制报文协议)以及igmp协议(internet组管理协议)等。ip协议是tcp/ip族的核心协议,它使异构网络之间的通信成为可能。因此rtu等系统数据跨越不同的网络进行传输就必须要实现ip协议。icmp中规定了多种协议类型和代码,如果完全的实现也要耗费不少的系统资源,本嵌入式系统中,在icmp协议中能够测试网络的连通情况即可,因此只需实现icmp中类型号为0、代码为0的ping应答协议。igmp协议主要用于支持主机和路由器进行组播,在将报文发给多个接收者时,嵌入式tcp/ip作为一种专用系统接入网络的技术,为了降低处理协议的复杂程度,可以直接采用广播方式,不必要采用组播的方式进行通信。因此在设计中不考虑实现igmp协议。
传输层协议的选择
传输层主要在两台主机之间提供端到端的通信。传输层有两种不相同的传输协议:tcp(传输控制协议)和udp(用户数据报协议)。tcp是面向连接的,在不可靠的网络服务上提供端到端的可靠字节流。tcp协议设计了严格的3次建立连接握手过程、4次关闭连接握手过程以及捎带确认信息并通过滑动窗口进行流量控制的数据传输过程。udp协议是用来提供不面向连接的,它只是简单地把数据报从一台主机发送