CN109688128A - Real-time distributed objective system software frame based on reliable UDP agreement - Google Patents
Real-time distributed objective system software frame based on reliable UDP agreement Download PDFInfo
- Publication number
- CN109688128A CN109688128A CN201811578072.9A CN201811578072A CN109688128A CN 109688128 A CN109688128 A CN 109688128A CN 201811578072 A CN201811578072 A CN 201811578072A CN 109688128 A CN109688128 A CN 109688128A
- Authority
- CN
- China
- Prior art keywords
- netware
- foo
- distributed
- real
- rpc
- 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.)
- Pending
Links
Classifications
-
- 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/01—Protocols
- H04L67/133—Protocols for remote procedure calls [RPC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/164—Adaptation or special uses of UDP protocol
Abstract
The present invention relates to distributed computing technology fields, disclose a kind of real-time distributed project software framework based on reliable UDP agreement.To reduce network overhead when communicating between distributed objects, the present invention provides a kind of remote procedure call (RPC) software frame based on reliable UDP agreement has low latency, the feature of low overhead as the real time communication layer of distributed objects.Based on above-mentioned remote procedure call (RPC) software frame, the present invention provides a kind of succinct, efficient, easy-to-use real-time distributed objective system software frames, and developer is helped quickly to develop, test, disposing high performance real-time distributed computing system.
Description
1 technical field
The present invention relates to distributed computing technology fields, and in particular to a kind of based on the real-time distributed of reliable UDP agreement
Project software framework.
2 background techniques
Distributed computing is to study the computer science of distributed system.In computer hardware technology and network technology
Support under, application demand drives the scale of software systems constantly to increase with complexity.When single computer is unable to satisfy complexity
It is good solution using distributed computing when the operation demand of software systems;Alternatively, application system itself need using
The communication network of multiple stage computers is connected, " productive consumption person " mode is common application scenarios.In distributed computing, complexity meter
Calculation is divided into many tasks, and each task is solved by one or more computers, they are in communication with each other by message transmission.With list
A high-performance computer is compared, and forms distributed computing cluster by using several computers, can be obtained expected computational
Can, it is more cost effective.Meanwhile by distributed computing technology, the resource for the shared high-performance computer that user can be well-illuminated.
Several components of distributed system are deployed in different autonomic computings physically, are in communication with each other by network, lead to
Transmitting their action of message coordination is crossed, interaction is to realize common calculating target.Distributed system has following characteristics: group
Concurrency when part is run, without independence when global clock is synchronous and component failures.Relative to integrated system, divide
Cloth system does not have Single Point of Faliure, has higher reliability, while being easier extension, management.There are many not for message passing mechanism
The realization of same type, including remote procedure call (RPC) connector, pure hypertext transfer protocol (HTTP) connector and message queue
(MQ)。
Distributed object technology is based on Object-oriented Technique, realizes the calling problem between the object in different processes.Point
Cloth object is distributed across the object in different address space, can reside in the different processes of same computer, or
Person is present in the multiple stage computers of network connection, and remote object can use on network, as they are local processes
A part.Common Object Request Broker (ORB) is a kind of distributed objects invocation framenort, passes through counterfoil (Stub) and skeleton
(Skeleton) the well-illuminated calling between distributed objects is realized.It, will when caller executes far call to called object
Its counterfoil is entrusted in request, and call parameters are passed to server skeleton by network by the communication of counterfoil starting and long-range skeleton.
The data received are passed to called object by skeleton, and wait-for-response simultaneously returns result to caller counterfoil.
Transmission control protocol (TCP) and user datagram protocol (UDP) are to carry out two kinds of main protocols of network communication.
TCP is transport layer protocol connection-oriented, reliable, based on byte stream, and for the high reliability for guaranteeing transmission, TCP devises 3
Secondary handshake mechanism, affirmation mechanism and Retransmission timeout mechanism, sliding window mechanism, flow control and congestion control mechanism.Number of users
It is connectionless transport layer protocol according to datagram protocol (UDP), efficient, low latency and insecure information transmission clothes is provided.
Business distributed software frame common at present, huge structure, complexity, not easy exploiting, test, deployment.Meanwhile
A variety of application systems can be supported to make Distributed Architecture that there is bigger adaptability, flexibility as the data/address bus of enterprise-level
System access can need to expend more calculating and Internet resources and go to safeguard in face of complicated application scenarios, these business systems
The regulatory requirement of distributed system itself.Some real-time embedded application systems are higher to the requirement of real-time of distributed computing,
Such as aircraft control system, industrial control system, operational chain of command, efficient, low overhead, low latency lightweight distribution is needed
Formula Computational frame.
3 summary of the invention
In view of the above-mentioned defects in the prior art, the present invention provides a kind of remote procedure calls based on reliable UDP agreement
(RPC) software frame, the software frame have low latency, the feature of low overhead as distributed objects communication layers, can be abundant
Utilize the transmittability of network.The software frame includes following part:
1.NETWARE::NET_PEER is provided efficient as the infrastructure component of network communication for remote procedure call (RPC)
Connection management, safety certification, packet receiving, the functions such as give out a contract for a project.
2.NETWARE::REMOTE_SYSTEM, is abstracted the network connection of other side, and NETWARE::NET_PEER is right by this
As realizing with the reliable data transmission of other side, it is specified that maximum transmission unit (MTU) size.
3.NETWARE::RELIABLITY_LAYER is the execution object of user data reliable operation, including data point
The functions such as packet, recombination, sequence, re-transmission, congestion control.
4.NETWARE::CONGESTION_CONTROL realizes web impact factor function, including transmission confirmation (ACK)
The functions such as (NACK) operation, starting re-transmission are denied in operation, transmission.To reduce network overhead when communicating between distributed objects,
The present invention is packaged udp protocol, devises connection management, congestion control and data reliability controlling mechanism, sufficiently benefit
With the efficiency of transmission of udp protocol, while solving its unreliable feature.
5.NETWARE::SOKET_LAYER, encapsulation real network input and output (I/O) operation, including web socket
(Socket) resource management.
6.NETWARE::BIT_STREAM realizes that function parameter sequence turns to byte stream, and is reduced to letter from byte stream
Number parameter function.
7.NETWARE::RPC realizes remote procedure call (RPC) function package, local function can be passed through identifier
It is registered to distributed environment, long-range registration function can be called by identifier.By NETWARE::NET_PEER object,
Realize the transparent transmission of remote procedure call parameter and result.
Based on above-mentioned remote procedure call (RPC) software frame, the present invention provides a kind of succinct, efficient, easy-to-use realities
When distributed object system software frame.The software frame includes following part:
The service skeleton (Skeleton) of 1.NETWARE::OBJECT, distributed objects are abstract, comprising being used for object registration
Globally unique identifier (id).
2.NETWARE::OBJECT_MANAGER, the manager of distributed object system quote NETWARE::NET_
PEER realizes that network connection management, reference NETWARE::RPC realize the registration of services interface in service skeleton.It is servicing
End, NETWARE::OBJECT_MANAGER save the map listing of service skeleton mark and NETWARE::OBJECT object.
3.MY_FOO_S, distributed objects are inherited in the example implementation of server-side in NETWARE::OBJECT, including reality
Border service interface foo ().The member interface foo () and static interface foo () of MY_FOO_S always occurs in pairs, the former realizes
Real distributed computing, the latter receives the remote procedure call of client, by searching for NETWARE::OBJECT_MANAGER's
The remote procedure call of client is forwarded to member interface foo () by map listing.
4.MY_FOO_C, distributed objects are agency of the service object in local in the example implementation of client, it includes
Foo () interface convert the calling to the corresponding interface of remote object for calling of the local to foo ().
4 Detailed description of the inventions
1. remote procedure call (RPC) software frame of Fig. 1 based on reliable UDP agreement
2. Real-Time Distributed System software frame of the Fig. 2 based on reliable UDP agreement
3. Fig. 3 remote object invocation process
5 specific embodiments
The present invention have two the utility model has the advantages that
1. remote procedure call (RPC) software frame based on reliable UDP agreement has low latency, the feature of low overhead, energy
The transmittability for enough making full use of network realizes the efficient Messaging Service between distributed objects.
2. real-time distributed objective system software frame has the features such as succinct, transparent, easy-to-use, developer can be helped fast
The exploitation of speed, test, the high performance real-time distributed computing system of deployment.
In above-mentioned Real-Time Distributed System software frame, in conjunction with Fig. 3, specific implementation step is as follows:
1. server-side (SERVANTP) creates NETWARE::OBJECT_MANAGER object object_manager.
2. server-side calling interface object_manager.start (port) starts network connection service, for accessing
Long-range connection.
3. client (CLIENT) creates NETWARE::OBJECT_MANAGER object object_manager.
4. client call interface object_manage.strar (0), starting network connection, parameter 0 are indicated by operation system
Data transmission port after system distribution connection.
5. client call interface object_manager.connet (ip, port) connects server-side, so far, network is passed
Defeated connection has been fully completed.
6. server-side creates MY_FOO_S service object my_foo_s.
7. server-side calling interface object_manage.register (my_foo_s.get_id ()+" foo ", MY_
FOO_S::foo) registration service interface, so far remote object server interface is ready.
8. client application creates MY_FOO_C agent object my_foo_c.
9. client application calling interface my_foo_c.foo (" client "), starting remote object interface is called.
10. client object my_foo_c will input argument sequence by NETWARE::BIT_STEAM object, call
Interface object_manage.call (get_id ()+" foo ", in_bs, out_bs) starts remote procedure call.
11. client object object_manager is sent to server-side object for parameter is inputted by member object rpc
On_receive () interface of the member object rpc of object_manager.
12. server-side object object_manager calls static interface MY_FOO_S::foo (in_bs, out_bs).
13. server-side, in static interface MY_FOO_S::foo (), opposite sequenceization inputs parameter, object_ is searched
The mark and service object's map listing of manager object, obtain service object my_foo_s, call my_foo_s.foo ()
Interface.
14. the calculated result sequence of my_foo_s.foo () is turned to out_bs by server-side object my_foo_s, it is back to
Object_manager object.
15. result out_bs is back to client pair by member object rpc by server-side object object_manager
As on_receive () interface of the member object rpc of object_manager.
16. result out_bs is back to agent object my_client_c by client object object_manager, agency
Object my_client_c will obtain final calculated result after its opposite sequence, and so far, distributed objects interface, which calls, to be completed.
Claims (2)
1. a kind of remote procedure call (RPC) software frame based on reliable UDP agreement, which is characterized in that the frame include with
Lower part is grouped as:
NETWARE::NET_PEER provides efficient connection as the infrastructure component of network communication for remote procedure call (RPC)
Management, safety certification, packet receiving, the functions such as give out a contract for a project;
NETWARE::REMOTE_SYSTEM, is abstracted the network connection of other side, and NETWARE::NET_PEER passes through the object implementatio8
Reliable data transmission with other side is, it is specified that maximum transmission unit (MTU) size;
NETWARE::RELIABLITY_LAYER, is the execution object of user data reliable operation, including data subpackage, again
The functions such as group, sequence, re-transmission, congestion control;
NETWARE::CONGESTION_CONTROL, realization web impact factor function, including transmission confirmation (ACK) operation,
The functions such as (NACK) operation, starting re-transmission are denied in transmission;
NETWARE::SOKET_LAYER, encapsulation real network input and output (I/O) operation, including web socket (Socket)
Resource management;
NETWARE::BIT_STREAM realizes that function parameter sequence turns to byte stream, and is reduced to function parameter from byte stream
Function;
NETWARE::RPC realizes remote procedure call (RPC) function package, local function can be passed through identifier registry extremely
Distributed ring.
2. a kind of real-time distributed objective system software frame based on reliable UDP agreement, which is characterized in that the frame includes
Following part composition:
The service skeleton (Skeleton) of NETWARE::OBJECT, distributed objects are abstract, include the overall situation for object registration
Unique identification (id);
NETWARE::OBJECT_MANAGER, the manager of distributed object system, reference NETWARE::NET_PEER are realized
Network connection management, reference NETWARE::RPC realize the registration of services interface in service skeleton;
In server-side, NETWARE::OBJECT_MANAGER saves service skeleton mark and NETWARE::OBJECT object
Map listing;
MY_FOO_S, distributed objects are inherited in the example implementation of server-side in NETWARE::OBJECT, including active service
Interface foo ();
The member interface foo () and static interface foo () of MY_FOO_S always occurs in pairs, the former realizes real distribution
It calculates, the latter receives the remote procedure call of client, will by searching for the map listing of NETWARE::OBJECT_MANAGER
The remote procedure call of client is forwarded to member interface foo ();
MY_FOO_C, distributed objects are service objects in local agency in the example implementation of client, it includes foo
Calling of the local to foo () is converted the calling to the corresponding interface of remote object by () interface.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811578072.9A CN109688128A (en) | 2018-12-21 | 2018-12-21 | Real-time distributed objective system software frame based on reliable UDP agreement |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811578072.9A CN109688128A (en) | 2018-12-21 | 2018-12-21 | Real-time distributed objective system software frame based on reliable UDP agreement |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109688128A true CN109688128A (en) | 2019-04-26 |
Family
ID=66188673
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811578072.9A Pending CN109688128A (en) | 2018-12-21 | 2018-12-21 | Real-time distributed objective system software frame based on reliable UDP agreement |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109688128A (en) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101764843A (en) * | 2009-12-28 | 2010-06-30 | 福建星网锐捷网络有限公司 | Processing method and system for remote process call, client end and server |
CN102035941A (en) * | 2010-12-15 | 2011-04-27 | 中兴通讯股份有限公司 | Mobile terminal and computing method thereof |
CN102103526A (en) * | 2011-02-14 | 2011-06-22 | 博视联(苏州)信息科技有限公司 | Method and system for performing inter-process communication between server and client by service management |
CN104158794A (en) * | 2013-05-14 | 2014-11-19 | 霍尼韦尔国际公司 | Loadable flexible protocol profiles |
US20160154864A1 (en) * | 2014-04-07 | 2016-06-02 | VeDISCOVERY LLC | Remote processing of memory and files residing on endpoint computing devices from a centralized device |
-
2018
- 2018-12-21 CN CN201811578072.9A patent/CN109688128A/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101764843A (en) * | 2009-12-28 | 2010-06-30 | 福建星网锐捷网络有限公司 | Processing method and system for remote process call, client end and server |
CN102035941A (en) * | 2010-12-15 | 2011-04-27 | 中兴通讯股份有限公司 | Mobile terminal and computing method thereof |
CN102103526A (en) * | 2011-02-14 | 2011-06-22 | 博视联(苏州)信息科技有限公司 | Method and system for performing inter-process communication between server and client by service management |
CN104158794A (en) * | 2013-05-14 | 2014-11-19 | 霍尼韦尔国际公司 | Loadable flexible protocol profiles |
US20160154864A1 (en) * | 2014-04-07 | 2016-06-02 | VeDISCOVERY LLC | Remote processing of memory and files residing on endpoint computing devices from a centralized device |
Non-Patent Citations (1)
Title |
---|
金全凯: ""分布式并行计算模型(DPCM)的设计与实现"", 《中国优秀博硕士学位论文全文数据库 (硕士) 信息科技辑》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Kovatsch et al. | Californium: Scalable cloud services for the internet of things with coap | |
US9385959B2 (en) | System and method for improving TCP performance in virtualized environments | |
CN103116520B (en) | Method based on the remote procedure call of TCP/ UDP | |
CN102377814B (en) | Remote assistance service method aiming at embedded operation system | |
Laufer et al. | Climb: Enabling network function composition with click middleboxes | |
Gallo et al. | {ClickNF}: a Modular Stack for Custom Network Functions | |
CN108512748A (en) | A kind of implementation method of micro services gateway | |
WO2020063086A1 (en) | Data transmission method based on internet of things, and communication apparatus | |
CN102810069A (en) | JAVA object requesting and responding methods, devices and systems and terminal | |
TW202038581A (en) | Management client, and device monitoring system and method | |
CN106445705A (en) | Platform cascading method and system based on Rabbit MQ and Socket.io | |
Nugur et al. | Design and development of an iot gateway for smart building applications | |
Jaloudi | MQTT for IoT-based applications in smart cities | |
Adhikari et al. | D-stampede: Distributed programming system for ubiquitous computing | |
US9386010B2 (en) | Abstracted authenticated client connectivity application programming interface (API) | |
Almási et al. | MPI on BlueGene/L: Designing an efficient general purpose messaging solution for a large cellular system | |
CN202798801U (en) | Universal communication system for achieving distributed data interaction | |
Kang et al. | Android RMI: a user-level remote method invocation mechanism between Android devices | |
CN109688128A (en) | Real-time distributed objective system software frame based on reliable UDP agreement | |
Noman et al. | From threads to events: Adapting a lightweight middleware for Contiki OS | |
Ren et al. | Research on communication method of OPC UA client based on ARM | |
Guan et al. | The embedded Internet technology based on a real-time kernel for non-PC devices | |
KR101421539B1 (en) | Machine to Machine Apparatus Based on Dual Operation System | |
Rosa et al. | INSANE: A Unified Middleware for QoS-aware Network Acceleration in Edge Cloud Computing | |
Perera et al. | Common Object Request Broker-based Publisher-Subscriber Middleware for Internet of Things-Edge Computing |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190426 |
|
RJ01 | Rejection of invention patent application after publication |