文档介绍:网络体系结构与协议
网络体系结构与协议
计算机网络也是由硬件和软件组成的
硬件:传输介质、计算机或网络设备、以及介质和计算机之间相连的接口等。
软件:控制信息传送的协议以及其他相应的网络软件。
什么是协议?
人际交流的协议:
introductions
“I have a question”
“what’s the time?”
…说明发送的消息
…说明接收到某消息后所应采取的行动
网络协议:
计算机之间
中所有的通信活动都是由协议所控制
协议:
定义了网络实体间发送和接收报文的格式、顺序以及当传送和接收消息时应采取得行动
什么是协议?
人的协议和网络协议之间的对比
hello
Hello
TCP connection
req.
Get /
<file>
time
若干重要概念
1、协议
实现计算机网络资源共享、信息交换,各实体之间经常要进行各种通信和对话。
为所欲为、各行其是,其结果肯定是乱作一团。
把国际互连网络叫做信息高速公路,要想在上面实现共享资源、交换信息,必须遵循一些事先制定好的规则标准,这就是协议。
协议就是计算机网络中实体之间有关通信规则约定的集合。
协议有三个要素,即:
语法(Syntax): “怎么讲”;数据与控制信息的格式、
数据编码等;
语义(Semantics):讲什么”;控制信息的内容,需要
做出的动作及响应;
时序(Timing): “序速控”;事件先后顺序和速度
匹配。
以两个人打电话为例来说明协议的概念:
甲要打电话给乙,首先甲拨通乙的电话号码,对方电话振铃,乙拿起电话,然后甲乙开始通话,通话完毕后,双方挂断电话。
在这个过程中,甲乙双方都遵守了打电话的协议。
其中,电话号码就是“语法”的一个例子,一般电话号码由五到八位阿拉伯数字组成,如果是长途要加拨区号,国际长途还有国家代码等等;两人之间的谈话选择使用什么语言也是语法
甲拨通乙的电话后,乙的电话振铃,振铃是一个信号,表示有电话打进,乙选择接电话,讲话;这一系列的动作包括了控制信号、响应动作、讲话内容等等,就是“语义”的例子;
“时序”的概念更好理解,因为甲拨了电话,乙的电话才会响,乙听到铃声后才会考虑要不要接,这一系列事件的因果关系十分明确,不可能没有人拨乙的电话而乙的电话会响,也不可能在电话铃没响的情况下,乙拿起电话却从话筒里传出甲的声音。
2、分层
为了降低设计复杂性、便于维护、提高运行效率,大多数网络都按“层”的方式来组织。
每一层都建立在它的下层之上。不同的网络,其层的数量、各层的名字、内容和功能都不尽相同。然而,在所有的网络中,每一层的目的都是向它的上一层提供一定的服务,而把如何实现这一服务的细节对上一层加以屏蔽。
一台机器上的第n层与另一台机器上的第n层进行对话。对话的规则就是第n层协议。协议基本上就是通信双方关于通信如何进行所达成的一致。
网络体系结构的几个基本概念
协议:为进行网络中的数据交换(通信)而建立的规则、 标准或约定。(=语义+语法+规则)
不同层具有各自不同的协议。
实体:任何可以发送或接收信息的硬件/软件进程。
对等层:两个不同系统的同名层次。
对等实体:位于不同系统的同名层次中的两个实体。
协议作用在对等实体之间。
接口:相邻两层之间交互的界面,定义相邻两层之间的 操作及下层对上层的服务。
服务:某一层及其以下各层的一种能力,通过接口提供 给其相邻上层。
这是一个5层的协议。不同机器里包含对应层的实体叫对等进程,正是对等进程利用协议进行通信。
但实际上,数据不是从一台机器的第n层直接传送到另一台机器的第n层,而是每一层都把数据和控制信息交给它的下一层,直到最下层。第一层下是物理介质,由它进行实际的通信。图中虚线表示虚拟通信,实线表示物理通信。
每一对相邻层之间都有一个接口。接口定义下层向上层提供的服务。
当网络设计者在决定一个网络应包括多少层,每一层应当做什么的时候,其中一个很重要的考虑就是要在相邻层之间定义一个清晰的接口。为了达到这些目的,又要求每一层能完成一组特定的有明确含义的功能。除了尽可能的减少必须在相邻层之间传递的信息数量外,一个清晰的接口可以使同一层能轻易的用一种实现来替换另一种完全不同的实现(譬如用卫星信道来代替所有的电话线),只要新的实现能像上一层提供旧的实现所提供的同一组服务就可以了