CN117579458A - 基于软件通信体系结构的数据传输方法 - Google Patents
基于软件通信体系结构的数据传输方法 Download PDFInfo
- Publication number
- CN117579458A CN117579458A CN202410063128.6A CN202410063128A CN117579458A CN 117579458 A CN117579458 A CN 117579458A CN 202410063128 A CN202410063128 A CN 202410063128A CN 117579458 A CN117579458 A CN 117579458A
- Authority
- CN
- China
- Prior art keywords
- component
- components
- port
- load information
- communication
- 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.)
- Granted
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 29
- 238000000034 method Methods 0.000 title claims abstract description 18
- 238000004891 communication Methods 0.000 claims abstract description 71
- 238000010586 diagram Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/04—Network management architectures or arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
Abstract
本发明涉及基于软件通信体系结构的数据传输方法,步骤包括:A.设置组件A的端口最大连接数;在端口列表中有组件A的端口名称和端口ID、组件A端口与其他组件连接的连接ID和其他组件的端口编号,组件A将其他组件的逻辑地址与连接ID和端口编号对应;B.组件A将相同的载荷信息发送给不同的组件时,调用其他组件的第一通信函数,参数为载荷信息;C.组件A将载荷信息发送给指定组件时,调用指定组件的第二通信函数,第二通信函数的第一参数为连接ID或接收载荷信息组件的端口编号,第二参数为载荷信息。本发明实现了组件一对多、一对一和多对一组件的数据传输,极大提高了组件通信传输效率、降低了工程的复杂程度以及工程的体积大小。
Description
技术领域
本发明涉及数据传输的方法,具体是基于软件通信体系结构的数据传输方法。
背景技术
在第一次海湾战争期间,由于联军的无线通信系统自成体系,各系统之间的通联有很大的困难,降低了部队执行作战任务的能力,在这样的背景下,根据联合战术无线电系统(JTRS)提出了软件通信体系结构(SCA),这是一种以实现软件无线电系统平台为目标的通信系统设计框架。在后期的通信领域中,软件通信体系结构得到了广泛的应用。
核心框架是软件通信体系结构的重要组成部分,核心框架主要负责管理、连接各个组件,完成组件之间的通信任务。核心框架的组件包括通用组件、基本应用组件、框架控制组件、基本设备组件和框架服务组件,组件之间主要通过端口进行通信,通过端口操作建立数据和控制的传输通道。
通过把组件A的端口(即CORBA对象)与组件B的端口相连接来实现两个组件的通信,两个端口之间只能单向传输。在这种情况下如果要实现组件A同时向组件B和组件C发送信息,就需要在组件A创建两个端口,一个端口与组件B的端口连接,另一个端口与组件C的端口连接,这类似于我们常用的电话通信,甲要同时给乙和丙打电话,甲只能用一个手机给乙打,再用另一个手机给丙打,甲没有办法用一个手机在给乙打电话的同时又给丙打。同样,如果组件B和组件C要同时给组件A发送信息,需要在组件A上创建两个端口(即两个CORBA对象),一个端口与组件B的端口连接,另一个端口与组件C的端口连接。由此可见,为了满足一个组件与多个组件进行收发通信的需求,就会创建很多个端口,导致工程复杂化,并且会使工程的体积变大。
为解决上述问题,需要设计一种使一个组件的端口可以与多个组件的端口连接,实现多端口连接通信的方法。
发明内容
本发明提供了一种基于软件通信体系结构的数据传输方法,以实现组件的一个端口与其他组件的端口可以进行一对多和多对一的数据通信,以此来提高组件传输效率、降低工程的复杂程度以及工程的体积大小。
本发明基于软件通信体系结构的数据传输方法,步骤包括:
A.设置组件A的端口最大连接数max;生成端口列表,在所述端口列表中存储有组件A的端口信息,所述端口信息包括端口名称和端口ID,将组件A的端口与其他组件的端口连接后,生成两个连接端口之间的连接ID,将所述连接ID和所连接的其他组件端口的端口编号添加到所述端口列表中,组件A还获取所连接的其他组件的逻辑地址,并将其他组件的逻辑地址与各自对应的连接ID和端口编号分别对应,将所述端口列表保存到组件A中;
B.当组件A将相同的载荷信息发送给其他不同的组件时,组件A先分别与接收载荷信息的其他组件建立通信连接,然后调用其他各组件的第一通信函数,载荷信息为所述第一通信函数的参数,将载荷信息分别发送到对应的其他组件中;
C.当组件A将载荷信息发送给其他指定组件时,组件A先与指定的组件建立通信连接,然后调用指定组件的第二通信函数,所述第二通信函数的第一参数为通信双方组件的连接ID或接收载荷信息组件的端口编号,第二参数为载荷信息。
本发明通过设置端口最大连接数实现组件端口的复用,调用接收组件的第一通信函数中输入载荷信息的参数实现一对多的数据广播。调用接收组件的第二通信函数中输入载荷信息参数和通信双方组件的连接ID或接收载荷信息组件的端口编号,可实现有目的的一对一数据传输。
进一步的,还具有步骤D:当组件A将接收到的信息转发给指定的其他组件时,在所述接收到的信息中包括指定的接收组件的逻辑地址和载荷信息,组件A遍历自身的端口列表,将接收到的逻辑地址与端口列表中的连接ID或端口编号对应,再将载荷信息通过第三通信函数传输给对应的接收组件。这样便实现了指定接收组件一对一的载荷消息转发。
进一步的,步骤B中,在组件A与其他组件建立通信连接前,先指定一个自然数i,通过检查函数判断i是否在[0, max)范围内,如果是,则令i=端口编号,继续完成通信,如果否,则返回空指针。由此避免传输错误或系统报错。
进一步的,组件A获取与自身连接的其他组件的逻辑地址,是组件A调用与自身连接的其他组件的获取接收路由的函数,该函数的返回值为对应的其他组件的逻辑地址。
进一步的,步骤E:当多个发送组件分别将载荷信息发送给组件A时,所述多个发送组件分别调用组件A的添加传输路由的函数,各发送组件将各自的逻辑地址和组件A的物理地址进行映射后,各发送组件再通过调用组件A的第三通信函数,第三通信函数根据发送组件的逻辑地址映射对应的组件A的物理地址,将载荷信息传给组件A,所述第三通信函数的参数为发送组件的逻辑地址和载荷信息。通过发送组件的逻辑地址,组件A能够知道接收的是哪个发送组件发送的载荷信息,由此能够实现多对一的数据通信。
本发明的有益效果包括:
1、实现了一个组件对多个组件的数据广播。
2、实现了有目的的一对一或多对一组件的数据传输。
3、实现了对数据的转发。
4、极大程度提高了组件通信传输效率、降低了工程的复杂程度以及工程的体积大小。
附图说明
图1为本发明基于软件通信体系结构的数据传输方法的框图。
图2为本发明一对多通信的架构框图。
图3为本发明多对一通信的架构框图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
如图1所示,本发明基于软件通信体系结构的数据传输方法,步骤包括:
A.设置组件A的端口最大连接数max(本实施例中max=3);生成端口列表,在所述端口列表中存储有组件A的端口信息,所述端口信息包括端口名称和端口ID,将组件A的端口与其他组件的端口连接后,生成两个连接端口之间的连接ID(connectionId),将所述连接ID和所连接的其他组件端口的端口编号(index)添加到所述端口列表中,组件A还获取所连接的其他组件的逻辑地址,并将其他组件的逻辑地址与各自对应的连接ID和端口编号分别对应,将所述端口列表保存到组件A中。
以下“连接ID”均采用“connectionId”替代,“端口编号”均采用“index”替代。
B.如图2所示,当组件A将相同的载荷信息payload发送给其他不同的组件时,先指定一个自然数i,通过检查函数portAt(int i)判断i是否在[0, max)范围内,如果i在该范围内就返回端口的信息,i不在该范围内则返回空指针。判断方式为:将组件A和组件B相连,那么组件B端口的index为0,接着将组件A和组件C相连,那么组件C端口的index为1,最后将组件A和组件D相连,组件D端口的index为2。当i=0或1或2时,则令i=index,通过检查函数portAt(int i)判断i的取值是否正确。如果正确则继续完成通信,否则返回空指针。由此避免传输错误或系统报错。然后组件A根据i的值,通过i=index与接收载荷信息payload的对应组件(组件B、组件C、组件D)建立通信连接,再调用该组件的第一通信函数pushPacket(),载荷信息payload为所述第一通信函数pushPacket()的参数,将载荷信息payload分别发送到对应组件中。此时第一通信函数的格式为:pushPacket(payload)。由此实现了组件A一对多的广播通信,将相同的载荷信息payload分别发给了组件B、组件C、组件D多个不同的组件。
C.在组件A实现了一对多广播通信的基础上,当组件A主动将不同的载荷信息payload分别对应发送给其他指定组件时,组件A调用指定组件的获取接收路由的函数,该函数的返回值为对应的指定组件的逻辑地址。组件A将各指定组件的逻辑地址和由各指定组件端口的连接顺序生成的index以及在连接端口时给每条连接线(如图2所示的AB、AC、AD)自动分配的connectionId进行映射。然后指定自然数i,通过检查函数portAt(int i)判断i是否在[0, max)范围内,当i=0或1或2时,则令i=index,继续完成通信,否则返回空指针。然后组件A与指定的组件(例如组件B或组件C或组件D)建立通信连接,再调用指定组件的第二通信函数pushPacketAt(),所述第二通信函数pushPacketAt()的第一参数为通信双方组件的connectionId或接收载荷信息的组件端口的index,第二参数为载荷信息payload。此时第二通信函数的格式为:pushPacketAt(connectionId, payload)函数或pushPacketAt(index, payload)。
D.当组件A将接收到的信息转发给指定的其他组件时(被动发送消息),在所述接收到的信息中包括指定的接收组件的逻辑地址和载荷信息payload,组件A遍历自身的端口列表,将接收到的逻辑地址与端口列表中的connectionId或index对应,再将载荷信息payload通过第三通信函数pushPacket(接收组件的逻辑地址, payload)传输给对应的接收组件。这样便实现了在实现了一对多广播的基础上,一对一指定接收组件的载荷消息转发。
图2中,若组件B的逻辑地址为b1,当组件A接收到的信息中包括载荷信息payload和逻辑地址b1时,组件A遍历自身的端口列表后,将逻辑地址b1与组件B的connectionId或index对应,然后组件A调用组件B的第三通信函数pushPacket(b1, payload)将载荷信息payload信息传输给组件B。
步骤E:如图3所示,当多个发送组件(组件B、组件C、组件D)分别将载荷信息payload发送给组件A时,所述多个发送组件分别调用组件A的添加传输路由的函数,各发送组件将各自的逻辑地址和组件A的物理地址进行映射。然后指定自然数i,通过检查函数portAt(int i)判断i是否在[0, max)范围内,当i=0或1或2时,则令i=index,继续完成通信,否则返回空指针。当检查函数portAt(int i)返回不为空指针时,各发送组件通过调用组件A的第三通信函数pushPacket(发送组件的逻辑地址, payload),第三通信函数pushPacket(发送组件的逻辑地址, payload)根据发送组件的逻辑地址映射对应的组件A的物理地址,将载荷信息传给组件A,所述第三通信函数的参数为发送组件的逻辑地址和载荷信息。通过发送组件的逻辑地址,组件A能够知道接收的是哪个发送组件发送的载荷信息,由此实现了多对一的数据通信。
本发明通过设置端口最大连接数实现组件端口的复用,调用接收组件的第一通信函数中输入载荷信息的参数实现一对多的数据广播。调用接收组件的第二通信函数中输入载荷信息参数和通信双方组件的connectionId或接收载荷信息的组件端口的index,可实现有目的的一对一数据传输,调用接收组件的第三通信函数,通过逻辑地址参数和载荷信息参数,实现了有目的的多对一的数据传输,由此极大程度提高了组件通信传输效率、降低了工程的复杂程度以及工程的体积大小。
以上所述实施例仅表达了本申请的具体实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请保护范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请技术方案构思的前提下,还可以做相关的变形和改进,这些都属于本申请的保护范围。
Claims (5)
1.基于软件通信体系结构的数据传输方法,其特征为:步骤包括:
A.设置组件A的端口最大连接数max;生成端口列表,在所述端口列表中存储有组件A的端口信息,所述端口信息包括端口名称和端口ID,将组件A的端口与其他组件的端口连接后,生成两个连接端口之间的连接ID,将所述连接ID和所连接的其他组件端口的端口编号添加到所述端口列表中,组件A还获取所连接的其他组件的逻辑地址,并将其他组件的逻辑地址与各自对应的连接ID和端口编号分别对应,将所述端口列表保存到组件A中;
B.当组件A将相同的载荷信息发送给其他不同的组件时,组件A先分别与接收载荷信息的其他组件建立通信连接,然后调用其他各组件的第一通信函数,载荷信息为所述第一通信函数的参数,将载荷信息分别发送到对应的其他组件中;
C.当组件A将载荷信息发送给其他指定组件时,组件A先与指定的组件建立通信连接,然后调用指定组件的第二通信函数,所述第二通信函数的第一参数为通信双方组件的连接ID或接收载荷信息组件的端口编号,第二参数为载荷信息。
2.如权利要求1所述基于软件通信体系结构的数据传输方法,其特征为:步骤D:当组件A将接收到的信息转发给指定的其他组件时,在所述接收到的信息中包括指定的接收组件的逻辑地址和载荷信息,组件A遍历自身的端口列表,将接收到的逻辑地址与端口列表中的连接ID或端口编号对应,再将载荷信息通过第三通信函数传输给对应的接收组件。
3.如权利要求1所述基于软件通信体系结构的数据传输方法,其特征为:步骤B中,在组件A与其他组件建立通信连接前,先指定一个自然数i,通过检查函数判断i是否在[0, max)范围内,如果是,则令i=端口编号,继续完成通信,如果否,则返回空指针。
4.如权利要求1所述基于软件通信体系结构的数据传输方法,其特征为:组件A获取与自身连接的其他组件的逻辑地址,是组件A调用与自身连接的其他组件的获取接收路由的函数,该函数的返回值为对应的其他组件的逻辑地址。
5.如权利要求1所述基于软件通信体系结构的数据传输方法,其特征为:步骤E:当多个发送组件分别将载荷信息发送给组件A时,所述多个发送组件分别调用组件A的添加传输路由的函数,各发送组件将各自的逻辑地址和组件A的物理地址进行映射后,各发送组件再通过调用组件A的第三通信函数,第三通信函数根据发送组件的逻辑地址映射对应的组件A的物理地址,将载荷信息传给组件A,所述第三通信函数的参数为发送组件的逻辑地址和载荷信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410063128.6A CN117579458B (zh) | 2024-01-17 | 2024-01-17 | 基于软件通信体系结构的数据传输方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410063128.6A CN117579458B (zh) | 2024-01-17 | 2024-01-17 | 基于软件通信体系结构的数据传输方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117579458A true CN117579458A (zh) | 2024-02-20 |
CN117579458B CN117579458B (zh) | 2024-04-23 |
Family
ID=89862969
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410063128.6A Active CN117579458B (zh) | 2024-01-17 | 2024-01-17 | 基于软件通信体系结构的数据传输方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117579458B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7817631B1 (en) * | 2008-07-09 | 2010-10-19 | Google Inc. | Network transfer protocol |
US20180302324A1 (en) * | 2017-04-18 | 2018-10-18 | Atsushi Kasuya | Packet forwarding mechanism |
JP2019041369A (ja) * | 2017-08-25 | 2019-03-14 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | 通信保護装置、制御方法、および、プログラム |
US20210329069A1 (en) * | 2020-04-20 | 2021-10-21 | Cisco Technology, Inc. | Distributed resilient load-balancing for multipath transport protocols |
US20220078863A1 (en) * | 2019-01-14 | 2022-03-10 | Apple Inc. | Port management for reliable data service (rds) protocol |
US20230078546A1 (en) * | 2021-04-01 | 2023-03-16 | Tencent Technology (Shenzhen) Company Limited | Data transmission for service integration between a virtual private cloud and an intranet |
CN116614388A (zh) * | 2023-07-14 | 2023-08-18 | 成都谐盈科技有限公司 | 基于软件通信体系结构的域管理器模型的实现方法和终端 |
-
2024
- 2024-01-17 CN CN202410063128.6A patent/CN117579458B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7817631B1 (en) * | 2008-07-09 | 2010-10-19 | Google Inc. | Network transfer protocol |
US20180302324A1 (en) * | 2017-04-18 | 2018-10-18 | Atsushi Kasuya | Packet forwarding mechanism |
JP2019041369A (ja) * | 2017-08-25 | 2019-03-14 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | 通信保護装置、制御方法、および、プログラム |
US20220078863A1 (en) * | 2019-01-14 | 2022-03-10 | Apple Inc. | Port management for reliable data service (rds) protocol |
US20210329069A1 (en) * | 2020-04-20 | 2021-10-21 | Cisco Technology, Inc. | Distributed resilient load-balancing for multipath transport protocols |
US20230078546A1 (en) * | 2021-04-01 | 2023-03-16 | Tencent Technology (Shenzhen) Company Limited | Data transmission for service integration between a virtual private cloud and an intranet |
CN116614388A (zh) * | 2023-07-14 | 2023-08-18 | 成都谐盈科技有限公司 | 基于软件通信体系结构的域管理器模型的实现方法和终端 |
Non-Patent Citations (3)
Title |
---|
C. MONIA 等: "iFCP - A Protocol for Internet Fibre Channel Storage Networking", IETF, 30 September 2005 (2005-09-30) * |
叶佳字 等: "基于AFDX的航空电子通信网络的设计", 测控技术, no. 06, 18 June 2008 (2008-06-18) * |
邵龙;: "多总线结构MHAL路由方法", 电讯技术, no. 10, 28 October 2020 (2020-10-28) * |
Also Published As
Publication number | Publication date |
---|---|
CN117579458B (zh) | 2024-04-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7310514B2 (en) | Transmission-origin mobile telephone capable of detecting the media types and data formats of a multimedia message receivable by destination mobile telephones in a multimedia communication system | |
US9660964B2 (en) | Communications router | |
CN101388997B (zh) | 一种建立视频会议的方法和系统 | |
AU2017403796A1 (en) | Wireless communication method and device | |
CN101222374B (zh) | 一种实现业务升级的系统、装置及方法 | |
CN1253679A (zh) | 数据链路同步的系统与方法 | |
CN104967732A (zh) | 信息处理方法及电子设备 | |
CN117579458B (zh) | 基于软件通信体系结构的数据传输方法 | |
CN103369161A (zh) | 一种利用智能漫游终端进行通信的实现方法和系统 | |
CN105357650A (zh) | 智能移动数字对讲方法、服务器及系统 | |
CN106937265B (zh) | 一种舰船通信的方法和装置 | |
CN105491065A (zh) | 消息中间件的资源访问方法、服务器及资源访问系统 | |
KR101866419B1 (ko) | 오디오 통신용 무전장비를 이용한 디지털 데이터의 무전 시스템 | |
CN104702602A (zh) | 基于sip实现集群网关动态创建通道和扩容的系统和方法 | |
CN101296421B (zh) | 同号业务短信接收和发送的方法、系统及应用网关 | |
CN102196454A (zh) | 一种多模共传输方法和基站 | |
CN1997049B (zh) | 一种架构在网络电话系统之上的语音通话系统 | |
CN103428380A (zh) | 通话建立装置、系统及方法 | |
JPS58215151A (ja) | 網間接続方式 | |
US5598465A (en) | Exchange controlling system for managing terminal groups | |
CN115843444A (zh) | 路径添加方法和装置 | |
CN116034625A (zh) | 一种连接建立的方法及装置 | |
CN101175258B (zh) | 在无线通信系统中实现子帧创建的方法及基站及系统 | |
CN111787165A (zh) | 多号码管理方法、系统、通信装置、设备及存储介质 | |
JPS61163766A (ja) | サ−ビス受付方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant |