首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏飞鸟的专栏

    8、VTP协议

    交换机的默认模式,提供VTP消息:包括VLAN ID 和名字信息,学习相同域名的VTP消息,转发相同相同的域名VTP信息,可以添加、删除和更改VLAN。可以有多个Server但是最少有一个。

    84440编辑于 2022-01-05
  • 来自专栏该溜子的专栏

    【JavaEE】——自定义协议方案、UDP协议

    一:自定义协议 程序员在调用操作系统提供的网络API写出来的代码都是属于应用层的(回顾五个层级:应用层,传输层,网络层,数据链路层,物理层),应用层自身就有许多已经创建好的协议,但多数情况下是需要程序员自定义协议的 1:自定义协议 主要约定好两方面的内容 (1)交互哪些信息 解释:服务器和客户端之间要交互哪些信息,由产品经理规定需要传输哪些信息 (2)数据的具体格式 解释:客户端按照约定构造、发送请求,解析返回的响应 服务器按照约定解析请求,构造、发送响应 2:(反)序列化 Client和Server之间交互的是“结构化数据”,网络传输的数据其实是“字符串”“二进制bit流”,约定协议的过程就是把 1:特点 回顾一下:无连接,不可靠传输,面向数据报,全双工, UDP数据报=报头+载荷 UDP报头中4个字段,每个字段2个字节,共8个字节 协议中报头用2个字节表示端口号,能表示的范围为2^16-1= 65535,即[0,65535], 换算一下为64KB——即UDP数据报最大长度为64KB,载荷部分应该是64KB-8 七:校验和/检验和 1:比特翻转 验证数据在传输过程中是否正确,数据在网络传输中可能会坏掉

    41510编辑于 2024-12-30
  • 来自专栏爱编码

    【Netty】自定义协议

    简介 Netty中,通讯的双方建立连接后,会把数据按照ByteBuf的方式进行传输,例如http协议中,就是通过HttpRequestDecoder对ByteBuf数据流进行处理,转换成http的对象。 步骤 制定协议(如表头,内容字节大小,内容,校验位等) 写好编码器Encoder,将数据进行编码的操作。 写好解码器Decoder,将数据进行解码的操作。 实现 1.制定协议(如表头,内容字节大小,内容,校验位等) 自定义传输的实体类,其实本质上你可以将它当做自定义协议。这里为了方便入门,就没有写正式的协议。 www.cnblogs.com/zeroone/p/8490904.html https://www.cnblogs.com/zeroone/p/8490921.html 总结 Netty提供了编解码器就让我们可以非常方便的自定义自己传输数据的格式

    1.2K40发布于 2019-07-03
  • 来自专栏架构专题

    WebSocket协议 8

    WebSocket是个不太干净协议。 ---- 本文包括以下内容: 一、WebSocket协议只能浏览器发起么? 二、WebSocket和HTTP什么关系? ---- 一、WebSocket协议只能浏览器发起么? 不是。目前此协议的受众的也不仅仅是web开发者。 WebSocket只是一种协议,它和http协议一样,使用类似okhttp的组件,可以在任何地方进行调用,甚至可以借助WebSocket实现RPC框架。 ? 如果服务端支持的话,就可以切换到WebSocket协议。简单点讲:连接已经在那了,通过握手切换成ws协议,就是切换了连接的一个状态而已。 如此操作,可以尽量避免普通 HTTP 请求被误认为 WebSocket 协议。 其他的,像Sec-WebSocket*字样的头信息,表明了客户端支持的子协议以及其他信息。

    1.1K20发布于 2019-09-24
  • 来自专栏landv

    自定义URL Protocol 协议

    Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\fuck] @="fuck Protocol" "URL Protocol"="" [HKEY_CLASSES_ROOT\fuck\DefaultIcon] @="C:\\Program Files (x86)\\VB精简版\\Vb6.exe,0" [HKEY_CLASSES_ROOT\fuck\shell] @="" [HKEY_CLASSES_ROOT\fuck\shell\open]

    1.9K30发布于 2019-03-22
  • 来自专栏漫流砂

    自定义协议 | Electron 安全

    0x01 简介 大家好,今天和大家讨论的是自定义协议,在很多应用中,除了支持 http(s)、file、ftp等开放的通用标准协议外,还会支持一些自定义协议自定义协议常被用于实现特殊功能,比如深度集成应用程序与特定的网络服务 ,欢迎大家留言讨论~ 这篇文章也提供了 PDF 版本及 Github ,见文末 0x02 程序内部注册自定义协议 1. 流视频/音频和V8代码缓存的协议 示例代码如下 const { protocol } = require('electron') protocol.registerSchemesAsPrivileged 否则, 该协议将表现为 file 协议, 而且,这种文件协议将不能解析相对路径 例如, 当您使用自定义协议加载以下内容时,如果你不将其注册为标准scheme, 图片将不会被加载, 因为非标准scheme ,所以在做安全检查时,也需要根据实际情况,接下来列举几个曾经在注册自定义协议方面出现的问题 需要注意的是,外部引用的安全防护代码可能不会针对自定义协议进行防护,这也是造成很多漏洞的直接原因 CVE-2018

    1.6K10编辑于 2024-05-17
  • 来自专栏蛋蛋编程手记

    内容传输自定义协议

    在这种需求下,最好的方法就是自定义协议,发送方按照一定的格式将文件流和文件描述信息编码成字节流,接收方把收到的字节流在解析成文件流和文件描述信息。 这里蛋蛋给出一个简单的协议格式。 消息类型(1字节) 描述信息长度(4字节) 描述信息(描述信息长度) 文件流长度(4字节) 文件流(文件流长度) ​ 发送方按照上述协议进行编码。 接收方收到了字节流后按照上述协议解析。 1. 根据第4步的文件长度读取文件流 最后说一下,这个协议有几个很大的局限性。 首先长度信息限制在了4个字节的范围内,所以不能超过2^32次方,也就是说内容长度不能超过大概4个g。

    59410编辑于 2023-02-25
  • 来自专栏m0w3n

    wireshark插件开发 - 自定义协议

    虽然wireshark自带了很多知名协议的解析插件,譬如HTTP、DHCP等等,然而在实际应用环境中,有不少软件之间的通信协议都是私有的,如游戏客户端和服务器之间的交互协议通常都是私有的,wireshark 无法具体解析出各种字段之间的含义,只能显示接收到的二进制数据,给协议的分析和问题的排查带来了一定的困难,尤其是协议内容比较复杂时。 本文一个自定义的简单协议入手,分析如何基于wireshark开发自定义协议分析插件。 ? 1.1. 概述 本书使用Go语言来描述协议的交互过程。 " 8 ) 9 10 type NPacket struct { 11 Version int16 //两个字节 12 ID uint32 //四个字节 13 客户端 1 package main 2 3 import ( 4 "fmt" 5 "net" 6 ) 7 8 import "packet" 9 10 func

    1.8K30发布于 2021-06-21
  • 来自专栏PHPer 进击

    网络协议 8 - TCP协议(上):性恶就要套路深

    ----     上次说了“性本善”的 UDP 协议,这哥们秉承“网之初,性本善,不丢包,不乱序”的原则,徜徉在网络世界中。      根据上述对 TCP 头的分析,我们知道对于 TCP 协议要重点关注以下几个问题: 顺序问题,稳重不乱; 丢包问题,承诺靠谱; 连接伟豪,有始有终; 流量控制,把握分寸; 拥塞控制,知进知退。 因此,TCP 协议要求 A 最后要等待一段时间,这个等待时间是 TIME_WAIT,这个时间要足够长,长到如果 B 没收到 A 的回复,B 重发给 A,A 的回复要有足够时间到达 B。      协议规定 MSL 为 2 分钟,实际应用中常用的是 30 秒、1分钟和 2 分钟等。     还有一种异常情况,B 超过了 2MS 的时间,依然没有收到它发的 FIN 的 ACK。 参考: 百度百科-TCP 词条; 刘超-趣谈网络协议系列课;

    73320发布于 2019-04-11
  • 来自专栏小工匠聊架构

    Java 8 - 自定义Collector

    这也意味着可以为 Collector 接口提供自己的实现,从而自由地创建自定义归约操作。 ---- 自定义Collector Demo public class ToListCollector<T> implements Collector<T, List<T>, List<T>> { >(); String[] arrs = new String[]{"Artisan", "Yang", "Hello", "Lambda", "Collector", "Java 8"

    58910发布于 2021-08-17
  • 来自专栏xingoo, 一个梦想做发明家的程序员

    【AngularJS】—— 8 自定义指令

    AngularJS支持用户自定义标签属性,在不需要使用DOM节点操作的情况下,添加自定义的内容。 前面提到AngularJS的四大特性:   1 MVC   2 模块化   3 指令   4 双向数据绑定 下面将会介绍如下的内容: 1 如何自定义指令   2 自定义指令的使用    3 自定义指令的内嵌使用   如何自定义指令:   Angular是基于模块的框架,因此上来肯定要创建一个自己的模块: var myAppModule = angular.module("myApp 当想要自定义标签时,采用标签的形式。   想要使用那种方式,必须要在定义directive中的restrict里面声明对应的字母。    ng-app="myApp"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-<em>8</em>"

    1.2K90发布于 2018-01-17
  • 来自专栏用户3645619的专栏

    8)FlinkSQL自定义UDF

    Flink提供了自定义函数的基础能力,在需要满足特殊业务场景需求时,根据自身需要按需定制自己的UDF 下面将简单演示一个UDF的定义和UDF的使用过程: (1)定义一个UDF package com.udf 直接调用自定义udf 函数 // table.select(call(myFunction.class,$("id"))).execute().print(); 先注册在使用 tableEnv.createTemporarySystemFunction("MyLength",myFunction.class); //2.1 在使用注册的自定义函数 // table.select(call("MyLength",$("id"))).execute().print(); // 2.2 采用sql 的方式进行使用自定义函数

    67730编辑于 2022-08-08
  • 来自专栏游戏杂谈

    wireshark解析自定义的protobuf协议

    一个Lua插件的Dissector结构大致如下: do -- 协议名称为 m_MeteoricProto,在Packet Details窗格显示为 XXX Protocol local buffer, pinfo, tree) then else -- data 这个 dissector 几乎是必不可少的; 当发现不是我的协议

    4.9K30发布于 2018-11-20
  • 来自专栏张泽旭的专栏

    springcloud gateway 自定义协议转化实现

    本文链接:https://blog.csdn.net/qq_17655941/article/details/103362115 这几天公司要求实现 springcloud gateway 自定义协议 需要对外统一提供http/https 的接口,但是后端有很多服务提供了不同的方式,包括dubbo 协议,和dubbo 上提供的各种访问协议等(dubbo服务上协议的支持),需要从网关直接代理去访问。 DataBuffer dataBuffer = null; String charset = "UTF-8" json.remove("code"); /** * 获取字符集编码格式 默认 utf-8 sink.complete(); })); })); } } 通过反射机制类完成除过gateway 自定义协议外的所有解析进行处理

    3.7K31发布于 2019-12-10
  • 来自专栏用户1692782的专栏

    手撕RTSP协议系列(8)——PAUSE

    上一篇我们讲解了RTSP PLAY消息,PLAY请求成功之后,RTSP server就会一直向客户端发送RTP数据包!开始“播放”之后,我们相应的就会有暂停,停止等操作!本篇我们就先来看下RTSP的PAUSE!

    2.3K41发布于 2020-10-30
  • 来自专栏捞月亮的小北

    8. 自定义映射resultMap

    它们的使用场景如下: resultType resultType 用于指定返回结果的数据类型,通常用于返回简单类型的结果以及返回 vo 或 dto 等自定义类型的结果。 resultMap resultMap 用于自定义查询结果的映射规则,通常用于处理复杂的查询结果,或者需要使用嵌套查询等复杂查询操作。 1. resultMap 处理字段和属性的映射关系 ‍ 若字段名和实体类中的属性名不一致,则可以通过 resultMap 设置自定义映射 ‍ <! -- resultMap:设置自定义映射 属性: id:表示自定义映射的唯一标识 type:查询的数据要映射的实体类的类型 子标签: id:设置主键的映射关系 属性: id:表示自定义映射的唯一标识 type:查询的数据要映射的实体类的类型 子标签 : id:设置主键的映射关系 result:设置普通字段的映射关系 association:设置多对一的映射关系

    56110编辑于 2023-12-01
  • 来自专栏我的博客

    【Linux网络】应用层自定义协议

    应用层协议就是应用程序之间通信的规则和格式约定,让不同的程序能够理解彼此发送的数据含义。 再谈 “协议协议是一种 “约定”。 这种约定就是 应用层协议 但是,为了让我们深刻理解协议,我们打算自定义实现一下协议的过程。 我们采用方案2,我们也要体现协议定制的细节 我们要引入序列化和反序列化,只不过我们直接采用现成的方案 – jsoncpp库 我们要对socket进行字节流的读取处理 不过我们会在下篇文章中自定义实现一下协议 “emitUTF8”:控制是否直接输出 UTF-8 字符。 “lineBreak”:自定义换行符(如设置为 “\n” 或 “\r\n”),影响多行输出的换行方式。

    18710编辑于 2025-12-22
  • 来自专栏InvQ的专栏

    如何利用 Netty 实现自定义协议通信?

    既然是网络编程,自然离不开通信协议,应用层之间通信需要实现各种各样的网络协议。在项目开发的过程中,我们就需要去构建满足自己业务场景的应用层协议。 之前我们介绍了如何使用网络协议解决 TCP 拆包/粘包的底层问题,这次我们将在此基础上继续讨论如何设计一个高效、可扩展、易维护的自定义通信协议,以及如何使用 Netty 实现自定义通信协议。 如果在满足业务场景以及性能需求的前提下,推荐采用通用协议的方案。相比通用协议自定义协议主要有以下优点。 极致性能:通用的通信协议考虑了很多兼容性的因素,必然在性能方面有所损失。 扩展性:自定义协议相比通用协议更好扩展,可以更好地满足自己的业务需求。 安全性:通用协议是公开的,很多漏洞已经很多被黑客攻破。 自定义协议更加安全,因为黑客需要先破解你的协议内容 那么如何设计自定义的通信协议呢?这个答案见仁见智,但是设计通信协议有经验方法可循。

    1.2K40发布于 2020-11-13
  • 来自专栏最后一声蝉鸣

    laravel 8 自定义日志文件名|自定义目录

    环境 基于Laravel 8 代码 <? data = []; } $microtime = microtime(); $message = '[' . substr($microtime, 0, 8)

    92510编辑于 2022-10-26
  • 来自专栏云原生可观测性

    基于Netty,实现一个自定义协议

    基于上面的原因,一般的服务之间进行交互时都会使用自定义协议,常见的框架,诸如dubbo,kafka,zookeeper都实现了符合其自身业务需求的协议,本文主要讲解如何使用Netty实现一款自定义协议 协议规定 所谓协议,其本质其实就是定义了一个将数据转换为字节,或者将字节转换为数据的一个规范。一款自定义协议,其一般包含两个部分:消息头和消息体。 下面是我们为当前自定义协议所做的一些规定: ? image 上述协议定义中,我们除了定义常用的请求和响应消息类型以外,还定义了Ping和Pong消息。 小结 本文首先将自定义协议与HTTP协议进行了对比,阐述了自定义协议的一些优点。然后定义了一份自定义协议,并且讲解了协议中各个字节的含义。 最后通过Netty对自定义协议进行了实现,并且实现了基于自定义协议的心跳功能。

    3.8K20发布于 2020-06-17
领券