通过连接实例解读 TCP/IP 协议最近狂补基础,猛看 TCP/IP 协议
不过,书上的东西太抽象了,没有什么数据实例,看了不 久就忘了
于是,搬来一个 sniffer,抓了数据包来看,呵呵,结合书里面得讲解,理解得 比较快
我就来灌点基础知识
开始吧,先介绍 IP 协议
IP 协议(Internet Protocol)是网络层协议,用在因特网上,TCP,UDP,ICMP,IGMP 数据都是按照 IP 数据格式发送得
IP 协议提供的是不可靠无连接得服务
IP 数据包由一个头部和一个正文部分构成
正文主要是传输的数据,我们主要来理解头部数据,可以从其理解到IP 协议
IP 数据包头部格式(RFC791)Example Internet Datagram Header 上面的就是 IP 数据的头部格式,这里大概地介绍一下
IP 头部由 20 字节的固定长度和一个可选任意长度部分构成,以大段点机次序传送,从左到 右
TCP 协议 TCP 协议(TRANSMISSION CONTROL PROTOCOL)是传输层协议,为应用层提供服务,和 UDP不同的是,TCP 协议提供的可靠的面向连接的服务
在 RFC793 中是基本的 TCP 描述
关于 TCP协议的头部格式内容的说明: TCP Header FORMat TCP Header FORMat 跟 IP 头部差不多,基本的长度也是 20 字节
TCP 数据包是包含在一个 IP 数据报文中的
好了,简单介绍到此为止
来看看我捕获的例子吧
这是一次 FTP 的连接,呵呵,是cuteftp 默认的 cuteftp 的 FTP 站点,IP 地址是:216
我的 IP 地址假设为:192
下面的数据就是 TCO/IP 连接过程中的数据传输
我们可以分析 TCP/IP 协议数据格式以及 TCP