TCP/IP协议简介(四)之客户服务器模型

过去我总是疑惑服务器到底是一个什么东西,其实简单地说,它就是一个提供服务的机器。我们每个人访问互联网也好,平时玩网游也好,都是将数据发送给了服务器,服务器处理之后再把处理之后的数据发送给你。我曾经还有过这样的疑问,那为什么不把服务器都集成在自己身上呢,那这样不就省了很多的发送又接收的过程了吗?但是互联网它是个互联网,它得让不同的客户互相连接起来,如果只是自己处理自己的数据,那不就闭关锁国永远局限在自己的世界了吗?而且,每个设备终端(也就是每个客户),很有可能不具备像服务器那么强的运算能力,所以又谈什么集成呢?所以说在接触互联网之前自己一些想法还是很愚蠢的,哈哈哈哈!
  大部分网络应用程序在编写时都假设一端是客户,另一端是服务器,其目的是为了让服务器为客户提供一些特定的服务。可以将这种服务分为两种类型:重复型或并发型。重复型服务器通过以下步骤进行交互:
I1. 等待一个客户请求的到来。
I2. 处理客户请求。
I3. 发送响应给发送请求的客户。
I4. 返回I 1步。
重复型服务器主要的问题发生在 I2状态。在这个时候,它不能为其他客户机提供服务。相应地,并发型服务器采用以下步骤:
C1. 等待一个客户请求的到来。
C2. 启动一个新的服务器来处理这个客户的请求。在这期间可能生成一个新的进程、任务或线程,并依赖底层操作系统的支持。这个步骤如何进行取决于操作系统。生成的新服务器对客户的全部请求进行处理。处理结束后,终止这个新服务器。
C3. 返回C 1步。
  并发服务器的优点在于它是利用生成其他服务器的方法来处理客户的请求。也就是说,每个客户都有它自己对应的服务器。如果操作系统允许多任务,那么就可以同时为多个客户服务。对服务器,而不是对客户进行分类的原因是因为对于一个客户来说,它通常并不能够辨别自己是与一个重复型服务器或并发型服务器进行对话。一般来说, TCP服务器是并发的,而 UDP服务器是重复。但是应该还有很多例外的情况,后面学到了再说吧。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值