【网络编程】第2章(1) 客户-服务器模型与并发处理

简介: 【网络编程】第2章(1) 客户-服务器模型与并发处理

客户-服务器模型与并发处理

了解分布式应用的基本概念

分布式计算的概率:提供一个透明的环境,隐藏计算机和服务的地理位置


分布式应用就是在分布式计算的基础之上完成的应用程序,软件设计人员必须掌握设计和实现分布式应用程序时相关的原则和技术


应用层协议

在TCP/IP的一些更底层协议基础上,设计的一些用于特定的应用协议。比如说,要开发一个新软件,我就自定义了一个协议用于该软件的信息通信


TCP/IP包含了许多标准应用协议,如:文件传送、远程登陆、电子邮件等


客户—服务器模型的术语和概念

该模型的设计之初就是为了解决“会聚点问题”:人工分别启动两台独立机器上的两个程序,并让其通信问题


客户—服务器模型,顾名思义就是网络中的端系统分为了客户和服务器两个角色,它要求服务器进行通信的应用进程中,必须在启动执行后(无期限地)等待客户与其联系


下面是一些比较重要的概念


1.服务器的设计与实现更加的困难,主要由于其 特权和复杂性

特权是因为服务器软件要访问受OS保护的对象,因此服务器软件的执行需要一些系统特权


鉴别-验证用户身份


授权-允许客户访问服务器提供的服务


数据安全-确保数据不被无意泄漏或损坏


保密-防止未经授权访问信息


保护-确保网络应用程序不滥用系统资源


2.标准和非标准客户软件

应用程序可以调用标准的TCP/IP服务,也可以调用自定义的服务,将服务器-客户模型下的程序分为了标准和非标准客户软件


3.服务的参数化

允许用户指明协议端口号的软件,将服务器的服务,区分到了端口上,比如说79端口提供时间服务等等


4.无连接和面向连接的服务器

网络层分为采用TCP面向连接的服务,还是UDP无连接的服务


5.有状态和无状态服务器

状态信息:服务器维护的与客户交互的活动信息

服务器如果有状态,就会记录之前的客户发来的信息,如果没有状态就不会记录。换言之,客户所有请求的报文都不依赖之前发送的报文,就是无状态的服务器,反之,服务器就是有状态的


6.标识客户(在有状态服务器的基础上)

有状态服务器记录(标识)客户信息,常用有两种方法,端点和句柄。


端点就是客户的ip和端口,这个有时会经常改变,所以作为客户表示不可靠


句柄,类似session,服务器内部用一个整数来标识客户


7.有限状态

有状态服务器不可能永远维持状态,有状态的应用协议需要终止


8.有状态服务器和无状态服务器设计的复杂性

有状态服务器在实际互联网中,机器可能崩溃或重启,而报文可能丢失、重复或乱序。采用有状态的设计会导致复杂的应用协议,而这种应用协议难于设计、理解和正确实现


只有当应用协议被设计成对操作是幂等的,服务器才能是无状态的,因为无状态的服务器不依赖客户之前发送的报文


服务器并发处理

还没讲


相关文章
|
7天前
|
机器学习/深度学习 编解码 自动驾驶
RT-DETR改进策略【模型轻量化】| 替换骨干网络为MoblieNetV1,用于移动视觉应用的高效卷积神经网络
RT-DETR改进策略【模型轻量化】| 替换骨干网络为MoblieNetV1,用于移动视觉应用的高效卷积神经网络
31 3
RT-DETR改进策略【模型轻量化】| 替换骨干网络为MoblieNetV1,用于移动视觉应用的高效卷积神经网络
|
7天前
|
机器学习/深度学习 移动开发 测试技术
RT-DETR改进策略【模型轻量化】| 替换骨干网络为MoblieNetV2,含模型详解和完整配置步骤
RT-DETR改进策略【模型轻量化】| 替换骨干网络为MoblieNetV2,含模型详解和完整配置步骤
27 1
RT-DETR改进策略【模型轻量化】| 替换骨干网络为MoblieNetV2,含模型详解和完整配置步骤
|
7天前
|
机器学习/深度学习 编解码 TensorFlow
RT-DETR改进策略【模型轻量化】| 替换骨干网络为EfficientNet v1 高效的移动倒置瓶颈结构
RT-DETR改进策略【模型轻量化】| 替换骨干网络为EfficientNet v1 高效的移动倒置瓶颈结构
23 0
RT-DETR改进策略【模型轻量化】| 替换骨干网络为EfficientNet v1 高效的移动倒置瓶颈结构
|
7天前
|
机器学习/深度学习 计算机视觉 异构计算
RT-DETR改进策略【模型轻量化】| 替换骨干网络 CVPR-2023 FasterNet 高效快速的部分卷积块
RT-DETR改进策略【模型轻量化】| 替换骨干网络 CVPR-2023 FasterNet 高效快速的部分卷积块
16 0
RT-DETR改进策略【模型轻量化】| 替换骨干网络 CVPR-2023 FasterNet 高效快速的部分卷积块
|
7天前
|
机器学习/深度学习 计算机视觉 iOS开发
RT-DETR改进策略【模型轻量化】| 替换骨干网络 CVPR-2024 RepViT 轻量级的Vision Transformers架构
RT-DETR改进策略【模型轻量化】| 替换骨干网络 CVPR-2024 RepViT 轻量级的Vision Transformers架构
31 0
RT-DETR改进策略【模型轻量化】| 替换骨干网络 CVPR-2024 RepViT 轻量级的Vision Transformers架构
|
7天前
RT-DETR改进策略【模型轻量化】| 替换骨干网络为 GhostNet V3 2024华为的重参数轻量化模型
RT-DETR改进策略【模型轻量化】| 替换骨干网络为 GhostNet V3 2024华为的重参数轻量化模型
29 2
RT-DETR改进策略【模型轻量化】| 替换骨干网络为 GhostNet V3 2024华为的重参数轻量化模型
|
7天前
|
机器学习/深度学习 文件存储 异构计算
RT-DETR改进策略【模型轻量化】| 替换骨干网络为EfficientNet v2,加速训练,快速收敛
RT-DETR改进策略【模型轻量化】| 替换骨干网络为EfficientNet v2,加速训练,快速收敛
16 1
|
7天前
|
机器学习/深度学习 存储
RT-DETR改进策略【模型轻量化】| PP-LCNet:轻量级的CPU卷积神经网络
RT-DETR改进策略【模型轻量化】| PP-LCNet:轻量级的CPU卷积神经网络
23 0
RT-DETR改进策略【模型轻量化】| PP-LCNet:轻量级的CPU卷积神经网络
|
7天前
|
机器学习/深度学习 编解码 异构计算
RT-DETR改进策略【模型轻量化】| 替换骨干网络为 ICCV 2023的EfficientViT 用于高分辨率密集预测的多尺度线性关注
RT-DETR改进策略【模型轻量化】| 替换骨干网络为 ICCV 2023的EfficientViT 用于高分辨率密集预测的多尺度线性关注
17 0
RT-DETR改进策略【模型轻量化】| 替换骨干网络为 ICCV 2023的EfficientViT 用于高分辨率密集预测的多尺度线性关注
|
7天前
|
机器学习/深度学习 人工智能 自然语言处理
RT-DETR改进策略【模型轻量化】| 替换华为的极简主义骨干网络:VanillaNet
RT-DETR改进策略【模型轻量化】| 替换华为的极简主义骨干网络:VanillaNet
29 0

热门文章

最新文章