随笔分类 -  网络编程

摘要:# 【网络编程】 ## [【一】CS与BS架构](https://www.cnblogs.com/dream-ze/p/17499372.html) - 什么是 CS 架构 - 什么是 BS 架构 ## [【二】操作系统基础与网络通信基础](https://www.cnblogs.com/dream 阅读全文 »
posted @ 2023-08-23 14:28 Chimengmeng 阅读(33) 评论(0) 推荐(0) 编辑
摘要:# 网络并发每日习题解释版 # 1.软件开发架构类别 ## 软件开发架构类别: - 软件开发架构是指在软件设计和开发过程中,用于组织和管理软件系统的基本结构。 ## 常见的软件开发架构类别包括: ### 分层架构(Layered Architecture): - 将软件系统划分为多个相互独立的层,每 阅读全文 »
posted @ 2023-07-26 10:35 Chimengmeng 阅读(11) 评论(0) 推荐(0) 编辑
摘要:# 网络并发每日习题 # 1.软件开发架构类别 # 2.osi七层及各自功能 # 3.谈谈你对tcp三次握手和四次挥手的理解 # 4.描述粘包现象 # 5.写出解决粘包现象的思路 # 6.struct模块如何使用 # 7.如何开启进程、进程类中的参数及方法有哪些? # 8.如何开启多进程,如何让所有 阅读全文 »
posted @ 2023-07-26 10:35 Chimengmeng 阅读(20) 评论(0) 推荐(0) 编辑
摘要:# 并发网络周测题 # 【一】理论篇 ## 1.简述OSI七层协议 ## 2.什么是C/S和B/S架构? ## 3.简述TCP三次握⼿、四次挥⼿的流程。 ## 4.TCP和UDP的区别?为何基于tcp协议的通信⽐基于udp协议的通信更可靠? ## 5.什么是socket?简述基于tcp协议的套接字通 阅读全文 »
posted @ 2023-07-08 11:04 Chimengmeng 阅读(8) 评论(0) 推荐(0) 编辑
摘要:# 并发网络周测题 # 【一】理论篇 ## 1.简述OSI七层协议 - OSI七层协议(Open Systems Interconnection)是一种用于计算机网络通信的参考模型。 - 该模型将网络通信过程分解为七个不同的层次,每个层次负责特定的功能和任务,这有助于网络设备和应用程序之间的协作和互 阅读全文 »
posted @ 2023-07-08 11:04 Chimengmeng 阅读(32) 评论(0) 推荐(0) 编辑
摘要:## 【一】开启多进程的创建模板(基于Process模块) ### 【1】方式一:创建多进程 ```python import multiprocessing def worker(n): """子进程要执行的任务""" print(f'子进程 {n} 正在执行') def main(): task 阅读全文 »
posted @ 2023-06-27 09:24 Chimengmeng 阅读(35) 评论(0) 推荐(0) 编辑
摘要:# 【7.0】网络并发总复习解释版 # 网络编程部分 ## 【一】软件开发架构 ### 【1】什么是CS架构 - CS架构即 客户端/服务端架构,如APP应用 ### 【2】什么是BS架构 - BS架构即 浏览器/服务端架构,如网页的网站 ### 【3】二者相比的优缺点 #### (1)优点 - C 阅读全文 »
posted @ 2023-06-27 09:24 Chimengmeng 阅读(14) 评论(0) 推荐(0) 编辑
摘要:# 【6.0】网络并发总复习 # 网络编程部分 ## 【一】软件开发架构 ## 【二】互联网协议 ### 【1】OSI七层 ### 【2】五层协议 ### 【3】以太网协议 ### 【4】IP协议 ### 【5】广播风暴 ### 【6】TCP/UDP ## 【三】三次握手,四次挥手(`****`) 阅读全文 »
posted @ 2023-06-27 09:24 Chimengmeng 阅读(17) 评论(0) 推荐(0) 编辑
摘要:# socket套接字使用模版 ## 【一】客户端 ```python # -*-coding: Utf-8 -*- # @File : 客户端 .py # author: Chimengmeng # blog_url : https://www.cnblogs.com/dream-ze/ # Ti 阅读全文 »
posted @ 2023-06-23 17:21 Chimengmeng 阅读(20) 评论(0) 推荐(0) 编辑
摘要:# 基于 TCP 协议实现服务端执行代码将结果反馈给客户端 > TCP协议是流式协议:在数据传输过程中大量数据的传入会造成数据的丢失和不完整 > 解决数据传输过程中的问题:自定义协议 > 应用:基于网络上传和下载文件 > socketserver:基于模块实现并发 - 服务端满足的条件 - 一直对外 阅读全文 »
posted @ 2023-06-23 17:21 Chimengmeng 阅读(51) 评论(0) 推荐(0) 编辑
摘要:# 基于UDP协议的简单套接字 > UDP协议 > 数据报协议 ## 【一】简单版1.0 ### 【1】TCP协议所遇到的空数据问题是否存在? > TCP协议是水流式协议:传入的数据不能为空,因为水是一直流的,在传输过程中不会对数据进行操作 > > UDP协议是数据报协议:传入的数据可为空,在传输过 阅读全文 »
posted @ 2023-06-23 17:20 Chimengmeng 阅读(9) 评论(0) 推荐(0) 编辑
摘要:# 基于TCP协议的简单套接字(打电话模型) ## 【一】简单版1.0 ### 服务端 ```python # -*-coding: Utf-8 -*- # @File : 服务端 .py # author: Chimengmeng # blog_url : https://www.cnblogs. 阅读全文 »
posted @ 2023-06-23 17:20 Chimengmeng 阅读(13) 评论(0) 推荐(0) 编辑
摘要:- 如果你想在分布式系统中实现一个简单的客户端链接认证功能,又不像SSL那么复杂 - 那么利用hmac+加盐的方式来实现 - 服务端 ```python #_*_coding:utf-8_*_ __author__ = 'ly' from socket import * import hmac,os 阅读全文 »
posted @ 2023-06-23 17:15 Chimengmeng 阅读(26) 评论(0) 推荐(0) 编辑
摘要:- 基于tcp的套接字,关键就是两个循环 - 一个链接循环 - 一个通信循环 - socketserver模块中分两大类:server类(解决链接问题)和request类(解决通信问题) - server类: ![](https://img2023.cnblogs.com/blog/2322215/ 阅读全文 »
posted @ 2023-06-23 17:15 Chimengmeng 阅读(29) 评论(0) 推荐(0) 编辑
摘要:> 为字节流加上自定义固定长度报头,报头中包含字节流长度,然后一次send到对端,对端在接收时,先从缓存中取出定长的报头,然后再取真实数据 ***struct模块*** - 该模块可以把一个类型,如数字,转成固定长度的bytes ```python struct.pack(‘i’,111111111 阅读全文 »
posted @ 2023-06-23 17:14 Chimengmeng 阅读(28) 评论(0) 推荐(0) 编辑
摘要:# 什么是粘包 - 须知:只有TCP有粘包现象,UDP永远不会粘包,为何,且听我娓娓道来 - 首先需要掌握一个socket收发消息的原理 ![](https://img2023.cnblogs.com/blog/2322215/202306/2322215-20230623171230740-657 阅读全文 »
posted @ 2023-06-23 17:13 Chimengmeng 阅读(40) 评论(0) 推荐(0) 编辑
摘要:- 问题的根源在于 - 接收端不知道发送端将要传送的字节流的长度,所以解决粘包的方法就是围绕 - 如何让发送端在发送数据前,把自己将要发送的字节流总大小让接收端知晓,然后接收端来一个死循环接收完所有数据 - 基础版本的解决方法 - 服务端 ```python #_*_coding:utf-8_*_ 阅读全文 »
posted @ 2023-06-23 17:13 Chimengmeng 阅读(35) 评论(0) 推荐(0) 编辑
摘要:# 【一】socket层 - Socket它到底在哪里呢?还是用图来说话,一目了然。 ![](https://img2023.cnblogs.com/blog/2322215/202306/2322215-20230623171133761-733741323.jpg) # 【二】socket是什么 阅读全文 »
posted @ 2023-06-23 17:12 Chimengmeng 阅读(65) 评论(0) 推荐(0) 编辑
摘要:# 【一】互联网开发架构 > 硬件C/S架构(打印机); > > 软件C/S架构: > > ​ 互联网中处处是C/S架构 > > ​ 如某网站是服务端,你的浏览器是客户端(B/S架构也是C/S架构的一种) > > ​ 腾讯作为服务端为你提供视频,你得下个腾讯视频客户端才能看它的视频) > > C/S 阅读全文 »
posted @ 2023-06-23 17:10 Chimengmeng 阅读(45) 评论(0) 推荐(0) 编辑
摘要:# 【一】操作系统基础 - 操作系统: - (Operating System,简称OS)是管理和控制计算机硬件与软件资源的计算机程序 - 是直接运行在“裸机”上的最基本的系统软件 - 任何其他软件都必须在操作系统的支持下才能运行。 > 注:计算机(硬件)->os->应用软件 # 【二】网络通信基础 阅读全文 »
posted @ 2023-06-23 17:09 Chimengmeng 阅读(94) 评论(0) 推荐(0) 编辑