对于都不陌生的TCP/IP协议的四个层次,网络接口层、网络层、传输层、应用层,大大小小的考试中都有考过,对于其详细功能做一个小小总结。
TCP(Transmission control protocol)/IP(Internet protocol)传输控制协议/互联网协议,是互联网的最基本也是最核心的协议。它是一套完备的标准,目标是提供网络的基本数据传输,帮助网络用户实现基本的应用服务,像telnet,FTP,smtp,snmp等。
网络接口层主要用于实现与传输媒介相关的物理特性,由下而上来看,对于接收到的物理帧数据,得到IP数据包,交给网络层;由上而下来看,从网络层接收到IP数据包封装成帧数据,发送到网络中。
网络层主要功能是实现数据包在网络上的分组转发,由下而上来看,对于从网络接口层接收到的IP数据包,首先检查其合法性,然后进行寻径——假如该数据报已到达信宿机,则去掉报头,将剩余数据交给传输层;假如该数据报尚未到达信宿机,则选择合适路径转发该数据报。由上而下来看,从传输层接收到分组数据后,对数据添加包头,封装成IP数据包,为数据包选择路由,然后将数据报发往适当的网络接口。
网络层有许多协议,ARP(address resolution protocol)地址解析协议,功能是通过以获取的IP地址来寻找获取相应主机的MAC地址;RARP(reverse address resolution protocol)反地址解析协议,功能是通过已知的MAC地址来获取相应主机的IP地址;ICMP(Internet control manage protocol)网络控制管理协议,用于实现报文回送功能,像PING命令就是一种ICMP协议,用于发送ICMP的echo包,用于检验网络是否通畅。
网络层的控制功能是最复杂的,主要负责差错控制、拥塞控制等,任何控制都是建立在信息的基础之上的,在基于IP数据报的网络体系中,网关必须自己处理数据报的传输工作,而IP协议自身没有内在机制来获取差错信息并处理。为了处理这些错误,TCP/IP设计了ICMP协议,当某个网关发现传输错误时,立即向信源主机发送ICMP报文,报告出错信息,让信源主机采取相应处理措施,它是一种差错和控制报文协议,不仅用于传输差错报文,还传输控制报文。
传输层,主要功能是实现两台主机的应用程序的端到端的通信,提供应用程序间的通信。其功能包括:一、格式化信息流;二、提供可靠传输。为实现后者,传输层协议规定接收端必须发回确认,并且假如分组丢失,必须重新发送。
传输层协议主要是:传输控制协议TCP(Transmission Control Protocol)和用户数据报协议UDP(User Datagram protocol)。
应用层,主要实现应用程序的相关功能。主要应该有TELNET,FTP,SMTP,DNS。