TCP/IP的工作方式

首先我们先来逆向分析一下,TCP/IP协议应该实现哪些功能:

把消息分解为可管理的,能够通过传输介质实现有效传递的数据块。

与网络适配器硬件进行交互。

寻址,即发送端计算机必须能够制定接收数据的计算机,接收计算机必须能够识别自己要接收的数据

即使发送子网与目标子网不是同类物理网络,也要能够把数据传递到目标计算机子网。

实现错误控制,数据流控制和确认,在可靠的通信过程中,发送和接收计算机必须能够发现并纠正传输错误,控制数据流。

从应用程序接收数据并传输到网络。

从网络接收数据并传输到应用程序。

为了实现上述功能,TCP/IP的创建者使用了模块设计,TCP/IP协议系统分为不同的组件,从理论上能够相互独立的实现自己的功能,每个组件分别负责通信过程中的一部分。

网络访问层:提供与物理网络的接口,针对传输介质设置数据的格式,根据物理地址实现数据的寻址,对数据在物理网络的传递提供错误控制。

网际层:提供了独立于硬件的逻辑寻址,从而让数据能够在具有不同物理结构的子网之间传递,。

传输层:提供互联网络的数据流控制,错误控制和确认服务,为网络应用提供接口。

应用层:提供网络故障排除,文件传输,远程控制和internet操作的应用。

 

关于TCP/IP协议栈需要强调的是,其中每一层都在整个通信过程中扮演一定的角色,调用必要的服务来完成相应的功能,在数据发送的过程中,其流程是从栈的上到下,每一层都把相关的信息(头)捆绑到实际的数据上,包含头信息和数据的数据包就作为下一层的数据,再次被添加头信息和重新打包。接收到的数据就是从下到上逐渐解开相应的头并且使用其中的信息。

数据包在每一层中都具有不同的形式和名称:

应用层生成的数据包被称为消息

传输层生成的数据包封装了应用层的消息,如果来自于传输层的TCP协议,就被称为片段,来自于UDP协议,就被称为数据报。

网际层的数据包装了传输层的片段,被称为数据报。

网络访问层的数据包封装了数据报,被称为帧,帧被访问层里最低字层转换称为了比特流。

TCP/IP网络概述

1 数据从那个工作于应用层的协议,网络服务或应用程序接口通过TCP/UDP端口传递到两个传输层协议之一。

TCP是面向连接的协议,

UDP是个无连接的协议,比TCP快,但并不可靠,它把错误检测的责任推给了应用。

2 数据片段传递到网际层,IP协议在此提供逻辑寻址信息。并且把数据封装为数据报。

3IP数据报进入网络访问层,传递到具有网络接口的软件组件。网络访问层创建一个或多个帧,从而进入物理层帧里面包含从表格里获取的物理地址信息把ip地址转换为物理地址。

4 数据帧被转换为比特流,通过介质进行传输。

posted @ 2016-03-25 15:13  故园的梨花  阅读(513)  评论(0)    收藏  举报