标题:网络协议模型OSI和tcp/ip


常见的网络协议模型包括OSI模型和TCP/IP模型。他们的关系和对应层次结构如图1所示:

                                                       1 两个常见网络模型

OSI模型是一个定义良好的协议规范集,并有许多可选部分完成类似的任务。它定义了开放系统的层次结构、层次之间的相互关系以及各层所包括的可能的任务,是作为一个框架来协调和组织各层所提供的服务。OSI参考模型并没有提供一个可以实现的方法,而是描述了一些概念,用来协调进程间通信标准的制定。即OSI参考模型并不是一个标准,而是一个在制定标准时所使用的概念性框架。

 

事实上的标准是TCP/IP参考模型。TCP/IP协议是Internet实际应用最广,也是最基本的协议、Internet国际互联网络的基础。TCP/IP协议是由计算机科学家Vinton G. CerfRobert E. Kahn共同定义和发明的。TCP/IP协议栈的实现则是由SUN公司的创始人之一和技术天才Bill Joy完成的。人们今天能够自由的利用互联网做自己想做的事,都受益于他们的伟大贡献。

TCP/IP协议并不完全符合OSI的七层参考模型。传统的开放式系统互连参考模型,是一种通信协议的7层抽象的参考模型,其中每一层执行某一特定任务。该模型的目的是使各种硬件在相同的层次上相互通信。这7层是:物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。

 

TCP/IP通讯协议采用了4层的层级结构,每一层都呼叫它的下一层所提供的网络来完成自己的需求。这4层分别为:

应用层:应用程序间沟通的层,如简单电子邮件传输(SMTP)、文件传输协议(FTP)、网络远程访问协议(Telnet)等。数据从网络相关的程序以这种应用内部使用的格式进行传送,然后被编码成标准协议的格式。常见的协议有HTTPFTPDNS

 

传输层:在此层中,它提供了节点间的数据传送,应用程序之间的通信服务,主要功能是数据格式化、数据确认和丢失重传等。如传输控制协议(TCP)、用户数据报协议(UDP)等,TCPUDP给数据包加入传输数据并把它传输到下一层中,这一层负责传送数据,并且确定数据已被送达并接收。

 

互连网络层:负责提供基本的数据封包传送功能,让每一块数据包都能够到达目的主机(但不检查是否被正确接收),如网际协议(IP)、ICMPIGMPIPXARPRARP

 

网络接口层(主机-网络层):接收IP数据报并进行传输,从网络上接收物理帧,抽取IP数据报转交给下一层,对实际的网络媒体的管理,定义如何使用实际网络(如EthernetWi-FiMPLS等)来传送数据。

数据在各层的传输形式如图2

                                                                 图2 数据在各层的传输

通过TCP协议传输的数据(”Hello”)在传输过程中的存在形式如图3所示:

                                                    图3 数据”Hello”在不同层的表示形式

通过图3看出,数据”Hello”在下发的过程中,被分别打上了TCP头、IP头、MAC接口头。在接收端,数据从下往上,又分别去掉了其中的TCP头、IP头、MAC接口头,数据被还原。下面的图显示了tcp头,udp头,ip头,arp头的结构:

 




看文字不过瘾?点击我,进入周哥教IT视频教学
麦洛科菲长期致力于IT安全技术的推广与普及,我们更专业!我们的学员已经广泛就职于BAT360等各大IT互联网公司。详情请参考我们的 业界反馈 《周哥教IT.C语言深学活用》视频

我们的微信公众号,敬请关注