Protocol

Protocol协议


学习协议之前首先要明白几个理念.

协议是协调行为的规则, 制定规则之后才能够遵循这个规则更好的进行行为.

Web开发中所经常见到的主流协议, 一般都有所归属, 有一个更大的协议簇.

协议簇里面包含有各种各样的协议, 根据阶段或步骤分成不同层级, 一个个层级有一个个协议, 根据步骤遵循协议来完成一整个流程, 可以称之为是一个完善的协议簇.
每层各负责一个功能, 且层与层之间相互隔离解耦.

协议不是一成不变的, 协议簇同样也是.
时代在进步, 当已有的协议或者协议簇不能满足需求的时候, 就要制定新的协议, 甚至于制定新的协议簇.

协议就像是生活中的各种各样的规矩.

举个日常生活例子:
    
    长辈常说吃饭的时候不能玩手机, 这就是规矩.(协议1)

    喝水的时候不能笑.(协议2)

    过马路的时候要注意车辆.(协议3)

    ...

    这许许多多的规矩, 组合在一起, 就是'每日应该遵循的规矩1'(协议簇1)


    时光如梭,某专家证实,吃饭玩手机不仅无害,还大大滴好.

    于是协议1被从'每日应该遵循的规矩1'中剔除了.


    又过了一段时间又有新协议增加,或者旧的协议剔除.
    原本的'每日应该遵循的规矩1'的分层结构有些不太合理.
    于是大家又商量着制定了一个新的, 叫'每日应该遵循的规矩2'(协议簇2)


这就是协议和协议簇.

常见两个协议簇:

    TCP/IP(Transmission Control Protocol/Internet Protocol)传输控制协议/网际协议
    OSI(Open System Interconnection)开放式系统互联

我们最常用的协议簇是TCP/IP.
TCP/IP协议参考了OSI协议簇, 可以理解为OSI的简化版.



原本OSI协议簇有七层.

1.物理层
2.数据链路层
3.网络层
4.传输层
5.会话层
6.表示层
7.应用层

TCP/IP协议有四层.

1.网络接口层
2.网络层
3.传输层
4.应用层


关于分层, OSI和TCP/IP的两者间的分层方式有所差别. 一个七层, 一个四层.
但是在实际使用中,更常见的是把协议栈分为五层(五层因特尔协议栈).

1.物理层
2.链路层
3.网络层
4.传输层
5.应用层

如果用五层作为标准的话.
TCP/IP把
1.物理层
2.链路层
两部分归纳为网络接口层

OSI则是把5.应用层分解为
5.会话层
6.表示层
7.应用层


在开发过程中,理解TCP/IP协议簇的时候, 只需要知道最底层的网络接口层,对应两个不同深度的领域即可(1.物理层,2.链路层)






posted @ 2019-11-25 13:51  Jrri  阅读(452)  评论(0编辑  收藏  举报