自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 资源 (1)
  • 收藏
  • 关注

原创 【FastDDS源码剖析】Well Known Ports

FastDDS使用的端口默认情况下是通过计算得来的,组播端口使用计算出的端口号,单播端口如果被占用,会在默认端口号开始的一定范围内找到一个未使用的端口作为单播端口。在介绍DDS发现机制之前,我们需要先来了解一下常用的UDP端口号是如何计算的。

2024-03-25 10:00:00 56

原创 【FastDDS源码剖析】消息收发流程

本文将介绍FastDDS从Writer创建到Reader接收的大致流程,将前面分享的类全部联系起来。首先会对FastDDS架构(官方文档中有详细的描述)做一个简单的介绍,然后结合类图介绍各个类在消息收发中的作用。

2024-03-24 17:50:07 152 3

原创 【FastDDS源码剖析】StatefulWriter

本文将对StatefulWriter源码进行分析。FastDDS通信时都离不开Reader和Writer,StatefulWriter是支持重传的writer,Qos配置为reliable时使用。它负责管理与DataReader之间的通信。StatefulWriter的设计和实现直接影响着系统的性能和可靠性,同进程、跨进程、跨主机消息需要copy几次,序列化几次,发送几次?通过深入分析FastDDS框架中StatefulWriter的源码,我们将探索其背后的实现原理。

2024-01-22 23:24:55 566

原创 【FastDDS源码剖析】StatefulReader

本文将对StatefulReader源码进行分析。FastDDS通信时都离不开Reader和Writer,StatefulReader是支持重传的reader,Qos配置为reliable时使用。它负责接收和处理来自DataWriter的数据,并管理与DataWriter之间的通信。StatefulReader的设计和实现直接影响着系统的性能和可靠性。通过深入分析FastDDS框架中StatefulReader的源码,我们将探索其背后的实现原理、关键算法和关键代码段的作用。

2024-01-21 18:28:41 187

原创 【FastDDS源码剖析】Transport

Fast DDS是一个强大的开源实时通信框架,旨在支持高性能和可靠的数据传输。作为Fast DDS的核心组件之一,传输层在实现可靠的端到端通信方面起着关键作用。Fast DDS传输层采用了先进的算法和优化技术,并支持多种传输协议,如TCP、UDP和共享内存。本文主要研究UDPv4Transport,即使是使用UDPv4Transport,进程内实际上是同步调用,如果支持DataSharing,进程间也是可以使用shared memory通信。

2024-01-20 10:00:00 236

原创 【FastDDS源码剖析】LocatorSelector

LocatorSelectorSender 是 Fast DDS 中的一个关键组件,它负责选择和管理用于通信的 Locator。在 Fast DDS 中,LocatorSelectorSender 扮演着重要的角色,帮助选择适当的 Locator,确保数据的可靠传输和有效通信。本文的目标是深入研究 LocatorSelector 的源码,探索其内部实现。通过对源码的分析,我们将揭示 LocatorSelector 背后的原理和技术,为实时通信系统的开发和优化提供有价值的见解。

2024-01-19 10:00:00 201 1

原创 【FastDDS源码剖析】Messages

本文将对Fast DDS中的messages模块进行分析,包括CDRMessage_t,RTPSMessageGroup,RTPSMessageCreator,RTPSGapBuilder,通过深入研究这几个类的源码实现,我们能将更好地理解消息具体是什么时候的,消息中包含了哪些信息。本文的末尾会简单分析一个网络抓包,这样可以对RTPS的消息结构有个清楚的认识,以后详解每条报文含义的时候会更加容易理解。

2024-01-18 10:00:00 181 4

原创 【FastDDS源码剖析】Flowcontrol

Flowcontrol(流量控制)是一种在实时通信系统中用于管理数据传输速率的机制。FastDDS中它用来限制发送方的数据流量,以避免数据丢失、拥塞和资源浪费。由于受到带宽和网络情况的限制,大量的数据发送可能会导致丢包严重,丢包又会导致重传,恶化网络环境。流量控制的目标是优化系统的性能和资源利用,确保数据的可靠传输和及时处理。它可以减少网络拥塞、降低数据丢失的风险,并在高负载情况下保持系统的稳定性。Fast DDS提供了多种流量控制的机制和策略,以适应不同的应用场景,实现最佳的数据传输效果。

2024-01-17 10:00:00 218

原创 【FastDDS源码剖析】History

本文将对Fast DDS开源代码中的History进行源码分析,并探讨History在Fast DDS内部的关键作用。History是Fast DDS中一种重要的数据存储和管理机制,它通过有效地组织和存储数据,使得应用程序能够根据需求查询和使用之前的数据。本文将深入研究Fast DDS中History的实现细节和关键功能。

2024-01-16 10:00:00 139 1

原创 【FastDDS源码剖析】CacheChange_t

CacheChange_t在Fast DDS中扮演着重要的角色,并且对于实时通信和数据发布-订阅模型的实现具有关键意义。它是Fast DDS中用于管理数据变化的关键组件之一,用于表示在数据发布者和订阅者之间交换的数据单元,并在DDS中的发布-订阅过程中起到关键的作用。CacheChange_t结构中并没有包含实际的数据,而是包含了数据的指针(参考),以及与数据相关的元数据,如时间戳、序列号等。通过CacheChange_t,Fast DDS能够有效地跟踪和传输数据更新,以保证可靠的通信和数据一致性。

2024-01-15 10:00:00 157 1

原创 【FastDDS源码剖析】SerializedPayload_t

本文将对Fast DDS中的SerializedPayload_t进行分析,它在Fast DDS中用于高效地封装和传递数据。在实时通信中,数据的传输是必不可少的环节。SerializedPayload_t作为Fast DDS中的一个关键结构,承担着将数据在发布者和订阅者之间进行高效传输的任务。它包含了数据的二进制表示以及与数据相关的元信息,如数据大小、序列号等。SerializedPayload_t的设计和实现保证了数据的可靠性和高效性。

2024-01-14 14:41:37 46 1

原创 【FastDDS源码剖析】Payload Pool

在本文中,我将对Fast DDS中的Payload Pool源码进行分析,它是Fast DDS中一种重要的资源管理机制,用于高效地管理和重用数据的存储空间。在实时通信中,数据的传输和处理效率对于系统的性能至关重要。Payload Pool为Fast DDS提供了一种优化策略,用于管理数据负载的内存分配和释放。通过预先分配一定数量的数据缓冲区,并将其存储在Payload Pool中,Fast DDS能够在数据传输过程中高效地重用这些缓冲区,避免频繁的内存分配和释放操作,从而显著提高系统的性能和效率。

2024-01-14 13:18:39 786

原创 【FastDDS源码剖析】Timer

本文将对Fast DDS定时器源码进行分析。定时器是实时通信系统中一项重要的功能,用于管理和触发各种时间相关的任务和事件。在实时通信中,时间敏感性是至关重要的。定时器作为一种关键机制,为Fast DDS提供了在特定时间点执行任务的能力。它可以用于处理数据发送和接收的超时、重传机制、心跳检测、资源管理等多种场景。通过合理使用定时器,Fast DDS能够确保数据的及时传输、资源的高效利用以及系统的稳定性。本文将深入研究Fast DDS定时器的实现细节和关键功能。

2024-01-12 22:08:00 143

原创 【FastDDS源码剖析】GUID_T

本文将对Fast DDS中的GUID_T进行分析,并探讨GUID_T在Fast DDS内部的关键作用。GUID_T是Fast DDS中一种重要的标识符类型,用于唯一标识实体。在分布式系统中,实体的唯一标识对于数据交换和通信的正确性至关重要。GUID_T作为全局唯一标识符,在Fast DDS中扮演着关键的角色。它用于标识DDS实体(如主题、订阅者、发布者)。GUID_T的生成和管理机制保证了在Fast DDS中的实体的唯一性。本文将深入研究Fast DDS中GUID_T的实现细节和关键功能。

2024-01-12 21:40:32 120

CJLibrary608c.zip

MFC界面开发必备 WIN7不能安装,可以再XP下安装完了把文件COPY过来

2014-09-02

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除