网络编程简介概述

要编写通过计算机网络通信的程序,首先要确这些程序相互通信所用的协议,在深入设计一个协议的细节之前,应该从高层次决断通信是由哪个程序发起以及响应在何时产生,举例来说,一般认为web服务器程序是一个长时间运行的程序(就是所谓的web客户程序,如某种浏览器和服务器进程的通信总是由客户进程发起的,大多数网络应用就是按照划分成客户和服务器来组织的。在设计网络应用的时候,确定总是由客户发起请求往往能够简化协议和程序本身。当然一些较为复杂的网络应用需要异步回调通信。也就是由服务器向客户端发起请求消息。然而坚持采用下图所示的基本客户/服务器模型的网络应用毕竟要普遍得多。
通常客户每次只能与一个服务器通信,不过以使用web浏览器为例,我们也许在10分钟内就可以与许多不同的web服务器通信。从服务器的角度来看,一个服务器同时与多个客户端通信并不稀奇
可认为客户与服务器之间是通过某个网络协议通信的,但实际上,这样的通信通常设计及多个网络协议层。TCP又转而使用IP通信,IP再通过某种形式的数据链路层。如果客户端与服务器处于同一个以太网,
尽管客户与服务器之间使用某个应用协议通信,传输层却使用TCP通信。注意,客户与服务器之间的通信的信息流在其中一端是向下通过协议栈的,跨越网络后,在另一端则是向上通过协议栈的。另外注意,客户和服务器通常是用户进程,而TCP和IP协议通常是内核中协议栈的一部分
同一网络应用的客户和服务器无需处于同一个局域网

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值