RPC、SQL、NFS属于OSI的哪一层

第一层:物理层
第二层:数据链路层 802.2、802.3ATM、HDLC、FRAME RELAY
第三层:网络层 IP、IPX、ARP、APPLETALK、ICMP
第四层:传输层 TCP、UDP、SPX
第五层:会话层 RPCSQL、NFS 、X WINDOWS、ASP
第六层:表示层 ASCLL、PICT、TIFF、JPEGMIDI、MPEG
第七层:应用层 HTTP,FTP,SNMP等

https://www.nowcoder.com/questionTerminal/7cf6990ea2e345b6bc96d882944c4d6b

icmp协议是IP层的附属协议,是介于IP层和TCP层之间的协议,一般认为属于IP层协议。
IP协议用它来与其他主机或路由器交换错误报文和其他的一些网络情况。
在ICMP包重携带了控制信息和故障恢复信息。
主要用于路由器主机向其他路由器或者主机发送出错报文的控制信息

http://bbs.csdn.net/topics/70431973

OSI模型中ARP协议属于链路层;而在TCP/IP模型中,ARP协议属于网络层

1)ARP分层的位置是TCP/IP的网络层

2)ARP报文是由以太网帧进行封装传输的。没有封装进IP包。

3)实际上,对网络接口层的以太网帧来讲,它们同样是帧的上层协议,当收到以太帧时,根据帧的协议字段判断是送到ARP还是IP。

4)之所以不把它放在数据链路层,是因为它并不具备数据链路层的功能,它的作用是为数据链路层提供接收方的帧地地址。 另外,我也建议读《TCP/IP详解》卷一里面有图,明确它的位置属于网络层(注,画的时候,ARP RARP画在IP层稍下端,而ICMP和IGMP画在IP层的上部,因为这二个协议是由IP进行封装的。)

TCP/IP: 

网络接口层(链路层):

网络层: IP,ICMP,IGMP,【ARP,RARP】

传输层:TCP ,UDP,UGP

应用层:Telnet,FTP,SMTP,SNMP.

OSI:物理层:EIA/TIA-232, EIA/TIA-499, V.35, V.24, RJ45, Ethernet, 802.3, 802.5, FDDI, NRZI, NRZ, B8ZS

数据链路层:Frame Relay, HDLC, PPP, IEEE 802.3/802.2, FDDI, ATM,  IEEE 802.5/802.2, 【ARP,RARP】
网络层:IP,IPX,AppleTalk DDP传输层:TCP,UDP,SPX 会话层:RPC,SQL,NFS,NetBIOS,names,AppleTalk,ASP,DECnet,SCP 表示层:TIFF,GIF,JPEG,PICT,ASCII,EBCDIC,encryption,MPEG,MIDI,HTML 应用层:FTP,WWW,Telnet,NFS,SMTP,Gateway,SNMP

http://blog.csdn.net/cuiweitju/article/details/38761381

RPC(Remote Procedure Call Protocol)——远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。

RPC是基于Socket的,即工作在会话层
RPC协议假定某些传输协议的存在,如TCP或UDP,为通信程序之间携带信息数据。在OSI网络通信模型中,RPC跨越了传输层和应用层。RPC使得开发包括网络分布式多程序在内的应用程序更加容易。

RPC采用客户机/服务器模式。请求程序就是一个客户机,而服务提供程序就是一个服务器。首先,客户机调用进程发送一个有进程参数的调用信息到服务进程,然后等待应答信息。在服务器端,进程保持睡眠状态直到调用信息到达为止。当一个调用信息到达,服务器获得进程参数,计算结果,发送答复信息,然后等待下一个调用信息,最后,客户端调用进程接收答复信息,获得进程结果,然后调用执行继续进行。

http://baike.baidu.com/link?url=poJKurLLzJhUqI8SJWBuls2KLnyfJGID4BLDopemG085rfmwmOQ9IxzDC3IUYJ6tfW_mRxiXKC4fo9m_8jnizjscZUhgIZK3oceW9v1baX2yhWZXPpXTRgMK5y5aLluYZ26osxBU_Pep2_aO_ZqJDHpAvfgD_VXDJUu-qtQb74awfA4AOyfD8YuHH0_9jA23

网络由下往上分为

物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。
通过初步的了解,我知道IP协议对应于网络层TCP协议对应于传输层,而HTTP协议对应于应用层,
三者从本质上来说没有可比性,

socket则是对TCP/IP协议的封装和应用(程序员层面上),是api层面的概念,为方便开发而产生,而不是通信协议层面里的概念。
也可以说,TPC/IP协议是传输层协议,主要解决数据如何在网络中传输,
而HTTP是应用层协议,主要解决如何包装数据。
关于TCP/IP和HTTP协议的关系,网络有一段比较容易理解的介绍:
“我们在传输数据时,可以只使用(传输层)TCP/IP协议,但是那样的话,如果没有应用层,便无法识别数据内容。
如果想要使传输的数据有意义,则必须使用到应用层协议。
应用层协议有很多,比如HTTP、FTP、TELNET等,也可以自己定义应用层协议。
WEB使用HTTP协议作应用层协议,以封装HTTP文本信息,然后使用TCP/IP做传输层协议将它发到网络上。”
而我们平时说的最多的socket是什么呢,实际上socket是对TCP/IP协议的封装,Socket本身并不是协议,而是一个调用接口(API)。
通过Socket,我们才能使用TCP/IP协议。
实际上,Socket跟TCP/IP协议没有必然的联系。
Socket编程接口在设计的时候,就希望也能适应其他的网络协议。
所以说,Socket的出现只是使得程序员更方便地使用TCP/IP协议栈而已,是对TCP/IP协议的抽象,
从而形成了我们知道的一些最基本的函数接口,比如create、listen、connect、accept、send、read和write等等。
网络有一段关于socket和TCP/IP协议关系的说法比较容易理解:
“TCP/IP只是一个协议栈,就像操作系统的运行机制一样,必须要具体实现,同时还要提供对外的操作接口。
这个就像操作系统会提供标准的编程接口,比如win32编程接口一样,
TCP/IP也要提供可供程序员做网络开发所用的接口,这就是Socket编程接口。”
关于TCP/IP协议的相关只是,用博大精深来讲我想也不为过,单单查一下网上关于此类只是的资料和书籍文献的数量就知道,
这个我打算会买一些经典的书籍(比如《TCP/IP详解:卷一、卷二、卷三》)进行学习,今天就先总结一些基于基于TCP/IP协议的应用和编程接口的知识,也就是刚才说了很多的HTTP和Socket。
CSDN上有个比较形象的描述:HTTP是轿车,提供了封装或者显示数据的具体形式;Socket是发动机,提供了网络通信的能力。
实际上,传输层的TCP是基于网络层的IP协议的,而应用层的HTTP协议又是基于传输层的TCP协议的,而Socket本身不算是协议,就像上面所说,它只是提供了一个针对TCP或者UDP编程的接口。
下面是一些经常在笔试或者面试中碰到的重要的概念,特在此做摘抄和总结。
一、什么是TCP连接的三次握手
第一次握手:客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认;
第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态;
第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。
握手过程中传送的包里不包含数据,三次握手完毕后,客户端与服务器才正式开始传送数据。
理想状态下,TCP连接一旦建立,在通信双方中的任何一方主动关闭连接之前,TCP 连接都将被一直保持下去。
断开连接时服务器和客户端均可以主动发起断开TCP连接的请求,断开过程需要经过“四次握手”(过程就不细写了,就是服务器和客户端交互,最终确定断开)

二、利用Socket建立网络连接的步骤
建立Socket连接至少需要一对套接字,其中一个运行于客户端,称为ClientSocket ,另一个运行于服务器端,称为ServerSocket 。
套接字之间的连接过程分为三个步骤:服务器监听,客户端请求,连接确认。
1、服务器监听:服务器端套接字并不定位具体的客户端套接字,而是处于等待连接的状态,实时监控网络状态,等待客户端的连接请求。
2、客户端请求:指客户端的套接字提出连接请求,要连接的目标是服务器端的套接字。
为此,客户端的套接字必须首先描述它要连接的服务器的套接字,指出服务器端套接字的地址和端口号,然后就向服务器端套接字提出连接请求。
3、连接确认:当服务器端套接字监听到或者说接收到客户端套接字的连接请求时,就响应客户端套接字的请求,建立一个新的线程,把服务器端套接字的描述发给客户端,一旦客户端确认了此描述,双方就正式建立连接。
而服务器端套接字继续处于监听状态,继续接收其他客户端套接字的连接请求。

三、HTTP链接的特点

HTTP协议即超文本传送协议(Hypertext Transfer Protocol ),是Web联网的基础,也是手机联网常用的协议之一,HTTP协议是建立在TCP协议之上的一种应用。
HTTP连接最显著的特点是客户端发送的每次请求都需要服务器回送响应,在请求结束后,会主动释放连接。从建立连接到关闭连接的过程称为“一次连接”。

四、TCP和UDP的区别(考得最多。。快被考烂了我觉得- -\\)

1、TCP是面向链接的,虽然说网络的不安全不稳定特性决定了多少次握手都不能保证连接的可靠性,但TCP的三次握手在最低限度上(实际上也很大程度上保证了)保证了连接的可靠性;
而UDP不是面向连接的,UDP传送数据前并不与对方建立连接,对接收到的数据也不发送确认信号,发送端不知道数据是否会正确接收,当然也不用重发,所以说UDP是无连接的、不可靠的一种数据传输协议。

2、也正由于1所说的特点,使得UDP的开销更小数据传输速率更高,因为不必进行收发数据的确认,所以UDP的实时性更好。
知道了TCP和UDP的区别,就不难理解为何采用TCP传输协议的MSN比采用UDP的QQ传输文件慢了,但并不能说QQ的通信是不安全的,

因为程序员可以手动对UDP的数据收发进行验证,比如发送方对每个数据包进行编号然后由接收方进行验证啊什么的,

即使是这样,UDP因为在底层协议的封装上没有采用类似TCP的“三次握手”而实现了TCP所无法达到的传输效率。

http://jingyan.baidu.com/article/08b6a591e07ecc14a80922f1.html

时间: 2024-12-30 19:07:05

RPC、SQL、NFS属于OSI的哪一层的相关文章

RPC和NFS

参考:http://eduunix.ccut.edu.cn/index2/html/linux/OReilly.SUSE.Linux.Jul.2006/059610183X/suselinux-CHP-7-SECT-3.html 上面的链接基于suse,说的不错 Function The RPC system is intended as functions to be integrated into network programs rather than as a command-line

OSI 七层模型和 TCP/IP 协议比较

OSI (Open System Interconnection), 开放式系统互联参考模型.从下到上七层模型功能及其代表协议: 物理层(Physical) :规定了激活.维持.关闭通信端点之间的机械特性.电气特性.功能特性以及过程特性.该层为上层协议提供了一个传输数据的物理媒体.Bit,比特.典型协议代表:EIA/TIA-232, EIA/TIA-499, V.35, V.24, RJ45, Ethernet, IEEE 802.3x(以太网) 物理层, FDDI(Fiber Distribu

004网络基础

1.应用层DNS协议主要用于实现______网络的功能 A:IP地址到网络设备名字的映射 B:IP地址到网络硬件地址的映射 C:网络设备名字到IP地址的映射 D:网络硬件地址到IP地址的映射 答案:C. 2. 在交换机中用户权限分为几个级别? A:1 B:2 C:3 D:4 答案:D.解析: 3.某网络的IP地址空间为192.168.5.0/24,采用定长子网划分,子网掩码为255.255.255.248,则该网络的最大子网个数,每个子网内的最大可分配地址个数为各为多少? A:32. 6 B:3

一文读懂网络协议

第一层:物理层 第二层:数据链路层 802.2.802.3ATM.HDLC.FRAME RELAY 第三层:网络层 IP.IPX.ARP.APPLETALK.ICMP 第四层:传输层 TCP.UDP.SPX 第五层:会话层 RPC.SQL.NFS .X WINDOWS.ASP 第六层:表示层 ASCLL.PICT.TIFF.JPEG. MIDI.MPEG 第七层:应用层 HTTP,FTP,SNMP等 icmp协议是IP层的附属协议,是介于IP层和TCP层之间的协议,一般认为属于IP层协议.IP协

TC/IP协议簇

TCP/IP: 数据链路层:ARP,RARP网络层: IP,ICMP,IGMP传输层:TCP ,UDP,UGP应用层:Telnet,FTP,SMTP,SNMP. OSI:物理层:EIA/TIA-232, EIA/TIA-499, V.35, V.24, RJ45, Ethernet, 802.3, 802.5, FDDI, NRZI, NRZ, B8ZS数据链路层:Frame Relay, HDLC, PPP, IEEE 802.3/802.2, FDDI, ATM, IEEE 802.5/80

NFS及RPC讲解

NFS(Network File System)即网络文件系统,由Sun公司开发,于1984年向外公布.功能是通过网络让不同的机器.不同的操作系统能够彼此分享个别的数据,让应用程序在客户端通过网络访问位于服务器磁盘中的数据,是在类Unix系统间实现磁盘文件共享的一种方法. NFS服务简介 同时也是一种网络协议,NFS依赖RPC才能工作.(RHEL5.0上是NFS V3而RHEL6.0上是NFS V4) NFS 的基本原则是"容许不同的客户端及服务端通过一组RPC分享相同的文件系统",它

3、自学——计算机网络学习任务与进度(OSI参考模型和网络安全)

OSI参考模型和网络安全 1.前章知识补充: 判断网络是否通畅的具体操作: 运行--在输入窗口输入cmd--在跳出的输入窗口输入ping (存放数据的服务器的地址) 2.OSI参考模型和网络安全的举例 %1 物理层安全:外来设备可以私自接入网络 解决:将用不到的网线,从机房的交换机拔掉,用命令关掉[疑惑点] %2 数据链路层安全:ADSL账号和密码:无线网络账号和密码:划分VLAN,在交换机上创建虚拟局域网:在交换机端口上绑定哪个接口只能接某个网卡(MAC地址)[疑惑点] %3 网络层安全:在路

第3章 NFS基本应用

本文目录: 1.1 概述 1.2 RPC不可不知的原理 1.2.1 RPC原理 1.2.2 RCP工具介绍 1.3 启动NFS 1.4 配置导出目录和挂载使用 1.4.1 配置NFS导出目录 1.4.2 挂载NFS文件系统 1.4.3 NFS伪文件系统 1.5 showmount命令 1.6 NFS身份映射 1.7 使用exportfs命令导出目录 1.8 深入NFS的方向 1.1 概述 类似ext家族.xfs格式的本地文件系统,它们都是通过单个文件名称空间(name space)来包含很多文件

NFS存储服务

一.NFS 原理图 二.NFS 原理描述 2.1:什么是NFS NFS中文名字:网络共享存储,就是通过网络共享目录,让网络上的其他服务器能够挂载访问共享目录的数据(NFS一般都是用来存放视频.附件.图片等静态数据的). NFS是通过网络来进行服务端和客户端数据传输的,那么只要是通过网络的就一定会有端口,那NFS的端口是什么呢?很失望的是NFS的端口是随机的,每次重启服务端口都会改变. 那么客户端是怎样知道服务端的端口的呢?其实NFS服务器是通过远程过程调用(RPC)协议/服务来实现的,也就是说R