网络协议栈基本概念

上传人:枫** 文档编号:585990876 上传时间:2024-09-03 格式:PPT 页数:29 大小:240.83KB
返回 下载 相关 举报
网络协议栈基本概念_第1页
第1页 / 共29页
网络协议栈基本概念_第2页
第2页 / 共29页
网络协议栈基本概念_第3页
第3页 / 共29页
网络协议栈基本概念_第4页
第4页 / 共29页
网络协议栈基本概念_第5页
第5页 / 共29页
点击查看更多>>
资源描述

《网络协议栈基本概念》由会员分享,可在线阅读,更多相关《网络协议栈基本概念(29页珍藏版)》请在金锄头文库上搜索。

1、网络 协议栈 基本概念21.5.2 计算机网络模型(续1)1、OSI模型(7) 应用层(6) 表示层(5) 会话层(4) 传输层(3) 网络层(2) 数据链路层(1) 物理层网络服务平台。面向通信的功能。用户服务平台。面向用户的应用进程,使得一些无关的软件具有互操作性。31.5.2 计算机网络模型(续2)数据链路层数据链路层物理层网络层传输层会话层表示层应用层数据链路层数据链路层物理层网络层数据链路层数据链路层物理层网络层主机A主机B应用层协议表示层协议会话层协议传输层协议主机网络层主机网络层-路由器协议路由器协议路由器路由器通信子网层间接口层间接口层次7654321主机物理层主机物理层-路由

2、器协议路由器协议主机数链层主机数链层-路由器协议路由器协议通信子网通信子网内部协议内部协议数据链路层数据链路层物理层网络层传输层会话层表示层应用层41.5.2 计算机网络模型(续3)2、TCP/IP参考模型(4) 应用层 该层向用务提供一组常用的应用程 序,为不同主机上的进程或应用之间提供通信。(3) 传输层 该层提供端对端系统的数据传送服务。(2) 互联网层 该层使用网际协议实现穿越多个网络的路由选择功能。(1) 网络接入层 该层是端系统和通信子网之间的接口,实现端系统与其相连的网络进行数据交换。1.5.2 计算机网络模型(续4)OSI与TCP/IP的比较5TCP/IP模型应用层传输层互 联

3、 网 层网络接口层会话层应用层物理层OSI模型数据链路层网络层传输层应用层表示层会话层61.5.3 若干重要概念(续20)2、实体、协议、服务和服务访问点q实体(entity) 指任何可发送或接收信息的硬件或软件进程。实体通常指一个特定的软件模块。 q协议(protocol)是控制两个对等实体进行通信的规则的集合。协议的语法定义了所交换信息的结构或格式;协议的语义定义了源端和目的端所要完成的操作。 q在协议的控制下,两个对等实体间的通信使得本层能够向上一层提供服务。q要实现本层协议,还需要使用下层所提供的服务。71.5.3 若干重要概念(续21)2、实体、协议、服务和服务访问点(续1)q协议是

4、很复杂的通信规则,必须将各种不利的条件事先都估计到,而不能假定一切情况都是很理想和很顺利的。q必须非常仔细地检查所设计协议能否应付所有的不利情况。o应注意:事实上难免有极个别的不利情况在设计协议时并没有预计到。在出现这种情况时,协议就会失败。因此,协议往往只能应付绝大多数的不利情况。81.5.3 若干重要概念(续22)2、实体、协议、服务和服务访问点(续2)q服务(service)指同一开放系统中某一层向它的上一层提供的操作,但不涉及这些操作的具体实现。q协议和服务是两种截然不同的概念。协议是不同开放系统的对等实体之间进行虚通信所必须遵守的规定。服务是下一层向本层通过层间接口提供的“看得见”的

5、功能。本层的服务用户只能看见服务而无法看见下面的协议。亦即下面的协议对上面的服务用户是透明的。q协议是“水平的”,即协议是控制对等实体之间通信的规则。服务是“垂直的”,即服务是由下层向上层通过层间接口提供的。91.5.3 若干重要概念(续23)2、实体、协议、服务和服务访问点(续3)q服务访问点 SAP (Service Access Point)指同一开放系统中相邻层的实体提供服务的交互处。是位于相邻层的界面上,也就是相邻层实体交互的逻辑接口。又称端口(port)。q在OSI模型中,对等层实体传送数据的单元,称为协议数据单元PDU(Protocol Data Unit)。相邻层实体间传送数据

6、的单元,称为服务数据单元SDU(Service Data Unit)。相邻层实体通过SAP一次交互信息的数据单元,称为接口数据单元IDU(interface Data Unit)。qSDU可以与PDU不一样,既可以是多个SDU合成一个PDU,也可以是一个SDU划分为几个PDU。101.5.3 若干重要概念(续24)2、实体、协议、服务和服务访问点(续4) 相邻两层之间的关系协 议交换原语交换原语服 务 用 户提 供 服 务服 务 提 供 者第 n 层第 n + 1 层服 务 用 户SAPSAP111.5.3 若干重要概念(续35)5、服务原语q在OSI模型中,相邻层之间的服务可用原语(prim

7、itive)和参数(parameter)来表示。q原语是相邻层实体交互时所交换的一些必要信息,定义了所执行的操作,其具体实现是通过中断、函数调用、系统调用或OS提供的进程控制机制完成的。参数用于传递数据和控制信息。q一个服务由一组原语操作来描述,用户进程通过原语操作来访问该服务。q两种服务所用的原语是不同的。q一个完整的服务原语由名字、类型和参数组成。123.4.2 争用访问技术(续5)2、CSMA(Carrier Sense Multiple Access ) 技术nCSMA是对用于有线信道ALOHA系统的一种改进,它要求每个站都设置一硬件(即载波监听装置, “载波”是指在公用信道上传输的信

8、号。),用来在发送数据之前监听同一信道上其他站是否也在发送数据。如果该站监听到有别的站正在发送,就暂不发送数据,从而减少发送冲突的可能性,也提高了整个系统的吞吐量和信道利用率。 133.4.2 争用访问技术(续6)n根据每个站所采用的载波监听策略,CSMA可分为以下几种类型: 非坚持CSMA 如果进行载波监听时发现信道空闲,则将准备好的帧发送出去;如果监听到信道忙,就不再继续坚持听下去,而根据协议的算法延迟一个随机时间再重新监听。 1坚持CSMA 当监听到信道空闲时,就立即发送帧;如果监听到信道为忙,则继续监听下去,一直坚持到信道变成空闲为止。 P坚持CSMA 当监听到信道为空闲时,以概率p立

9、即发送帧,而以概率(1- p)延迟一段时间 (端端传播时延)再重新监听信道;当监听到信道为忙时,则继续监听下去,一直坚持到信道空闲为止。nCSMA也可以采用时隙式,同样有上述三种类型。 149.2.2 CSMA/CD协议q以太网采用一种协调工作机制,称为载波监听多点接入/冲突检测CSMA/CD(Carrier Sense Multiple Access / Collision Detection)协议。q“载波监听”指加接在以太网上的每个站在发送数据之前,先要检测总线上是否有其他站正在发送数据,如果有,就暂时不发送数据,以免发生冲突(常称“碰撞”)。“载波监听”只是用来表明检测总线上信号存在与

10、否的一种技术手段。q“多点接入”指计算机以多点接入的方式连接到同一根总线上。q “冲突检测”指计算机边发送数据边检测总线上信号电压的变化情况。 159.2.2 CSMA/CD协议(续1)如何进行冲突检测?q“冲突检测”就是计算机边发送数据边检测信道上的信号电压大小的变化情况。q当几个站同时在总线上发送数据时,总线上的信号电压摆动值将会增大(互相叠加)。q当一个站检测到的信号电压摆动值超过一定的门限值时,就认为总线上至少有两个站同时在发送数据,表明产生了发送冲突。q所谓“冲突”就是信号发生了碰撞。因此“冲突检测”也称为“碰撞检测”。169.2.2 CSMA/CD协议(续2)检测到冲突后怎么办?q

11、当信号发生冲突时,总线上传输的信号产生了严重的失真,接收站就无法从中恢复出有用的信息。q每一个正在发送数据的站,一旦发现总线上出现了碰撞,就要立即停止发送,免得继续浪费网络资源,然后等待一段随机时间后再重新执行发送操作。179.2.2 CSMA/CD协议(续3)电磁波在总线上的产生冲突的原因是有限的传播速率q当某个站监听到总线是空闲时,也可能总线并非真正是空闲的。 qA 向 B 发出的信息,要经过一定的时间后才能传送到 B。qB 若在 A 发送的信息到达 B 之前发送自己的帧(因为这时 B 的载波监听检测不到 A 所发送的信息),则必然要在某个时间和 A 发送的帧发生碰撞。q碰撞的结果是两个帧

12、都变得无用。189.2.2 CSMA/CD协议(续4)传播时延对载波监听的影响1 kmABt碰撞t = 2 A 检测到发生碰撞 t = B 发送数据B 检测到发生碰撞 t = t = 0 为单程端到端传播时延注:电磁波在电缆中的传播速度只是在自由空间中的65,即1km长电缆的传播时延约为5s 。 5s 19 为单程端到端传播时延t = B 检测到信道空闲发送数据t = / 2发生碰撞AABAB t = 0 A 检测到信道空闲发送数据ABBt = B 检测到发生碰撞停止发送STOPt = 2 A 检测到发生碰撞STOPAB1 kmABt碰撞t = 2 A 检测到发生碰撞 t = B 发送数据B

13、检测到发生碰撞 t = t = 0209.2.2 CSMA/CD协议(续6)几点结论q使用 CSMA/CD 协议的以太网不能进行全双工通信而只能进行双向交替通信(半双工通信)。q每个站在发送数据之后的一小段时间内,一定存在着遭遇信号冲突的可能性。 q这种发送的不确定性使得整个以太网的平均通信量远小于以太网的最高数据率。219.2.2 CSMA/CD协议(续7)强化冲突q实现冲突检测的方法很多,如基于模拟技术的接收信号电平比较法、信号编码波形特征鉴别法和发/收同时进行的逐位比较法等。q在实际应用中还要采用一种强化冲突的措施。当发送帧的站监听到冲突时,除了立即停止正常发送之外,还要继续发送若干比特

14、(通常为32比特或48比特)的人为干扰信号(jamming signal) ,以强化所发生的冲突,使得所有站都能确知现在已经发生了冲突。229.2.2 CSMA/CD协议(续8)qCSMA/CD强化冲突的示意图(B也能检测到冲突,但图中未绘出B发送的干扰信号)数据帧干扰信号 TJABTBt B 发送数据A 检测到冲突出现冲突信道占用时间A 发送数据B 检测到冲突239.2.2 CSMA/CD协议(续9)争用期q若先发送数据帧的A站,在发送数据帧后最多要经过时间2 (两倍的端到端往返时延)方可知道发送的数据帧是否遭遇到冲突。以太网的端到端往返时延2 称为争用期(contention period

15、)或碰撞窗口。q只有经过争用期这段时间而没有检测到冲突,才能肯定这次发送不再会发生冲突。9.2.2 CSMA/CD协议(续10)争用期(续)q争用期的长短与发送速率有关。以太网的争用期为51.2s。对于10Mb/s以太网,争用期内可发送512bit(64字节)称为最短有效帧长。否则将作为无效帧处理。q以太网还规定了帧间最小间隔为9.6s,相当于 96比特时间。这样做是为了使刚刚收到数据帧的站的接收缓存来得及清理,做好接收下一帧的准备。 24259.2.2 CSMA/CD协议(续11)如何避免冲突?q当检测到冲突之后,通信双方都要各自延迟一段随机的时间实行退避,然后再继续载波监听。由于退避时间是

16、随机的,适配器又无记忆功能,一次冲突所涉及的两个站就不可能在下一次发送中再次发生冲突。q为了使这种退避能保证系统的稳定,以太网采用一种称为截断二进制指数退避算法,来确定重发帧所需的时延。269.2.2 CSMA/CD协议(续12)截断二进制指数退避算法确定基本退避时间,它就是争用期。从整数集合0,1,2k-1中随机取一整数,记为r。重传被推迟的时间是r倍的争用期。整数集合中的参数k,可按下式计算: k =Min重传次数,10 (9-1) 此式表明,当重传次数不超过10时,参数等于重传次数;当重传次数超过10时,参数就不再增大而一直等于10。当重发次数达到16次仍不能成功时,则丢弃该帧,并向高层

17、报告差错情况。279.2.2 CSMA/CD协议(续13)截断二进制指数退避算法(续)q若连续多次发生冲突,则表明可能有较多的站参与争用信道。使用上述退避算法可使重传需要推迟的平均时间随重传次数而增大(称为动态退避),因而减小发生碰撞的概率,有利于整个系统的稳定。289.2.2 CSMA/CD协议(续14)CSMA/CD 协议的要点:(1) 适配器从网络层获得一个分组,加上首部和尾部,组成以太网帧,放入适配器的缓存中,准备发送。(2) 若适配器检测到信道空闲,就发送帧。若检测到信道忙,则继续检测并等待信道转为空闲,然后发送帧。(3) 在发送过程中继续检测信道。若检测到碰撞,则在发送干扰信号后就中止数据的发送。(4) 在中止发送后,适配器就执行指数退避算法,等待 r 倍争用时间(512比特时间)后,返回到步骤(2)。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号