基础知识(ISOOSI七层模型和TCPIP四层模型)
1.ISO/OSI七层模型
下四层是为数据传输服务的,物理层是真正的传输数据的,数据链路层、⽹络层、传输层主要是写⼊对应数据的传输信息的
物理层:⽐特
设备之间的⽐特流的传输、物理接⼝、电⽓特性
数据链路层:帧
保存的最主要的信息是⽹卡的 mac 地址,mac 地址负责局域⽹通信的,发件⼈和收件⼈的mac 地址
mac地址的作⽤:尽管你是要在互联⽹中传输数据(貌似需要IP地址就可以了),但是在互联⽹中传输数据其实是通过在⼀个⼜⼀个的局域⽹进⾏依次传递,所以需要mac 地址
进⾏错误检测和修正
⽹络层:报⽂
保存的最主要的信息是 IP 地址,IP 地址是负责外⽹通信的,发件⼈和收件⼈的IP 地址
选择通路(路由器)
传输层:TPDU--传输协议数据单元
确定端⼝号(IP是寻互联⽹中的哪个电脑,端⼝是寻电脑中的哪个应⽤服务)
确定传输协议是可靠的还是不可靠的(UDP、TCP)
传输前的错误检测
流量控制
为⽤户提供服务的上三层
会话层:SPDU--会话协议数据单元
确定⽹络数据是否要通过远程会话
⽐如你写了⼀个word⽂档,在保存之后(表⽰层完成格式转化……)就会到达会话层,显然判断word⽂档保存在本地即可,不需要进⾏⽹络传递,所以直接交给硬盘进⾏存储即可
tcpip协议pdf
但是你写了⼀个邮件,点击发送(表⽰层完成格式转化……)就会到达会话层,显然判断邮件需要通过⽹络进⾏传输,所以就会交给传输层进⾏处理
表⽰层:SPDU--表⽰协议数据单元
把你的数据进⾏数字化表⽰(把英⽂/中⽂/图⽚/mp3……通过⼀定的规则翻译成01 格式)
加密
压缩
应⽤层:APDU--应⽤协议数据单元
给⽤户提供服务的接⼝
2.TCP/IP四层⽹络模型
上⾯所讲到的ISO/OSI七层模型⽬前只是⼀个模型,在实际的⽹络传输中其实并不是这样使⽤的,实际的⽹络传输中使⽤的其实是TCP/IP四层模型
⽹络接⼝层、⽹际互连层、传输层、应⽤层
TCP/IP模型和ISO/OSI模型的对应(所以各层的功能参考ISO/OSI模型中各层的功能)
⽹络接⼝层:对应物理层、数据链路层
负责监视数据在主机和⽹络之间的交换。事实上,TCP/IP本⾝并没有定义该层的协议,⽽由参与互连的各个⽹络使⽤⾃⼰的物理层和数据链路层协议,然后与TCP/IP的⽹络接⼊层进⾏链接
地址解析协议(ARP)⼯作在此层,即OSI参考模型的数据链路层:ARP就是将IP地址翻译成mac 地址,因为在整个互联⽹内传输需要IP 地址,但是在同⼀个⽹段之内(局域⽹)传输数据就不是使⽤IP 地址,⽽是需要使⽤mac 地址。
例如,在同⼀个局域⽹内传输数据,电脑点击发送数据,⽽发送的⽬标是我同局域⽹内的另⼀台计算机,点击之后数据就会发送到⽹线上,⽹线就会把你的请求发送到交换机上,交换机只能识别mac 地址,不认识IP地址
路由器是⽤来进⾏跨⽹络通信的,在同⼀个⽹络内通信只需要交换机注意,局域⽹内部使⽤交换机,⽽在局域⽹之间的连接是通过路由器(路由器是⽤来进⾏跨⽹络通信的,在同⼀个⽹络内通信只需要交换机即可)
即可
所以还是需要再学习交换机、路由器等⽹络设备及其作⽤、原理
⽹际互连层:对应⽹络层
主要解决主机到主机的通信问题。它所包含的协议设计数据包在整个⽹络上的逻辑传输。
该层有三个主要协议:⽹际协议(IP)、互联⽹组管理协议(IGMP)、互联⽹控制报⽂协议(ICMP)
传输层:对应传输层
为应⽤层实体提供端到端的通信功能,保证了数据包的顺序传送及数据的完整性。
该层定义了两个主要的协议:传输控制协议(TCP)、⽤户数据报协议(UDP)。QQ传输使⽤的就是UDP协议
还需要深⼊学习,⽐如TCP/IP三次握⼿(为什么要三次握⼿,搜索“什么是两军问题”,其实三次握⼿也不能达到绝对可靠,但是相对来说三次已经相当可靠了,如果再握⼿更多次就太费时间了,太少的话就不能保证⾜够可靠)
应⽤层:对应会话层、表⽰层、应⽤层
为⽤户提供所需要的各种服务
例如:FTP、Telnet、DNS、SMTP等
OSI模型是在协议开发之前设计的,具有通⽤性。TCP/IP是先有协议集然后建⽴模型,不适⽤于⾮TCP/IP⽹络
数据封装的过程
TCP/IP模型是由美国国防部在ARPANET⽹络中创建的⽹络体系结构,所以有时⼜称为DoD(Department of Defense)模型,是⾄今为⽌发展最成功的通信模型,它⽤于构筑⽬前最⼤的、开放的互联⽹络系统Internet。TCP/IP模型分为不同的层次,每⼀层负责不同的通信功能。但TCP/IP简化了层次模型(只有4层),由下⽽上分别为⽹络接⼝层、⽹络层、运输层、应⽤层,如图2.14所⽰。
TCP/IP 模型
在TCP/IP模型中,⽹络接⼝层是TCP/IP模型的最底层,负责接收从⽹络层交付的IP数据包,并将IP数据包通过底层物理⽹络发送出去,或者从底层物理⽹络上接收物理帧,抽出IP数据报,交给⽹络层。
⽹络层负责独⽴地将分组从源主机送往⽬的主机,为分组提供最佳路径选择和交换功能,并使这⼀过程与它们所经过的路径和⽹络⽆关。
运输层的作⽤是在源节点和⽬的节点的两个对等实体间提供可靠的端到端的数据通信。
应⽤层为⽤户提供⽹络应⽤,并为这些应⽤提供⽹络⽀撑服务,把⽤户的数据发送到低层,为应⽤程序提供⽹络接⼝。
TCP/IP模型每⼀层都提供了⼀组协议,各层协议的集合构成了TCP/IP模型的协议簇。
1.⽹络接⼝层协议
TCP/IP的⽹络接⼝层中包括各种物理⽹络协议,例如Ethernet、令牌环、帧中继、ISDN和分组交换⽹X.25等。当各种物理⽹络被⽤做传输IP数据包的通道时,这种传输过程就可以认为是属于这⼀层的内容。
2.⽹络层协议
⽹络层包括多个重要协议,主要协议有4个,即IP、ARP、RARP和ICMP。
⽹际协议(Internet Protocol,IP)是其中的核⼼协议,IP协议规定⽹络层数据分组的格式。
Internet控制消息协议(Internet Control Message Protocol,ICMP)提供⽹络控制和消息传递功能。
地址解释协议(Address Resolution Protocol,ARP)⽤来将逻辑地址解析成物理地址。
反向地址解释协议(Reverse Address Resolution Protocol,RARP)通过RARP⼴播,将物理地址解析成逻辑地址。
运输层协议主要包含TCP和UDP两个协议。
传输控制协议(Transport Control Protocol,TCP)是⾯向连接的协议,⽤三次握⼿和滑动窗⼝机制来保证传输的可靠性和进⾏流量控制。
⽤户数据报协议(User Datagram Protocol,UDP)是⾯向⽆连接的不可靠运输层协议。
4.应⽤层协议
应⽤层包括了众多的应⽤与应⽤⽀撑协议。
常见的应⽤层协议有:⽂件传输协议(FTP)、超⽂本传输协议(HTTP)、简单邮件传输协议(SMTP)、远程登录(Telnet)。
常见的应⽤⽀撑协议包括域名服务(DNS)和简单⽹络管理协议(SNMP)等。
TCP/IP⽹络模型处理数据的过程描述如下:
1)⽣成数据。当⽤户发送⼀个电⼦邮件信息时,它的字母或数字字符被转换成可以通过互联⽹传输的数据。
2)为端到端的传输将数据打包。通过对数据打包来实现互联⽹的传输。通过使⽤端传输功能确保在两端的信息主机系统之间进⾏可靠的通信。
3)在⾸部上附加⽬的⽹络地址。数据被放置在⼀个分组或者数据报中,其中包含了带有源和⽬的逻辑地址的⽹络⾸部,这些地址有助于⽹络设备在动态选定的路径上发送这些分组。
4)附加⽬的数据链路层MAC地址到数据链路⾸部。每⼀个⽹络设备必须将分组放置在帧中,该帧的⾸部包括在路径中下⼀台直接相连设备的物理地址。
5)传输⽐特。帧必须转换成“1”和“0”的信息模式,才能在介质上进⾏传输。时钟功能(Clocking Function)使得设备可以区分这些在介质上传输的⽐特,物理互联⽹络上的介质可能随着使⽤的不同路径⽽有所不同。例如,电⼦邮件信息可以起源于⼀个局域⽹LAN,通过校园⾻⼲⽹,然后到达⼴域⽹WAN链路,直到到达另⼀个远端局域⽹LAN上的⽬的主机为⽌。
2.2.5  原理体系结构
在分析⽹络结构原理和进⾏⽹络程序设计时,使⽤OSI七层结构过于复杂。
OSI的会话层主要功能是组织和同步不同的主机上各种进程间的通信,负责在两个会话层实体之间进⾏对话连接的建⽴和拆除,这个功能可以合并到运输层来表述,因为运输层提供的端到端的透明数据运输服务。
OSI的表⽰层为上层⽤户提供共同的数据或信息的语法表⽰及变换,这个功能可以合并到应⽤层来表述,因为应⽤层为特定类型的⽹络应⽤提供访问OSI环境的⼿段。
这样,⽹络体系结构就可以简化为五层结构,通常叫做原理体系结构模型或混合模型,如图2.15所⽰。各层的功能与OSI参考模型类似,可以简单描述如下。
物理层:透明传输⽐特流。
数据链路层:⽆差错地传输以帧为单位的数据。
⽹络层:选择路由,⽹络寻址(包或分组)。
运输层:为进程间提供可靠的端到端的服务。
应⽤层:为⽤户的应⽤进程提供服务。
在⽹络环境中,层间传送的信息基本单位称为数据单元。
有了数据单元的概念,我们就可以很⽅便地描述两个开放系统之间的通信过程。
例如,以开放系统A的应⽤进程APA与开放系统B的应⽤进程APB之间的通信过程为例,应⽤进程APA通过本地系统管理模块LSM将数据送交给第七层。第七层对该数据加上若⼲⽐特的控制信息作为第六层的数据单元。
第六层收到此数据单元后,⼜加上本层的控制信息构成第五层的数据单元。
以下依次类推。直到第⼆层,将控制信息分成两个部分,分别加到本层数据单元的⾸部和尾部。
在第⼀层则不再加任何控制信息,因为该层仅完成⽐特流的传送任务。
接着,当⽐特流通过传输介质送到开放系统B时,由第⼀层逐层往上送⾄第七层。
每⼀层根据控制信息做必要的操作后,再将此控制信息去掉,将剩余的数据单元提交给上⼀层。最后,把APA发送的数据交给应⽤进程APB。
在OSI环境中,对等实体按协议进⾏通信,相邻层实体按服务进⾏通信。这些通信都是以数据单元作为信息传递单位来进⾏的。在OSI模型中,规定了下述三种类型的数据单元。
1)服务数据单元SDU(Service Data Unit)。OSI模型把相邻层实体间传送信息的数据单元称为服务数据单元,并将(N+1)层与(N)层之间传送信息的服务单元记为(N)SDU。(N)服务数据单元实际上是确保(N)服务传输需要的逻辑单元。
2)协议数据单元PDU(Protocol Data Unit)。OSI模型把对等实体间传送信息的数据单元称为协议数据单元,并将(N)层的协议数据单元记为(N)PDU。(N)PDU由两部分组成,即(N)⽤户数据[记为(N)UD]和(N)协议控制信息[记为(N)PCI]。如果某层的协议数据单元只⽤于控制,则该协议数据单元中的⽤户数据可省略,此时只有该层的PCI。
3)接⼝数据单元IDU(Interface Data Unit)。OSI模型把相邻层实体通过层间服务访问点依次交互信息的数据单元称为接⼝数据单元,并将(N)层的接⼝数据单元记为(N)IDU。(N)IDU也由两部分组成。其中,⼀部分是(N+1)实体与(N)实体交互的数据,称为接⼝数据[记为(N)ID];另⼀部分是为了协调(N+1)实体与(N)实体的交互操作⽽附加的控制信息(如服务原语中的某些参数),这些拉制信息称为接⼝控制信息[记为(N)ICI]。由于接⼝控制信息只在交互信息通过服务访问点时才起作⽤,所以,当接⼝数据单元通过服务访问点后就可以将其取掉。
数据单元关系⽰意图
当(N)较长⽽(N)协议所要求的(N)较短时,就要对(N)SDU进⾏分段处理,分别加上各⾃的协议控制信息,构成多个(N)PDU。⽽在图2.16描述了三种数据单元的简单关系。(N+1)PDU是借助(N)SDU通过(N)服务访问点
接收⽅则要进⾏相应的合段操作。图2.16描述了三种数据单元的简单关系。(N+1)PDU是借助(N)SDU通过(N)服务访问点

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。