网络的基础知识 一、协议 1、简介:
在计算机网络与信息通信领域里,人们经常提及“协议”一词。互联网中常用的具有代表性的协议有IP、TCP、HTTP等。而LAN(局域网)中常用的协议有IPX/SPX”等。
下面通过通俗一点的方式来解释一下协议:
有三个人A、B、C。A只会说汉语、B只会说英语、而C既会说汉语又会说英语。现在A与B要聊天,他们之间该如何沟通呢?若A与C要聊天,又会怎样?这时如果我们:
将汉语和英语当作“协议”
将聊天当作“通信”
将说话的内容当作“数据”
那么A和B之间由于采用的是不同的语言,那么可能永远都不能进行正常交流。因为他们之间所采用的协议不同,如果想要正常交流,那么必须采用相同的协议,要么都用汉语,要么都使用英语,这样就可以正常交流了。
那么计算机之间进行通信时也是如此,如果两个计算机之间所采用的协议不同,则两个计算将不能进行通信
2、协议分层ISO在制定标准化OSI之前,对网络体系结构相关的问题进行了充分的讨论,最终提出了作为通信协议设计指标的OSI参考模型。这一模型将通信协议中必要的功能分成了7层。通过这些分层,使得那些比较复杂的网络协议更加简单化。
在这一模型中,每个分层都接收由它下一层所提供的特定服务,并且负责为自己的上一层提供特定的服务。上下层之间进行交互时所遵循的约定叫做“接口”。同一层之间的交互所遵循的约定叫做“协议”。
这样解释可能有点抽象,我们用一个比较形象的场景来解释一下:打电话
在这个图中,他们所用的语言协议作为麦克风的音频输入,在通信设备层被转换为电波信号传送出去了。传送到对方的电话机后,又被通信设备层转换为音频输出,传递给了对方。因此,A与C其实是利用电话机之间通过音频转化声音的接口实现了对话。
3、OSI参考模型:前面只是将协议简单地分为了两层进行了举例说明。然而,实际的分组通信协议会相当复杂。0SI参考模型将这样一个复杂的协议整理并分为了易于理解的7个分层。
OSI参考模型中各个分层的作用:
OSI参考模型举例:
假定现在有两个用户,用户A和用户B,用户A发一封内容为“早上好”的邮件给用户B,那么在网络中这封邮件究竟做了哪些处理呢?
1、应用层:
应用层协议会在所要传送数据(早上好)的前端附加一个首部(标签)信息。该首部标明了邮件内容为“早上好”和收件人为“B”。这一附有首部信息的数据传送给主机B以后由该主机上的收发邮件软件通过“收信”功能获取内容。主机B上的应用收到由主机A发送过来的数据后,分析其数据首部与数据正文,并将邮件保存到硬盘或是其他非易失性存储器”以备进行相应的处理。如果主机B上收件人的邮箱空间已满无法接收新的邮件,则会返回一个错误给发送方。对这类异常的处理也正属于应用层需要解决的问题。
2、表现层:
表示层的“表示”有“表现”、“演示”的意思,因此更关注数据的具体表现形式”。此外,所使用的应用软件本身的不同也会导致数据的表现形式截然不同。例如有的字处理软件创建的文件只能由该字处理器厂商所提供的特定版本的软件才来打开读取。
此例中的“早上好”这段文字根据其编码格式被转换成为了“统一的网络数据格式”。即便是一段简单的文字流,也可以有众多复杂的编码格式。就拿日语文字来说,有EUC-JP、Shift_JIS、ISO-2022-JP、UTF-8以及UTF-16等很多编码格式0。如果未能按照特定格式编码,那么在接收端就是收到邮件也可能会是乱码”。
表示层与表示层之间为了识别编码格式也会附加首部信息,从而将实际传输的数据转交给下一层去处理。
3、会话层: