《计算机网络的协议与体系结构》由会员分享,可在线阅读,更多相关《计算机网络的协议与体系结构(38页珍藏版)》请在金锄头文库上搜索。
1、第2章 计算机网络的协议与体系结构计算机通信网络(第计算机通信网络(第2 2版)版)Date1哈尔滨工业大学 电子与信息技术研究院( 威海) 通信工程系网络协议网络协议Note:Note:Date2哈尔滨工业大学 电子与信息技术研究院( 威海) 通信工程系n n 占据两个山顶的蓝军与驻扎在山谷的白军作战。占据两个山顶的蓝军与驻扎在山谷的白军作战。n n 力量对比是:一支蓝军打不过白军,但两个支蓝军协力量对比是:一支蓝军打不过白军,但两个支蓝军协 同作战就可战胜白军。同作战就可战胜白军。n n 蓝军蓝军1 1队拟于次日正午向白军发起攻击。于是发送电文队拟于次日正午向白军发起攻击。于是发送电文给另
2、一山顶上的友军。但通信线路很不好,电文出错给另一山顶上的友军。但通信线路很不好,电文出错 的可能性很大。因此要求收到电文的友军必须发送确的可能性很大。因此要求收到电文的友军必须发送确 认电文。但确认电文也可能出错。认电文。但确认电文也可能出错。n n 试问能否设计出一种协议,使得蓝军能实现协同作战试问能否设计出一种协议,使得蓝军能实现协同作战 因而一定因而一定( (即即100 %)100 %)取得胜利?取得胜利?一个著名的例子Date3哈尔滨工业大学 电子与信息技术研究院( 威海) 通信工程系明日正午进攻,如何?明日正午进攻,如何?同意收到收到“ “同意同意” ”收到:收到“同意”这样的协议无
3、法实现!这样的协议无法实现!Date4哈尔滨工业大学 电子与信息技术研究院( 威海) 通信工程系n n这样无限循环下去,两边的蓝军都始终这样无限循环下去,两边的蓝军都始终 无法确定自己最后发出的电文对方是否无法确定自己最后发出的电文对方是否 已经收到。已经收到。n n没有一种协议能够蓝军能没有一种协议能够蓝军能 100% 100% 获胜。获胜。思考思考有没有更加合适的方案?结论和进一步思考Date5哈尔滨工业大学 电子与信息技术研究院( 威海) 通信工程系人相互交流的协议和通信协议之间的对比人相互交流的协议和通信协议之间的对比HiHi Whats the time?2:00请求连接传送文件:x
4、xxxx.xxxtime连接确认Date6哈尔滨工业大学 电子与信息技术研究院( 威海) 通信工程系n 语义 u对协议中各协议元素的含义的解释,例如: l在HDLC协议中,标志Flag(7EH)表示报文的开始和结束 l在BSC协议中,SOH(01H)表示报文的开始,STX(02H)表示报文 正文的开始,ETX(03H)表示报文正文的结束 n 语法 u协议元素与数据的组合格式,即报文格式。例如:n 时序 u通信过程中,通信双方操作的执行顺序和规则Flag Address CtrlDataFCSS FlagSOHHEADSTXTEXTETX BCCBSCHDLC通信网络协议的三要素Date7哈尔滨
5、工业大学 电子与信息技术研究院( 威海) 通信工程系确认释放连接释放确认释放确认连接确认数据连接请求连接确认ttn时序例释放连接数据传输建立连接Date8哈尔滨工业大学 电子与信息技术研究院( 威海) 通信工程系网络协议分层思想网络协议分层思想Note:Note:Date9哈尔滨工业大学 电子与信息技术研究院( 威海) 通信工程系划分层次的概念举例 n计算机 1 向计算机 2 通过网络发送文件。n可以将要做的工作进行如下的划分。n第一类工作与传送文件直接有关。u确信对方已做好接收和存储文件的准备。u双方协调好一致的文件格式。n两个计算机将文件传送模块作为最高的 一层 。剩下的工作由下面的模块负
6、责。Date10哈尔滨工业大学 电子与信息技术研究院( 威海) 通信工程系两个计算机交换文件 文件传送模块计算机 1计算机 2文件传送模块只看这两个文件传送模块 好像文件及文件传送命令 是按照水平方向的虚线传送的把文件交给下层模块 进行发送把收到的文件交给 上层模块Date11哈尔滨工业大学 电子与信息技术研究院( 威海) 通信工程系再设计一个通信服务模块 文件传送模块计算机 1计算机 2文件传送模块只看这两个通信服务模块 好像可直接把文件 可靠地传送到对方把文件交给下层模块 进行发送把收到的文件交给 上层模块通信服务模块通信服务模块Date12哈尔滨工业大学 电子与信息技术研究院( 威海)
7、通信工程系再设计一个网络接入模块 文件传送模块计算机 1计算机 2文件传送模块通信服务模块通信服务模块网络接入模块网络接入模块通信网络网络 接口网络 接口网络接入模块负责做与网络接口细节有关的工作 例如,规定传输的帧格式,帧的最大长度等。Date13哈尔滨工业大学 电子与信息技术研究院( 威海) 通信工程系层间服务层间服务Note:Note:Date14哈尔滨工业大学 电子与信息技术研究院( 威海) 通信工程系层间服务模型协 议交换原语交换原语服 务 用 户提 供 服 务服 务 提 供 者第 n 层第 n + 1 层服 务 用 户SAPSAPDate15哈尔滨工业大学 电子与信息技术研究院(
8、威海) 通信工程系理解理解 下层对上层是“透明的” 。即某一层实体只能看 到本层服务,而看不到下层的协议到底是如何工 作的。 协议是“水平的”。即协议是控制对等实体之间 通信的规则。 服务是“垂直的”。即服务是由下层向上层通过 层间接口提供的。层间服务Date16哈尔滨工业大学 电子与信息技术研究院( 威海) 通信工程系n 对等层实体之间实现的是 虚拟的逻辑通信;n 下层向上层提供服务;n 上层依赖下层提供的服务 来与其他主机上的对等层 通信;n 实际通信在最底层完成。对等层通信的实质Date17哈尔滨工业大学 电子与信息技术研究院( 威海) 通信工程系对等通信例:两个人收发信件n 想一想:
9、u收信人与发信人之间、邮局之间,是在直接通信吗? u邮局、运输系统各向谁提供什么样的服务? u邮局、收发信人各使用谁提供的什么服务?信件内容邮件地址货物地址发信人邮局运输系统信件内容邮件地址货物地址收信人对信件内容的共识对信件如何传递的共识对货物如何运输的共识P3P2P1公路,铁路,航空邮局运输系统Date18哈尔滨工业大学 电子与信息技术研究院( 威海) 通信工程系网络体系结构网络体系结构Note:Note:Date19哈尔滨工业大学 电子与信息技术研究院( 威海) 通信工程系应用层运输层网络层表示层会话层数据链路层物理层7654321OSI 的体系结构ISO的OSI模型n 应用层(appl
10、ication layer) n 表示层(presentation layer)n 会话层(session layer)n 运输层(transport layer) 网络层(network layer) n 数据链路层(data link layer) n 物理层(physical layer) Date20哈尔滨工业大学 电子与信息技术研究院( 威海) 通信工程系n应用层(application layer) n运输层(transport layer) n网络层(network layer) n数据链路层(data link layer) n物理层(physical layer) 数据链路层
11、5 应用层4 运输层3 网络层2 数据链路层1 物理层五层协议的体系结构Date21哈尔滨工业大学 电子与信息技术研究院( 威海) 通信工程系各层功能1应用层(application layer)n 应用层是原理体系结构中的最高层。应用层确 定进程之间通信的性质以满足用户的需要(这反 映在用户所产生的服务请求)。n 应用层直接为用户的应用进程(应用程序)提 供服务n 应用层协议包括:HTTP,SMTP,FTP, TELNET等Date22哈尔滨工业大学 电子与信息技术研究院( 威海) 通信工程系2运输层(transport layer)n 运输层的任务就是负责主机中两个进程之间的 通信,其数据
12、传输的单位是报文段(segment)。n 因特网的运输层可使用两种不同协议。即面向 连接的传输控制协议TCP (Transmission Control Protocol) 和无连接的用户数据报协议 UDP (User Datagram Protocol)。各层功能Date23哈尔滨工业大学 电子与信息技术研究院( 威海) 通信工程系3网络层(network layer)n 网络层负责为分组交换网上的不同主机提供通信。在网络层,数据的传送单位是分组或包。在TCP/IP体系中,分组也叫作IP数据报,或简称为数据报。各层功能Date24哈尔滨工业大学 电子与信息技术研究院( 威海) 通信工程系4数
13、据链路层(data link layer)n 数据链路层的任务是在两个相邻结点间的线路 上无差错地传送以帧(frame)为单位的数据。每一帧包括数据和必要的控制信息。数据链路层 有时也常简称为链路层。n 数据链路层就把一条有可能出差错的实际链路 ,转变成为让网络层向下看去好像是一条不出 差错的链路。各层功能Date25哈尔滨工业大学 电子与信息技术研究院( 威海) 通信工程系5物理层(physical layer)n 物理层的任务就是透明地传送比特流。n “透明”是一个很重要的术语。它表示:某一个某一个实际存在的事物看起来却好像不存在一样实际存在的事物看起来却好像不存在一样。各层功能Date2
14、6哈尔滨工业大学 电子与信息技术研究院( 威海) 通信工程系5432154321H3物 理 传 输 媒 体数 据 部 分数 据 部 分数 据 部 分数 据 部 分10100110100101 比 特 流 11 010111010T2计算机 1H5H4H2首部尾部AP2AP1应 用 程 序 数 据计算机 2比特帧IP数据报 IP分组TCP报文段 UDP报文段各层功能Date27哈尔滨工业大学 电子与信息技术研究院( 威海) 通信工程系n 在OSI参考模型中,在对等层次上传送的数据,其单位都称为该层的协议数据单元协议数据单元PDU (Protocol Data Unit);而把上层来的数据称为服务
15、数据单元SDU (Service Data Unit)n 在文献中也还可以见到术语“协议栈协议栈”(protocol stack)。这是因为几个层次画在一起很像一个栈(stack)。各层功能Date28哈尔滨工业大学 电子与信息技术研究院( 威海) 通信工程系计算机 1 向计算机 2 发送数据 5432154321计算机 1AP2AP1计算机 2应 用 程 序 数 据应用层首部H510100110100101 比 特 流 110101110101注意观察加入或剥去首部(尾部)的层次应 用 程 序 数 据H5应 用 程 序 数 据H4H5应 用 程 序 数 据H3H4H5应 用 程 序 数 据H
16、4运输层首部H3网络层首部H2链路层 首部T2链路层 尾部Date29哈尔滨工业大学 电子与信息技术研究院( 威海) 通信工程系计算机 1 向计算机 2 发送数据 5432154321计算机 1AP2AP1计算机 210100110100101 比 特 流 110101110101计算机 2 的物理层收到比特流后 交给数据链路层H2T2H3H4H5应 用 程 序 数 据Date30哈尔滨工业大学 电子与信息技术研究院( 威海) 通信工程系H3H4H5应 用 程 序 数 据计算机 1 向计算机 2 发送数据 5432154321计算机 1AP2AP1计算机 2数据链路层剥去帧首部和帧尾部后 把帧的数据部分交给网络层H2T2H3H4H5应 用 程 序 数 据Date31哈尔滨工业大学 电子与信息技术研究院( 威海) 通信