网络相关资料整理
一、网络分层
1、OSI七层模型详解https://blog.csdn.net/yaopeng_2005/article/details/7064869
2、TCP/IP协议族https://blog.csdn.net/cws1214/article/details/8078629
3、TCP/IP协议族分层详解https://blog.csdn.net/qq_35644234/article/details/68951041
二、TCP/UDP
2.1理论
1、TCP和UDP的优缺点及区别https://www.cnblogs.com/xiaomayizoe/p/5258754.html
2、TCP三次握手&四次挥手(示意图) https://www.cnblogs.com/qq78292959/p/3922231.html
3、TCP三次握手和四次挥手https://www.cnblogs.com/Andya/p/7272462.html
从TCP三次握手说起——浅析TCP协议中的疑难杂症(真心不错)
https://blog.csdn.net/changyourmind/article/details/53127100
4、TCP长连接和短连接区别https://www.cnblogs.com/onlysun/p/4520553.html
5、长连接、心跳和断线重连(移动端理论)http://blog.csdn.net/u012692537/article/details/73608935
6、TCP连接探测中的Keepalive 和心跳包(理论和C源码)http://www.cnblogs.com/lidabo/p/4253356.html
7、tcp建立连接为什么需要三次握手
https://www.jianshu.com/p/e7f45779008a
8、TCP建立时的ISN是什么(初始化序列号)?怎么得到的?
https://blog.csdn.net/zhangqi_gsts/article/details/50617291
2.2 理论+源码
1、C# KeepAlive的设置(C#源码)http://www.cnblogs.com/legendtao/p/4930098.html
2、网络连接检测(C#源码 ping方式和dll调用方式)http://blog.csdn.net/u012692537/article/details/76110927
3、C++ 协程与网络编程https://blog.csdn.net/woshiqjs/article/details/24124325
2.3 网络编程模型
2.3.1 阻塞模型
比较简单,但是会阻塞,配合多线程用
2.3.2 选择模型(select)
2.3.3 异步选择模型(WSAAsyncSelect)
vs2015写的时候就报warning,提示不推荐了,用WSAEventSelect替代
2.3.4 事件选择模型(WSAEventSelect)
1、WinSock WSAEventSelect 模型总结
https://www.cnblogs.com/tanguoying/p/8506821.html
2、winsock编程WSAEventSelect模型
https://www.cnblogs.com/hgwang/p/6101405.html
2.3.5 重叠 I/O模型(Overlapped I/O)
2.3.6 IOCP模型(I/O Completion Port)
1、WinSock IOCP 模型总结(附一个带缓存池的IOCP类)
http://www.cnblogs.com/tanguoying/p/8439701.html
2.4 校验
1、校验和算法
https://www.zhihu.com/question/47025566#answer-37044351
三、MQTT
1、MQTT–入门
https://blog.csdn.net/u012692537/article/details/80263150
2、使用 MQTTnet 实现 MQTT 通信示例
https://blog.csdn.net/u012692537/article/details/80255010
四、串口通信
1、UART, SPI, IIC、485、422、RS232的详解及三者的区别和联系
https://blog.csdn.net/zhaoguanghua0407/article/details/78383619
2、CAN总线学习笔记(1)- CAN基础知识
https://blog.csdn.net/dwx1005526886/article/details/82292104
五、子网掩码
1、子网掩码怎么理解
https://blog.csdn.net/farmwang/article/details/64132723
六、多进程与多线程
网络编程离不开多进程与多线程知识的。。。
1、目录https://blog.csdn.net/u012692537/article/category/7939424
七、协程
7.1 理论
1、网络协程编程http://blog.jobbole.com/104789/
7.2 源码
7.3 坑
1、yield keyword to become co_yield in VS 2017
https://blogs.msdn.microsoft.com/vcblog/2017/01/27/yield-keyword-to-become-co_yield-in-vs-2017/
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
