文档介绍:该【68应用进程跨越网络的通信 】是由【放射辐射】上传分享,文档一共【15】页,该文档可以免费在线阅读,需要了解更多关于【68应用进程跨越网络的通信 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。68应用进程跨越网络的通信
Speaker:
适用于公司介绍/新品发布/融资宣讲/商务路演
注意
在插口以上的进程是受应用程序控制的,而在插口以下的TCP协议软件以及TCP使用的缓存和一些必要的变量等,则受计算机操作系统的控制。
只要应用程序使用TCP/IP协议进行通信,它就必须通过插口与操作系统交互并请求其服务。
应用程序的开发者对插口以上的应用进程具有完全的控制,但对插口以下的运输层却只有少量的控制。
服务器工作方式
服务器可工作在两种不同的方式:
循环方式(iterativemode):计算机一次只运行一个服务器进程。当有多个客户进程请求服务时,服务器进程就按请求的先后顺序依次做出响应。
并发方式(concurrent):计算机同时运行多个服务器进程,而每一个服务器进程都对某个特定的客户进程做出响应。
无连接循环服务器
使用无连接的UDP的服务器通常都工作在循环方式,其主要特点是:一个服务器在同一时间只能向一个客户提供服务。
UDP
服务器
UDP
客户
临时端口
熟知端口
UDP
客户
临时端口
UDP
客户
临时端口
一次一个
客户
服务器只使用一个熟知端口。每一个客户则使用自己创建的临时端口(端口号自己设定)。
无连接循环服务器处理请求
服务器收到客户的请求后,就发送UDP用户数据报响应该客户。但对其他客户发来的请求则暂时不予理睬,这些请求都在服务器端的队列中排队等候服务器的处理。
当服务器进程处理完毕一个请求时,就从队列中读取来自下一个客户的请求,然后继续处理。
面向连接并发服务器
面向连接并发服务器特点:服务器在同一时间可向多个客户提供服务。
TCP是面向连接的,因此在服务器和多个客户之间必须建立多条TCP连接,而每一条TCP连接要在其数据传送完毕后才能释放。
使用TCP的服务器只能有一个熟知端口。因此主服务器在熟知端口等待客户发出的请求。一旦收到客户的请求,就立即创建一个从属服务器,并指明从属服务器使用临时端口和该客户建立TCP连接,然后主服务器继续在原来的熟知端口等待向其他客户提供服务。
面向连接并发服务器的特点
TCP
TCP
客户
临时端口
临
时
端
口
TCP
客户
临时端口
TCP
客户
临时端口
主服务器
TCP连接
熟知端口仅用于
接受服务请求
创建
从属服务器
主服务器有时又称为父服务器,而从属服务器又称为子服务器。
进程通过系统调用接口进行通信的过程
服务器
recvfrom(…)
socket(…)
bind(…)
recvfrom(…)
无限制重复
socket(…)
若需要就重复
sendto(…)
进程
sendto(…)
close(…)
客户
请求
响应
谢谢