一、分层:
TCP/IP通常被认为是一个四层协议系统:
应用层: | Telnet(远程登录)、FTP(文件传输协议)和e_mail等 |
运输层: | TCP(传输控制协议)和UDP(用户数据协议) |
网络层: | IP(网际协议)、ICMP(Internet互联网控制报文协议)和IGMP(Internet组管理协议) |
链路层: | 设备驱动程序及接口卡 |
二、封装:
当应用程序用T C P传送数据时,数据被送入协议栈中,然后逐个通过每一层直到被当作一串比特流送入网络。其中每一层对收到的数据都要增加一些首部信息(有时还要增加尾部信息),该过程如图1 - 7所示。T C P传给I P的数据单元称作T C P报文段或简称为T C P段(T C P s e g m e n t)。I P传给网络接口层的数据单元称作I P数据报(IP datagram)。通过以太网传输的比特流称作帧(Fr a m e ).图1 - 7中帧头和帧尾下面所标注的数字是典型以太网帧首部的字节长度。以太网数据帧的物理特性是其长度必须在4 6~1 5 0 0字节之间
三、IP:Internet Protocol
IP协议是TCP/IP协议簇的网络层协议,用于传送传输层及应用层的数据报。IP协议通过IP地址识别源和目的。所谓IP地址就是给每一个连接在Internet上的主机分配一个唯一的32比特地址。
网络类型 | 用户可用的 IP地址范围 | 说明 |
A | 1.0.0.0 ~ 126.0.0.0 | 全0或全1的网络号码保留作特殊用途。全0的主机地址用于配置网络路由,全1的主机地址用于该网络的广 播地址。网络号127用于自环接 |
B | 128.1.0.0 ~ 191.254.0.0 | 全0或全1的网络号码保留作特殊用途。全0的主机地址用于配置网络路由,全1的主机地址用于该网络的广 播地址 |
C | 192.0.1.0 ~ 223.255.254.0 | 全0或全1的网络号码保留作特殊用途。全0的主机地址用于配置网络路由,全1的主机地址用于该网络的广 播地址 |
D | 224.0.0.0~ 239.255.255.255 | D类地址是组播地址,地址范围224.0.0.0 ~ 239.255.255.255,不提供一般用户使用。全1的主机地址表示广播地址,即对该网络上所有的主机进 |
E | 240.0.0.0~ 247.255.255.255 | 255.255.255.255用于全网广播地址。地址范围240.0.0.0 ~ 255.255.255.254保留今后使用 |
如下图为IP数据报的格式:
IP分为;IPV4和IPV6,其数据报的格式为:
四、TCP:Transfer Control Protocol,即传输控制协议。
TCP协议的主要功能有三个方面:
流量控制:通过滑动窗口实现流量控制;
可靠性:通过序号和确认机制实现可靠性;
标示上层承载的应用程序:通过端口号表示TCP承载的上层应用协议,以便把数据交
给相应的应用程序处理。
五、UDP:User Datagram Protocol,即用户数据报协议
UDP协议在发送过程中不需要进行数据的缓存,没有连接的管理过程,在UDP模式下,通过应用程序支持的超时重传和对报文进行编号来防止重复和保证报文的有效到达。
六、ARP:Address Resolution Protocol,即地址解析协议
ARP协议完成的是IP地址到MAC (介质访问控制)地址的转换。MAC地址—一个由48个bit组成的二进制地址,通常用12位16进制表示,如:00eofc012345,每一个网络设备拥有全球唯一的一个MAC地址。
如下为用于以太网的ARP请求或应答分组格式:
七、以太网:
(1)、Ethernet_II:
以太网数据帧格式为;
6bytes | 6bytes | 2bytes | 46bytes~1500bytes | 4bytes |
DMAC | SMAC | Type | Data | CRC |
DMAC(Destination MAC)是目的地址。DMAC标识接收帧的工作站。
SMAC(Source MAC)是源地址。SMAC标识发送帧的工作站。
Type标识数据字段中包含的高层协议,即确认接收者如何解释数据字段。
在以太网中,多种协议可以在局域网中同时共存。因此,通过在Ethernet_II的
类型字段中设置相应的十六进制值来实现多协议传输的机制。
1)、IP协议帧的类型字段取值为0800。
2)、ARP协议帧的类型字段取值为0806。
3)、None协议的类型字段取值为0000。
Data:数据字段的最小长度必须为46字节以保证帧长至少为64字节,这意味着传
输1个字节信息也必须使用46字节的数据字段。数据字段的最大长度为1500字节。
CRC:Cyclic Redundancy Check循环冗余校验字段提供了一种错误检测机制。每一个发送器都计算一个包括了地址字段、类型字段和数据字段的CRC码,然后将计算出的CRC码填入4字节的CRC字段中。
八、以太网Ethernet SNAP(802.3)
其类型字段为:
1)、IPV4协议帧的类型字段取值为0800。
2)、IPV6协议帧的类型字段取值为86DD
3)、ARP协议帧的类型字段取值为0806。
4)、None协议的类型字段取值为0000。
如下图为IEEE802.2/802.3和以太网的封装格式:
注:1)在xStream中,以太网中的MAC源和目的地址为固定的:
源地址:00:00:00:00:00:00
目的地址:00:00:C0:55:01:02
2)802.3(Ethernet SNAP)帧格式中:
a、长度域用于指示数据域的长度;
b、SSAP(源服务接入点)和DSAP(目的服务接入点)用于标识协议类型,其
值为0xaa;
c、控制域(cntl)基本不使用,一般设为0x03;
d、OUT ID(org code):组织唯一标识符,其值通常等于MAC地址的前3个字
节,即网络适配器、类型域用于标识协议类型。
九、PPOE协议:
其类型字段为:
1)、IPV4协议帧的类型字段取值为8864。
2)、IPV6协议帧的类型字段取值为884
3)、None协议的类型字段取值为8864。
注:PPOE协议里没有ARP