客户端-服务器模型

news/2024/5/18 12:08:08 标签: 服务器, udp, tcp/ip

客户端服务器模型

  • 重复型:
  • 并发型:

大部分网络应用程序在编写的时候都是假设一个客户端,一个是服务器服务器是为客户端提供特定的服务。可分为重复型并发型

重复型:

第一步 等待一个客户端请求
第二步 处理客户端请求
第三步 发送响应给发起请求的客户
第四步 返回第一步

优点缺点
简单易懂便于学习在第二步的时候无法给其他客户端提供服务,需要等当前客户端处理结束到达第四步才能接受新的客户端的请求

并发型:

第一步 等待一个客户请求的到来。
第二步 启动一个新的服务器来处理这个客户的请求。在这期间可能生成一个新的进程、任务
或线程,并依赖底层操作系统的支持。这个步骤如何进行取决于操作系统。生成的新服务器
对客户的全部请求进行处理。处理结束后,终止这个新服务器

第三步 返回第一步。

优点缺点
利用生成其他服务器的方法来处理客户的请求如果操作系统允许多任务,那么就可以同时为多个客户服务。需要对操作系统支持多任务

一般来说对于TCP服务器来说是并发型,对于UDP服务器来说是重复型。

参考文献:
《TCP-IP详解卷一》


http://www.niftyadmin.cn/n/520449.html

相关文章

计算机网络——常用名词(IP网际协议)

IP:网际协议 常用名词 名称含义不可靠不能保证IP数据报能成功到达目的地无连接IP并不维护任何关于后续数据报的状态信息IP首部IP数据报头FTP文件传输协议SMTP电子邮件传输的协议DNS域名解析ICMPInternet控制报文协议SNMP简单网络管理协议TTL)生存时间字…

计算机网络——常用名词(数据链路层)

常用名词 名称含义MTU最大传输单元路径MTU指一条因特网传输路径中,从源地址到目的地址所经过的“路径”PPP点对点协议ARP地址解析协议RARP逆地址解析CSMA/CD带冲突的载波侦听多路接入SNAP子网接入协议LLC逻辑链路控制DSAP目的服务访问点SLIP串行线路IP MTU最大传输单元 以太网…

vcs import src < ros2.repos失败

网上找到的ros安装教程&#xff1a; 但是运行到下面几部的时候出现了问题 1. mkdir -p ~/ros2_ws/src2. cd ~/ros2_ws3. wget https://raw.githubusercontent.com/ros2/ros2/dashing/ros2.repos4. vcs import src < ros2.repos第三步报错&#xff1a;和网络有关系&#xff0…

C/C++内存分区(二)

内存分区模型 C/C将内存大方向分为4个区域 代码区&#xff1a;存放函数体的二进制代码&#xff0c;由操作系统进行管理。全局区&#xff1a;存放全局变量和静态变量以及常量。栈区&#xff1a;由编译器自动分配释放&#xff0c;存放函数的参数值/局部变量等。堆区&#xff1a…

pip使用镜像网站解决网速慢

原因 pip安装库默认会访问国外服务器 解决方法 使用国内镜像网站 pip3 install numpy -i https://pypi.tuna.tsinghua.edu.cn/simple-i&#xff1a;指定镜像源 镜像源 中国科学技术大学 : https://pypi.mirrors.ustc.edu.cn/simple 豆瓣&#xff1a;http://pypi.douban.c…

rm删除文件

语法&#xff1a; rm [options] name...参数&#xff1a; -i 删除前逐一询问确认。-f 即使原档案属性设为唯读&#xff0c;亦直接删除&#xff0c;无需逐一确认。-r 将目录及以下之档案亦逐一删除 例子 删除文件夹abc及文件夹中所有文件 rm -rf abc 出现以下提示解决办法 …

STM32F103 SPI(踩坑日记)

SPI学习前言1.SPI 协议1.1SPI的4种模式2. STM32F103 硬件SPI2.1 标准库的发送函数2.2 HAL库发送函数2.2.1 这里有个小坑3. SPI的连续传输和非连续传输4.SPIDMA传输的坑前言 第1部分针对的spi的基础知识 第2、3部分是使用中遇到的坑和自己的理解。也欢迎大佬对文章中错误内容指…

安装交叉编译器arm-none-liunx-gnueabihf

arm-none-liunx-gnueabihf安装前言下载交叉编译器解压缩添加环境变量&#xff1a;安装相关库参考资料前言 本教程针对的是ubuntu系统下安装arm交叉编译器的。 交叉编译器版本&#xff1a;9.2-2019.12-x86_64 ubuntu编本&#xff1a;18.04 下载交叉编译器 GNU官网上面有最新的…