ISO七层模型
简答题 描述osi七层参考模型,并简述每层的作用

简答题描述osi七层参考模型,并简述每层的作用OSI七层参考模型简介1. 概述OSI(Open Systems Interconnection)七层参考模型是国际标准化组织(ISO)制定的通信协议体系结构,用于划分计算机网络的功能和服务。
它将整个网络通信过程划分为七个层级,每个层级负责特定的功能,从而实现了网络协议的标准化和互操作性。
2. OSI七层参考模型详解物理层(Physical Layer)•负责传输比特流,即将数据转化为物理信号进行传输。
•主要涉及硬件设备,如网卡、网线等。
•提供链路的物理连接和传输介质。
数据链路层(Data Link Layer)•负责通过物理介质传输帧,提供可靠的数据传输。
•将物理流转化为逻辑流,进行帧的封装与解封装。
•提供透明的传输、差错检测和纠正。
•负责数据的路由和转发,实现不同网络间的通信。
•采用网络地址进行寻址和路由选择。
•提供流量控制和拥塞控制。
传输层(Transport Layer)•负责数据的可靠传输和端到端的通信。
•提供数据的分段和重组,实现面向连接或无连接的通信。
•提供传输层协议,如TCP和UDP。
会话层(Session Layer)•负责建立、管理和维护会话(session)。
•提供可靠的会话控制和同步,实现数据的逻辑关系。
•处理会话层的认证和授权。
表示层(Presentation Layer)•负责数据的格式化和转换。
•对数据进行加密和解密,确保数据安全。
•处理数据的表示,实现不同系统间的兼容性。
•最顶层的应用部分。
•提供服务和协议,为用户提供特定的网络应用。
•包括文件传输、电子邮件、远程登录等。
3. 总结OSI七层参考模型通过将网络通信过程划分为不同的层级,将复杂的通信协议划分为可管理的部分,提高了网络协议的可靠性、可扩展性和互操作性。
每个层级承担特定的功能,各层相互协作,共同实现了数据的传输和应用。
了解和理解OSI七层参考模型对于网络工程师和系统管理员来说是基础而重要的知识,也是构建和维护稳定网络的关键。
OSI七层模型和TCPIP模型及对应协议(详解)

OSI七层模型和TCPIP模型及对应协议(详解)1.OSI七层模型OSI(Open Systems Interconnection)七层模型是国际标准化组织(ISO)制定的一种网络体系结构模型,将计算机网络的功能划分为七个层次,每个层次负责不同的任务。
这些层次从底层到顶层分别为:物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。
-物理层:负责传输比特流,即原始的0和1的比特流。
-数据链路层:将物理层传输的数据流划分为数据帧,并在物理传输媒介上发送和接收数据帧。
-网络层:负责通过不同网络节点进行数据的路由和转发,实现数据包的传输。
-传输层:负责端到端的通信连接,在传输过程中确保数据的可靠传输和错误控制。
-会话层:负责建立、管理和终止应用程序之间的通信会话。
-表示层:负责数据的格式化和解码、加密和解密,确保接收方能够正确理解发送方的数据。
-应用层:提供用户与网络的接口,支持各种应用程序的网络访问和通信。
2.TCP/IP模型TCP/IP模型是一种通信协议体系结构,目前是互联网的基础协议。
TCP/IP模型由四个层次构成,分别为网络接口层、互联网层、传输层和应用层。
-网络接口层:负责将数据帧从物理层传输到网络层,并对数据进行分割和重组。
-互联网层:负责将数据包从源主机传输到目的主机,包括IP协议、ARP协议和ICMP协议等。
-传输层:负责数据的可靠传输和错误控制,包括TCP(传输控制协议)和UDP(用户数据报协议)等。
-应用层:提供用户与网络的接口,支持各种应用程序的网络访问和通信,包括HTTP、FTP、SMTP等协议。
3.OSI七层模型和TCP/IP模型的对应关系及协议:-OSI的物理层对应TCP/IP的网络接口层,协议包括以太网、Wi-Fi 等。
-OSI的数据链路层对应TCP/IP的网络接口层,协议包括以太网、Wi-Fi等。
-OSI的网络层对应TCP/IP的互联网层,协议包括IP、ARP、ICMP等。
ISOOSI七层模型的分层与作用

ISOOSI七层模型的分层与作⽤ISO/OSI的七层模型第七层:应⽤层为⽤户提供服务,给⽤户⼀个操作界⾯,如window的图形界⾯,Linux的命令⾏;第六层:表⽰层数据提供表⽰:把01⼆进制转换为图像数字等⽤户可以看懂的内容,反过来把⽤户的⿏标点击命令⾏执⾏的操作转换成⼆进制让计算机语⾔加密:数据加密压缩:数据压缩第五层:会话层确定是否需要进⾏⽹络传输会话,例如打开浏览器访问页⾯,发送邮件都是需要通过⽹络传输层的,如果仅仅是编辑本地⽂件⽂本,播放本地视频⾳乐等就不需要⾛⽹络传输。
第四层:传输层1、对报⽂进⾏分组(发送时)、组装(接受时)在进⾏⽹络传输的过程中实际上就是数据包的交换拆分组装的过程,应⽤层的数据发送到传输层的时候,因为数据包最⼤不能超过65535也就是2的16次⽅的字节⼤⼩,所以在进⾏传输的时候对数据进⾏分组拆分。
在对端接收的时候⼜按照⼀定的顺序给组装回去。
2、提供传输协议的选择:TCP(传输控制协议):可靠的,⾯向连接的传输协议,特性是可靠,准确,但是传输速度慢UDP(⽤户数据协议):不可靠的,⾯向⽆连接的传输协议,特性是传输速度快,但是不可靠,可能会丢数据3、端⼝封装4、差错校验:tcp协议 A给B发送数据包,因为建⽴了连接,进⾏差错校验的时候B发现错了,就告诉A重新发送;udp协议 A给B发送数据包,因为是⽆连接的,所以B会在发现错误的包之后丢弃;第三层:⽹络层1、IP地址编址确定数据包的源IP和⽬的IP2、路由选择静态路由:优点消耗⼩,效率⾼。
缺点配置繁琐动态路由:优点简单⽅便,缺点消耗⾼第⼆层:数据链路层MAC地址编址MAC地址寻址差错校验第⼀层:物理层数据实际传输电⽓特性定义。
OSI七层模式简单通俗理解

OSI七层模式简单通俗理解OSI(Open Systems Interconnection)七层模型是国际标准化组织(ISO)定义的一种通信协议结构,用于描述和管理计算机网络中的通信过程。
它将计算机网络的通信功能分为七个层次,每个层次都负责特定的功能。
以下是对每个层次的简单通俗理解:1.物理层:2.数据链路层:数据链路层负责将数据块分割成“帧”,并添加错误校验等控制信息,以确保数据以有序、可靠的方式从一个网络节点传输到另一个网络节点。
类似于将字符串切割成小块并添加一些指示标记的行程。
3.网络层:网络层是整个网络的核心,负责路由选择和数据包交换。
它使用逻辑地址(IP地址)将数据包从源节点传输到目标节点,并使用路由协议来检测并选择最佳路径。
4.传输层:传输层负责提供端到端的通信服务。
它通过控制数据包的传输和错误恢复来确保可靠传输。
类似于发送方告诉接收方如何组装和验证数据。
这通过传输控制协议(TCP)和用户数据报协议(UDP)等协议来实现。
5.会话层:会话层负责建立、管理和终止会话(连接)的过程。
它提供了对通信进程之间的会话控制的抽象。
类似于在通信过程中建立和结束对话。
6.表示层:表示层负责对数据进行编码、解码和转换,以便在不同计算机上的应用程序之间进行交换。
它负责数据格式、加密/解密以及压缩/解压缩等操作。
类似于在两个国家之间交换邮件时需要将文字翻译成另一种语言并在邮件中添加对应的指示标记。
7.应用层:应用层是最高层,负责为用户提供应用程序和网络服务。
它提供了哪些应用可以使用网络来通信的接口。
它包括电子邮件、Web浏览器、文件传输协议(FTP)、域名系统(DNS)等应用程序。
总体来说,OSI七层模型提供了一种将通信过程分解为几个功能层次,并确保每个层次都有明确定义的职责的方式。
每个层次都可以独立设计和实现,有助于提高网络的可靠性、可维护性和扩展性。
通过理解每个层次的功能,我们可以更好地理解和诊断网络中的问题,以及在设计和实现网络时做出更明智的决策。
ISO七层模型

ISO/OSI七层模型与TCP/IP参考模型比较及对应关系ISO/OSI七层模型分为如下七层:①物理层:将比特流送到物理介质上传送;②数据链路层:在链路上无差错一帧一帧传送信息;③网络层:分组传输和路由选择;④运输层:从端到端经网络透明地传输报文;⑤会话层:会话的管理和数据传输同步;⑥表示层:数据格式的转换;⑦应用层:与用户应用程序的接口。
TCP/IP参考模型分为如下四个层次:①应用层:与OSI的应用层相对应;②传输层:与OSI的传输层相对应;③互联层:与OSI的网络层相对应;④主机-网络层:与OSI的数据链路层和物理层相对应。
iso七层协议及其作用第7层应用层—直接对应用程序提供服务,应用程序可以变化,但要包括电子消息传输第6层表示层—格式化数据,以便为应用程序提供通用接口。
这可以包括加密服务第5层会话层—在两个节点之间建立端连接。
此服务包括建立连接是以全双工还是以半双工的方式进行设置,尽管可以在层4中处理双工方式第4层传输层—常规数据递送-面向连接或无连接。
包括全双工或半双工、流控制和错误恢复服务第3层网络层—本层通过寻址来建立两个节点之间的连接,它包括通过互连网络来路由和中继数据第2层数据链路层—在此层将数据分帧,并处理流控制。
本层指定拓扑结构并提供硬件寻址第1层物理层—原始比特流的传输,电子信号传输和硬件接口数据发送时,从第七层传到第一层,接受方则相反。
上三层总称应用层,用来控制软件方面。
下四层总称数据流层,用来管理硬件。
数据在发至数据流层的时候将被拆分。
在传输层的数据叫段网络层叫包数据链路层叫帧物理层叫比特流这样的叫法叫PDU (协议数据单元)OSI中每一层都有每一层的作用。
比如网络层就要管理本机的IP的目的地的IP。
数据链路层就要管理MAC地址(介质访问控制)等等,所以在每层拆分数据后要进行封装,以完成接受方与本机相互联系通信的作用。
如以此规定。
OSI模型用途相当广泛。
比如交换机、集线器、路由器等很多网络设备的设计都是参照OSI模型设计的。
OSI、ISO七层参考模型介绍

OSI/ISO七层参考模型介绍物理层物理层规定了激活、维持、关闭通信端点之间的机械特性、电气特性、功能特性以及过程特性。
该层为上层协议提供了一个传输数据的物理媒体。
在这一层,数据的单位称为比特(bit)。
属于物理层定义的典型规范代表包括:EIA/TIA RS-232、EIA/TIA RS-449、V.35、RJ-45等。
物理层是OSI/ISO的第一层,它虽然处于最底层,却是整个开放系统的基础。
物理层为设备之间的数据通信提供传输媒体及互连设备,为数据传输提供可靠的环境。
媒体和互连设备物理层的媒体包括架空明线、平衡电缆、光纤、无线信道等。
通信用的互连设备指DTE 和DCE间的互连设备。
DTE既数据终端设备,又称物理设备,如计算机、终端等都包括在内。
而DCE则是数据通信设备或电路连接设备,如调制解调器等。
数据传输通常是经过DTE──DCE,再经过DCE──DTE的路径。
互连设备指将DTE、DCE连接起来的装置,如各种插头、插座。
LAN中的各种粗、细同轴电缆、T型接、插头,接收器,发送器,中继器等都属物理层的媒体和连接器。
物理层的主要功能为数据端设备提供传送数据的通路,数据通路可以是一个物理媒体,也可以是多个物理媒体连接而成.一次完整的数据传输,包括激活物理连接,传送数据,终止物理连接.所谓激活,就是不管有多少物理媒体参与,都要在通信的两个数据终端设备间连接起来,形成一条通路。
传输数据.物理层要形成适合数据传输需要的实体,为数据传送服务.一是要保证数据能在其上正确通过,二是要提供足够的带宽(带宽是指每秒钟内能通过的比特(BIT)数),以减少信道上的拥塞。
传输数据的方式能满足点到点,一点到多点,串行或并行,半双工或全双工,同步或异步传输的需要。
完成物理层的一些管理工作。
物理层的一些重要标准物理层的一些标准和协议早在OSI/TC97/C16 分技术委员会成立之前就已制定并在应用了,OSI也制定了一些标准并采用了一些已有的成果。
ISO的OSI七层模型

OS I七层模型OS I (Open System Interconnection),开放式系统互联参考模型。
是一个逻辑上的左义,一个规范,它把网络协议从逻辑上分为了7层。
每一层都有相关、相对应的物理设备, 比如常规的路由器是三层交换设备,常规的交换机是二层交换设备。
0SI七层模型是一种框架性的设汁方法,建立七层模型的主要目的是为解决异种网络互连时所遇到的兼容性问题, 其最主要的功能就是帮助不同类型的主机实现数据传输。
它的最大优点是将服务、接口和协议这三个概念明确地区分开来,通过七个层次化的结构模型使不同的系统不同的网络之间实现可靠的通讯。
模型优点建立七层模型的主要目的是为解决异种网络互连时所遇到的兼容性问题。
[1]它的最大优点是将服务、接口和协议这三个概念明确地区分开来:服务说明某一层为上一层提供一些什么功能,接口说明上一层如何使用下层的服务,而协议涉及如何实现本层的服务:这样各层之间具有很强的独立性,互连网络中各实体采用什么样的协议是没有限制的,只要向上提供相同的服务并且不改变相邻层的接口就可以了。
网络七层的划分也是为了使网络的不同功能模块(不同层次)分担起不同的职责,从而带来如下好处:•减轻问题的复杂程度,一旦网络发生故障,可迅速左位故障所处层次,便于査找和纠错:•在各层分别定义标准接口,使具备相同对等层的不同网络设备能实现互操作,各层之间则相对独立,一种高层协议可放在多种低层协议上运行:•能有效刺激网络技术革新,因为每次更新都可以在小范国内进行,不需对整个网络动大手术;•便于研究和教学。
模型中数据传输图示物理层Physical Layer,是0SI参考模型的最低层或第一层。
[2]该层包括物理连网媒介,如电缆连线连接器。
物理层的协议产生并检测电压以便发送和接收携带数据的信号。
在你的PC上插入网络接口卡,你就建立了计算机连网的基础。
换言之,你提供了一个物理层。
尽管物理层不提供纠错服务,但它能够设左数据传输速率并监测数据出错率。
OSI的名词解释

OSI的名词解释OSI,全称Open Systems Interconnection,即开放式系统互联,是一种网络通信协议参考模型, 是ISO制定的一种标准化的网络互联模型。
OSI模型将网络通信分为七个不同的层次,每个层次负责不同的功能和任务,通过定义各层之间的接口和协议,实现数据在网络中的传输和处理。
第一层:物理层物理层是OSI模型中最底层的一层,主要负责将数据转换成物理信号,以供在网络中传输。
该层的主要任务包括数据的编码、解码、传输速率的规定等。
例如,物理层负责将数据转换成电信号,通过网线传输到下一层。
第二层:数据链路层数据链路层是负责将物理传输的数据在节点之间进行可靠传输的层次。
该层的主要任务是将数据分割成更小的数据包,并为每个数据包添加错误检测和纠正的机制。
数据链路层还负责定义数据的发送和接收的顺序,并处理数据包的错误。
例如,这一层会将物理层传输的数据进行错误检查,如果有错误发生,则进行重新传输。
第三层:网络层网络层是负责数据包在网络中的寻址和路由的层次。
该层的主要任务是将数据包从源节点传送到目标节点,通过处理数据包的路径选择和路由选择,实现数据包在网络中的转发。
例如,网络层会根据目标节点的地址选择最佳路径,并将数据包传输到目标节点。
第四层:传输层传输层是负责提供端到端通信服务的层次。
该层的主要任务是将数据从一个端点传输到另一个端点,并提供流量和拥塞控制机制。
传输层还负责确保数据包的可靠性和完整性,并处理数据包的丢失和重传。
例如,传输层会将数据包从网络层接收并分割成更小的数据段,然后再将这些数据段传输到目标节点。
第五层:会话层会话层是负责管理不同节点之间的会话的层次。
该层的主要任务是建立、维护和终止不同节点之间的会话,对会话进行同步和控制,并提供数据的传输方式的定义和管理。
例如,会话层会对不同的数据传输进行排序和管理,以确保数据在会话中的正确传输。
第六层:表示层表示层是负责数据格式转换和编码解码的层次。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
ISO网络七层模型ISO 七层模型OSI模型有7层结构,每层都可以有几个子层。
70年代以来,国外一些主要计算机生产厂家先后推出了各自的网络体系结构,但它们都属于专用的。
为使不同计算机厂家的计算机能够互相通信,以便在更大的范围内建立计算机网络,有必要建立一个国际范围的网络体系结构标准。
国际标准化组织ISO 于1981年正式推荐了一个网络系统结构----七层参考模型,叫做开放系统互连模型(Open System Interconnection,OSI)。
由于这个标准模型的建立,使得各种计算机网络向它靠拢, 大大推动了网络通信的发展。
下面我简单的介绍一下这7层及其功能。
OSI的7层从上到下分别是:7 应用层6 表示层5 会话层4 传输层3 网络层2 数据链路层1 物理层其中高层,既7、6、5、4层定义了应用程序的功能,下面3层,既3、2、1层主要面向通过网络的端到端的数据流。
(1)应用层:与其他计算机进行通讯的一个应用,它是对应应用程序的通信服务的。
例如,一个没有通信功能的字处理程序就不能执行通信的代码,从事字处理工作的程序员也不关心OSI的第7层。
但是,如果添加了一个传输文件的选项,那么字处理器的程序员就需要实现OSI的第7层。
示例:telnet,HTTP,FTP,WWW,NFS,SMTP等。
(2)表示层:这一层的主要功能是定义数据格式及加密。
例如,FTP允许你选择以二进制或ASCII格式传输。
如果选择二进制,那么发送方和接收方不改变文件的内容。
如果选择ASCII格式,发送方将把文本从发送方的字符集转换成标准的ASCII后发送数据。
在接收方将标准的ASCII转换成接收方计算机的字符集。
示例:加密,ASCII等。
(3)会话层:他定义了如何开始、控制和结束一个会话,包括对多个双向小时的控制和管理,以便在只完成连续消息的一部分时可以通知应用,从而使表示层看到的数据是连续的,在某些情况下,如果表示层收到了所有的数据,则用数据代表表示层。
示例:RPC,SQL等。
(4)传输层:这层的功能包括是否选择差错恢复协议还是无差错恢复协议,及在同一主机上对不同应用的数据流的输入进行复用,还包括对收到的顺序不对的数据包的重新排序功能。
示例:TCP,UDP,SPX。
(5)网络层:这层对端到端的包传输进行定义,他定义了能够标识所有结点的逻辑地址,还定义了路由实现的方式和学习的方式。
为了适应最大传输单元长度小于包长度的传输介质,网络层还定义了如何将一个包分解成更小的包的分段方法。
示例:IP,IPX等。
(6)数据链路层:他定义了在单个链路上如何传输数据。
这些协议与被讨论的各种介质有关。
示例:ATM,FDDI等。
(7)物理层:OSI的物理层规范是有关传输介质的特性标准,这些规范通常也参考了其他组织制定的标准。
连接头、针、针的使用、电流、电流、编码及光调制等都属于各种物理层规范中的内容。
物理层常用多个规范完成对所有细节的定义。
示例:Rj45,802.3等。
二:TCP/IP分层模型(大学的教科书中用这个五层模型)1、应用层:确定进程之间通信的性质以满足用户需求;应用层协议如支持万维网应用的http协议、支持电子邮件的smtp协议、支持文件传送的ftp协议等等 .2、运输层:负责主机间不同进程的通信;协议有面向连接的TCP(传输控制协议)、无连接的UDP(用户数据报协议);数据传输的单位称为报文段或用户数据报3、网络层:负责分组交换网中不同主机间的通信;作用有二:发送数据时,将运输层中的报文段或用户数据报封装成IP数据报;选择合适路由4、数据链路层:负责将网络层的IP数据报组装成帧5、物理层:透明地传输比特流三:TCP/IP分层模型(四层)TCP/IP分层模型(TCP/IP Layening Model)被称作因特网分层模型(Internet Layering Model)、因特网参考模型(Internet Reference Model)。
下图表示了TCP/IP分层模型的四层。
┌────────┐┌─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┐│││D│F│W│F│H│G│T│I│S│U│││││N│I│H│T│T│O│E│R│M│S│其││第四层,应用层││S│N│O│P│T│P│L│C│T│E││││││G│I││P│H│N││P│N││││││E│S│││E│E│││E│它│││││R││││R│T│││T││└────────┘└─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┘┌────────┐┌─────────┬───────────┐│第三层,传输层││TCP│UDP│└────────┘└─────────┴───────────┘┌────────┐┌─────┬────┬──────────┐││││ICMP│││第二层,网间层││└────┘││││IP│└────────┘└─────────────────────┘┌────────┐┌─────────┬───────────┐│第一层,网络接口││ARP/RARP│其它│└────────┘└─────────┴───────────┘图2.2TCP/IP四层参考模型TCP/IP协议被组织成四个概念层,其中有三层对应于ISO参考模型中的相应层。
ICP/IP协议族并不包含物理层和数据链路层,因此它不能独立完成整个计算机网络系统的功能,必须与许多其他的协议协同工作。
TCP/IP分层模型的四个协议层分别完成以下的功能:第一层网络接口层网络接口层包括用于协作IP数据在已有网络介质上传输的协议。
实际上TCP/IP标准并不定义与ISO数据链路层和物理层相对应的功能。
相反,它定义像地址解析协议(Address Resolution Protocol,ARP)这样的协议,提供TCP/IP协议的数据结构和实际物理硬件之间的接口。
第二层网间层网间层对应于OSI七层参考模型的网络层。
本层包含IP协议、RIP协议(Routing Information Protocol,路由信息协议),负责数据的包装、寻址和路由。
同时还包含网间控制报文协议(Internet Control Message Protocol,ICMP)用来提供网络诊断信息。
第三层传输层传输层对应于OSI七层参考模型的传输层,它提供两种端到端的通信服务。
其中TCP协议(Transmission Control Protocol)提供可靠的数据流运输服务,UDP协议(Use Datagram Protocol)提供不可靠的用户数据报服务。
第四层应用层应用层对应于OSI七层参考模型的应用层和表达层。
因特网的应用层协议包括Finger、Whois、FTP(文件传输协议)、Gopher、HTTP(超文本传输协议)、Telent(远程终端协议)、SMTP(简单邮件传送协议)、IRC(因特网中继会话)、NNTP(网络新闻传输协议)等,这也是本书将要讨论的重点。
TCP/IP通信设计程序对于通信设计,我们一般可以根据用例很轻松的设计出一个通信范例出来。
然而,据此就认为TCP/IP 编程很容易就不对了。
TCP/IP编程是一门很重要的学问。
其复杂性主要体现在通信方式和报文格式的多样性上。
一,通信方式,主要有两类:1,一个Client方连接一个Server方,称为点对点。
2,多个Client方连接一个Server方,这个就是我们通常的并发服务器。
二,连接方式1,长连接Client与Server方先建立通讯连接,连接建立以后不断开,然后再进行报文的发送和接收。
这种方式由于通信连接一直存在,可以使用下面的命令查看连接是否建立:netstat -f inet | grep 端口号。
这种方式通常用于点对点通信。
2,短连接Client 方与Server方每进行一次报文收发交易时才进行通信连接,交易完成以后就断开连接。
此种连接方式适用于多个客户端和一个Server的的那种连接方式。
三,报文发送和接收方式1,异步报文发送和接收是分开的,相互独立的,互不影响。
这种方式又分为两种情况:1), 异步双工:接收和发送在同一个子程序中,有两个不同的子进程分别负责发送和接收;2), 异步单工:接收和发送由两个不同的应用程序来完成。
2,同步报文发送和接收是同步进行,即报文发送后等待接收返回报文。
同步方式一般要考虑超时的问题,即报文发出去以后不能无限等待,需要设定超时时间。
超过该时间,发送方不再等待,读返回报文,直接通知超时返回。
实际通信方式是这三类通信方式的组合。
比如书上的范例一般是同步短连接的Client/Server应用程序。
其中,异步长连接双工是最为复杂的一种通信方式。
有时候经常会出现在不同银行,不同城市的两套系统上进行通信。
四,报文格式通信的报文格式多样性更多,相应的必须设计相应的读写报文和发送报文的函数。
(一)阻塞与非阻塞方式1,非阻塞方式读函数不停地进行读动作,如果没有报文接收到,等待一段时间以后超时返回,这种方式需要设置超时时间。
2,阻塞方式如果没有报文接收到,则函数一直处于等待状态,直到有报文到达。
(二)循环读写方式1,一次性直接读写报文一次性发送的报文,全部都读写完。
2,不指定长度循环读一般发生在短连接进程中,受网络路由的限制,一次较长的报文在传输的过程中被分解成好几个包。
一次读取可能不能够完全读完报文,这就需要循环的反复读,直到读完为止。
3,带长度报文循环读写这种情况一般是在长连接进程中,由于长连接中没有条件能够判断循环读什么时候结束,所以必须加上长度报文头。
读函数先读取报文头的长度,再根据这个长度去读取实际的报文。
通常的Web服务器都是采用的长连接,即客户端一次请求完后,不关闭连接,保持一段时间的连接。
下次客户端再次请求时,不用创建新的连接,复用所保持的连接即可。