Network
文章平均质量分 94
Kessity
科技改变世界,梦想成就未来。。。。。。。。。
展开
-
一文读懂MQTT协议
目录一 概述二 设计原则三 特性四 MQTT协议原理1 MQTT协议实现方式2 网络传输与应用消息3 MQTT客户端4 MQTT服务器5 MQTT协议中的订阅、主题、会话6 MQTT协议中的方法五 MQTT协议数据包结构1 MQTT固定头1.1 MQTT数据包类型1.2 标识位1.3 剩余长度(Remaining Length)2 MQTT可变头3 Payload消息体六 实现一 概述 MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议),是一种基于原创 2021-10-21 18:36:22 · 3247 阅读 · 0 评论 -
网络相关命令及流量场景设置(八)
一 ping原理 简单地说,ping就是给目标IP地址发送一个 ICMP 回显请求,并要求对方返回一个 ICMP 回显应答来确定两台网络机器是否连通,时延是多少。 在 ICMP 逐层封装的过程中,需要知道源IP、源MAC地址、目的IP、目的MAC地址,前三者是已知的,只需要获取目的MAC地址即可:若在同一网段,只需要发送ARP广播;若不在同一网段,发送ARP广播给交换机,交换机若没有缓存...原创 2020-03-26 13:44:43 · 856 阅读 · 0 评论 -
TCP(四)
Tcp重点:三次握手、四次挥手、timewait状态、为何挥手不是三次(全双工)、拥塞避免(慢启动)、可靠性(超时重传、快速重传)、滑动窗口。一 TCP Api和三次握手对应 连接。Syn代表数据传输的起始序列号,ack则为syn+1.或为数据分段的序列号+1,收到的ack号也为下一个要发送的数据号。断开,客户端在发送fin报文段后,server回复ack+1,断掉client到s...原创 2020-03-13 14:16:42 · 593 阅读 · 1 评论 -
Linux tcpdump和wireshark(七)
一 Linux抓包原理 Linux抓包是通过注册一种虚拟的底层网络协议来完成对网络报文(准确的说是网络设备)消息的处理权。当网卡接收到一个网络报文之后,它会遍历系统中所有已经注册的网络协议,例如以太网协议、x25协议处理模块来尝试进行报文的解析处理,这一点和一些文件系统的挂载相似,就是让系统中所有的已经注册的文件系统来进行尝试挂载,如果哪一个认为自己可以处理,那么就完成挂载。 当抓包模块把...原创 2018-11-17 10:19:03 · 732 阅读 · 0 评论 -
IO复用(五)
IO复用1 函数说明1. 原型:#include <sys/select.h>int select(int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout);#include <poll.h>int poll(struct pollfd *f...原创 2019-10-14 12:35:12 · 352 阅读 · 0 评论 -
C网络编程API(三)
一 socket函数底层调用过程 1. 创建一个socket结构体(给OS用的),包括分配结构体空间(kmem_cache_alloc、kmalloc),初始化结构体,再分配sock结构体(tcp_sock结构体)+初始化sock结构体(tcp_sock结构体)。 2. 绑定linux文件系统的文件结构体,即建立socket结构体和(file结构体+fd)的联系, socket系统...原创 2019-10-14 10:20:24 · 557 阅读 · 1 评论 -
五种IO模型(六)
一 IO的两种状态1 概述 等待就绪:阻塞和非阻塞。阻塞和非阻塞关注的是程序在等待调用结果时的状态。阻塞是在结果返回之前,线程一直挂起;非阻塞是指结果是否就绪,立即返回,而该调用不会阻塞当前线程。 数据操作:同步(内核给应用上报的是读写就绪事件,应用自己读写)和异步(内核给应用上报的是读写完成事件)。同步和异步关注的是消息通知机制。IO模型中:同步IO是说,IO的读写操作,在IO事件发生...原创 2019-10-10 13:16:21 · 378 阅读 · 1 评论 -
TCP/IP编程示例(二)
一 BSD SOCKET发送数据函数流程二 TCP接口示例 server:#include <sys/types.h> #include <sys/socket.h>#include <arpa/inet.h>#include <stdio.h>#include <string.h>#include <...原创 2019-09-22 23:43:09 · 313 阅读 · 0 评论 -
TCP/IP基础概念(一)
一 TCP/IP模型二 数据链路层 数据链路层使用的信道主要有以下两种类型: (1)点对点信道。这种信道使用一对一的点对点通信方式。 (2)广播信道。这种信道使用一对多的广播通信方式, 因此过程比较复杂。广播信道上连接的主机很多,因此必须使用专用的共享信道协议来协调这些主机的数据发送。 数据链路层的三个基本问题: 封装成帧、 透明传输和差错检测。 点对点协议PPP;广播信...原创 2019-09-22 23:08:11 · 316 阅读 · 0 评论