1、第二讲 计算机网络体系结构南京财经大学 江苏省电子商务重点实验室伍之昂提纲OSI/RM 开放系统互连基本参考模型网络协议TCP/IP体系结构协议和服务OSI/RM 开放系统互连基本参考模型(1)相互通信的两个计算机系统必须高度协调工作才行,而这种“协调”是相当复杂的。“分层”可将庞大而复杂的问题,转化为若干较小的局部问题,而这些较小的局部问题就比较易于研究和处理。只要遵循 OSI 标准,一个系统就可以和位于世界上任何地方的、也遵循这同一标准的其他任何系统进行通信。在市场化方面 OSI 却失败了。OSI 的专家们在完成 OSI 标准时没有商业驱动力;OSI 的协议实现起来过分复杂,且运行效率很低
2、;OSI 标准的制定周期太长,因而使得按 OSI 标准生产的设备无法及时进入市场;OSI 的层次划分并也不太合理,有些功能在多个层次中重复出现。OSI/RM 开放系统互连基本参考模型(2)OSI是七层网络体系结构,却未得到广泛应用。真正流行的是TCP/IP体系结构。同学们在此需要记住两点:知道OSI七层网络体系架构是什么。OSI七层网络体系架构与TCP/IP体系结构是不矛盾的。提纲OSI/RM 开放系统互连基本参考模型网络协议TCP/IP体系结构协议和服务网络协议(1)协议(protocol)是为进行网络中的数据交换而建立的规则、标准或约定。协议也就是网络协议(network protocol
3、)。协议精确地规定在网络通信中使用的各种控制信息的格式、意义以及各种事件出现的先后顺序。协议在计算机网络中起着非常重要的作用。协议是计算机网络的主线,把握住了协议,就能学好计算机网络。网络协议(2)网络协议非常复杂协议必须保证在任何复杂的情况下都能正确工作,因此网络协议非常复杂。协议必须把所有不利的条件事先都估计到,而不能假定一切都是正常的和非常理想的。我们在日常生活中所使用的许多约定,都远远达不到网络协议的要求,因此经常会使约定失败。看一个计算机网络协议是否正确,不能光看在正常情况下是否正确,而且还必须非常仔细地检查这个协议能否应付各种异常情况。总之,网络协议必须考虑如何对付各种异常情况的出
4、现。下面看一个例子。网络协议(3)占据东、西两个山顶的蓝军1和蓝军2与驻扎在山谷的白军作战。其力量对比是:单独的蓝军1或蓝军2打不过白军,但蓝军1和蓝军2协同作战则可战胜白军。现蓝军1拟于次日正午向白军发起攻击。于是用计算机发送电文给蓝军2。但通信线路很不好,电文出错或丢失的可能性较大(没有电话可使用)。因此要求收到电文的友军必须送回一个确认电文。但此确认电文也可能出错或丢失。试问能否设计出一种协议使得蓝军1和蓝军2能够实现协同作战因而一定(即100%而不是99.999%)取得胜利?计算机网络体系结构的概念计算机网络的体系结构(architecture)是计算机网络的各层及其协议的集合。划分层
5、次网络协议体系结构就是这个计算机网络及其部件所应完成的功能的精确定义。实现(implementation)是遵循这种体系结构的前提下用何种硬件或软件完成这些功能的问题。体系结构是抽象的,而实现则是具体的,是真正在运行的计算机硬件和软件。提纲OSI/RM 开放系统互连基本参考模型网络协议TCP/IP体系结构协议和服务TCP/IP体系结构(1)TCP/IP体系结构分为五层:物理层、数据链路层、网络层、运输层、应用层。TCP/IP体系结构也可以认为是四层:将物理层和数据链路层合并为网络接口层。使用五层原理体系结构来阐明网络的工作原理较为合适。TCP/IP体系结构(2)TCP/IP体系结构(3)543
6、21Application layerTransport layerInternet layerData link layerPhysical layer网络接口层IP各种应用层协议HTTP,FTP,SMTP,DNS 等TCP网络层运输层UDP应用层TCP:传输控制协议(Transmission ControlProtocol)IP:网际协议UDP:用户数据报协议(User DatagramProtocol)主机 1 向主机 2 发送数据 5432154321主机 1AP2 2AP1 1主机 2应用进程数据先传送到应用层加上应用层首部,成为应用层 PDU主机 1 向主机 2 发送数据 5432
7、154321主机 1AP2 2AP1 1主机 2应用层 PDU 再传送到运输层加上运输层首部,成为运输层报文主机 1 向主机 2 发送数据 5432154321主机 1AP2 2AP1 1主机 2运输层报文再传送到网络层加上网络层首部,成为 IP 数据报(或分组)主机 1 向主机 2 发送数据 5432154321主机 1AP2 2AP1 1主机 2IP 数据报再传送到数据链路层加上链路层首部和尾部,成为数据链路层帧主机 1 向主机 2 发送数据 5432154321主机 1AP2 2AP1 1主机 2数据链路层帧再传送到物理层最下面的物理层把比特流传送到物理媒体主机 1 向主机 2 发送数据
8、 应用层(application layer)5432154321物理传输媒体主机 1AP2 2AP1 1电信号(或光信号)在物理媒体中传播从发送端物理层传送到接收端物理层主机 2主机 1 向主机 2 发送数据 5432154321主机 1AP2 2AP1 1主机 2物理层接收到比特流,上交给数据链路层主机 1 向主机 2 发送数据 5432154321主机 1AP2 2AP1 1主机 2数据链路层剥去帧首部和帧尾部取出数据部分,上交给网络层主机 1 向主机 2 发送数据 5432154321主机 1AP2 2AP1 1主机 2网络层剥去首部,取出数据部分上交给运输层主机 1 向主机 2 发送
9、数据 5432154321主机 1AP2 2AP1 1主机 2运输层剥去首部,取出数据部分上交给应用层主机 1 向主机 2 发送数据 5432154321主机 1AP2 2AP1 1主机 2应用层剥去首部,取出应用程序数据上交给应用进程主机 1 向主机 2 发送数据 5432154321主机 1AP2 2AP1 1主机 2我收到了 AP1 发来的应用程序数据!主机 1 向主机 2 发送数据 5432154321主机 1AP2 2AP1 1主机 2应 用 程 序 数 据应用层首部H5 510100110100101 比 特 流 110101110101注意观察加入或剥去首部(尾部)的层次应 用
10、程 序 数 据H5 5应 用 程 序 数 据H4 4H5 5应 用 程 序 数 据H3 3H4 4H5 5应 用 程 序 数 据H4 4运输层首部H3 3网络层首部H2 2链路层首部T2 2链路层尾部主机 1 向主机 2 发送数据 5432154321主机 1AP2 2AP1 1主机 210100110100101 比 特 流 110101110101计算机 2 的物理层收到比特流后交给数据链路层H2 2T2 2H3 3H4 4H5 5应 用 程 序 数 据H3 3H4 4H5 5应 用 程 序 数 据主机 1 向主机 2 发送数据 5432154321主机 1AP2 2AP1 1主机 2数据
11、链路层剥去帧首部和帧尾部后把帧的数据部分交给网络层H2 2T2 2H3 3H4 4H5 5应 用 程 序 数 据H4 4H5 5应 用 程 序 数 据H3 3H4 4H5 5应 用 程 序 数 据主机 1 向主机 2 发送数据 5432154321主机 1AP2 2AP1 1主机 2网络层剥去分组首部后把分组的数据部分交给运输层H5 5应 用 程 序 数 据H4 4H5 5应 用 程 序 数 据主机 1 向主机 2 发送数据 5432154321主机 1AP2 2AP1 1主机 2运输层剥去报文首部后把报文的数据部分交给应用层应 用 程 序 数 据H5 5应 用 程 序 数 据主机 1 向主机
12、 2 发送数据 5432154321主机 1AP2 2AP1 1主机 2应用层剥去应用层 PDU 首部后把应用程序数据交给应用进程主机 1 向主机 2 发送数据 5432154321主机 1AP2 2AP1 1主机 2我收到了 AP1 发来的应用程序数据!提纲OSI/RM 开放系统互连基本参考模型网络协议TCP/IP体系结构协议和服务协议和服务(1)实体(entity)表示任何可发送或接收信息的硬件或软件进程。协议是控制两个对等实体进行通信的规则的集合。在协议的控制下,两个对等实体间的通信使得本层能够向上一层提供服务。要实现本层协议,还需要使用下层所提供的服务。协议和服务(2)本层的服务用户只
13、能看见服务而无法看见下面的协议,下面的协议对上面的服务用户是透明的。协议是“内在的”,服务是“表面的”。协议是“水平的”,即协议是控制对等实体之间通信的规则。服务是“垂直的”,即服务是由下层向上层通过层间接口提供的。同一系统相邻两层的实体进行交互的地方,称为服务访问点 SAP(Service Access Point)。协议和服务(3)协议(n+1)SAPSAP交换原语交换原语实体(n+1)服务提供者第 n 层第 n+1 层实体(n+1)服务用户实体(n)实体(n)协议(n)什么是原语?是由若干多机器指令构成的完成某种特定功能的一段程序,具有不可分割性。原语的执行必须是连续的,在执行过程中不允许被中断。不同层次之间对话的语言称为原语,即不同层之间通过原语来实现信息交换。服务原语可以理解为:下层提供的一段指令,上层通过这段指令来使用下层所提供的服务。沙漏计时器形状的TCP/IP协议族 HTTPSMTPDNSRTPTCPUDPIP网际层网络接口层运输层应用层网络接口 1网络接口 2网络接口 3Everything over IP IP 可为各式各样的应用程序提供服务IP over Everything IP 可应用到各式各样的网络上谢谢