当前位置:大学毕业论文> 专科论文>材料浏览

服务类自考毕业论文范文 和详解Web服务基础相关自考毕业论文范文

主题:服务论文写作 时间:2024-03-16

详解Web服务基础,本文是服务方面自考毕业论文范文和Web服务基础和详解和基础有关专科开题报告范文.

服务论文参考文献:

服务论文参考文献 汽车营销和服务论文药学服务论文金融服务论文管理学基础论文1500字

一、HTTP 概述

HTTP 是HyperText Traner Protocol 的缩写,即超文本传输协议.HTTP 是应用层协议,同其他应用层协议一样,是为了实现某一类具体应用的协议,并由某一运行在用户空间的应用程序来实现其功能.HTTP 是一种协议规范,这种规范记录在文档上,为真正通过HTTP 协议进行通信的HTTP 的实现程序.我们知道,HTTP 协议是基于C/S 架构进行通信的,而HTTP 协议的服务器端实现程序有httpd、nginx 等,其客户端的实现程序主要是Web 浏览器,例如Firefox、InternetExplorer、Google chrome、Safari、Opera 等,此外,客户端的命令行工具还有elink、crul 等.Web 服务是基于TCP 的,因此为了能够随时响应客户端的请求,Web 服务器需要监听在80/TCP端口.这客户端浏览器和Web 服务器之间就可以通过HTTP协议进行通信了.

二、IANA 定义的端口

我们知道,Web 服务器为了让所有客户浏览器程序能够与之通信,通常都需要监听在80 端口.用户在浏览器上键入URL 时,例如:www.baidu.com,默认端口就是80.这一端口是由IANA(InternetAssigned Numbers Authority)分配指定的.另外,IANA 是由ICANN 管理的,其定义的端口如下:

①0-1023:众所周知的端口,永久地分配给固定应用使用,这些端口的使用需要特定的应用去注册,属于特权端口,例如Web 服务的80/tcp,FTP 的21/tcp 等.该类端口只有系统管理员才有权限启用,并让进程监听,而普通用户则没有.②1024-41951:亦为注册端口,但要求不是特别严格,这些端口分配给程序,并注册为某个应用使用,但这些应用并不常见,例如mysql 服务的3306/tcp,memcache 的11211/tcp 等.③41952+:客户端程序随机使用的端口,为动态端口,或私有端口.在Linux 上该类端口范围定义在/proc/sys/net/ipv4/ip_local_port_range 中.

三、BSD Socket

BSD Socket 最早是BSD Unix 系统的进程通信机制.Socket 即为套接字,作为IPC(Inter-Process Communication,进程间通信)的一种实现,允许位于不同主机上(也可以是同一主机上)的进程间通信机制.Socket 可理解为“插座”,只要电线插上了这个“插座”,就可以进行通信了.Socket 本质上应该是Socket API,它封装了内核中socket 通信相关的通信细节,也就是封装了通信子网(传输层、网络层、数据链路层和物理层)要实现的具体的通信细节,而程序员通过调用Socket API就可以编写能够实现网络通信的程序了.

Socket 描述的是IP 地址和端口.不同的服务所对应的端口号不同,每种服务需要绑定并监听在一个端口上,打开一个Socket,而客户端可以通过一个Socket 跟服务器上的Socket建立连接,这样二者就能实现通信了,我们把正处于通信状态的一对套接字称为已连接套接字.总的来说,Socket 是应用层与传输层之间的桥梁.

前面提到,Socket 是对IP 地址和端口号的描述,一个IP地址+ 一个端口就是一个套接字(socket).根据Socket 在传输层使用的协议可分为以下三类:

(1)SOCK_STREAM:tcp 套接字

(2)SOCK_DGRAM:udp 套接字

(3)SOCK_RAW:raw 套接字

这里的raw 套接字指的是在不使用任何传输层协议(例如tcp, udp 等)的情况下直接通过发送或接收IP 数据包实现通信的一种方式,也就是应用层直接绕过像tcp/udp 这样的协议直接基于IP 数据包通信.

根据Socket 监听的地址格式,Socket Domain 可分为:

(1)AF_INET:Address Family,IPv4 地址格式

(2)AF_INET6:Address Family,IPv6 地址格式

(3)AF_UNIX:Address Family,同一主机上不同进程间基于Socket 套接字通信所使用的一种地址格式,这种地址的表现形式就是一个套接字文件(Linux 一切皆文件);这种地址又称为Unix_SOCK.

接下来介绍TCP 客户端和服务器是如何通过TCP 套接字接口进行通信的.

对于TCP 服务器端来说,首先需要调用socket()函数,向内核注册申请创建TCP 套接字(IP 地址+ 端口);一旦申请成功了,就要通过bind()函数绑定程序到这个套接字上;绑定之后,需要调用listen()函数,使服务器进程监听在这个套接字上,允许套接字进行连接,但此时还不能接收用户请求;只有再调用accept()函数之后才开始负责接收客户端请求,并在客户端请求到达之前一直处于阻塞状态,此时TCP 服务器进程的状态为LISTEN.

对于TCP 客户端来说,同样需要调用socket()函数创建套接字,但不需要监听;当客户端向服务器发起连接请求时,即调用connect()函数,其中在括号中的参数包括对方服务器的IP 地址和端口;如果服务器接收连接请求,则双方进行了tcp三次握手,建立双向的虚链路,此时客户端和服务器之间的套接字处于已连接状态(ESTABLISHED),之后的http 请求/ 响应报文都是基于此前建立的虚链路进行发送.

在Linux 上,当连接建立之后,客户端就可以在与服务器建立连接的socket 文件上填写需要请求的数据,写入数据就相当于向服务器发送数据了,此过程通过调用write()函数完成;而服务器端则可以在与客户端建立连接的socket 文件上读取数据,即调用read()函数,这一过程相当于接收客户端请求的数据,二者之间具体的通信细节由底层的通信子网完成.服务器读取到客户端发送过来的请求报文后,接着进行解析请求、处理请求并构建响应报文,再通过调用write()函数把响应报文写入socket 文件,通过通信子网传送到客户端的socket文件上,客户端就可以通过这个socket 文件得到服务器的响应报文了.如此往复循环多次,直到客户端请求断开连接(一般是由客户端主动请求断开连接,在使用keep-alive 连接方式时则有可能是服务器主动请求断开连接).

一旦客户端请求断开连接,TCP 服务器通过调用read()函数读取socket 文件内的断开请求数据,同意断开连接.

上文结论:上述文章是一篇关于Web服务基础和详解和基础方面的服务论文题目、论文提纲、服务论文开题报告、文献综述、参考文献的相关大学硕士和本科毕业论文.

汪学慧:比亚迪F3DM第一代电动汽车充电问题详解等
汽车维修高级技师,坚持在维修一线工作20余年;深圳市汽车维修行业特聘专家;深圳市首届优秀技师;深圳市消费者委员会特聘汽车专家;深圳市交通电台“爱车有道”栏目嘉宾;一汽丰田&ld.

潘智群详解大单品卡柏莱,德龙宝真会让经销商成为当地龙头
德龙宝真国际酒业,近十年来进口葡萄酒运营商中的明星企业 其掌门人潘智群先生,更是新食品杂志社的老朋友,很早就以山东白酒大商的身份参与本刊的各种活动,而后来他的身份多了一重——一.

详解养老金和退休金四大不同
在退休后领取的钱就叫作退休金事实上,退休后领取的退休金和养老金是两码事,而后者才是每个月缴纳的养老保险在退休后领取的 为了更好地了解自己退休后的养老权益,积极应对老龄化社会的到来,不妨还是先明白二者的.

两件作品详解赵无极艺术人生
1948年2月26日,赵无极偕同妻子踏上了“安德烈勒庞”号邮轮(Andre Lebon)离开了上海,前赴法国巴黎留学 在出发前,赵无极告诉自己的老师林风眠,如果自己能够靠创作生.

论文大全