网络编程
文章平均质量分 80
c++ 网络编程
MetaSmiles
智能机器人 视觉slam 计算机视觉,软件开发
展开
-
window下libevent编译及其使用
1.编译选项-MT/MD: 类别 说明 静态连接 多线程(/MT) 多线程Release、DLL版运行时库,只能用于Release版本 LIBCMT.lib 多线程调试(/MTd) 多线程Debug、DLL版运行时库,只能用于Debug版本 LIBCMTD.lib 多线程调试DLL(/MD) ...原创 2022-02-16 21:45:43 · 1272 阅读 · 0 评论 -
TCP调试-16进制调试
TCP调试工具如下:使用16进制发送和接受数据TCP调试:16进制发送第一步:将发生的字符串进行base64编码第二步:base6编码字符串转16进制第三步:16进制按字节加空格import base64strInput=input("请输入格式的json字符串:")bs=str(base64.b64encode(strInput.encode('utf-8')),"utf-8")print('base64转码:'+bs)by = bytes(bs,'UTF-8')hex原创 2022-01-31 15:43:22 · 4688 阅读 · 0 评论 -
RTP确认大小-MSS&MTU
目录1.MTU和MSS基本概念2.普通应用数据TCP传输:3.RTP数据传输大小1.MTU和MSS基本概念基本概念: 基本概念 解释 MTU 最大传输单元,由硬件规定,如以太网的MTU为1500字节。 网络中一些常见链路层协议MTU的缺省数值如下: FDDI协议:4352字节 以太网(Ethernet)协议:1500字节 PPPoE(ADSL)协议:1492字节 X.25原创 2021-12-04 15:55:06 · 3184 阅读 · 0 评论 -
计算机网络-组播
1.组播基本知识由于设计到多播通信方法,故查阅资料学习一下,三种通信方法:类型 特点 优缺点 使用方法 单播 用于两个主机之间的端对端通信 单播解决了点对点通信的需求; TCP/UDP 广播 用于一个主机对整个局域网上所有主机上的数据通信 存在缺点: 1)只能在同一网段内实现广播; 2)不能指定目的主机,所有网段内的主机都将收到广播报文,存在带宽浪费。 UDP 多播 ...原创 2021-12-02 00:57:42 · 2712 阅读 · 0 评论 -
tcpdump与Wireshark基础入门
1 起因前段时间,一直在调线上的一个问题:线上应用接受POST请求,请求body中的参数获取不全,存在丢失的状况。这个问题是偶发性的,大概发生的几率为5%-10%左右,这个概率已经相当高了。在排查问题的过程中使用到了tcpdump和Wireshark进行抓包分析。感觉这两个工具搭配起来干活,非常完美。所有的网络传输在这两个工具搭配下,都无处遁形。为了更好、更顺手地能够用好这两个工具,特整理本篇文章,希望也能给大家带来收获。为大家之后排查问题,添一利器。2 tcpdump与Wireshark介绍转载 2021-09-02 00:10:39 · 1403 阅读 · 0 评论 -
libcurl实战-Get请求
ibcurl作为是一个多协议的便于客户端使用的URL传输库,基于C语言,提供C语言的API接口,支持DICT, FILE, FTP, FTPS, Gopher, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMTP, SMTPS, Telnet and TFTP这些协议,同时支持使用SSL证书的安全文件传输:HTTP POST, HTTP PUT, FTP 上传, 基于HTTP形式的上传...原创 2021-08-17 01:12:07 · 3334 阅读 · 0 评论 -
网络编程-IO模型总结
1.空间和内核空间:现在操作系统都是采用虚拟存储器,那么对32位操作系统而言,它的寻址空间(虚拟存储空间)为4G(2的32次方)。操作系统的核心是内核,独立于普通的应用程序,可以访问受保护的内存空间,也有访问底层硬件设备的所有权限。为了保证用户进程不能直接操作内核(kernel),保证内核的安全,操心系统将虚拟空间划分为两部分,一部分为内核空间,一部分为用户空间。针对linux操作系统而言,将最高的1G字节(从虚拟地址0xC0000000到0xFFFFFFFF),供内核使用,称为内核空间,而将较低的3G原创 2021-06-23 19:12:28 · 313 阅读 · 1 评论 -
网编编程-evhttp小试
#include <stdio.h>#include <stdlib.h>#include <string.h> #include <sys/queue.h>#include <event.h>#include <event2/http.h>#include <event2/http_struct.h>#include <event2/http_compat.h>#include <.原创 2021-06-04 16:00:03 · 1225 阅读 · 1 评论 -
网络编程-网络地址区分
IP地址分类:IP地址分为两部分,网络id和主机id, 同一个物理网络上的所有主机都使用同一个网络ID,网络上的一个主机有一个主机ID与其对应。按分类分为ABCDE五类地址。 分类 特点 范围 网络数量 主机数量 备注 A 最高位0,主机地址和网络地址分别为1和3个字节 1.0.0.0-127.0.0.0 ...原创 2021-06-02 21:46:20 · 170 阅读 · 0 评论 -
网络编程-libevent安装和简单介绍
也可以直接到官网上下载源码包来安装。http://libevent.org/#在当前目录下解压安装包:tar -zxvf libevent-2.0.22-stable.tzr.gzcd libevent-2.0.22-stable#配置安装库的目标路径:./configure --prefix=/usr#编译安装libevent库:makemake install#查看libevent库是否安装成功:...原创 2021-05-31 23:52:29 · 307 阅读 · 3 评论 -
网络编程-libevnet编程整理一些小事项
发送缓冲区设定 Libevent库默认是4096字节,也就是4k,超过这个将分包处理,也可以使用放大缓存区的大小,一次性回调来接受数据。具体操作:1在accept回调中获取到socket套接字后设置一下socket缓冲区大小 2,修改libevent源码的EVBUFFER_MAX_READ改大(改好后重新编译libevent) 3,调用bufferevent_set_max_single_readintnRecvBuf=1024*10;//设置为32K setsocko...原创 2021-05-31 22:55:37 · 368 阅读 · 2 评论 -
网络编程-libevnet带缓冲的事件框架bufferevent
常用API 分类 API 备注 事件框架 参考上一章 bufferevent事件 struct bufferevent *bufferevent_socket_new( struct event_base *base,evutil_socket_t fd, enum bufferevent_options options); op.原创 2021-05-31 22:43:42 · 313 阅读 · 0 评论 -
网络编程-libevnet不带缓冲的事件框架
工作流程 图1 工作流程常用的API: 分类 API 含义 事件 框架 struct event_base* event_base_new(void); 创建事件框架 event_base_free(struct event_base* base); 释放事件框架 const char *ev...原创 2021-05-31 22:38:12 · 150 阅读 · 0 评论 -
网络编程问题总结
加油整理中。。。。。。。。。。1.APIAPI 序号 1.字节序函数 2.字节操作函数 3.地址转换函数 4.readn、writen和readline 5.测试描述符类型 6.socket函数...原创 2021-05-08 00:59:48 · 119 阅读 · 0 评论 -
socket编程-UDP/TCP
socket编程-TCP原创 2020-11-05 23:22:37 · 137 阅读 · 0 评论 -
计算机网络编程基础
1.网络模型TCP/IP是一系列协议的集合,是构成网络通信的核心骨架,它定义了电子设备如何连入因特网,以及数据如何在它们之间进行传输各层作用:2.TCP3.UDP4.socket原创 2020-11-05 23:21:05 · 278 阅读 · 0 评论 -
REST入门
整理中原创 2020-09-10 02:03:50 · 192 阅读 · 0 评论 -
HTTP入门基础
整理中原创 2020-09-10 02:03:06 · 131 阅读 · 0 评论