/addressbook.proto 命令即可生成 addressbook_pb2.py 文件: syntax = "proto2"; package tutorial; message Person...,对其初始化后即可使用,比如对 Person 的字段加入一些测试值: import addressbook_pb2 person = addressbook_pb2.Person() person.id...= "jdoe@example.com" phone = person.phones.add() phone.number = "555-4321" phone.type = addressbook_pb2.../usr/bin/python import addressbook_pb2 import sys # This function fills in a Person message based on...") if type == "mobile": phone_number.type = addressbook_pb2.Person.PhoneType.MOBILE elif
什么是PB 二. 定义(编写实体描述文件) 三. 编译(从描述文件到java类) 四. 项目中使用 五. 扩展 一....什么是PB � ProtocolBuffers-Google'sdatainterchangeformat � 一种语言无关、平台无关、扩展性好的用于通信协议、 数据存储的结构化数据串行化方法。...ObdRightBean.ObdRightResponse.parseFrom(bytes2); int code = obdProductResponse.getCode(); 讨论 � HTTP+PB...� PB协议中间序列号时会进行压缩,网络 传输更少 ? � PB是加密的吗? 还需要对字节DESC吗? � 开发效率? JSON更快?学习曲线?
pb是个好东西。用http请求,则更棒棒。...status, content async def test_upload_file(file_name, file_bytes): f = FileDataRequest() # 这个是pb...call_proto_http(url, f) rsp = FileDataResponse() rsp.ParseFromString(content) # 返回的content用另外一个Pb
下个月我要做一个新项目,会用到Java、C++、Python,而版本迭代我想用PB协议,因为我并不知道JSON该如何做版本迭代。...所以,我比较迫切的知道PB能否作为Java前端和C++后端的沟通桥梁。 好了,我现在知道JSON要如何进行版本迭代了。它就直接写就好了,但是好像去读的话有点,意味不明吧。
边界网关协议 (BGP) 就是互联网的邮政服务。当有人把一封信投进邮筒时,邮政服务就会处理这封邮件,并选择一条快速、高效的路线将这封信投递给收件人。...BGP 是通过启用数据路由来使互联网正常工作的协议。当一位在新加坡的用户加载一个源服务器位于阿根廷的网站时,BGP 就是使这种通信快速、高效地进行的协议。 什么是自治系统?...这是通过对等会话完成的,其中,每一个自治系统都会通过 TCP/IP 协议连接到相邻的自治系统,以共享路由信息。通过这些信息,每个自治系统都能够正确地路由出站数据。 在这里,我们上面所做的比喻不再成立。...自治系统可从多种内部协议中选择,来连接内部网络上的路由器。 外部 BGP 就像国际运输。在国际上运送邮件时,需要遵循特定的标准和规则。...同样,每个自治系统都可以有自己的内部路由协议,用于路由自身网络内部的数据。
文章目录 概念性的东西 什么是PB协议? PB支持语言 给出官网 如何写一个PB文件 Protobuf消息定义 ①限定修饰符 ②数据类型速查 ④字段编码值 ⑤默认值。...几个注意事项 import 关于package 关于enum 编译PB 可编译文件 放置位置 开始编译 阅览文件 概念性的东西 什么是PB协议?...---- PB支持语言 Protocol buffers currently support generated code in Java, Python, Objective-C, and C++....---- 如何写一个PB文件 Protobuf消息定义 你首先需要在一个 .proto 文件中定义你需要做串行化的数据结构信息。...使用分号(;)分隔枚举变量而不是C++语言中的逗号(,) ---- 编译PB 可编译文件 首先,你要有一个PB文件可以拿去编译,我知道你多半也没有,没事我这里有。
图片来源自网络,保持更新;更多内容请关注 cnblogs.com/xuyaowen
Linux网络:HTTP协议 零、前言 HTTP协议 1、认识URL 2、urlencode和urldecode 3、HTTP协议格式 1)HTTP请求 2)HTTP响应 4、HTTP的方法 5、HTTP...的状态码 6、HTTP常见的Header 7、Cookie和Session 零、前言 在此之前我们对网络套接字编程有了一定的基础和了解,接下来我们将自顶向下学习Linux网络分层协议栈,透过对协议栈的深入学习从而加深我们对网络的理解...HTTP协议 概念及介绍: HTTP(Hyper Text Transfer Protocol)协议又叫做超文本传输协议,是一个简单的请求-响应协议,HTTP通常运行在TCP之上 在编写网络通信代码时...,我们可以自己进行协议的定制,但实际有很多优秀的工程师早就已经写出了许多非常成熟的应用层协议,其中最典型的就是HTTP协议 1、认识URL URL(Uniform Resource Lacator...,而不叫做文本传输协议,就是因为有很多资源实际并不是普通的文本资源 从这里的路径分隔符,我们可以分辨服务器的平台:Linux的路径分隔符是/,Windows的路径分隔符是\ 查询字符串 用于获取资源时
HTTPS 零、前言 一、HTTPS协议 二、加密方式 三、中间人攻击 四、PKI 五、数字签名技术 零、前言 本章是继HTTP协议后的一篇关于HTTPS协议的拓展 一、HTTPS协议 概念及介绍...: HTTP请求无论是用GET方法还是POST都是不安全的,使用HTTP协议传输的数据都是在网络里面裸奔(可以通过抓包工具抓到) HTTPS是身披SSL外壳的HTTP,是一种通过计算机网络进行安全通信的传输协议...,经由HTTP进行通信,利用SSL/TLS建立全信道,对数据包进行加密和解密 HTTPS使用的主要目的是提供对网站服务器的身份认证,同时保护交换数据的隐私与完整性 注:TLS是传输层加密协议...,前身是SSL协议,有时候两者不区分 二、加密方式 加密的方式可以分为对称加密和非对称加密 对称加密和非对称加密: 采用单钥密码系统的加密方法,同一个密钥可以同时用作信息的加密和解密,这种加密方法称为对称加密...公钥只是一串数字,需要有一种手段去认证公钥的真正主人,解决方案就是PKI 公开密钥算法中,所有的网络通信都会存在中间人攻击,这是务必要记住的一点,在HTTPS协议中必须引入PKI技术解决身份验证的问题,
文章目录 零、前言 一、网络层 理解路由选择 二、IP协议 三、网段划分 四、IP地址数量限制 五、私有和公网IP地址 NAT技术 六、路由 零、前言 本章主要讲解学习网络层的作用, 深入理解IP协议的基本原理...,但要扩大应用范围,连接不同的局域子网,就需要借助网络层处理各个网络子网的协议,从而进行计算机的网络互连,所以网络层在 TCP/IP 协议体系中叫网际互连层 网络层的主要作用: 屏蔽网络差异,提供透明传输...这个NSAP就是由对应网络所运行的网络层通信协议来定义的,在目前最常见的TCP/IP协议网络中,这个协议就是IP协议,对应的NSAP就是IP地址 在数据链路层中传输的是一个个以许多字节为单位的帧,在每个帧的帧头都有源节点的...节点: 主机和路由器的统称 协议头格式: 说明: 4位版本号(version): 指定IP协议的版本, 对于IPv4来说, 就是4 4位头部长度(header length): IP头部的长度是多少个...此时,需要 NAT 设备根据传输层信息或其他上层协议去区分不同的会话,并且可能要对上层协议的标识进行转换,比如 TCP 或 UDP 端口号。
引言 TCP协议是传输层中非常重要的协议。本篇博客我们将从TCP头部信息、TCP状态转移、TCP数据流、TCP数据流的控制等等方面来讨论! 在TCP协议中,通信双方的地位是平等的。...1、TCP协议的特点 传输层中我们常用的协议有两个:TCP协议和UDP协议。TCP协议相对于UDP协议的特点是:面向连接、可靠的、面向字节流的。...在讲它们的区别之前,我们需要了解一下TCP协议全双工的特点 TCP协议属于传输层中的协议,传输层由操作系统管理。...这一切由操作系统和TCP协议决定,用户层只是给出建议。所以TCP协议又被称为传输控制协议。 由于双方可以同时向对方发送数据,所以这种通信模式被称为全双工。...Linux中(BSD Unix和Windows也是如此), 超时以500ms为一个单位进行控制, 每次判定超时重发的超时 时间都是500ms的整数倍.
Linux网络-MAC协议 零、前言 一、数据链路层 二、以太网协议 1、认识以太网 2、以太网原理 3、以太网格式 4、MAC地址 5、认识MTU 三、ARP协议 四、RARP协议 零、前言 本章主要讲解...Linux网络中的数据链路层-以太网协议 一、数据链路层 示图: 数据传输大部分是跨网段进行的,而多个主机共同组成一个网段,不同的网段通过路由器连接(路由器同样也是主机),所以数据跨网段传输实质就是数据在主机间传输...ARP不是一个单纯的数据链路层的协议, 而是一个介于数据链路层和网络层之间的协议 示图: ARP协议的作用: ARP协议建立了主机 IP地址 和 MAC地址 的映射关系 在网络通讯时,源主机的应用程序知道目的主机的...IP地址和端口号,却不知道目的主机的硬件地址 数据包首先是被网卡接收到再去处理上层协议的,如果接收到的数据包的硬件地址与本机不符,则直接丢弃,因此在通讯前必须获得目的主机的硬件地址 ARP协议的工作流程...地址的一个TCP/IP协议 也就是说,某些情况下我们可能只知道一台主机的MAC地址,此时要得知该主机的IP地址就可以使用RARP协议 理论上来说,RARP协议一定比ARP协议简单,因为既然我们已经知道一台主机的
其实就是传输控制协议TCP来解决 3....8位协议表示网络层的上层的协议类型,ICMP协议是0000 0001,TCP是0000 0110,UDP是0001 0001,通过8位协议就可以将有效载荷向上分用,交付给上层协议了。 2....所以IP协议并不保证可靠性,至于数据在跨网络传输过程中出现不可靠的问题(比如丢包,数据段乱序,比特位翻转,数据段重复发送),IP协议并不关心,这些是TCP要解决的事情,比如提供数据段的排序+去重,超时重传...……等等,而IP协议只负责跨网络发送数据即可。...6. 4位版本一般都是填0100,代表ipv4协议,由于ipv6和ipv4协议并不兼容,没有办法直接进行平替,所以4位版本的值都填4,基本没什么用,都是固定用法。
Linux网络-UDP/TCP协议详解 零、前言 一、UDP协议 二、TCP协议 1、应答机制 2、序号机制 3、超时重传机制 4、连接管理机制 三次握手 四次挥手 5、理解CLOSE_WAIT状态 6...NFS:网络文件系统 TFTP:简单文件传输协议 DHCP:动态主机配置协议 BOOTP:启动协议(用于无盘设备启动) DNS:域名解析协议 关于可靠性的理解: 计算机中的硬件设备是之间的数据传输是依靠...UDP协议存在的意义: TCP协议是可靠的协议,也就意味着TCP协议需要做更多的工作来保证传输数据的可靠,此时需要的成本相比于UDP更高 UDP协议是不可靠的协议,也就意味着UDP协议不需要考虑数据传输时可能出现的问题...如果应用场景严格要求数据在传输过程中的可靠性,那么就必须采用TCP协议,如果应用场景允许数据传输出现少量丢包,那么肯定优先选择UDP协议,因为UDP协议足够简单 二、TCP协议 TCP全称为 “传输控制协议...但此时发送方就开始进行数据重传了,而发送大量重复报文会是对网络资源的浪费 超时重传的时间需要保证“确认应答一定能在这个时间内返回”,同时这个时间的长短是与网络环境有关的,会根据网络状况进行相应的变化 Linux
而现在WebService非常火,如果将两者结合起来呢,比如:用Net写好的WebService被Pb调用,而且还可以发布成接口形式,被其他公司所调用,合乐而不为呢?...先说一下开发环境:32位Win7旗舰版+PB11.5 其实在PB10.0出来时候,就已经支持调用WebService方式了。如下面步骤即可实现调用。...l 步骤1 在Net中创建一个WebService方法,用于被Pb调用,如图-1所示 ? 图-1 l 步骤2 将此WebService发布,最好发布成IIS方式,如图-2所示。 ?...图-3 好了,准备工作基本完成 l 步骤3 创建PB的解决方案文件,如图-4所示 ? 图-4 这里面要必须引用一个pbwsclient11.pbd文件,不然,会调用不成功。...图-11 l 步骤6 就可以像调用PB本身方法一样调用了。如图12和13 ? 图-12 ?
(RFB、RDP、Telnet和SSH)是Linux的远程管理协议。提到远程管理,通常指的是远程管理服务器,而非个人计算机。...目前,常用的远程管理协议有以下 4 种: RDP(remote desktop protocol)协议:远程桌面协议,大部分 Windows 系统都默认支持此协议,Windows 系统中的远程桌面管理就基于该协议...RFB(Remote FrameBuffer)协议:图形化远程管理协议,VNC 远程管理工具就基于此协议。 Telnet:命令行界面远程管理协议,几乎所有的操作系统都默认支持此协议。...Linux远程管理软件 基于以上 4 种远程管理协议,Linux 远程管理服务器的软件可分为以下 3 种: 类似于 VNC(基于 RFB 协议)的图形远程管理软件,如 Xmanager、VNC VIEWER...,大部分的服务器都舍弃图形管理界面而选择命令行界面,因此远程管理 Linux 服务器常使用基于 SSH 协议的命令行管理方式。
工作思路: 1.训练图像分类模型;2.模型固化成pb;3.由pb转成tflite文件; 但是使用python 的tf interpreter 调用tflite文件就已经出现精度下降的问题,android...2.模型固化,生成pb文件 #coding:utf-8 from __future__ import absolute_import from __future__ import division.../ttnet_1.0_37_32.pb', 'the export path of the pd file') FLAGS = tf.app.flags.FLAGS NUM_CLASSES = 37...下面附上pb与tflite测试代码。..."/home/python/Downloads/a.pb" # pb文件位置和文件名 inputs = ["input_images"] # 模型文件的输入节点名称 classes = ['feature_fusion
1KB = 1024 Bytes = 2^10 Bytes = (1L << 10) Bytes
本文链接:https://blog.csdn.net/weixin_42528266/article/details/103048629 ssh (安全外壳协议): ssh为 Secure Shell...的缩写,由 IETF 的网络小组(Network Working Group)所制定; SSH 为建立在应用层基础上的安全协议。...SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。 利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。...几乎所有UNIX平台—包括HP-UX、Linux、AIX、Solaris、Digital UNIX、Irix,以及其他平台,都可运行SSH。...验证 第一种级别(基于口令的安全验证) 第二种级别(基于密匙的安全验证) 组成 传输层协议 [SSH-TRANS] 用户认证协议 [SSH-USERAUTH] 连接协议 [SSH-CONNECT] 启动方法
import tensorflow as tf from tensorflow.python.platform import gfile pb_file = ‘xxx/xxx/xxx.pb’ pb_log_dir...= ‘xxx/xxx/log/’ def show_pb_graph(): graph = tf.get_default_graph() graph_def = graph.as_graph_def...() graph_def.ParseFromString(gfile.FastGFile(pb_file, 'rb').read()) tf.import_graph_def(graph_def..., name='graph') writer = tf.summary.FileWriter(pb_log_dir, graph) writer.close() print(...'\n logs has been saved at {} \n'.format(pb_log_dir)) if __name__ == '__main__': show_pb_graph
领取专属 10元无门槛券
手把手带您无忧上云