HTTP协议下客户/服务器模式中信息交换的实现

1.建立连接

连接的建立是通过申请套接字(Socket)实现的。客户打开一个套接字并把它约 束在一个端口上,如果成功,就相当于建立了一个虚拟文件。以后就可以在该虚拟文件上写数据并通 过网络向外传送。

2.发送请求

打开一个连接后,客户机把请求消息送到服务器的停留 端口上,完成提出请求动作。请求行中的方法描述指定资源中应该执行的动作,常用的方法有GET、 HEAD和POST。

3.发送响应

服务器在处理完客户的请求之后,要向客户机发送响应消息 。响应消息中包含状态码,状态码表示响应类型:

1××  保留

2××  表示请求 成功地接收

3××  为完成请求客户需进一步细化请求

4××  客户错误

5 ××  服务器错误

响应消息中还包括响应头,响应头的信息包括:服务程序名,通知客户 请求的URL需要认证,请求的资源何时能使用。

4.关闭连接

客户和服务器双方都可以通 过关闭套接字来结束TCP/IP对话。

本文出自 “关东升” 博客,请务必保留此出处 http://2009315319.blog.51cto.com/701759/710857

查看本栏目更多精彩内容:http://www.bianceng.cnhttp://www.bianceng.cn/Network/basis/

时间: 2025-01-19 20:11:57

HTTP协议下客户/服务器模式中信息交换的实现的相关文章

第十八章-Delphi客户服务器应用开发(一)(2)

18.1.1.4 中间件概述 中间件是一个软件层,它保护应用程序开发人员避免受到各种通信协议.操作系统以及数据库管理系统的影响.它为建立可与以前沿袭下来的应用程序并存的新应用程序打下了基础. 中间件有好几种类型.它们包括应用程序设计接口(API),远程过程调用(RPC),网络通信.数据库访问以及计算机辅助软件工程(CASE)工具. 由于客户/服务器系统需要集成各种不同结构的机器和技术,因而应用程序设计相当复杂.选择适当的中间件可以消除程序设计人员为每个单独协议和操作系统编写代码的麻烦. 18.1

第十八章-Delphi客户服务器应用开发(一)(3)

18.1.3 各种数据库服务器功能介绍 服务器数据管理包括若干软件,它们使用户可以访问网络中的任何节点以及确保多用户环境下的保密性.可恢复性和完整性.如前面所提到的,客户/服务器计算中的基本存取链路是SQL,它是一种高级非过程数据库语言, 现在已开发出很多支持SQL 的后端服务器及DBMS.下面将描述这些产品. 18.1.3.1 DB2 DB2是一种由IBM公司开发的RDBMS.它使用SQL执行所有的数据库操作.数据定义.数据存取.数据操作以及授权功能.SQL语句由用户在一个客户机节点从键盘输入

客户/服务器远程数据传输处理技巧

在实际的MIS系统中,远程数据库访问大多通过Modem连接,出于通信费用及速度方面的考虑,往往采用先将数据保存在本地,然后集中传送到远端的办法.远程数据传送可以有多种方案,最常见的是先将要传送的数据打包成文件,在利用文件传输形式传送到目的地,在目的地对数据恢复后添加到本地数据库中.这种方法普遍地应用于证券交易系统,其优点是速度快,并且可事先对数据压缩,更大限度地节约传送时间及费用.但这种方案也有其不足之处:由于利用文件传输机制,无法利用数据库本身的特性如完整性约束.数据一致性.回滚机制等,因此在

第十八章-Delphi客户服务器应用开发(一)(1)

客户/服务器的开发工作涉及定义客户/服务器的体系结构, 然后再将该结构与其它一些对于客户/服务器的实现至关重要的系统结构和技术集成起来.Delphi 2.0的Client/Sever版支持用户开发客户/服务器结构的应用程序.本章中我们将阐述客户服务器体系结构原理.如何用Delphi构建客户/服务器的环境和Delphi存取远程SQL服务器的编程和注意事项. 18.1 Delphi客户/服务器应用开发原理 18.1.1 客户/服务器体系结构 18.1.1.1 体系结构概述 客户/服务器系统的体系结构

Windows下SVN服务器搭建方法整理(apache)_win服务器

本节和大家谈谈Windows下SVN服务器搭建问题,在这里拿出来和大家分享一下,希望对大家有用. 1,软件下载 Windows下SVN服务器搭建,下载Subversion服务器程序.到官方网站的下载二进制安装文件,来到二进制包下载部分,找到WindowsNT,2000,XPand2003部分,然后选择"thisdirectory",这样我们可以看到许多下载的内容,目前可以下载svn-1.4.0-setup.exe.下载Subversion的Windows客户端TortoiseSVN.T

[原创]分析解决lvs fullnat模式下后端服务器获取真实IP地址异常问题

摘要 分析解决lvs fullnat模式下少量的请求记录client IP不是用户真实的IP地址问题. 原创文章:来自分析lvs fullnat模式下后端服务器获取真实IP地址异常问题 问题背景 lvs fullnat模式下观察后端服务器realserver http/https业务运行系统日志,有时候可以发现有少量的请求记录的client IP不是用户真实的IP地址(存在但出现的概率很小,增加了问题排查的难度),而是属于lvs主机私有的IP地址.关于fullnat的简介可以参考http://w

拓扑中负载均衡部署在冗余网络结构下,服务器双网卡的切换问题

今天讨论拓扑中负载均衡部署在冗余网络结构下,服务器双网卡的切换问题. 图一 图一拓扑中四台服务器与负载均衡直接相连,每台服务器双网卡各连接一台负载均衡,负载均衡热备模式部署,服务器双网卡也绑定为主备模式.当负载均衡发生主备切换时,服务器的主备网卡也跟随切换.其实这样的应用需求非常的普遍,但实际网络拓扑更常见是的如图二所示结构.服务器不直接与负载均衡连接,服务器数量也不必受到负载均衡物理接口数量的限制,这样的网络架构,一对负载均衡设备可以为几百台服务器提供应用交付. 图二

Linux系统下实现多线程客户/服务器

在传统的Unix模型中,当一个进程需要由另一个实体执行某件事时,该进程派生(fork)一个子进程,让子进程去进行处理.Unix下的大多数网络服务器程序都是这么编写的,即父进程接受连接,派生子进程,子进程处理与客户的交互. 虽然这种模型很多年来使用得很好,但是fork时有一些问题: 1.fork是昂贵的.内存映像要从父进程拷贝到子进程,所有描述字要在子进程中复制等等.目前有的Unix实现使用一种叫做写时拷贝(copy-on-write)的技术,可避免父进程数据空间向子进程的拷贝.尽管有这种优化技术

Linux下SVN服务器同时支持Apache的http和svnserve独立服务器两种模式且使用相同的访问权限账号_Linux

说明: 服务器操作系统:CentOS 6.x 服务器IP:192.168.21.134 实现目的: 1.在服务器上安装配置SVN服务: 2.配置SVN服务同时支持Apache的http和svnserve独立服务器两种模式访问: 3.Apache的http和svnserve独立服务器两种模式使用相同的访问权限账号. 具体操作: 一.关闭SELINUX vi /etc/selinux/config #SELINUX=enforcing #注释掉 #SELINUXTYPE=targeted #注释掉