Chinaunix首页 | 论坛 | 博客
  • 博客访问: 195380
  • 博文数量: 49
  • 博客积分: 1959
  • 博客等级: 上尉
  • 技术积分: 492
  • 用 户 组: 普通用户
  • 注册时间: 2008-12-08 16:23
文章分类

全部博文(49)

文章存档

2012年(8)

2011年(34)

2008年(7)

分类:

2011-04-16 17:57:56

当应用程序用TCP传送数据时,数据被送入协议栈中,然后逐个通过每一层直到被当作一串比特流送入网络,这叫做封装;

TCP传给IP的数据单元称作TCP报文段或简称为TCP段(TCP segment)。
IP传给网络接口层的数据单元称作IP数据报(IP datagram)。
通过以太网传输的比特流称作帧(Frame )。
以太网数据帧的物理特性是其长度必须在46~1500字节之间。
IP和网络接口层之间传送的数据单元应该是分组(packet),分组既可以是一个IP数据报,也可以是IP数据报的一个片(fragment);
UDP数据与TCP数据基本一致,唯一的不同是UDP传给IP的信息单元称作UDP数据报(UDP datagram),而且UDP的首部长为8字节。

IP在首部中存入一个长度为8 bit的数值,称作协议域。1表示为ICMP协议,2表示为IGMP协议,6表示为TCP协议,17表示为UDP协议。

TCP和UDP都用一个16 bit的端口号来表示不同的应用程序。
TCP和UDP把源端口号和目的端口号分别存入报文首部中。
网络接口分别要发送和接收IP、ARP和RARP数据,因此也必须在以太网的帧首部中加入某种形式的标识,以指明生成数据的网络层协议。为此,以太网的帧首部也有一个16 bit的帧类型域。
*************************************************************
当目的主机收到一个以太网数据帧时,数据就开始从协议栈中由底向上升,同时去掉各层协议加上的报文首部。每层协议盒都要去检查报文首部中的协议标识,以确定接收数据的上层协议,这个过程称作分用(Demultiplexing)。
协议是通过目的端口号、源IP地址和源端口号进行解包的。
阅读(1061) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~