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

网络编程中客户端与服务器的搭建与协议包应用

1.客户端的搭建

2.服务器搭建

3.TCP中的粘包现象

tcp协议为了提高发送的效率,会将短时间连续发送的小数据,当做一组数据统一发送

原理是:

tcp协议本身存在一个1500字节的缓存区,tcp协议每次write发送数据的时候,总是会发送1500个字节

如果发送了n组数据,这n组数据的时间间隔很短,并且数据总大小没有超过1500个字节

那么TCP协议就会将这n组数据全都放到同一个1500字节的缓存区中去,统一发送。

4.协议包

规定好一组数据的固定大小,以及一组数据里面每个数据占据多少个字节

然后服务器和客户端,全都遵循同样的规定实现数据的收发

这样的规定如果我们把它打包写成具体的代码,打包出来的成果我们就称为协议包。

由于协议包无法解决按字节数输出我们在终端输入的字符串,所以在协议包的基础上再定义缓存区和变量存放输入的字符串的字节数和内容,当读取到指定字节数内容后进行输出就可以解决。

相关文章:

  • linux 基础网络配置文件
  • MyBatis框架操作数据库一>xml和动态Sql
  • pnpm创建vite
  • STM32 DAC详解:从原理到实战输出正弦波
  • Spring 学习日记 day2
  • 使用fastapi部署stable diffusion模型
  • 如何记录Matlab程序运行过程中所占用的最大内存(续)
  • 天梯赛 L2-005 集合相似度
  • 配置 VSCode 的 C# 开发环境
  • 山寨币ETF的叙事,不灵了?
  • 【css酷炫效果】纯CSS实现全屏粒子连线
  • sparksql的Transformation与 Action操作
  • 解决git init 命令不显示.git
  • 3.1 在VisionPro脚本中添加CogGraphicLabel
  • LeetCode 热题 100_跳跃游戏(78_55_中等_C++)(贪心算法)
  • 技术路线图ppt模板_流程图ppt图表_PPT架构图
  • 购物车全选功能
  • Api架构设计--- HTTP + RESTful
  • C++和标准库速成(八)——指针、动态数组、const、constexpr和consteval
  • dataframe数据形式操作中的diff和shift函数区别与对比
  • 思政课也精彩,“少年修齐讲堂”开讲《我的中国“芯”》
  • 王毅谈金砖国家反恐和网络安全合作
  • 五一去哪儿|外国朋友来中国,“买买买”成为跨境旅游新趋势
  • 节前A股持续震荡,“五一”假期持股还是持币过节胜率更高?
  • 新开发银行如何开启第二个“金色十年”?
  • 建发股份:将于5月6日召开股东大会,审议提名林茂等为公司新一届董事等议案