当前位置: 首页 > news >正文

进程件通信——网络通信——TCP

网络抓包工具:wireshark    抓取经过设备网卡的数据。

操作:

1. sudo wireshark
2. 选择要抓取的网卡----》any
3. 设置抓取的过滤条件
4. 进行网络通信
5. 分析数据

UDP: 用户数据报协议

UDP: 用户数据报协议
 特点:
    1. 无连接
    2. 面向数据包
    3. 不确保数据的安全可靠性
    4. 可以实现一对一,一对多通信 

    5. 头部开销小

应用: 要求数据安全可靠的场景下
             HTTP、FTP、MQTT

TCP : 传输控制协议

特点:
    1. 有连接
    2. 面向字节流(流式套接字)
    3. 安全可靠的传输协议
           1.三次握手、四次挥手机制
           2.应答机制....等一系列机制
    4. 只能实现一对一通信

    5. 头部开销大,机制复杂

三次握手:tcp为了确保通信双方都已准备就绪,在建立连接时,要进行三次握手操作。
                  由客户端主动发起。

四次挥手:tcp为了确保断开连接时,通信双发都收发数据结束,在断开连接时,进行四次挥手。
                  由任意一方发起

int listen(int sockfd, int backlog);
功能:负责监听需要建立连接的客户端
参数:
      sockfd:
      backlog:允许同时监听的客户端的个数
返回值:
  成功:0
  失败:-1
int accept(int sockfd, struct sockaddr *addr, socklen_t *addrlen);
功能:接收完成三次握手的客户端
参数:
        sockfd:监听套接字
        addr:建立连接的客户端地址
        addrlen:客户端地址大小的指针
返回值:
      成功:通讯套接字
      失败:-1

ssize_t recv(int sockfd, void *buf, size_t len, int flags);
功能:
返回值:
  成功:实际收到字节数
  失败:-1
  对方断开连接:不再阻塞, 返回0

TCP报文头

滑动窗口大小:是TCP流量控制得一个手段。目的是告诉对方, 本端得TCP接受缓冲区还能容纳多少字节得数据,这样对方就可以控制发送数据的速度,从而达到流量控制,16bit,因而窗口最大65535.

源端口与目的端口各占2个字节,

序列号与确认序列号各占4个字节;

数据便宜+标志位、窗口、检验和、紧急指针各占2个字节

选项与填充长度可变
 


http://www.mrgr.cn/news/82902.html

相关文章:

  • 平安社招 | 平安集团2025年社招笔试平安IQ新胜任力测评个性扫描16PF题库
  • ocrmypdf使用时的cannot import name ‘PdfMatrix‘ from ‘pikepdf‘问题
  • 第5章:Go语言错误处理和异常
  • 【yolov8自卸卡车-挖掘机-装载机检测】
  • 一篇小短文,理解动态规划问题 DP (Dynamic Programming)
  • 华为设备的VRP系统详解
  • unity-入门查漏补缺0.2.03.10
  • 计算机网络学习
  • 【算法】算法初步
  • 在ComfyUI的python_embeded下编译安装module
  • Python数据可视化-Pandas绘图
  • Postman接口测试01|接口测试基础概念、http协议、RESTful风格、接口文档
  • Servlet详解
  • 4.7 数据库:单行子查询和多行子查询
  • python学习笔记—14—函数
  • 【HarmonyOS-ArkTS语言】计算器的实现【合集】
  • 【C++面向对象——类与对象】Computer类(头歌实践教学平台习题)【合集】
  • MyBatis深入了解
  • 【C++数据结构——内排序】快速排序(头歌实践教学平台习题)【合集】
  • 机器学习基础-线性回归和逻辑回归
  • 机器学习基础-卷积的计算
  • 计算机网络与服务器
  • unity学习8:unity的基础操作 和对应shortcut
  • Vue 按键生成多个表单
  • 【C语言程序设计——入门】基本数据类型与表达式(头歌实践教学平台习题)【合集】
  • 现代密码学期末重点(备考ing)