CN105528255B - 基于eipc的tcf通信方法及设备 - Google Patents

基于eipc的tcf通信方法及设备 Download PDF

Info

Publication number
CN105528255B
CN105528255B CN201510894957.XA CN201510894957A CN105528255B CN 105528255 B CN105528255 B CN 105528255B CN 201510894957 A CN201510894957 A CN 201510894957A CN 105528255 B CN105528255 B CN 105528255B
Authority
CN
China
Prior art keywords
tcf
eipc
client
agent side
function
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201510894957.XA
Other languages
English (en)
Other versions
CN105528255A (zh
Inventor
杜胜龙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
No32 Research Institute Of China Electronics Technology Group Corp
Original Assignee
No32 Research Institute Of China Electronics Technology Group Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by No32 Research Institute Of China Electronics Technology Group Corp filed Critical No32 Research Institute Of China Electronics Technology Group Corp
Priority to CN201510894957.XA priority Critical patent/CN105528255B/zh
Publication of CN105528255A publication Critical patent/CN105528255A/zh
Application granted granted Critical
Publication of CN105528255B publication Critical patent/CN105528255B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)

Abstract

本发明提供了一种基于EIPC的TCF通信方法,包括如下步骤:步骤A.初始化发送和接收句柄;步骤B.TCF代理端进入accept状态,TCF客户端进入connect状态;步骤C.初始化EIPC通信通道。同时提供了一种基于EIPC的TCF通信设备。本发明只需使用数量很少的一些函数,就可以实现多处理器间、多任务间的消息通信和大块数据传输,具有可靠、基于优先级、实时嵌入的特点;接口统一,方便设置;不仅能够实现同一CPU内的核间通信,还能够实现不同CPU的核间通信,有效完成各处理器之间的互联;能够将TCF代理端部署到CPU的所有核;可以将没有IP的核也通过TCF代理端来监控。

Description

基于EIPC的TCF通信方法及设备
技术领域
本发明涉及计算机软件技术领域的通信协议,具体地,涉及一种基于EIPC的TCF通信方法及设备。
背景技术
在国防领域,存在着一类计算密集型的应用,如信息情报、雷达信号处理以及电子战等,为了应对战场的复杂情况并快速的作出反应,这些应用都要求有一个高性能、高可靠、高稳定的计算机,以能够帮助它们分析和处理数据。而且,随着信息化技术的不断发展,未来战场已不再是单一装备、单一兵种的对抗,为了打赢高度信息化下的局部战争,必须协同各种装备,各兵种,统一决策。由此,国防领域迎来了大数据时代。为了能够对大数据进行高速处理,高性能嵌入式计算(HPEC)应运而生,它的出现为计算密集型的国防和航空领域应用带来了非常强大的处理能力。
HPEC常采用多个机柜的形式将很多的计算资源组织起来,每个机柜有多个机箱,每个机箱里有多块处理板,每块处理板又包含多块处理芯片。当这么多硬件资源整合在一起的时候,一个能够管理所有硬件资源的管理软件对用户来说意义很大,用户只需在他们自己的电脑上安装一个监控软件,即可管理所有的硬件资源。
为了解决上述问题,美国风河公司(windriver)开发出了一套目标通信框架(TCF)软件,这套软件分为客户端(client端)和代理端(agent端),客户端代码通常运行于通用计算机上(如PC机上),也即上位机上,它一方面提供给用户可视化的操作界面,另一方面它将代理端传来的数据以可视化的方式呈现给用户;代理端代码可运行在多个平台上(如x86,ppc,dsp等),也即下位机上,用于接收客户端传来的请求,并作出响应。
在通信方式上,TCF采用TCP/IP协议,TCF同时也支持通过管道和Unix Socket这两种方式。这些通信方式对于支持网络通信,且运行通用操作系统的下位机来说,是非常方便且有用的,TCF可不加修改的移植上去。但是,在高性能嵌入式领域,所用的操作系统都是实时操作系统,是不支持管道和Unix Socket这两种方法的,而且如果采用AMP这种架构,即操作系统部署到核,对于多个核的CPU,如果不是特别设计,并不是每个核都有IP,一般情况下,只有核0有IP,其它核通过核0来加载系统。这时,如果利用TCF来管理系统,则只能将TCF代理端部署到核0,其它核的信息需要核0去收集,这样,又必须得在其它核实现一个收集信息的任务,同时核0要有一个能够接收其它核传来的信息的任务,无形中增加了很多的工作量。
发明内容
针对现有技术中存在的上述不足,本发明提出了一种利用rapidIO通信来解决CPU核与上位机之间通信的基于EIPC(Embedded Intelligent Platform of Control,嵌入式智能控制平台)的TCF通信方法及设备,利用高性能嵌入式领域中同一CPU的核间以及不同CPU的核间能够通过rapidIO来通信,再结合TCF的重定向功能,解决了其它核如何通过TCF来管理以及如何与上位机进行通信的问题。
为实现上述目的,本发明是通过以下技术方案实现的。
根据本发明的一个方面,提供了一种基于EIPC的TCF通信方法,包括如下步骤:
步骤A.初始化发送和接收句柄:
TCF客户端和TCF代理端分别调用EIPC的msgOpen函数生成发送和接收句柄;
步骤B.TCF代理端进入accept状态,TCF客户端进入connect状态:
完成步骤A后,TCF代理端发出异步请求事件IPCAsyncReqAccept,并创建一个线程来响应这个IPCAsyncReqAccept事件,考虑到EIPC的接口函数中没有类似于网络编程的accept函数,但是EIPC的接收函数是可阻塞的,因此,TCF代理端利用EIPC接收函数的阻塞功能实现accept功能;同样,TCF客户端发出异步请求事件IPCAsyncReqConnect,同时创建一个线程来响应这个IPCAsyncReqConnect事件,考虑到EIPC的接口函数中没有类似于网络编程的connect函数,但是只要客户端向代理端发送数据,代理端的EIPC接收函数接收,代理端的程序就能继续往下走,因此,TCF客户端利用EIPC的发送函数实现connect功能;
步骤C.初始化EIPC通信通道:
首先,完成输入输出流的读写函数、通道关闭函数、接收和发送缓冲区的初始化工作;然后,TCF代理端和TCF客户端均进入接收等待状态,TCF客户端新建一个线程发送握手信号,TCF代理端收到握手信号后,进入发送状态,并发送响应给TCF客户端,同时TCF代理端设置通道为连接状态,客户端收到信息后同样设置通道为连接状态,之后,TCF客户端和TCF代理端即进入通信状态,EIPC通信通道初始化完成。
根据本发明的另一个方面,提供了一种基于EIPC的TCF通信设备,包括上位机端和下位机端,其中,上位机端运行有TCF客户端,下位机端设有多个CPU,每一个CPU均设有多个核,每一个核上均运行有TCF代理端,任一个TCF客户端与任一个TCF代理端之间设置有EIPC通信通道。
本发明提供的基于EIPC的TCF通信方法及设备,基于EIPC通信,通过TCF客户端和TCF代理端,实现了下位机端其他核通过TCF的管理以及与上位机端的通信。
与现有技术相比,本发明具有如下有益效果:
1、本发明是基于EIPC通信实现的,只需使用数量很少的一些函数,就可以实现多处理器间、多任务间的消息通信和大块数据传输,具有可靠、基于优先级、实时嵌入的特点;
2、EIPC通信是基于rapidio实现的,接口统一,方便设置;
3、本发明不仅能够实现同一CPU内的核间通信,还能够实现不同CPU的核间通信,有效完成各处理器之间的互联;
4、本发明能够将TCF代理端部署到CPU的所有核;
5、本发明可以将没有IP的核也通过TCF代理端来监控。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为本发明基于EIPC的TCF通信设备的结构示意图;
图2为EIPC通信通道在基于EIPC的TCF通信设备中的位置图;
图3为本发明基于EIPC的TCF通信方法的过程图。
具体实施方式
下面对本发明的实施例作详细说明:本实施例在以本发明技术方案为前提下进行实施,给出了详细的实施方式和具体的操作过程。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。
实施例1
本实施例提供了一种基于EIPC的TCF通信方法,包括如下步骤:
步骤A:初始化发送和接收句柄:
TCF客户端和TCF代理端分别调用EIPC的msgOpen函数生成发送和接收句柄;
步骤B:TCF代理端进入accept状态,TCF客户端进入connect状态:
完成步骤A之后,TCF代理端发出异步请求事件IPCAsyncReqAccept,接下来,TCF代理端会去创建一个线程来响应这个事件,考虑到EIPC的接口函数中没有类似于网络编程的accept函数,但是EIPC的接收函数是可阻塞的,因此,TCF代理端即利用接收函数的阻塞功能来实现accept功能。同样,TCF客户端会发出异步请求事件IPCAsyncReqConnect,TCF客户端也会去创建一个线程来响应这个事件,考虑到EIPC的接口函数中没有类似于网络编程的connect函数,但是只要向TCF代理端发送数据,TCF代理端的接收函数就会接收到,TCF代理端的程序就能继续往下走,因此,TCF客户端即利用EIPC的发送函数来实现connect功能。
步骤C:初始化EIPC通信通道:
首先,完成输入输出流的读写函数、通道关闭函数、接收和发送缓冲区的初始化工作;完成这些工作后,TCF代理端和TCF客户端都进入接收等待状态,TCF客户端会新建一个线程发送握手信号,TCF代理端收到后,进入发送状态,并发送响应给TCF客户端,同时TCF代理端设置通道为连接状态,TCF客户端收到信息后同样设置通道为连接状态,之后,双方即可进入正常的通信状态了,EIPC通信通道初始化完成。
下面结合附图对本实施例进一步描述。
如图1所示:
图1中,TCF客户端即caiyo TCF客户端程序,运行于上位机端,假设下位机端设有多个CPU,其中每一个CPU均设有多个核(例如8个),且只有核0支持TCP/IP协议,这时,运行在核0上的TCF代理端可直接与上位机端通过网络进行通信,而运行在其它核上的TCF代理端,当TCF客户端想与它们通信时,就需要利用核0上的TCF代理端的Locator服务实现重定向。具体步骤为:TCF客户端首先向核0发送重定向请求,之后,核0的TCF代理端会用客户指定的通信协议去和客户指定的目标进行连接,一旦连接建立后,核0的TCF代理端就相当于一个代理商,负责转发TCF客户端与指定核之间的消息,如果想重新与核0连接,只需重新与核0的IP连接即可。
图1中,核0与其它核的通信方式标记为EIPC(RapidIO系统软件),它是基于rapidio实现的,为在多处理器(OS)上运行的应用程序对数据进行的传输操作提供了一套工具。只需使用数量很少的一些函数,就可以实现多处理器间、多任务间的消息通信和大块数据传输。而且这套通信方式是可靠的、基于优先级的、为实时嵌入式应用而设计的。
EIPC对应用程序的设计者而言屏蔽了底层架构细节,把应用者从下层的硬件传输机制中隔离了出来。例如,某个消息传递函数要发送消息,无论目的任务运行在同一个板上,还是别的板上,甚至是要通过交换机相连的别的板上,所使用的发送函数,函数里的参数模式,都是一样的。
EIPC在系统中的位置如图2所示。因为EIPC即能实现同一CPU内的核间通信,也能实现不同CPU的核间通信,而且,它是基于rapidIO的,只要各处理器之间通过rapidIO互联即可使用EIPC。
因为EIPC是基于rapidio的,且接口统一,因此,本实施例设计的新的通信方式即采用EIPC作为通信协议。
接下来,对具体实现进行一个详细的说明。
首先,参照TCF的基于网络的通信方式,将实现过程分成3个步骤,如图3所示。图3中,TCF客户端和TCF代理端首先进行初始化工作,初始化发送和接收句柄;然后,TCF代理端进入等待连接状态,TCF客户端发起连接;当双方建立连接之后,再初始化通信通道(EIPC通信通道);最后,双方即可利用建立好的通信通道进行通信了。
实施例2
本实施例提供了一种基于EIPC的TCF通信设备,包括上位机端和下位机端,其中,上位机端运行有TCF客户端,下位机端设有多个CPU,每一个CPU均设有多个核,每一个核上均运行有TCF代理端,任一个TCF客户端与任一个TCF代理端之间设置有EIPC通信通道。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变形或修改,这并不影响本发明的实质内容。

Claims (1)

1.一种基于EIPC的TCF通信方法,其特征在于,应用于基于EIPC的TCF通信设备上,所述基于EIPC的TCF通信设备包括上位机端和下位机端,其中,上位机端运行有TCF客户端,下位机端设有多个CPU,每一个CPU均设有多个核,每一个核上均运行有TCF代理端,任一个TCF客户端与任一个TCF代理端之间设置有EIPC通信通道;
所述方法包括如下步骤:
步骤A.初始化发送和接收句柄:
TCF客户端和TCF代理端分别调用EIPC的msgOpen函数生成发送和接收句柄;
步骤B.TCF代理端进入accept状态,TCF客户端进入connect状态:
完成步骤A后,TCF代理端发出异步请求事件IPCAsyncReqAccept,并创建一个线程来响应这个IPCAsyncReqAccept事件,TCF代理端利用EIPC接收函数的阻塞功能实现accept功能;同样,TCF客户端发出异步请求事件IPCAsyncReqConnect,同时创建一个线程来响应这个IPCAsyncReqConnect事件,TCF客户端利用EIPC的发送函数实现connect功能;
步骤C.初始化EIPC通信通道:
首先,完成输入输出流的读写函数、通道关闭函数、接收和发送缓冲区的初始化工作;然后,TCF代理端和TCF客户端均进入接收等待状态,TCF客户端新建一个线程发送握手信号,TCF代理端收到握手信号后,进入发送状态,并发送响应给TCF客户端,同时TCF代理端设置通道为连接状态,客户端收到信息后同样设置通道为连接状态,之后,TCF客户端和TCF代理端即进入通信状态,EIPC通信通道初始化完成。
CN201510894957.XA 2015-12-07 2015-12-07 基于eipc的tcf通信方法及设备 Active CN105528255B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510894957.XA CN105528255B (zh) 2015-12-07 2015-12-07 基于eipc的tcf通信方法及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510894957.XA CN105528255B (zh) 2015-12-07 2015-12-07 基于eipc的tcf通信方法及设备

Publications (2)

Publication Number Publication Date
CN105528255A CN105528255A (zh) 2016-04-27
CN105528255B true CN105528255B (zh) 2019-07-05

Family

ID=55770499

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510894957.XA Active CN105528255B (zh) 2015-12-07 2015-12-07 基于eipc的tcf通信方法及设备

Country Status (1)

Country Link
CN (1) CN105528255B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110505541B (zh) * 2019-07-18 2021-11-16 烽火通信科技股份有限公司 一种无源光网络多cpu的分布式实现方法和系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1777121A (zh) * 2005-12-14 2006-05-24 中国科学院计算技术研究所 面向网格计算机体系结构的外设部件系统及方法
CN1940874A (zh) * 2005-09-30 2007-04-04 中国科学院研究生院 计算机系统
CN1952821A (zh) * 2006-11-06 2007-04-25 中国科学院电工研究所 一种工业以太网的嵌入式实时控制系统
CN104079546A (zh) * 2013-03-29 2014-10-01 广州华多网络科技有限公司 通信调度方法、发起方法、提供方法、设备及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1940874A (zh) * 2005-09-30 2007-04-04 中国科学院研究生院 计算机系统
CN1777121A (zh) * 2005-12-14 2006-05-24 中国科学院计算技术研究所 面向网格计算机体系结构的外设部件系统及方法
CN1952821A (zh) * 2006-11-06 2007-04-25 中国科学院电工研究所 一种工业以太网的嵌入式实时控制系统
CN104079546A (zh) * 2013-03-29 2014-10-01 广州华多网络科技有限公司 通信调度方法、发起方法、提供方法、设备及系统

Also Published As

Publication number Publication date
CN105528255A (zh) 2016-04-27

Similar Documents

Publication Publication Date Title
CN101727449A (zh) 利用远程应用处理本地文件的系统和方法
KR101557833B1 (ko) 머신 비젼 애플리케이션을 위한 멀티-코어 분산형 처리
US10594614B2 (en) Context aware routing
US10609125B2 (en) Method and system for transmitting communication data
CN103414579A (zh) 一种适用于云计算的跨平台监控系统及其监控方法
CN108696578A (zh) 基于ZeroMQ的多机分布式计算的通信框架设计方法
CN113676400B (zh) 用于环保数据采集设备物联接入的云网关系统
Jaloudi MQTT for IoT-based applications in smart cities
CN109634673A (zh) 星载电子系统管理控制设备
CN111385332A (zh) 物联网设备、物联网平台、物联网平台接入方法及设备
EP1607880A1 (en) Decentralized processing control device, decentralized processing control method, decentralized processing control program
CN105528255B (zh) 基于eipc的tcf通信方法及设备
CN110058900B (zh) 基于可插拔组件框架的数据传输服务系统
JP5479710B2 (ja) データを処理するためのプロセッサ‐サーバ・ハイブリッド・システムおよび方法
WO2009051340A1 (en) Framework device of mobile terminal and method for providing interoperability between components
CN102122255A (zh) 利用虚拟字符设备和genetlink实现Linux系统中进程间通信的方法
CN106648922A (zh) 一种基于xmpp的数据采集方法
CN102014007B (zh) 一种分布式系统服务管理系统及方法
Lilis et al. A distributed, event-driven building management platform on web technologies
CN105681311B (zh) 一种基于云计算技术的火箭地面网络异构系统
Shim et al. Compatibility enhancement and performance measurement for socket interface with PCIe interconnections
Liu et al. Design of intelligent elevator remote monitoring system based on ethernet
CN111212061A (zh) 基于afdx的套接字的实现方法
JP7049641B2 (ja) 通信デバイス、情報通信端末装置及び通信方法
KR101757259B1 (ko) Cim 기반 실시간 데이터 교환을 위한 통합관리 시스템

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant