ISO五层协议研究

    OSI七层模型想必大家都听说过,但是有时候我发现真的很难记得住,再加上本人是做软件开发的,大部分时间想得是框架的结构,代码的优化,至于做程序的时候选择什么样的连接,如何调用类库来实现各种连接,这个问题基本上在程序设计之初考虑一下,在程序编写的时候实践一下,如果程序的模块化设计比较好的话,在后期维护中这种问题根本连看都不会看。有时候两三个月再回头想一下OSI七层结构,中间有一两层难免一时半会想不起来。难记不说,关键是没有什么实用价值。但是面试的时候这类问题会经常被问到,所以本人推荐大家掌握一下网络五层模型,这个对我们大多数开发人员应付工作和面试已经够了。

    首先我们来回顾下OSI七层协议,有点想吐血了,它们分别是:物理层,数据链路层,网络层,传输层,会话层,表示层,应用层。看到这七个弟兄就头大的同学请淡定一些,我也很讨厌它们七个,所以我们今天只看五个:物理层,数据链路层,网络层,传输层,应用层。

     物理层:物理层这个就不多说了,这个词顾名思义,指的是网络传输中的硬件。

     如果你以为上面的话是对的,恭喜你,你上当了。物理层不是指的硬件,而是指一套规范,这些规范是做什么用的呢,是为上层数据链路层提供无差异化数据的,比如你用的是手机,他用的是平板,另外一个人用得是pc,还有火星来的,拿的你不知道的设备在窃取地球的秘密,请问那个火星来得如何窃取你们的数据,如果他的设备不能接收正弦余弦电磁波,并把这些波转化为101010……那么他谈何窃取到你们的信息,所以他的设备要能接收你们的设备发射出来的信号,那么事先他就要知道这些设备的规格和规范。那么这个问题就要靠物理层解决。

    数据链路层:

    不要想太复杂,看它的名字:数据链路层,记住头两个字:数据。没错,它所做的所有的事情都是围绕着数据的,这里的数据不是“你好啊,我想你啦”一类的数据,而是比特流,最原始的101010……,数据链路层的服务对象是比特流,那么比特流需要什么服务?比特流是客户发送的,需要让它到达某个地址,客户是很牛叉的,他只会告诉机器,你去发送这些,然后硬件层接收到命令了,再告诉数据链路层说:你去发送这些。数据链路层只得默默的含着眼泪把数据切割成一段一段地包好(有点暴力,不忍的可以跳过),然后客户订单来了,说要多少多少,那么数据链路层就把包准备好以后分批把它们送出去,送出去的时候还写了封信,告诉收件的说我这边把XXX切成了几段,每段多少,这封信就是效验码。如果接收方发现实际情况和信里提到的不一样,那么数据链路层还将再发送一批一模一样的货以及一模一样的信,直到货和信上德描述能够正确。

    这就是数据链路层的三个作用:1,把比特流组合成帧,然后发出去

                                                            2,判断从那一帧开始到那一帧结束

                          3,通过一些方法(如效验码)来保证数据的正确性

    网络层:

    网络层是为数据链路层服务的,数据链路层的数据跑到快不快能跑多快,就要看网络层够不够聪明了,数据链路层把比特流给整成帧了,帧来到网络层报到。网络层给了帧一个地图导航,说你顺着这套路跑吧,目的地就是火星,帧顺着这条路跑终于到了火星……另外提一下,IP协议属于这一层

    网络层的主要作用:1,路径选择

2,路由

                  3,逻辑寻址

    传输层:
    传输层,就是管理传输的了,没太多难以理解的概念,但是确实最重要的一层,它继往开来,它承前启后。我们整天念叨的TCP/UDP就是这一层的,TCP:Transmission Control Protocol TCP是一种面向连接(连接导向)的、可靠的、基于字节流的传输层(Transport layer)通信协议,UDP 是User Datagram Protocol的简称, 中文名是用户数据包协议,是一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务。记住就行了。

    应用层:

    应用层是为应用程序服务的,为应用层提供接口来使用下面几层,记住这几个协议就行了

(1)域名系统(Domain Name System,DNS):用于实现网络设备名字到IP地址映射的网
络服务。
(2)文件传输协议(File Transfer Protocol,FTP):用于实现交互式文件传输功能。
(3)简单邮件传送协议(Simple Mail Transfer Protocol, SMTP):用于实现电子邮箱传送功能
(4)超文本传输协议(HyperText Transfer Protocol,HTTP):用于实现WWW服务。

    

 

    

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值