网卡 (一) 1 LAN简介

LAN与WAN
一般来说,WAN是由运营商布局的,包括最后一公里接入(光纤入户)
而LAN是自己布局的(包括 调制解调器,路由器,主机1,主机2,...)
LAN的实现标准
  • 实现标准分类
LAN有很多实现标准
	802.3(以太网/ethernet/IEEE802.3)提供了一个标准,有很多实现
	IEEE802.11 提供了一组标准,对应很多实现.Wi-Fi 是 一种 认证,用来认证802.11设备是否互联互通.
  • 架构
早期,由于各网络的竞争,局域网没有形成同一标准,
	为了将各种局域网融合
		1.IP层已经固定
		2.不添加新层
	只能将第二层分割成两小层,LLC 和 MAC 层
		LLC 小层 (逻辑链路层)就是新添加的层, 用来将各种局域网融合
		MAC 小层 (媒体接入控制层)就是原来的第二层,可以代表 各种局域网标准之一(802.3802.4802.11 其中的一个)
	
问题1,既然添加了 LLC ,那么 IP层的数据 经过LLC 的时候是否要添加头? 
	不需要,可以将其看成IP层直通MAC层.
问题2,数据经过MAC层的 时候是否需要添加头?
	需要,添加对应的以太网首部.
问题3,MAC层下面是什么
	硬件,物理层不对数据添加头,而是负责传输数据(以太网帧).
问题4,LLC层对应代码还是硬件
	代码,LLC层及其上层的代码是通用的,不随底层的变化而变化
	硬件,MAC? 待验证一块以太网卡MAC芯片的作用不但要实现MAC子层的功能,还要提供符合规范的接口以实现和主机的数据交换。
问题5,MAC层对应代码还是硬件
	对应代码和硬件 //MAC子层的主要功能包括数据帧的封装/卸装,帧的寻址和识别,帧的接收与发送,链路的管理,帧的差错控制等。MAC子层的存在屏蔽了不同物理链路种类的差异性。
		代码部分: MAC芯片驱动
		硬件部分: MAC芯片,对IP层来的数据自动添加局域网头
问题5,物理层对应代码还是硬件
	硬件
		PHY芯片在这里吗?待验证
		RJ45接口,双绞线
			负责传输比特流
  • OSI参考模型与IEEE802的关系
    在这里插入图片描述
IEEE802.3

网卡工作在物理层和数据链路层的MAC子层。

以太网数据链路层其实包含MAC(介质访问控制)子层和LLC(逻辑链路控制)子层。
一块以太网卡MAC芯片的作用不但要实现MAC子层的功能,还要提供符合规范的接口以实现和主机的数据交换。

而驱动网卡的驱动软件是 属于 mac 子层的软件部分

虽然说 llc子层和 mac子层是软硬件的划分,但感觉 mac子层也包含了软件,这个部分的软件是网卡驱动
对于局域网来说,llc层及其之上的层的代码都是通用的,也就是不根据硬件改变的.
llc层是局域网中特有的层.广域网中的数据链路层没有llc及mac

在TCP/IP混合参考模型中,数据链路层又被分为LLC层(逻辑链路层)和MAC层(媒体介质访问层)。
目前,对于普通的接入网络终端的设备, LLC层和MAC层是软、硬件的分界线。(待验证)
如PC的网卡主要负责实现参考模型中的MAC子层和物理层,在PC的软件系统中则有一套庞大程序实现了LLC层及以上的所有网络层次的协议。

由硬件实现的物理层和MAC子层在不同的网络形式有很大的区别,如以太网和Wi-Fi,这是由物理传输方式决定的。
但在MAC之上的LLC层、网络层、传输层和应用层的协议,是基本上同的,这几层协议由软件实现,并对各层进行封装。

在PC上也许能实现完整的功能,一般支持所有协议,而在嵌入式领域则按需要进行裁剪。


在物理层,由IEEE 802.3标准规定了以太网使用的传输介质、传输速度、数据编码方式和冲突检测机制,物理层一般是通过一个PHY芯片实现其功能的。当然还包括 phy的接口(例如rt45接口,及双绞线)

MAC子层是属于数据链路层的下半部分,它主要负责与物理层进行数据交接,如是否可以发送数据,发送的数据是否正确,对数据流进行控制等。它自动对来自上层的数据包加上一些控制信号,交给物理层。接收方得到正常数据时,自动去除MAC控制信号,把该数据包交给上层。


LLC层:处理传输错误;调节数据流,协调收发数据双方速度,防止发送方发送得太快而接收方丢失数据。主要使用数据链路协议。

网络层:本层也被称为IP层。LLC层负责把数据从线的一端传输到另一端,但很多时候不同的设备位于不同的网络中(并不是简单的网线的两头)。此时就需要网络层来解决子网路由拓扑问题、路径选择问题。在这一层主要有IP协议、ICMP协议。

传输层:由网络层处理好了网络传输的路径问题后,端到端的路径就建立起来了。传输层就负责处理端到端的通讯。在这一层中主要有TCP、UDP协议

应用层:经过前面三层的处理,通讯完全建立。应用层可以通过调用传输层的接口来编写特定的应用程序。而TCP/IP协议一般也会包含一些简单的应用程序如Telnet远程登录、FTP文件传输、SMTP邮件传输协议。

实际上,在发送数据时,经过网络协议栈的每一层,都会给来自上层的数据添加上一个数据包的头,再传递给下一层。在接收方收到数据时,一层层地把所在层的数据包的头去掉,向上层递交数据,
  • 嵌入式tcpip协议
嵌入式以太网协议栈有著名的uIP协议栈,Lwip协议
  • 以太网芯片
  • ENC28J60硬件ops
  • 参考1
需要提供的ops有三个
ENC28J60_Init
ENC28J60_Packet_Receive
ENC28J60_Packet_Send

ENC28J60_Init // 还需要用 ENC28J60_PHY_Write 来初始化灯
	1. 初始化spi
	2. rset enc
	3. 设置 enc
	4. 判断是否初始化enc 成功
ENC28J60_Packet_Receive
	1.读是否接到包
	2.读包的状态(长度)
    3.复制包到内存
    4.判断是否已经读到包(读硬件)
ENC28J60_Packet_Send
	1.复制包到硬件
	2.判断是否复制完成
IEEE802.11
历史
	1991,IEEE召开第一个无线LAN相关的会议,同时成立了IEEE802.11 委员会
	1992,NCR公司/Proxim公司/Telesystems公司 的 无线LAN产品(接入点和计算机端的无线LAN适配器)发布.

	1997,IEEE 完成了 第一个无线LAN标准(802.11)的标准化工作
	1999,IEEE 完成了 第二个无线LAN标准(802.11b)的标准化工作
	1999,IEEE 完成了 第三个无线LAN标准(802.11a)的标准化工作
	2003,IEEE 完成了 第四个无线LAN标准(802.11g)的标准化工作
	2009,IEEE 完成了 第六个无线LAN标准(802.11n)的标准化工作


无线LAN的基础设置结构
	无线接入点 Access Point
		1.配置RJ-45网络接口同 交换机或路由器 进行连接,从而使得 无线接入点 可以访问 有线LAN或互联网
		2.提供无线接口给无线LAN适配器
	无线LAN适配器
		1.通过无线接口连接 无线接入点
		2.通过与计算机的接口连接计算机
	计算机
		通过 计算机与无线LAN适配器的接口连接 无线LAN适配器

无线LAN标准
	无线适配器与无线接入点之间的数据传输的各个方面是由 IEEE802.11 工作组 制定的.
	IEEE802.11工作组 针对 无线LAN 提出的标准 就叫做 IEEE802.11.
	IEEE802.11 包括
		1.无线LAN传输标准
			1.1 802.11
			1.2 802.11b
			1.3 802.11a
			1.4 802.11g
			1.5 802.11j
			1.6 802.11n
			1.7 802.11ac
			1.7 802.11ad
		2.Qos
		3.法律限制
		4.安全
		5.管理
		6.试验
		7.互联互通

无线LAN传输标准的不同
	制定年份 使用频带 最大传输速率 调制方式 无线许可

Wi-Fi
	Wi-Fi 是一种 认证,用来认证无线LAN设备是否互联互通.
	Wi-Fi 还定义了类似WPA这类无线加密的相关标准.
	凡是经过Wi-Fi认证的无线客户端设备或接入点都能够无障碍的互联互通.

在这里插入图片描述
在这里插入图片描述

  • IEEE802.11 分层这张图和 图 OSI参考模型与IEEE802的关系 不一样.
    在这里插入图片描述

  • 无线网卡和有线网卡区别

IEEE 802.3 :以太网介质访问控制协议 (CSMA/CD)及物理层技术规范[2]。
IEEE 802.11:无线局域网(WLAN)的介质访问控制协议及物理层技术规范。

不管是在传统的有线局域网(LAN)中还是在目前流行的无线局域网(WLAN)中,MAC协议都被广泛地应用。

在传统局域网中,各种传输介质(铜缆、光线等)的物理层对应到相应的MAC层,目前普遍使用的网络采用的是IEEE802.3的MAC层标准,采用CSMA/CD访问控制方式;
而在无线局域网中,MAC所对应的标准为IEEE802.11,其工作方式采用DCF(分布控制)和PCF(中心控制)。

MAC子层的主要功能包括数据帧的封装/卸装,帧的寻址和识别,帧的接收与发送,链路的管理,帧的差错控制等。MAC子层的存在屏蔽了不同物理链路种类的差异性。
  • 0
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值