1.OSI七层模型和TCP/IP四层模型
1.1 OSI七层模型和TCP/IP四层模型对应表
OSI七层网络模型 | TCP/IP四层模型 | 对应网络协议 |
---|
应用层 | | TFTP, FTP, NFS, WAIS |
表示层 | 应用层 | Telnet, Rlogin, SNMP, Gopher |
会话层 | | SMTP, DNS |
传输层 | 传输层 | TCP,UDP |
网络层 | 网际层 | IP, ICMP, ARP, RARP, AKP, UUCP |
数据链路层 | | FDDI, Ethernet, Arpanet, PDN, SLIP, PPP |
物理层 | 网络接口层 | IEEE 802.1A, IEEE 802.2到IEEE 802.11 |
1.2 OSI七层模型各层的定义
1.应用层:
实现应用进程(如用户程序、终端操作员等)之间的信息交换;
2.表示层:
为异种机通信提供一种公共语言;
3.会话层(RPC):
通过传输层建立数据传输的通路,发起会话或接受会话请求;
4.传输层(TCP/UDP):
定义了一些传输数据的协议和端口号(WWW端口80等);
5.网络层(IP):
在位于不同地理位置的网络中的两个主机系统之间提供连接和路径选择;
6.数据链路层(MAC):
如何格式化数据以进行传输,以及如何控制对物理介质的访问。这一层通常还提供错误检测和纠正,以确保数据的可靠传输;
7.物理层(PHY):
主要定义物理设备标准。
2.网络接口结构
DMA
CPU<=======>MAC<======>PHY
网络驱动主要处理MAC层和PHY层的工作。
MAC层和PHY层的通信由数据通信总线和控制总线组成。
3.MAC层和PHY层的通信方式
3.1控制总线MIIM(MII management)
主要完成对PHY设备的寄存器信息配置。读写命令具有MAC设备发起,由两根线组成:
MDC:MIIM data clock
MDIO:MIIM data I/O
3.2数据总线
数据总线有很多类型,有MII,RMII,GMII,RGMII,SMII,SSMII,SSSMII,TBI,RTBI,XGMII,XAUI等,以下主要分析常用的总线。
1. MII(Media Independant Interface)
媒体独立接口:一种用于将不同类型的PHY与相同网络控制器(MAC)相连接的通用总线。
PIN脚定义(共18脚,包括MIIM):
TXD[0:3]:TX data
TXER:TX error
TXEN:TX enable
TXCLK:TX clk
RXD[0:3]:RX data
RXER:RX error
RXEN:RX enable
RXCLK:RX clk
CRS:Carrier Sense
COL:Collision Detectd
2. RMII(Reduced Media Independant Interface)
简化媒体独立接口:
PIN脚定义(共8脚):
REF_CLK:是由外部时钟源提供的50MHz参考时钟
CRS_DV:此信号是由MII接口中的RX_DV和CRS两个信号合并而成
TX_EN:TX enable
RX_ER:RX error
RXD[0:1]:RX data
TXD[0:1]:TX data
3. SMII(Serial MII)
串行媒体独立接口:
PIN脚定义:
TXD:发送数据信号,位宽为1;
RXD:接收数据信号,位宽为1;
SYNC:收发数据同步信号,每10个时钟周期置1次高电平,指示同步。
CLK_REF:所有端口共用的一个参考时钟,频率为125MHz
4. GMII(Gigabit MII)
千兆媒体独立接口:
PIN脚定义(共26脚,包括MIIM):
TXD[0:7]:TX data
TXER:TX error
TXEN:TX enable
TXCLK:TX clk
RXD[0:7]:RX data
RXER:RX error
RXEN:RX enable
RXCLK:RX clk
CRS:Carrier Sense
COL:Collision Detectd
5. RGMII(Reduced GMII)
简化千兆媒体独立接口:
PIN脚定义(共8脚):
TX_EN:TX enable
RX_ER:RX error
RX_EN:RX enable
RXCLK:125MHz,在上升沿和下降沿都采样
TXCLK:125MHz,在上升沿和下降沿都采样
RXD[0:3]:RX data
TXD[0:3]:TX data