首先,先来解决掉几个小问题
1、为什么计算机网络协议要设计成层次式的?
两个主机之间通过通信网络传送文件是一件非常复杂的事情,如果不进行分层分工处理,单独一个模块进行处理的话,会显得臃肿复杂。若进行分层处理,则能够带来许多好处:
①、各层之间相互独立。处理A层的时候不需要知道它的下一层如何工作,可以将一个难处理的复杂问题分解成若干个容易处理的简单问题。
②、灵活。修改单层的时候,只要各层接口关系不变,上层和下层不受影响。
③、结构上可分隔开。各层都采用最适合的技术去实现。
④、易于维护和处理。
⑤、促进标准化工作。各层任务鲜明。
2、OSI和TCP/IP的区别
OSI是法律上的国际标准,但它不够接地气,既复杂又不实用,导致TCP/IP占领大多数市场,从而导致TCP/IP成为了事实上的国际标准。
OSI有七层协议体系结构,TCP/IP的是四层协议体系结构,综合OSI和TCP/IP的优点,则产生了一种五层协议的体系结构。
一、应用层
应用层的任务是通过应用进程间的交互来完成特定网络应用。
它定义了应用进程间通信和交互的规则,对于不同的网络应用采用不同的协议:域名系统DNS、万维网应用HTTP、电子邮件SMTP和文件传送FTP等等
二、运输层
运输层的任务是负责两台主机中进程之间的通信提供数据传输服务。应用进程利用该服务传送应用层报文。
运输层主要有TCP(传输控制协议:提供面向连接的、可靠的数据传输服务)和UDP(用户数据报协议:提供无连接的、尽最大努力的数据传输服务)
三、网络层
网络层的任务是为分组交换网上的不同主机提供通信服务。
网络层使用的是IP协议
四、数据链路层
数据链路层的任务是负责两台主机之间的数据传输。
五、物理层
物理层的任务是考虑怎么才能在连接各种计算机的传输媒体上传输数据比特流,而不是指具体的传输媒体