一、服务与协议的区别
服务:是指在计算机层次网络中某一层向它的上一层提供的一组原语(操作),服务定义了该层准备代表其用户执行哪些操作,但是并不涉及如何实现这些操作。服务与两层之间的接口有关,底层是服务提供者,上层是服务用户。就比如在客户端的七层模型中,数据链路层为传输层提供服务。
协议:它是一组规则,规定了同一层上对等实体间所交换的数据包或者报文的格式和含义。就好比如服务器和客户端之间的传输层规定要怎么样来打包数据和解析数据。
二、OSI模型
1、物理层
在物理层中传输的是比特,它所关注的是在一条通信信道上传输的原始比特,也就是0和1。在设计该问题时,必须确保当一方发送了1比特时候,另一方接收到的也是1比特。这里还涉及到用什么介质来传输这些信号,比如光纤,电缆等等。
2、数据链路层
在数据链路层传输的是数据帧。该层的主要任务时将一个原始的传输设施转变成一条没有漏检传输错误的线路,该层主要涉及到的任务就是差错控制和流量控制。
3、网络层
该层传输的主要是数据包,当数据帧传输到路由时,路由选择将决定这些数据应该如何传输比较快,主要问题就是设计到路由选择算法的问题,比如最短路径算法和距离矢量算法。
4、传输层
该层主要解决封包和拆包的问题,当一个文件数据要向网络层发送出去时,考虑带包的大小,可能会将包拆分成多个比较小的包,然后经过网络层的路由选择进行传输,当从网络层向传输层接受数据时,传输层会将个个同一个文件的小包从网络层接收过来进行封装。
5、应用层
这一层包含了多种多样的协议,如HTTP,文件传输协议等等。
三、TCP/IP模型
TCP/IP模型主要是设计到很多协议,注意区分和OSI模型之间的区别与联系。