Network and Protocals
lsfreeing
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
《P2P技术详解》系列文章
即时通讯网的系列文章。相对比较详细。供参考P2P技术详解(一)http://www.52im.net/thread-50-1-1.htmlP2P技术详解(二)http://www.52im.net/thread-542-1-1.html原创 2020-01-19 11:25:12 · 286 阅读 · 0 评论 -
深入理解TCP网络编程中的send和recv
文章来源:点击打开链接https://blog.youkuaiyun.com/libaineu2004/article/details/80555057http://blog.youkuaiyun.com/yusiguyuan/article/details/21439719http://blog.youkuaiyun.com/yusiguyuan/article/details/21390177 先明确一个概念:每个TCP soc...转载 2018-07-10 17:30:19 · 508 阅读 · 0 评论 -
《TCP/IP详解 卷1:协议》在线阅读
比较经典的一本书籍,中文版本。手机上如果阅读不了,将浏览器UA 更改为电脑即可http://www.52im.net/topic-tcpipvol1.html?mobile=no原创 2018-08-03 08:45:17 · 20408 阅读 · 4 评论 -
为什么心跳包(HeartBeat)是必须的?
原文链接https://blog.coderzh.com/2015/03/05/WhyHeartBeatNeeded/几乎所有的网游服务端都有心跳包(HeartBeat或Ping)的设计,在最近开发手游服务端时,也用到了心跳包。思考思考,心跳包是必须的吗?为什么需要心跳包?TCP没有提供断线检测的方法吗?TCP提供的KeepAlive机制可以替代HeartBeat吗? 由于连接丢失时...转载 2018-08-31 13:11:36 · 488 阅读 · 0 评论 -
Ftp、Ftps与Sftp之间的区别
用qt写了一个ftp自动升级软件的功能,调试发现有问题,实际服务器用的是sftp ssh。https://www.cnblogs.com/Javi/p/6904587.htmlFtpFTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为“文传协议”。用于Internet上的控制文件的双向传输。同时,它也是一个应用程序(Application)。基...转载 2018-09-05 11:37:53 · 50054 阅读 · 0 评论 -
windows freeSSHd搭建SFtp服务器
windows下搭建sftp服务器下载freeSSHd,一键安装。http://www.freesshd.com/?ctt=download1.设置SSH参数2.设置SFTP文件目录3.设置用户信息4.启动服务 other启动服务报错:generic error for access violation解决方法:服务被占用,关闭系统服务。...原创 2018-09-05 15:05:23 · 18488 阅读 · 5 评论 -
muduo cpp11版本编译安装
下载链接:https://github.com/chenshuo/muduo/tree/cpp11 需要安装boost, curl, protobuf的相关依赖。以apt方式进行安装1、安装依赖库sudo apt-get install cmakesudo apt-get install libboost-devsudo apt-get install protobuf...原创 2018-10-16 17:31:59 · 1505 阅读 · 0 评论 -
基于Qssh的sftp客户端
项目需要写一个sftp的自动升级程序,查阅了下网上的一些资料,有libssh2+openssl和基于qssh等方法。之前考虑从filezilla源码中参考自己封装,考虑到时间关系就选择最快的方式了。基于qssh来封装。实现上传下载,文件列表,上传目录等基本功能,参考filezilla的功能。sftp服务器搭建,在前一篇文章中已经写过。qssh 很简单,由于是公司项目,只是稍记录下。源码需要的可...原创 2018-09-20 19:59:39 · 6344 阅读 · 20 评论 -
TCP、UDP数据包大小的限制
http://blog.sina.com.cn/s/blog_413d250e0102wmq0.htmlTCP报文的最大负载和报文的最小长度MTU:最大传输单元,以太网的MTU为1500BytesMSS:最大分解大小,为每次TCP数据包每次传输的最大数据的分段大小,由发送端通知接收端,发送大于MTU就会被分片。MSS默认最小为536B,最小的MTU576B,MSS = MTU - ...转载 2019-02-27 09:35:39 · 957 阅读 · 0 评论 -
什么情况下socket可读取
参考《UNIX 网络编程卷1》中的《第6章 I/O复用》一、 满足下列四个条件中的任何一个时,一个套接字准备好读。该套接字接收缓冲区中的数据字节数大于等于套接字接收缓存区低水位。对于TCP和UDP套接字而言,缓冲区低水位的值默认为1。那就意味着,默认情况下,只要缓冲区中有数据,那就是可读的。我们可以通过使用SO_RCVLOWAT套接字选项(参见setsockopt函数)来设置该套接...转载 2019-03-31 15:46:33 · 214 阅读 · 0 评论 -
TCP之Nagle算法&&延迟ACK
原文链接http://www.cnblogs.com/wanpengcoder/p/5366156.html1. Nagle算法:是为了减少广域网的小分组数目,从而减小网络拥塞的出现;该算法要求一个tcp连接上最多只能有一个未被确认的未完成的小分组,在该分组ack到达之前不能发送其他的小分组,tcp需要收集这些少量的分组,并在ack到来时以一个分组的方式发送出去;其中小分组的定义是小于MSS的任何...转载 2018-07-10 17:11:11 · 282 阅读 · 0 评论 -
脑残式网络编程入门(二):我们在读写Socket时,究竟在读写什么?
1、引言本文接上篇《脑残式网络编程入门(一):跟着动画来学TCP三次握手和四次挥手》,继续脑残式的网络编程知识学习 ^_^。套接字socket是大多数程序员都非常熟悉的概念,它是计算机网络编程的基础,TCP/UDP收发消息都靠它。我们熟悉的web服务器底层依赖它,我们用到的MySQL关系数据库、Redis内存数据库底层依赖它。我们用微信和别人聊天也依赖它,我们玩网络游戏时依赖它,读者们能够阅读这篇...转载 2018-07-08 23:03:26 · 178 阅读 · 0 评论 -
计算机网络基础知识-相关问题
关于TCP/IP,当然最经典的要数TCP/IP详解卷1-3。大概看了第一本,基本有了点概念。但还是有些理解不是很透彻,当然也跟这书太专业有关。百度搜了下一个知乎专栏,关于网络这块的提问和回答还是介绍的相对平实易懂。记录下计算机网络入门基础篇: https://zhuanlan.zhihu.com/p/22516664计算机网络面试小宝典 https://zhuanlan.zhihu.com/p/原创 2017-09-20 19:09:06 · 380 阅读 · 0 评论 -
USB通信开发资料搜集
最近在开发以usb方式进行通讯。当然github上已经有成熟的开源库供使用,如跨平台的libusb。win下开发usb通信程可参考开源库libusb。相关文档的介绍非常详细,使用也非常方便。 http://libusb.info/ https://github.com/libusb/libusb根据作者的建议如下,内容参考自libusb FAQ如果是通用的HID设备,不用安装额外驱动。但建议使原创 2017-12-01 19:28:55 · 1048 阅读 · 0 评论 -
USB四种传输模式
更多参考可查阅http://www.usb.org/developers/docs/USB传输的4种模式:BULK:块数据传输 追求数据完整性,CRC校验,故该种传输方式,虽然可以做大数据的传输,但是并不适合实时传输;Interrupt:中断传输也是实时传输,对数据准确性有一定保证;ISO:同步传输 追求实时转载 2017-12-02 15:16:57 · 7201 阅读 · 0 评论 -
USB Properties Descriptor
原文链接http://blog.youkuaiyun.com/jacobywu/article/details/8861882struct usb_device_descriptor { __u8 bLength;//设备描述符的字节数大小,为0x12 __u8 bDescriptorType;//描述符类型编号,为0x01 __le16 bcdUSB;//USB版本号转载 2017-12-02 17:59:10 · 350 阅读 · 0 评论 -
socket相关概念
有次一同学说到他面试被问到socket是哪一层的东西。当时听到的第一反应是三元组(协议,IP,端口),端到端的通信,也就是OSI的传输层或TCP/IP 模型中的运输层。不过后面讨论的结果是socket应该是传输层与应用层之间抽象的一层。虽然平时开发也用的比较多,但要讲总有些说不大明白。参考了几篇文章。https://www.zhihu.com/question/29637351?sor转载 2018-05-02 23:25:04 · 404 阅读 · 0 评论 -
HTTP 协议入门
HTTP 协议是互联网的基础协议,也是网页开发的必备知识,最新版本 HTTP/2 更是让它成为技术热点。本文介绍 HTTP 协议的历史演变和设计思路。一、HTTP/0.9HTTP 是基于 TCP/IP 协议的应用层协议。它不涉及数据包(packet)传输,主要规定了客户端和服务器之间的通信格式,默认使用80端口。最早版本是1991年发布的0.9版。该版本极其简单,只有一个命令GET。GET /i...转载 2018-05-06 15:47:51 · 199 阅读 · 0 评论 -
HTTP协议【详解】——基本概念
http请求由三部分组成,分别是:请求行、消息报头、请求正文HTTP(超文本传输协议)是一个基于请求与响应模式的、无状态的、应用层的协议,常基于TCP的连接方式,HTTP1.1版本中给出一种持续连接的机制,绝大多数的Web开发,都是构建在HTTP协议之上的Web应用。1、常用的HTTP方法有哪些?GET: 用于请求访问已经被URI(统一资源标识符)识别的资源,可以通过URL传参转载 2018-05-06 17:13:01 · 316 阅读 · 0 评论 -
文本协议与二进制协议的选择
转载自https://www.cnblogs.com/houkui/p/4268233.html进行网络通信时,我们经常纠结于到底使用什么样的协议传输数据,下面我谈谈应该怎么选择一种合理的协议格式。网络协议标准定义是这样的: 为计算机网络中进行数据交换而建立的规则、标准或约定的集合。 网络协议至少包括三要素: 语法:语法是用户数转载 2018-05-08 08:36:27 · 385 阅读 · 0 评论 -
TCP socket通信粘包分析及解决思路
刚好项目中碰到tcp粘包情况,找了下博文,分析还是很到位的一 .两个简单概念长连接与短连接:1.长连接 Client方与Server方先建立通讯连接,连接建立后不断开, 然后再进行报文发送和接收。2.短连接 Client方与Server每进行一次报文收发交易时才进行通讯连接,交易完毕后立即断开连接。此种方式常用于一点对多点 通讯,比如多个Client连接转载 2017-09-11 19:29:13 · 764 阅读 · 0 评论
分享