`

cindy源码阅读(2)Packet

阅读更多
cindy传输的时候都是封装成pccket的,其实packet很简单,一个是socket的地址,一个是编码后的内容(一个buffer)
public interface Packet {

    /**
     * Get the socket address of the packet.
     * 
     * @return the socket address
     */
    SocketAddress getAddress();

    /**
     * Get the content of the packet.
     * 
     * @return content
     */
    Buffer getContent();

}

再看看packet的类结构图:


实际使用的是FuturePacket。既有优先级,也有原始的内容。还有一个future。
public FuturePacket(Object obj, Packet packet, int priority,
                DefaultFuture future) {


这个future的作用是在session的onWritable()方法体现的
  try {
                        checkSendPacket(currentSendPacket);
                    } catch (RuntimeException e) {
                        dispatchException(e);
                        DefaultFuture future = currentSendPacket.future;
                        currentSendPacket = null;
                        future.setSucceeded(false);
                        continue;
                    }


异常情况下会future设置为失败

dispatch(new Runnable() {

                            public void run() {
                                packet.future.setSucceeded(true);

开始发送的时候设置为成功。

而且可以看到cindy的发送都用的是packetSend packetSent。这些可以看出都是处理packet的,所以在cindy在packet是传输的介质。

  • 大小: 6 KB
0
4
分享到:
评论

相关推荐

    packetSender.源码

    数据包发送工具packetSender

    MPEG-2 TS packet analyser

    标题中的"MPEG-2 TS packet analyser"是指一个专门用于分析MPEG-2传输流包的软件。这个工具可以帮助用户查看TS流的结构,理解每个包的内容,从而进行故障排查、系统优化或协议开发。其功能通常包括: 1. **逐包浏览...

    PacketSender源码(Android Studio版)

    这个压缩包包含的是PacketSender的源码,专为在Android Studio环境下开发和编译而优化。 在深入探讨PacketSender的源码之前,我们需要理解TCP和UDP这两种传输协议的基本概念。TCP(Transmission Control Protocol)...

    SmartRF_Packet_Sniffer2_1.9.0.zip

    对于初次使用者来说,仔细阅读这份文档可以帮助快速上手SmartRF Packet Sniffer 2,并避免在使用过程中遇到不必要的困扰。 总的来说,SmartRF Packet Sniffer 2 v1.9.0是蓝牙开发和调试不可或缺的工具,它为开发者...

    packet_ns2packet_

    在NS-2(Network Simulator 2)中,`packet`是网络模拟中基本的数据单元,它代表了网络中传输的数据包。`packet.cc`文件是NS-2源代码中的一个核心部分,它包含了`Packet`类的实现,这个类是NS-2中所有网络数据包的...

    packet32 优秀的Mac 层开发包源码

    "packet32" 是一个专为Mac平台设计的网络层(Mac层)开发包,它提供了丰富的源码供开发者学习和使用。这个开发包的核心目标是帮助程序员在Mac OS X系统下实现对网络数据包的捕获、分析和处理。在深入探讨packet32的...

    libpcap_sendpacket.zip_libpcap_libpcap_sendpacket_libpcap修改_send

    2. **开始捕获**:接着,使用`pcap_loop()`或`pcap_dispatch()`函数开始数据包捕获。这两个函数会在接收到数据包时调用用户提供的回调函数。 3. **处理数据包**:在回调函数中,我们可以使用`pcap_pkthdr`结构体...

    抓包工具SmartRF_Packet_Sniffer2_1.5.0

    《SmartRF_Packet_Sniffer2_1.5.0:强大的无线通信抓包利器》 在信息技术领域,网络通信的分析与调试是一项至关重要的任务,而抓包工具则成为了这项工作中的得力助手。本文将详细介绍SmartRF_Packet_Sniffer2_1.5.0...

    packet32,packet

    2. 2.02-Packet95.exe - 这个文件对应于Windows 95操作系统的版本,是个人电脑用户早期使用的系统。 3. 2.02-Packet2K.exe - 这个文件可能为Windows 2000系统设计的Packet Driver版本,一个在Windows NT内核基础上的...

    基于cisco packet tracer的校园网络的设计与实现项目源码+报告和PPT

    基于cisco packet tracer的校园网络的设计与实现项目源码+报告和PPT基于cisco packet tracer的校园网络的设计与实现项目源码+报告和PPT基于cisco packet tracer的校园网络的设计与实现项目源码+报告和PPT基于cisco ...

    2.7.1 Packet Tracer - Single-Area OSPFv2 Configuration

    2.7.1 Packet Tracer - Single-Area OSPFv2 Configuration 正确答案文件 可直接上交正确答案文件 本答案版权归mewhaku所有,严禁再次转载!!! Copyright @mewhaku 2022 All Rights Reserved

    Openvswitch源码阅读笔记.pdf

    综上所述,OpenvSwitch源码阅读笔记涵盖了OVS的网络架构、内部组件、代码组织以及核心功能实现,对于初学者来说,这是一份很好的指南,可以帮助理解OVS如何实现虚拟交换以及OpenFlow协议的运用。

    vrrp packetTracer 配置

    2. VRRP基本配置 在Cisco Packet Tracer中进行VRRP配置时,首先要为参与VRRP的路由器接口配置IP地址和优先级。主路由器的优先级通常设置得比备份路由器高,当主路由器无法工作时,优先级最高的备份路由器将接替其...

    Cisco Packet Tracer 5.3 思科路由器交换机模拟软件

    Cisco Packet Tracer 5.3 思科路由器交换机模拟软件 Cisco Packet Tracer 5.3 思科路由器交换机模拟软件 Cisco Packet Tracer 5.3 思科路由器交换机模拟软件 Cisco Packet Tracer 5.3 思科路由器交换机模拟软件 ...

    4.1.1.11 Packet Tracer - Configuring Extended ACLs Scenario 2.pka

    4.1.1.11 Packet Tracer - Configuring Extended ACLs Scenario 2.pka

    Cisco Packet Tracer7.2.2 x32补丁

    2. Make sure you have closed Packet Tracer application. 3. Extract the file "ptsaplayer.dll" to the plugins folder of Packet Tracer. (i.e., 64bit: "C:\Program Files\Cisco Packet Tracer 7.2.2\plugins...

    Cisco+packet

    Packet Tracer是一个功能强大的网络仿真程序,允许学生实验与网络行为,问"如果"的问题。随着网络技术学院的全面的学习经验的一个组成部分,包示踪提供的仿真,可视化,编辑,评估,和协作能力,有利于教学和复杂的...

    PacketTracer5+汉化包

    2. **设备配置**:支持对网络设备进行详细配置,如IP地址、子网掩码、VLAN设置、路由协议等。 3. **数据包分析**:用户可以追踪数据包在网络中的传输路径,了解其在网络层和传输层的详细信息。 4. **故障排查**:...

    Packet Tracer(2-7)

    Packet Tracer 是由Cisco公司发布的一个辅助学习工具,为学习思科网络课程的初学者去设计、配置、排除网络故障提供了网络模拟环境。用户可以在软件的图形用户界面上直接使用拖曳方法建立网络拓扑,并可提供数据包在...

    Cisco Packet Tracer7.2.2 x64补丁

    2. Make sure you have closed Packet Tracer application. 3. Extract the file "ptsaplayer.dll" to the plugins folder of Packet Tracer. (i.e., 64bit: "C:\Program Files\Cisco Packet Tracer 7.2.2\plugins...

Global site tag (gtag.js) - Google Analytics