Chinaunix首页 | 论坛 | 博客
  • 博客访问: 805798
  • 博文数量: 281
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 2770
  • 用 户 组: 普通用户
  • 注册时间: 2009-08-02 19:45
个人简介

邮箱:zhuimengcanyang@163.com 痴爱嵌入式技术的蜗牛

文章分类
文章存档

2020年(1)

2018年(1)

2017年(56)

2016年(72)

2015年(151)

分类: 嵌入式

2015-10-08 11:22:14

1. 以太网介绍

以太网(ethernet)是互联网技术的一种,由于它在组网技术中占的比重很高,很多人直接把以太网理解为互联网。

以太网是指遵守IEEE 802.3标准组成的局域网,由IEEE 802.3标准规定的主要是位于参考模型的物理层(PHY)和数据链路层中的媒体接入控制子层(MAC)。

在家庭、企业和学校所组建的PC局域网形式一般也是以太网,其标志是使用水晶头网线来连接(当然还有其他形式)。

IEEE还有其他标准:
IEEE 802.11   --> 无线局域网 wifi
IEEE 802.15   --> 个人域网 bluetooth
IEEE 802.15.4 --> zigbee.

2. 术语缩略




3. 以太网控制器
(1)集成MAC控制器的MCU
PHY层和MAC层的实现是由以太网控制器实现的。部分MCU,只是集成了MAC控制器外设,在芯片外必须再外接一个PHY控制器和以太网变压器即可实现以太网功能。
STM32的MAC控制器外设可以通过IEEE协议规定的MII或者RMII、SMI与PHY芯片进行通信。

(2)外接以太网控制器方案
对于没有集成以太网控制器的MCU,可通过外接以太网控制器芯片(包含MAC和PHY驱动)接入以太网。常见以太网控制器:ENC28J60等。

ENC28J60接口连接图:(SPI通信接口)


4. 为什么在MAC之上还有分层?
为什么要分层:
应用层
传输层
网络层

数据链路层                  
LLC
-----------------------
MAC

PHY层

讲过很多次,分层无非是想让变化的部分和固定的部分分离开来。
从数据链路层中MAC层以上,就是协议栈的软件部分,是固定的,不需要改变。
而MAC和PHY层是针对不同的硬件(作为传输介质),它们的驱动方式是不一样的。这个需要根据具体的芯片,来写不同的驱动。

为什么在MAC之上还有分层?
很显然,把协议栈固定的部分保持不变。


5. TCP/IP协议中各层次的功能
以太网和WIFI,它们的MAC子层和PHY层有较大的区别,但是MAC层之上的LLC层,网络层,传输层和应用层的协议,是基本相同的。这几层协议由软件实现,并对各层进行封装。各层的功能如下:

LLC层:处理传输错误
调节数据流,协调收发数据双方速度,防止发送方发送的太快而接收方丢失数据。主要使用数据链路协议。
网络层:解决数据路径问题(路由转发等
也称为IP层。LLC层负责把数据从线的一端传输到另一端,但很多时候不同的设备位于不同的网络中(并不是简单的网线的两头)。此时就需要网络层来解决子网路由问题、路径选择问题。在这一层主要有IP协议,ICMP协议。
传输层:解决数据端到端传输问题
由网络层处理好了网络传输路径问题后,端到端的传输路径就建立起来了。传输层就负责处理端到端的通信。在这一层主要有:TCP、UDP协议。
应用层:
经过前面三层的处理,通信完全建立起来了。应用层可以通过调用传输层的接口来编写特定的应用程序。

阅读(1810) | 评论(0) | 转发(0) |
0

上一篇:以太网介绍

下一篇:lwip介绍

给主人留下些什么吧!~~