TCPIP协议(⼀)⽹络基础知识⽹络七层协议
下⾯是协议层从底层⾄顶层的⼀个模型图:
⼀、计算机⽹络的背景
1.1 计算机的发展
有⼈说:“20世纪最伟⼤的发明就是计算机”,⾃诞⽣伊始,计算机经历了⼀系列发展,从⼤型通⽤计算机、超级计算机、⼩型机、个⼈电脑、⼯作站以及现如今笔记本、平板、智能⼿机等,
计算机已经彻底融⼊了我们的⽣活
1.2 计算机的发展模式
起初,计算机只是以单机模式(独⽴模式)被⼴泛应⽤,随着发展,计算机被⼀个个的连接起来,形成了⼀个计算机⽹路,从⽽实现了信息共享,远距离传递信息等⼯作
计算机⽹络,根据规模可分为2种:
WAN:Wide Area Network(⼴域⽹)
LAN:Local Area Nerwork(局域⽹)
⼆、计算机与⽹络发展的七个阶段
1.1 批处理
Batch Processing:事先将⽤户程序和数据装⼊卡带或磁带,由计算机按⼀定顺序读取,使⽤户要执⾏的程序和数据能够⼀并批量得到处理的⽅式
1.2 分时系统TSS
Time Sharing System:多个终端和同⼀个计算机相连,允许多个⽤户同时使⽤⼀台计算机系统
特性:多路性、独占性、交互性、及时性
1.3 计算机间的通信
计算机之间以通信线路连接,加快了数据读取时间,极⼤地缩短了传输数据时间,多台计算机分布式处理,架构变得更加灵活,操作更加⼈性化
1.4 计算机⽹络
窗⼝系统的产⽣,⽅便了⽤户操作,⽤户不仅可以同时执⾏多个程序,还能⾃由切换作业
窗⼝系统:在计算机上可以打开多个图形窗⼝进⾏处理的系统。代表性的有常⽤于Unix上的 X Window System、微软的Windows、苹果的Mac OS X等
1.5 互联⽹的出现
异构型计算机连接和电⼦邮件、万维⽹等信息传播⽅式促使互联⽹开始从⼤到整个公司⼩到⼀个家庭内部开始普及互联⽹,实现了世界各地⽤户通过接⼊互联⽹⽽即时沟通与交流
1.6 互联⽹技术为中⼼的时代
代表性事件:作为通信基础设施、⽀撑通信⽹络的电话⽹,被IP⽹所替代
1.7 “单纯建⽴连接”到“安全建⽴连接”
互联⽹时代给⼈带来了⾼度便捷的信息⽹络环境,但也带来了负⾯的问题:计算机病毒、信息泄露、⽹络欺诈等,出于个⼈信息安全以及数据通信更加安全便捷,安全建⽴连接⾃然⽽然的出现了
三、协议
1.1 随处可见的协议
互联⽹中常⽤的代表性的协议有IP、TCP、HTTP等,LAN中常⽤协议有IPX、SPX等
“计算机⽹络体系结构”将这些⽹络协议进⾏了系统的归纳;TCP/IP就是这些协议的集合
其中,还有Novell公司的IPX/SPX、苹果公司的AppleTalk(仅限苹果公司计算机使⽤)、IBM开发的⽤于构件⼤规模⽹络的SNA以及前DEC公司开发的DECnet等
1.2 协议的必要性
简单来说,协议就是计算机之间通过⽹络实现通信时事先达成的⼀种“约定”;这种“约定”使那些由不同⼚商的设备,不同CPU及不同操作系统组成的计算机之间,只要遵循相同的协议就可以实现通信
协议可以分很多种,每⼀种协议都明确界定了它的⾏为规范:2台计算机之间必须能够⽀持相同的协议,并且遵循相同的协议进⾏处理,才能实现相互通信
1.3 分组交换协议
定义:将⼤数据分割为⼀个个叫做包(Packet)的较⼩单位进⾏传输的⽅法(之前的http协议学习随笔中有讲到数据通信过程);如图
计算机通信会在每⼀个分组中附加上源主机地址和⽬标主机地址送给通信线路;这些发送端地址、接收端地址以及分组序号写⼊的部分就是“报⽂⾸部”
⼀个较⼤的数据被分为很多个分组,为了标明原始数据的归属,有必要将分组序号写⼊包中,接收端会根据序号,分组按序重新装配为原始数据
协议中,通常会规定报⽂⾸部应写⼊哪些信息,如何处理;相互通信的每台计算机则根据协议构造报⽂⾸部,读取⾸部等内容,发送和接收⽅必须对报⽂⾸部和主体保持⼀致的定义和解释
四、协议的标准化
计算机通信诞⽣之初,系统化与标准化未收到重视,不同⼚商只出产各⾃的⽹络来实现通信,这样就造成了对⽤户使⽤计算机⽹络造成了很⼤障碍,缺乏灵活性和可扩展性
为解决该问题,ISO(国际标准化组织)制定了⼀个国际标准OSI(开放式通信系统互联参考模型)
TCP/IP并⾮ISO指定,是由IETF(国际互联⽹⼯程任务组)建议、致⼒推进标准化的⼀种协议,其中,⼤学等研究机构和计算机⾏业是推动标准化的核⼼⼒量,现已成为业界标准协议
协议的标准化也推动了计算机⽹络的普及
五、协议分层和OSI参考模型
1.1 协议的分层
概念:ISO在指定标准的OSI之前,提出了作为通信协议设计指标的OSI参考模型,将协议分为七层,使得原来复杂的⽹络协议更加简单化
定义:在七层模型中,每个分层都接受由它下⼀层所提供的特定服务,并且负责为⾃⼰的上⼀层提供特定的服务,上下层之间进⾏交互所遵循的约定叫做“接⼝”,同⼀层之间的交互所遵循的约定叫做“协议”
协议分层的优点:
每个分层可以独⽴使⽤,其实系统中某些分层发⽣变化,也不会影响整个系统,因此可以构造⼀个扩展性和灵活性都⽐较强的系统;
此外,通过分层可以细分通信功能,更易于单独实现每个分层的协议,界定各个分层的具体责任和义务
协议分层的劣势:
过分模块化,处理变得更加沉重,以及每个模块都不得不事先相似的处理逻辑等
1.2 OSI参考模型
实际上,分组通信协议很复杂,OSI参考模型将其分为了易于理解的七个分层,如下图:
不过,OSI参考模型只是⼀个模型,对各层只做了粗略的定义,并没有对接⼝和协议做详细的定义,想深⼊了解还需要学习具体的协议规范
1.3 OSI参考模型中每个分层的作⽤
下图表述了简单的每个分层的作⽤:
1.3.1 应⽤层:为应⽤程序提供服务并规定应⽤程序中通信相关的细节;包括的协议如下:
①:超⽂本传输协议HTTP:这是⼀种最基本的客户机/服务器的访问协议;浏览器向服务器发送请求,⽽服务器回应相应的⽹页
②:⽂件传送协议FTP:提供交互式的访问,基于客户服务器模式,⾯向连接使⽤TCP可靠的运输服务
主要功能:减少/消除不同操作系统下⽂件的不兼容性
③:远程登录协议TELNET:客户服务器模式,能适应许多计算机和操作系统的差异,⽹络虚拟终端NVT的意义
④:简单邮件传送协议SMTP:Client/Server模式,⾯向连接
基本功能:写信、传送、报告传送情况、显⽰信件、接收⽅处理信件
⑤:DNS域名解析协议:DNS是⼀种⽤以将域名转换为IP地址的Internet服务
⑥:简单⽂件传送协议TFTP:客户服务器模式,使⽤UDP数据报,只⽀持⽂件传输,不⽀持交互,TFTP代码占内存⼩
⑦:简单⽹络管理协议(SNMP): SNMP模型的4个组件:被管理结点、管理站、管理信息、管理协议
SNMP代理:运⾏SNMP管理进程的被管理结点
对象:描述设备的变量
管理信息库(MIB):保存所有对象的数据结构
⑧DHCP动态主机配置协议: 发现协议中的引导⽂件名、空终⽌符、属名或者空,DHCP供应协议中的受限⽬录路径名 Options –可选参数字段,参考定义选择列表中的选择⽂件
1.3.2 表⽰层:将应⽤处理的信息转换为适合⽹络传输的格式,或将来⾃下⼀层的数据转换为上层能够处理的格式;主要负责数据格式的转换,确保⼀个系统的应⽤层信息可被另⼀个系统应⽤层读取
具体来说,就是将设备固有的数据格式转换为⽹络标准传输格式,不同设备对同⼀⽐特流解释的结果可能会不同;因此,主要负责使它们保持⼀致
1.3.3 会话层:负责建⽴和断开通信连接(数据流动的逻辑通路),记忆数据的分隔等数据传输相关的管理
PS:其实在应⽤层、表⽰层、会话层这三层,协议可以共⽤:
1.3.4 传输层:只在通信双⽅的节点上(⽐如计算机终端)进⾏处理,⽽⽆需在路由器上处理,传输层是OSI中最重要、最关键的⼀层,是唯⼀负责总体的数据传输和数据控制的⼀层;
传输层提供端到端的交换数据的机制,检查分组编号与次序,传输层对其上三层如会话层等,提供可靠的传输服务,对⽹络层提供可靠的⽬的
地站点信息主要功能
在这⼀层,数据的单位称为数据段(segment)
主要功能:
①:为端到端连接提供传输服务
②:这种传输服务分为可靠和不可靠的,其中Tcp是典型的可靠传输,⽽Udp则是不可靠传输
③:为端到端连接提供流量控制,差错控制,服务质量(Quality of Service,QoS)等管理服务
包括的协议如下:
TCP:传输控制协议,传输效率低,可靠性强
UDP:⽤户数据报协议,适⽤于传输可靠性要求不⾼,数据量⼩的数据(⽐如QQ)
DCCP、SCTP、RTP、RSVP、PPTP等协议
1.3.5 ⽹络层:将数据传输到⽬标地址;⽬标地址可以使多个⽹络通过路由器连接⽽成的某⼀个地址,主要负责寻地址和路由选择,⽹络层还可以实现拥塞控制、⽹际互连等功能
在这⼀层,数据的单位称为数据包(packet)
⽹络层协议的代表包括:IP、IPX、RIP、OSPF等
1.3.6 数据链路层:负责物理层⾯上的互联的、节点间的通信传输(例如⼀个以太⽹项链的2个节点之间的通信);该层的作⽤包括:物理地址寻址、数据的成帧、流量控制、数据的检错、重发等。
在这⼀层,数据的单位称为帧(frame)
数据链路层协议的代表包括:ARP、RARP、SDLC、HDLC、PPP、STP、帧中继等
1.3.7 物理层:负责0、1 ⽐特流(0/1序列)与电压的⾼低、逛的闪灭之间的转换
规定了激活、维持、关闭通信端点之间的机械特性、电⽓特性、功能特性以及过程特性;该层为上层协议提供了⼀个传输数据的物理媒体。只是说明标准
在这⼀层,数据的单位称为⽐特(bit)
属于物理层定义的典型规范代表包括:EIA/TIA RS-232、EIA/TIA RS-449、V.35、RJ-45、fddi令牌环⽹等
六、传输⽅式的分类
⽹络通信科根据数据发送⽅法进⾏多种分类,分类⽅法很多,下⾯列举⼏种常见的:
1. ⾯向有连接型和⾯向⽆连接型
1.1 ⾯向有连接型
发送数据之前,需要在收发主机之间建⽴⼀条通信线路,在通信传输前后,专门进⾏建⽴和断开连接的处理,如果与对端之间⽆法通信,可避免发送⽆谓的数据
1.2⾯向⽆连接型
这种类型不要求建⽴和断开连接,发送端可任何时候发送数据,接收端也不知道⾃⼰何时从哪⾥接受数据,这种情况下,接收端需要时常确认是否收到数据,彼此也不需要确认对⽅是否存在
2. 电路交换和分组交换
软件通信⽅式⼤致分为2种:电路交换和分组交换,TCP/IP协议组,采⽤的就是分组交换
2.1 电路交换
电路交换中,交换机主要负责数据的中转处理;计算机与交换机相连接,交换机之间由众多通信线路连接,计算机发送数据时,需要先连接电路,建⽴连接,即可进⾏通信,直到连接被断开
2.2 分组交换
最初,⼀台计算机收发信息时会独占整个电路,其他计算机只能等待,且⽆法预测何时结束通信,为解决这个问题,将发送的数据分为多个数据包,按⼀定的顺序排列后发送,这就是分组交换
分组交换中,由分组交互机(路由器)连接通信线路;在每个分组⾸部写⼊发送端与接收端地址(即同⼀条线路同时为多个⽤户服务),也可以确认区分每个分组的数据⽬的地,以及它与哪台计算机通信
分组交换的⼤致处理过程:发送端将数据分组分给路由器,路由器收到后缓存到⾃⼰的缓冲区,然后再转发给⽬标计算机;因此,分组交换也称为:蓄积交换
tcpip协议pdf路由器收到收据会按照顺序进⾏缓存⾄相应队列,然后以先进先出顺序将其逐⼀发送(有时会优先发送⽬标地址较特殊的数据)
分组交换的缺陷:分组交换中,通信线路共享,因此,通信传输速度可能有差异,根据⽹络拥堵情况,数据到达⽬标地址时间长短不同;另外,路由器缓存饱和或溢出时,可能发⽣数据丢失,⽆法发
送到接收端的情况
电路交换和分组交换的特点:
3. 根据接收端数据分类
3.1 单播
简单来说就是⼀对⼀通信,最早的固定电话就是单播通信的⼀个典型例⼦
3.2 ⼴播
将消息从⼀台主机发送给与之相连的其他所有主机;典型例⼦就是电视播放(将电视信号⼀齐发送给⾮特定的多个连接对象)
3.3 多播
与⼴播类似,也是将消息发送给多个相连接的接收主机;不同之处在于多播要限定某⼀组主机作为接收端
3.4 任播
在特定的多台主机中选择⼀台作为接收端的⼀种通信⽅式(从⽬标主机中选择⼀台最符合的主机作为⽬标主机发送消息,⼀般被选中的主机将返回⼀个单播信号,随后发送端只会和这台主机通信)
在实际的应⽤中有DNS根域名解析服务器
PS:⼏种不同⽅式的思维逻辑图:
七、地址
通信传输中,发送端和接收端可以被视为通信主体,它们由“地址”加以标识,在计算机通信中,每⼀层协议的地址都不同
1. 地址的唯⼀性
通信地址必须明确的表⽰⼀个主体对象,以便确认通信主体,同⼀个⽹络中不允许有2个相同的通信主体存在,这就是地址的唯⼀性
2. 地址的层次性
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论