五层为:应用层、传输层、网络层、数据链路层、物理层;
七层:应用层、表示层、会话层、传输层、网络层、数据链路层、物理层;
应用层;
包括:telnet,ftp,e-mail等
与其它计算机进行通讯的一个应用,它是对应应用程序的通信服务的。例如,一个没有通信功能的字处理程序就不能执行通信的代码,从事字处理工作的程序员也不关心OSI的第7层。但是,如果添加了一个传输文件的选项,那么字处理器的程序员就需要实现OSI的第7层。示例:telnet,HTTP,FTP,NFS,SMTP等。
表示层:
这一层的主要功能是定义数据格式及加密。例如,FTP允许你选择以二进制或ASCII格式传输。如果选择二进制,那么发送方和接收方不改变文件的内容。如果选择ASCII格式,发送方将把文本从发送方的字符集转换成标准的ASCII后发送数据。在接收方将标准的ASCII转换成接收方计算机的字符集。示例:加密,ASCII等。
会话层:
它定义了如何开始、控制和结束一个会话,包括对多个双向消息的控制和管理,以便在只完成连续消息的一部分时可以通知应用,从而使表示层看到的数据是连续的,在某些情况下,如果表示层收到了所有的数据,则用数据代表表示层。示例:RPC,SQL等。
传输层:
主机间应用程序的通信,包括TCP、UDP;TCP是面向字符流的传输,传输前必须先建立链接通道,建立过程3次握手,TCP是可靠传输协议,若接收方接收之后发现传输有错,那么所有的TCP传输数据报文必须重传,这个可以用MTU解释,TCP首部由20字节组成,并且所有的数据都必须经过CRC校验,若接收方的校验码不相同,则需要重传,其错误机制是根据ICMP传输,关闭过程需要4次握手,不可达情况是ICMP传送主机不可达信号(NO answer);UDP是面向数据报的传输,传输不需要建立链接,接收若有错误也不需要重传,UDP首部由8字节组成,其可靠性只能通过应用层保证;
网络层:
包括IP报与ICMP;ICMP即可以放在传输层,也可以放在网络层,放在传输层的依据是其需要IP报封装,放在网络层的依据是其信息不需要给传输层处理;ICMP主要起控制功能,差错传输等,例如在ping命令,traceroute命令等都是通过ICMP控制信号传输;
链路层:
包括:ARP和RARP,ARP主要是IP地址与MAC地址的一种映射过曾,RARP主要是针对没有存储功能设备,其不能设别自己的MAC地址,需要通过发送RARP命令给MAC服务器,MAC服务器再把数据传输给主机;