美文网首页我爱编程
TCP/IP协议简介(一)

TCP/IP协议简介(一)

作者: 涂印 | 来源:发表于2018-04-12 12:32 被阅读0次
    TCP/IP协议简介(一)
    一丶 体系结构的基本认识

      TCP/IP协议并不是如字面意思所述是一个具体协议,事实上TCP/IP协议是一个协议族,该协议族里面最核心的协议是TCP(Transmision control protocal,传输控制协议)协议和IP(Internetprotocal)协议,本文主要介绍TCP协议的具体内容。在介绍TCP协议之前我们需要了解几个常见的概念——OSI七层模型,TCP/IP四层模型以及TCP/IP五层模型。

    1. OSI(Open System InterconnectionReference Model,开发系统互联参考模型)是国际标准化组织ISO推出的计算机网络体系结构,其功能的划分十分的完善,具有理论研究价值,但是在实际中并不采用。

    2. TCP/IP四层模型指的是TCP/IP协议族构成的网络体系结构,是对OSI模型的一种简化是事实上的标准。

    3. TCP/IP五层模型,是综合OSI模型和TCP/IP四层的模型的优点,为了清晰的描述网络体系结构而产生的一个划分方法。


      图 1 OSI模型和TCP模型比对

        上述的三个模型,每个层与层都之间相互独立的,每层的内部都是高聚合,不同的层不负责处理计算机网络中的不同的问题。下面以TCP/IP五层模型为例简介计算机网络中每层的功能。

    • 应用层:应用层是计算机网络中的最高层,也是用户有可能直接接触的层面,比如HTTP协议,SMTP协议,FTP协议都是应用层的协议,许多开发工作中接触的也是该层的协议,在android开发中Retrofit就是一个HTTP请求的框架。java sdk也提供了对http请求的原生支持,比如HttpClient和HttpUrlConnextion。
    • 传输层:传输层主要是为通信双方主机中的进程提供数据传输服务。传输层主要的协议包括TCP协议和UDP协议。
    • 网络层:网络层主要是完成路由选择的功能,让运输层传送下来的TCP报文能够通过网络中的路由器找到目的主机。
    • 链路层:链路层主要考虑三个问题,封装成帧,差错控制和透明传输。
    • 物理层:物理层主要是是数据通信相关的内容,涉及到信源编码,信道编码,调制技术等等机制,是通信中的基础核心。
    二丶数据在体系结构中的流向

      TCP/IP五层模型的各层的功能不仅仅是上述描述的几个简单的功能,其详细和完备的功能描述这里不总结,此处主要是建立计算机网络的基本概念,在有了上述计算机网络体系的基本知识后,详细的介绍在通信的过程中信号流向,认识TCP/IP体系中的各层扮演什么的角色。

    图2信号在协议栈中的流向
      上述的信号流程图中,可以清晰的看到发送方应用产生的数据,是如何一步步通过计算机网络传送到接收方对应的应用程序中的。用户直接操作的对象是应用程序,应用程序将用户产生的数据,一层一层的交付下去,通过中间路由器的路径选择送达目的主机,最后再次一层层的交付到对应的应用程序中。
      在一般的开发过程中,例如app开发和web开发,应用程序在捕获用户的交互操作后(比如,点击提交,双击获取细节,文本框输入等),利用对应用层协议进行封装的api接口,将用户产生数据传送到应用层,接着下层协议会按照指定的协议内容,一步步的将数据交付到指定主机的指定应用上,开发人员无需关系下层协议的设计,下层协议对上层协议是透明且可靠的服务。
    这里需要特别强调,协议的各层遵循,上层向下层传送数据,下层向上层提供透明服务。
    Reference:
    [1] 计算机网络.谢希仁,第六版
    [2] csdn博客原文

    相关文章

      网友评论

        本文标题:TCP/IP协议简介(一)

        本文链接:https://www.haomeiwen.com/subject/ruyxkftx.html